在C中接收分段UDP数据包的问题

时间:2014-02-05 09:42:00

标签: c udp

我正在使用2个不同的C程序来接收碎片数据包,其中一个使用定义如下的原始套接字:

_socket0 = socket( PF_PACKET, SOCK_RAW, htons(ETH_P_ALL) );

使用UDP套接字定义如下:

_socket0=socket(AF_INET, SOCK_DGRAM, 0);

第一个工作正常,第二个工作不起作用,我无法看到nothings。 谁能告诉我原因?

1 个答案:

答案 0 :(得分:0)

UDP数据包的片段不是UDP数据包,因此不会传递给UDP套接字。 UDP套接字用于读/写整个UDP数据包,而不是带有一个片段的IP数据包。