Linux “理解”;cat proc/net/udp“;
我想对“cat proc/net/udp”输出的字段,特别是tx_队列,寻求更深入、更友好的初学者解释。如果我的理解是正确的,即当[tx_queue]值大于0时,意味着有更多的数据包等待发送,并且应用程序的速度不够快,无法发送这些数据包?则相反:如果应用程序生成数据的速度比网络适配器发送数据的速度快(通常情况下是这样),那么Linux “理解”;cat proc/net/udp“;,linux,network-programming,udp,Linux,Network Programming,Udp,我想对“cat proc/net/udp”输出的字段,特别是tx_队列,寻求更深入、更友好的初学者解释。如果我的理解是正确的,即当[tx_queue]值大于0时,意味着有更多的数据包等待发送,并且应用程序的速度不够快,无法发送这些数据包?则相反:如果应用程序生成数据的速度比网络适配器发送数据的速度快(通常情况下是这样),那么tx\u队列is>0 tx_queue是尚未发送的传出数据包当前正在使用的内核内存。这些数据包尚未发送,因为内核和网络适配器(不是应用程序)还无法发送它们,很可能是因为它们正
tx\u队列
is>0
tx_queue
是尚未发送的传出数据包当前正在使用的内核内存。这些数据包尚未发送,因为内核和网络适配器(不是应用程序)还无法发送它们,很可能是因为它们正在忙着发送其他内容
有适量的数据在这个缓冲区中等待很短的时间是完全正常的
应用程序通常根本不需要担心这些数字。您可以尝试在或上发布,您可能会得到更多答案。
# cat /proc/net/udp | egrep "sl|3ADBFE0A"
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode ref pointer drops
16: 3ADBFE0A:007B 00000000:0000 07 00000000:00000000 00:00000000 00000000 74 0 40124 2 f203ca80 0
509: 3ADBFE0A:0868 00000000:0000 07 00008C00:00000000 00:00000000 00000000 0 0 79208333 2 ea226340 0