相关疑难解决方法(0)

如何获取UDP套接字的排队数据量?

为了了解我在处理传入数据方面做得如何,我想测量TCP和UDP套接字的队列长度.

我知道我可以通过SO_RCVBUFsocket选项获取队列大小,并ioctl(<sockfd>, SIOCINQ, &<some_int>)告诉我TCP套接字的信息.但对于UDP,SIOCINQ/ FIONREADioctl仅返回下一个待处理数据报的大小.有没有办法如何获得UDP的队列大小,而不必解析系统表,如/proc/net/udp

sockets linux udp

15
推荐指数
2
解决办法
1万
查看次数

/ proc/net/udp中字段的含义

我想了解/ proc/net/udp和/ proc/net/snmp中的每个字段的含义:

# cat /proc/net/udp
 sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode ref pointer drops
  4: 00000000:006F 00000000:0000 07 00000000:00000000 00:00000000 00000000     0        0 10777 2 ffff88023bbd3a80 0
110: 00000000:4959 00000000:0000 07 00000000:00000000 00:00000000 00000000     0        0 10975 2 ffff88023bbd30c0 0
122: 00000000:0265 00000000:0000 07 00000000:00000000 00:00000000 00000000     0        0 10781 2 ffff88023bbd3400 0

# cat /proc/net/snmp
Udp: InDatagrams NoPorts InErrors OutDatagrams RcvbufErrors SndbufErrors
Udp: 768010194 3069028933 1052487950 17032 68916498 0
Run Code Online (Sandbox Code Playgroud)

linux udp

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

linux ×2

udp ×2

sockets ×1