美文网首页
【tcp】如何统计TCP的丢包率?

【tcp】如何统计TCP的丢包率?

作者: Bogon | 来源:发表于2023-02-13 23:59 被阅读0次

    基于TCP的 socket 有可能丢包吗?
    其实就是在问传输层协议如何在不稳定传输上实现稳定传输。

    所谓丢包,是指在网络数据的收发过程中,由于种种原因,数据包还没传输到应用程序中,就被丢弃了。这些被丢弃包的数量,除以总的传输包数,也就是我们常说的丢包率。
    丢包率是网络性能中最核心的指标之一。
    丢包通常会带来严重的性能下降,特别是对 TCP 来说,丢包通常意味着网络拥塞和重传,进而还会导致网络延迟增大、吞吐降低。

    丢包率为多少表示网络不正常?

    丢包率(Loss Tolerance或packet loss rate)是指测试中所丢失数据包数量占所发送数据包的比率,通常在吞吐量范围内测试。
    丢包率与数据包长度以及包发送频率相关。
    通常,千兆网卡在流量大于200Mbps时,丢包率小于万分之五;百兆网卡在流量大于60Mbps时,丢包率小于万分之一。

    那到底是哪里发生了丢包呢?

    排查之前,我们可以回忆一下 Linux 的网络收发流程,先从理论上分析,哪里有可能会发生丢包。
    你不妨拿出手边的笔和纸,边回忆边在纸上梳理,思考清楚再继续下面的内容。
    在这里,为了帮你理解网络丢包的原理,我画了一张图,你可以保存并打印出来使用。

    image.png

    参考

    TCP面向字节流和报文段的关系是什么?
    https://www.zhihu.com/question/34003599/answer/139286798

    收集TCP端口的访问延迟和丢包率
    https://www.cnblogs.com/flashBoxer/p/13266758.html

    粘包粘包、拆包问题的解决策略
    https://www.cnblogs.com/orange1438/p/4693470.html

    丢包?不要轻易下结论
    https://zhuanlan.zhihu.com/p/399679085

    使用 psping & paping 进行 TCP 端口连通性测试
    https://docs.azure.cn/zh-cn/articles/azure-operations-guide/virtual-network/aog-virtual-network-tcp-psping-paping-connectivity

    相关文章

      网友评论

          本文标题:【tcp】如何统计TCP的丢包率?

          本文链接:https://www.haomeiwen.com/subject/jafrmrtx.html