TCP有状态协议与HTTP无状态协议

http协议是无状态协议,即下一次的http请求与上一次的http请求没有任何关系,是一次独立的请求,没有任何上下文关系,即不记录上下文。但是TCP是有状态的协议,TCP下一次传输的报文段和上一次传输的报文段是有顺序关系的,最终要按照报文段里的序列号对所有报文段进行重排序。

HTTP 协议本身也是无连接的,虽然它使用了面向连接的 TCP 向上提供的服务。

无状态服务器是指一种把每个请求作为与之前任何请求都无关的独立的事务的服务器。

《TCP/IP协议族》(第二版)第546页有这样一句话:
虽然HTTP使用TCP的服务,但HTTP本身是无状态协议,客户发送请求报文来初始化这个事务,服务器发送响应来回答。

《TCP/IP协议族》(第二版)第274页:
由于需要清楚地掌握在连接建立,连接终止以及数据传送时,所发生的所有不同事件,TCP软件是以有限自动机的形式来实现的。有限状态机是能够经历有限数目状态的一种机器,在任何时候,这个机器处于某一个状态。若没有其它事件发生,这个机器就一直出于那个状态,事件可以使机器转入到一个新的状态,或者事件完成同样的动作,换言之,事件是加到状态上的输入,它可以改变这个状态并产生输出。

常见的协议,比如TCP协议是有状态的协议,HTTP协议,UDP协议,FTP协议都是无状态协议。

无状态与短连接与长连接的关系?

无状态和短连接与长连接没任何关系。
短连接与长连接指的是TCP连接什么时候断开相关的,无状态指的是每次请求都是独立的,即http协议本身是无状态的,即下一次的http请求与之前的任何http请求没有任何关系,没有任何上下文关系。

参考:
如何理解有状态协议和无状态协议?
HTTP 协议本身也是无连接的,虽然它使用了面向连接的 TCP 向上提供的服务。
什么是有状态协议?什么是无状态协议?TCP是有状态协议,暗含着什么意思?

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值