Linux 【ss命令】套接字统计

ss:Socket Statistics:Socket统计。

ss 命令可以获取socket统计信息,它的功能和netstat类似。

        ss 也被称为IPC(Inter-Process Communication)套接字统计。这是一个强大的网络管理命令,主要用于获取系统中socket的统计信息,可以帮助系统管理员诊断和排查网络问题,包括检查当前网络连接及端口状态、搜索网络问题、统计网络情况、过滤网络数据等等,从而解决网络问题,节省管理工作量,保证网络安全。

ss命令特性

  1. ss 比 netstat 更快速源于在于它能够显示更为详细的 TCP 和 Socket 连接状态的信息。
  2. 当服务器的 socket 连接数量变得非常大时,无论是使用 netstat 命令还是直接 cat /proc/net/tcp,执行速度都会很慢。
  3. ss 利用到了 TCP 协议栈中 tcp_diag。tcp_diag 是一个用于分析统计的模块,可以获得 Linux 内核中最新的数据,进而就确保了ss的快速高效。(ss在没有 tcp_diag,ss也可以正常运行)

        处理大量socket连接时,比netstat更快更高效。这是因为ss命令利用了TCP协议栈中的tcp_diag模块,这个模块可以获得Linux内核中的第一手信息,因此其性能优于其他工具。

time netstat -at
# real 0m0.023s
# user 0m0.003s
# sys  0m0.007s
time ss -at
# real 0m0.005s
# user 0m0.003s
# sys  0m0.002s

语法:

ss 选项

-t, --tcp #显示TCP 协议 的Sockets

-S, --sctp #显示STCP 的Sockets

-u, --udp #显示UDP 的Sockets

-e, --extended #显示详细的Socket信息

-m, --memory #显示Socket内存使用

-p, --processes #显示Socket 使用进程

-i, --info #显示内部TCP信息

-s, --summary #显示socket使用总数

-n, --numeric #不解析服务名称

-r, --resolve # 解析主机名,把 IP 解释为域名,把端口号解释为协议名称

-a, --all #显示所有Socket

-l, --listening #显示监听的Socket

示例:

1.找出打开套接字/端口应用程序

ss -tnlp | grep 端口号
ss -tunlp | grep 端口号

2.查看监听套接字:监听套接字是系统等待外部连接的地方

ss -l

3.显示所有状态为established的SMTP连接:

ss -o state 'established'

#显示所有处于ESTAB(established)状态的TCP连接
ss -t -a state established

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值