linux连接数状态统计


linux连接数状态统计
 
连接数状态获取:netstat在4W以上连接数下工作性能很差。
先看看ss命令:
ss -t -a #统计所有的TCP连接
ss -u -a #统计所有的UDP连接
 
ss还具有过滤功能,下面列一下常用的功能:
ss state ESTABLISHED #列出所有ESTABLISHED状态的连接
ss -t -a -o excl ESTABLISHED #排除所有ESTABLISHED状态的连接
 
ss state ESTABLISHED sport eq :80 #列出所有在80端口上状态为ESTABLISHED状态的连接
ss state ESTABLISHED sport eq :80 and not dst 127.0.0.1 #列出所有在80端口上状态为ESTABLISHED状态和目的地址不为127.0.0.1的连接
 
ss命令来自iproute包。
ss -s会列出一些基本的统计信息:
 
#ss -s
Total: 43160 (kernel 43254)
TCP: 43770 (estab 43069, closed 32, orphaned 646, synrecv 0, timewait 24/0), ports 285
 
Transport Total IP IPv6
* 43254 - - 
RAW 0 0 0 
UDP 13 10 3 
TCP 43738 43535 203 
INET 43751 43545 206 
FRAG 0 0 0
TCP:?43770?(estab 43069,?closed 32,?orphaned 646,?synrecv 0,?timewait 24/0),?ports 285 这行是什么含义呢,只能去源码里找了:
...
printf("TCP: %d (estab %d, closed %d, orphaned %d, synrecv %d, timewait %d/%d), ports %d\n",
s.tcp_total + slabstat.tcp_syns + s.tcp_tws,
sn.tcp_estab,
s.tcp_total - (s.tcp4_hashed+s.tcp6_hashed-s.tcp_tws),
s.tcp_orphans,
slabstat.tcp_syns,
s.tcp_tws, slabstat.tcp_tws,
slabstat.tcp_ports
);
 

相关内容

    暂无相关文章