虹科分享 | 网络性能监控 | 网络中的应用性能意味着什么?

TCP协议的可靠性

数据包丢失是对网络的破坏,因为它导致延迟。TCP协议建立了可靠的数据传输,但掩盖了丢包的影响。TCP确保数据的传输是基于一个叫做 "滑动窗口 "的概念。这种机制控制着传输的字节序列和收到的确认。

在排序的帮助下,接收方可以通知发送方丢失的数据(如数据包丢失)。独立地讲,发送方可以通过重传定时器的到期来检测丢包。从性能分析的角度来看,必须了解丢包的重要性,以避免 "机器中的幽灵"。下面的文章探讨了这些机制的行为和性能。

重传计时器

每个传输的数据包都由发送方链接到重传计时器。如果计时器在已传输的数据段被确认之前过期,则该数据段将被声明为丢失并重新传输。在性能方面,重传定时器有两个重要特点:

  • 初始重新传输超时 (RTO) 的默认值几乎始终为 3000 毫秒。随后,该值会根据实际路径重传时间动态调整为更真实的值。

  • 对于数据包的后续重新传输,超时值始终加倍。

对于短数据流(例如网络流量),重传计时器用于检测数据包丢失。只有 1000 字节的消息在单个数据包中传输。当然,如果数据包丢失,接收方无法发送接收确认,因为接收方不知道丢失的数据包曾经发送过。如果数据包在 TCP 连接的早期丢失,例如在三次握手期间丢失 SYN 数据包,则数据包丢失在三秒钟内不会恢复。

三次重复的ACK

在较大的数据流中,可以在重传定时器过期前检测到丢失的数据包。这是借助于三个收到的ACK副本来完成的。这种机制通常比等待重传定时器过期更有效。如果到达的节点收到的数据包不符合顺序,它就会发出重复的ACKs。失序的数据包可以是在丢失的数据包数据之后发送的数据包。重复的ACK包包含接收方仍在等待的准确序列号。当发送节点收到第三个重复的ACK时,它认为有关的数据包不仅被延迟,而且实际上已经丢失。结果,丢失的数据包被重新传输。如果发生这种情况,发件人会假定网络中存在拥堵,并将拥堵窗口减少50%,以积极应对拥堵。慢速启动机制会缓慢增加CWD值。

例如,如果一个服务器向客户传输一个大文件,由于慢速启动机制,发送节点的吞吐量提升得更慢。当拥塞窗口达到24时,数据包丢失会被一个三重复的ACK检测到。随后,服务器重传丢失的数据,CWD值减少到12。慢速启动机制将在这个时候重新启用其拥塞避免模式。这种行为在现代网络中经常看到。

结论和纠正措施

显而易见的是,防止因拥堵造成的数据包丢失将提高性能。然而,这只有通过减少其他流量的拥堵才能实现,可以通过以下方式实现:

  • 用于排队优先的QoS政策

  • 减少总流量或增加带宽

如果数据包丢失是由于其他情况造成的,如网络接口故障、队列配置错误或电缆连接不良,则必须确保TCP连接不会被不必要地关闭,不被不必要地超时,人们还可以减少重传超时的值。

扩展阅读

 虹科Allegro网络万用表 - 网络故障排除的一体化解决方案

      虹科Allegro网络万用表是是先进的网络诊断工具,通过浏览器中的Web界面访问分析数据。简单部署,无需配置,只需要点击几下就可检测到网络问题。可以针对问题区域或错误,并可以从预算的流量中捕获PCAP以进一步分析。

  • 一体化分析设备

  • 软件永久许可(全功能可用)

  • L2-L7全面分析

  • 即插即用,无需配置

  • 多种型号可选,1-200Gbit/s,满足不同规模网络需求

  • 高速全流量捕获分析,回溯分析

  • 中文界面支持

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值