在经行性能测试时, 使用netstat -atn 查看socket 等状态时,总是卡主!!!!
有没有什么快速的办法呢? 通过proc 文件系统? strace netstat发现 也是通过read proc 文件系统 read write输出结果!!!但是 是通过遍历/proc下面每个PID目录
目前看到的是ss 这个工具比netstat快!!
收索了一下据说用了tcp_diag 啥的导致的!!
ss命令用于PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等统计.
ss使用IP地址筛选 ss src ADDRESS_PATTERN src:表示来源 ADDRESS_PATTERN:表示地址规则 如下: ss src 120.33.31.1 # 列出来之20.33.31.1的连接 # 列出来至120.33.31.1,80端口的连接 ss src 120.33.31.1:http ss src 120.33.31.1:8 ss使用端口筛选 ss dport OP PORT OP:是运算符 PORT:表示端口 dport:表示过滤目标端口、相反的有sport OP运算符如下: <= or le : 小于等于 >= or ge : 大于等于 == or eq : 等于 != or ne : 不等于端口 < or lt : 小于这个端口 > or gt : 大于端口 OP实例 ss sport = :http 也可以是 ss sport = :80 ss dport = :http ss dport > :1024 ss sport > :1024 ss sport < :32000 ss sport eq :22 ss dport != :22 ss state connected sport = :http ss ( sport = :http or sport = :https ) ss -o state fin-wait-1 ( sport = :http or sport = :https ) dst 192.168.1/24
netstat
不能用ss
完全替换。某些netstat
命令比ip
命令更好
比投入netstat -r netstat -s netstat -i netstat -g 等命令
一般内核都会打卡tcp_diag
用time 统计时间 结果ss 性能还差 ?? 这是什么原因? Google了一下 好像是由于-a 解析域名吧!!
所以将 ss -atn 变为 ss -at的时候 发现 ss 的效率比netstat 高多了!!