我使用dpdk进行数据包传输实验。但是,接收器应用程序根本没有收到任何数据包。统计数据来自RTE_ETH_STATS_GEG((,显示所有端口都报告了许多" RX_ERROR"。调试后,我发现所有这些错误都是名为" rx_length_error"的错误。Google的解释说,如果Mac标头中的传入数据包长度字段与数据包长度不符,则会发生长度错误。但是,据我所知,Mac标头中没有长度字段。
所以我的问题是NIC如何报告没有长度字段的长度错误?
谢谢您的帮助!
在您以前的问题中指向以太网标头需要正确设置,尤其是Ethertype。
某些电子型暗示您有固定的长度帧,因此82599识别这些帧并将其放置,如果给定的Ethertype的预期长度与您的实际帧大小不符。