TCP复位报文段

一、访问不存在的端口

当客户端程序访问一个不存在的端口时,目标主机将给它发送一个复位报文段。

收到复位报文段的一端应该关闭连接或者重新连接,而不能回应这个复位报文段。

当客户端程序向服务器某个端口发起连接,而该端口仍被处于TIME_WAIT状态的连接所占用时,客户端也将收到复位报文段。

二、异常终止连接

对正常终止的连接:数据交换完成后,一方给另一方发送结束报文段,四次挥手断开连接。

TCP提供了异常终止一个连接的方法,即给对方发送一个复位报文段。一旦发送了复位报文段,发送端所有排队等待发送的数据将被丢弃。

应用程序可以使用socket选项SO_LINGER来发送复位报文段,以终止一个连接。

三、处理半打开连接

半打开状态:
服务器(或客户端)关闭或者异常终止了连接,而对方没有接收到结束报文段(比如发生了网络故障),此时,客户端(或服务器)还维持着原来的连接,而服务器即使重启,也已经没有该连接的任何信息了。

半打开连接:
处于半打开状态的连接我们称之为半打开连接。

如果客户端(或服务器)往处于半打开状态的连接写入数据,则对方将回应一个复位报文段。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值