关于结构tcp_info的良好文档

use*_*823 12 connection for-loop tcp information-retrieval

我正在努力获取tcp连接的性能参数,其中一个参数是带宽.我打算使用tcp_info从linux 2.6开始支持的结构,它保存有关tcp连接的元数据.可以使用getsockopt()函数调用来检索信息tcp_info.我花了很多时间找到一个很好的文档来解释该结构中的所有参数,但找不到一个.

此外,我测试了一个小程序来检索tcp_infotcp连接的值,在那里我发现大多数时间测量的MSS值为零.为了让长话短说 - 是否有一个链接可以跟随其中包含完整的详细信息tcp_info以及使用这些值是否可靠?

msw*_*msw 14

以下是RenéPfeiffer对linux tcp_info的结构和使用的相当全面的描述,但有几点值得注意:

  • 作者需要随着时间的推移重复查看这些数据,因为该结构中没有聚合统计数据.
  • 作者将您指向tcp.c源,作为任何这些数据含义的最终权限.
  • 我不确定你希望从最大段大小中获得什么,但是你会认为它意味着其他东西.

如果您真正对带宽的精确测量感兴趣,则需要使用在被测系统之外的测量设备,因为即使拉动ioctls也会影响您感兴趣的现象.无源线嗅探器是获得真正准确结果的唯一途径.最后,根据您的应用,"带宽"是一个非常广泛的保护伞,它将许多测量(例如延迟,往返时间,可变性,抖动等)压缩成一个类别.