查看: 36|回复: 0

高效排障:不同情况下的重传根因及处置建议

[复制链接]
发表于 2024-10-15 17:02:00 | 显示全部楼层 |阅读模式
本文是《TCP异常流量标记分析》系列的第3篇,前2篇内容为:
01《高效排障:解析三种TCP丢包情况及实用处置指南》
02《性能调优:三种情况下的重复ACK分析与处置建议》
重传率和丢包率是体现网络传输性能的重要指标,这一篇我们一起来看TCP异常流量标记“重传”的几种常见场景及解决方案。关于重传科来网络分析系统中细分了四种标记,分别为:虚假重传、快速重传、乱序、普通重传,本文主要阐述“重传”。
  重传报文的判定条件  
一般情况下,当某报文满足下列条件时即被判定为重传报文:
TCP分段负载大于0,或者是SYN或FIN报文;
TCP序列号小于前一个报文(同向)的下一序列号;
当前报文的IPID大于上一个报文的IPID。

图1
  不同情况下的重传根因及处置建议  
当我们从一个TCP会话中看到了重传率异常时(如图1),该如何分析是什么原因造成的重传呢?
重传情况一:流量从同一个网络接口进出

图2
如图2所示,可见图中每个报文之后都有一个看起来同样的报文,并被标记为重传。难道流量被复制了吗?
我们以最前面两个报文作为样本进行解码分析。

图3

图4
TCP时序图中(图2)序号1、序号2报文的二层和三层解码信息如图3、图4所示。
根据二层的MAC地址可判断,报文先是进入一个网络接口,而后又从相同的网络接口转发出来;
根据三层的存活时间可判断,报文经过了三层转发,因此生存时间减少了1;
所以这是一个TCP分段,在经过网络设备时被路由转发了,而这个转发设备恰好使用了单臂转发的架构,这种场景常见于旁路部署的防火墙等设备。
情况一的根因及处置建议:
属于正常的网络架构设计所产生现象,无需处理。
重传情况二:响应超时导致的重传

图5
如图5所示,两个TCP SYN报文之间间隔了6.01555秒,客户端重传了SYN报文。

图6
如图5、图6所示,第二个SYN报文的IPID”b256”,大于第一个SYN报文的IPID”aaf9”, TCP序列号小于前一个报文(同向)的下一序列号,且SYN被视为1字节,该报文负载不为0,因此被标记为“重传”。
情况二的根因及处置建议:
根据具体情况判断响应超时原因,做出对应处置。
重传情况三:报文在流向采集点之前丢失

图7

图8
如图7所示,①表示下一个报文序列号为”1893127485”; 报文③的序列号为”1893127485”,看似字节是连续的,为什么被统计为重传呢?解码分析报文②、报文③,对比IPID,报文③的IPID大于上一个同向报文的IPID,符合重传标记条件。
出现这样的时序图,意味着在报文①②③的流向上,某些报文在到达采集点之前丢了,因此采集点位置只采集到了重传后的报文。
情况三的根因及处置建议:
排查数据转发方向上采集点之前的链路,确定具体丢包点位,视情况进行处置。
重传情况四:报文在流向采集点之后丢失

图9
如图9所示,报文③为报文①的重传报文,很明显报文②是对报文①的确认报文,那么为什么还会发生重传呢?极大可能是报文②在流过采集点之后中途丢失,导致并未顺利到达服务器。
情况四的根因及处置建议:
排查数据转发方向上采集点之后的链路,确定具体丢包点位,视情况进行处置。
分析TCP交易时序图是运维人员和流量分析工程师的日常工作内容之一,了解科来网络分析系统TCP流分析视图中TCP交易时序图的TCP异常流量标记,能够帮助技术人员在分析TCP流量时事半功倍,快速准确发现问题、定位故障节点、定位故障根因。


免费易用的流量分析工具下载
扫码关注公众号
更多网络分析技术、技巧、干货分享


- End -


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?CSNA会员注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | CSNA会员注册

本版积分规则

快速回复 返回顶部 返回列表