Linux中udp的丢包分析

wireshark分析tcp的丢包比较简单,因为可以分析重发次数,和响应;
分析udp的丢包,需要分析带序号的报文,RTP报文,可以分析丢包情况;若是分析iperf的udp包,没法分析出丢包来。

网上说可以使用watch netstat -su查看丢包统计。主要看RcvbufErrors和SndbufErrors,packet receive errors。
丢包原因:
发送端:1. 发送的包太大,2.发包速度太快,3.udp包流量太大,发送缓冲区又太小。
接收端:接收缓冲区太小


使用 sysctl -a | grep memsocket查看缓冲区大小

lmz@X280:~/下载$ sudo sysctl -a | grep mem
[sudo] lmz 的密码: 
net.core.optmem_max = 20480
net.core.rmem_default = 212992
net.core.rmem_max = 212992
net.core.wmem_default = 212992
net.core.wmem_max = 212992
net.ipv4.fib_sync_mem = 524288
net.ipv4.igmp_max_memberships = 20
net.ipv4.tcp_mem = 92376	123168	184752
net.ipv4.tcp_rmem = 4096	131072	6291456
net.ipv4.tcp_wmem = 4096	16384	4194304
net.ipv4.udp_mem = 184752	246336	369504
net.ipv4.udp_rmem_min = 4096
net.ipv4.udp_wmem_min = 4096
vm.lowmem_reserve_ratio = 256	256	32	0	0
vm.memory_failure_early_kill = 0
vm.memory_failure_recovery = 1
vm.nr_hugepages_mempolicy = 0
vm.overcommit_memory = 0

/etc/sysctl.conf 修改rmem_default、rmem_max、wmem_default和wmem_max的值,执行sysctl -p即可生效。

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页