这个问题很简单,也许对大多数人来说都是有一点补救的,但是我一直在网上搜索一些关于这一点的明确信息。
据我了解,RST标志的目的是立即终止TCP连接,对于发送主机来说,对话是在RST或RST/ACK数据包发送的那一刻结束的。但是,接收RST或RST/ACK数据包的主机是否通过不发送任何RST的确认来“尊重”它呢?
换句话说,主机在收到RST或RST/ACK数据包时会立即放弃对话吗?有例外吗?
发布于 2016-04-04 17:12:31
RFC 793,传输控制协议详细解释了TCP如何工作:
除SYN发送外,所有状态下的重置处理都通过检查SEQ-字段验证所有重置(RST)段。如果重设的序列号在窗口中,则重置是有效的。在SYN发送状态(响应于初始SYN接收的RST )中,如果ACK字段确认SYN,则RST是可以接受的。RST的接收方首先验证它,然后更改状态。如果接收者处于侦听状态,则忽略它。如果接收器处于SYN接收状态,并且先前处于侦听状态,则接收器返回侦听状态,否则接收器中止连接并进入关闭状态。如果接收器处于任何其他状态,则中止连接并通知用户并进入关闭状态。
https://networkengineering.stackexchange.com/questions/29291
复制相似问题