gpt4 book ai didi

linux - tcpdump 的侵入性如何?

转载 作者:IT王子 更新时间:2023-10-29 01:25:53 26 4
gpt4 key购买 nike

我四处寻找有关 tcpdump 内部结构的文档,但我什么也没找到。所以我的问题是 tcpdump 在计算机上的侵入性有多大。如何评估专用于流量分析的资源量(内存或 CPU)?

最佳答案

tcpdump 是一个非常简单的工具,基本上是打开特殊类型的套接字

socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL))

并将它得到的所有内容写入磁盘。

内核负责所有的捕获和管理特殊缓冲区来存储用于 tcpdump 的数据包。如果缓冲区是完整的数据包,它就会被丢弃。缓冲区由 -B 选项调节。大多数系统都有缓冲区上限,~2GB 或类似的东西。

从 CPU 的角度来看,您需要计算能力将所有数据复制 2 或 3 次,这通常不是问题,如果您无法捕获 1GB 链接,您很可能应该归咎于磁盘速度,而不是 CPU。对于 10Gb 链路,可能是 CPU 问题和内存总线带宽问题,您可能需要为此进行一些优化。

关于linux - tcpdump 的侵入性如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38891769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com