gpt4 book ai didi

c - libpcap 格式 - 包头 - incl_len/orig_len

转载 作者:太空宇宙 更新时间:2023-11-04 03:02:37 93 4
gpt4 key购买 nike

libpcap 数据包头结构有 2 个长度字段:

typedef struct pcaprec_hdr_s {
guint32 ts_sec; /* timestamp seconds */
guint32 ts_usec; /* timestamp microseconds */
guint32 incl_len; /* number of octets of packet saved in file */
guint32 orig_len; /* actual length of packet */
} pcaprec_hdr_t;

incl_len:文件中实际捕获并保存的数据包字节数。此值永远不应大于 orig_len 或全局 header 的 snaplen 值。

orig_len:数据包被捕获时出现在网络上的长度。如果 incl_len 和 orig_len 不同,则实际保存的数据包大小受 snaplen 限制。

谁能告诉我这两个长度字段之间的区别是什么?我们将数据包完全保存在其中,那么两者有何不同?

最佳答案

通读 Wireshark wiki (http://wiki.wireshark.org/Development/LibpcapFileFormat) 上的文档并研究示例 pcap 文件,看起来 incl_len 和 orig_len 通常是相同的数量。唯一不同的是数据包的长度是否超过了文件的全局 header 中指定的 snaplen 的大小。

我只是在这里猜测,但我想 snaplen 指定了用于捕获的静态缓冲区的大小。在数据包对于捕获缓冲区来说太大的情况下,这是用于发出该事实信号的格式方法。 snaplen 被记录为“通常”为 65535,这对于大多数数据包来说足够大。但是文档规定大小可能会受到用户的限制。

关于c - libpcap 格式 - 包头 - incl_len/orig_len,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9611929/

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