我正在研究网络流量特征。在处理收集的数据(由 tcpdump 捕获并保存到数据库中)时,我偶然发现了数据包(或流)到达间隔时间的奇怪现象:
从未观察到 35-170 微秒的到达间隔时间
当然,如果没有 DAG 卡(它会对数据包进行硬件时间戳),我就不能依赖低于毫秒的尺寸精度。尽管如此,我正在寻找一个原因,为什么在以下累积分布函数中存在这种差距:
我还绘制了使用特定 IAT 看到的流数:
我的数据基础包含 >13 个 Mio 流,因此这种差距不太可能是偶然存在的——我只是在寻找原因。
有没有。与调度有关? 我知道 linux 内核调度程序(是一个 debian 机器)使用 250Hz 的频率,因此每个滴答声是 4ms,这比我的 35-170µsec 的间隔要大 > 200。网卡是否有任何调度?有很多0µsec 的 IAT,所以我假设这些数据包是在彼此之后直接处理的。我可以想象我正在搜索的调度程序滴答时间约为 40 微秒,导致 IAT 为 0<x<40 微秒,然后完成捕获以外的其他事情(对于 120 微秒 = 3 滴答声),我只得到 > 120 微秒的滴答声。
你有一个线索,我怎么能解释这个差距?非常感谢!史蒂芬