ifconfig、ss、ip的相关介绍之二ss
ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。
当服务器无论是使用netst的socket连接数量变得非常大时,at命令还是直接cat /proc/net/tcp,执行速度都会很慢。当服务器维持的连接达到上万个的时候,使用netstat等于浪费生命,而用ss才是节省时间。它是ifconfig的取代者之一。
它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢。
下面我们来看看传说中唯快不破的服务器TCP网络信息管理工具;
二、ss命令:Socket Statistics的缩写
1、作用:用来设置网络设备状态,或者显示目前设置,获取socket统计信息,类似netstat,但比它更详细,速度更快捷。
2、用法: ss [选项] [过滤] 用的时候根据需要组合选项效果更佳
3、选项:(只列常用的,其他用的时候查‘男人’)
-t:TCP协议的相关连接
-u:UDP相关的连接
-w:raw socket相关的连接
-l:监听状态的连接
-a:所有状态的连接
-n:数字格式
-p:相关的程序及其PID
-e:扩展格式信息
-m:内存用量
-o:计时器信息
4、TCP的常见状态: FSM模式 (俗称“TCP状态机”)
LISTEN:监听
ESTABLISEHD:数据传输状态
FIN_WAIT_1:接收等待
FIN_WAIT_2:接收等待
SYN_SENT:主动打开
SYN_RECV:主动接收
CLOSED:关闭连接
5、部分使用示例
(1)、显示TCP相关协议连接: ss -t
(2)、显示套接字用不用状况: ss -s
(3)、仅显示RAW套接字: ss -w
(4)、仅显示 UCP套接字: ss -u
(5)、显示监听状态套接字: ss -l
(6)、显示套接字使用的进程: ss -p
(7)、显示扩展格式套接字信息: ss -e
(8)、显示套接字内存信息: ss -m
(9)、显示套接字计时器信息: ss -o
(10)、显示IPv4套接字信息: ss -4
(11)、显示匹配本地地址和端口号信息: ss src 172.16.38.8:ssh
转载于:https://blog.51cto.com/liguoqing/1728751