TCP超时与重传

1、TCP重传

A、基于时间信息

设置RTO:tcp协议对超时报文的处理响应比较剧烈,如:i、基于拥塞控制机制,减小发送窗口大小——限窗;ii、当一个重传报文段被再次重传时,则增大RTO退避因子——再次重传,会进行指数退避策略

B、基于确认信息:若没有延时发生,累积ACK报文数达dupthresh次数或ACK报文包含选择确认信息(SACK)表明出现失序报文段时,会启动快速重传机制。(快速重传:不必等待RTO,便重传报文,也可发送新报文,但会触发拥塞控制机制)

PS:TCP重传应尽量避免超时(RTO)重传。

2、带选择确认的重传(select ACK,作为tcp报文头部的option部分)

合理的SACK可以重传丢失的数据来填补接收端缓存中的空缺,同时也可保证不重传已正确接收到的数据。

空缺:ACK号与接收端缓存中的其他数据之间的间隔(有待接收报文的序号)

失序数据:序列号高于空缺的数据

报文失序时,收发端都必须启动SACK选项才可进行带选择确认重传。

发送端行为:第一个SACK块内包含的是最近接收到的报文段的序号范围。

接收端行为:根据SACK信息提供接收端数据序列号范围,从而推断需要重传的空缺数据。一般而言,先填空缺信息,再继续发送新数据。

PS:SACK存在“食言”行为,所以一切要以ACK确认号或重传计时器为准。

3、包失序与包重复

包失序:因为IP层不能保证包传输是有序进程的,所以会存在轻微失序(可自动恢复)、严重失序(启动快速重传)。

包重复:即同一个包产生了完全相同的多个副本,利用SACK可简单忽略此现象。

4、重新组包

当tcp超时重传时,并不需要完全重传相同的报文段。tcp允许执行重新组包,发送一个更大的报文段来提高性能。

5、与TCP重传有关的攻击

低速率DoS攻击:攻击者向网关或主机发送大量数据,使得受害系统持续处于重传超时的状态。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值