0

我一直在寻找整个下午的 udp 数据包发送问题。据说sendmsg系统调用会先到inet_sendmsg,然后是udp_sendmsg,然后是udp_push_pending_frames,在这个函数中,UDP header是在ip_push_pending_frames之前填充的。但是,根据http://vger.kernel.org/~davem/skb_data.html,UDP 层应该有一个纯用户数据作为 skb 中的数据,它 skb_push 为 UDP 标头腾出空间。我只是找不到它。

任何人都可以提供一些线索吗?

谢谢!

4

1 回答 1

0

您将skb_pushinclude/linux/skbuff.h内核源代码中找到 - 它是一个内联函数,因此它位于头文件而不是普通源文件中。

于 2012-12-03T18:52:32.780 回答