Мы нюхать пакеты с помощью Libpcap на Linux заголовке мы получаем каждый пакет выглядит следующим образом:PCAP структура pcap_pkthdr Len против Caplen
struct pcap_pkthdr {
struct timeval ts; /* time stamp */
bpf_u_int32 caplen; /* length of portion present */
bpf_u_int32 len; /* length this packet (off wire) */
};
Теперь это мое понимание того, что Caplen длина данных мы зафиксировали в то время как len - это длина пакета на проводе. В некоторых случаях (например, при слишком низкой настройке оснастки при открытии устройства pcap) мы можем захватывать только части пакета, эта длина будет «caplen», а «len» - это исходная длина. Таким образом, caplen должен быть равен или меньше len, но не больше len.
Это правильное понимание? Мы снимаем капельки> len на некоторых машинах
Вы должны разместить pcap, который вызывает эту проблему на pcapr.net, было бы довольно интересно. Человек, я этого никогда не видел. – bortzmeyer