首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ss输出中的u_str、Recv和Send是什么?

ss输出中的u_str、Recv和Send是什么?
EN

Ask Ubuntu用户
提问于 2017-05-17 21:25:36
回答 2查看 13.9K关注 0票数 8

ss命令非常类似于netstat命令,但它比netstat更快、更精确。

代码语言:javascript
运行
复制
monitoring-server@monitoring-server:~$ ss
Netid State      Recv-Q Send-      Local Address:Port    Peer Address:Port       
u_str ESTAB      0      0          * 34006              * 34007                

这是外挂的第一行。此命令通知系统中打开的所有套接字。

在我的系统上,总数是96,其中56个有u_str作为Netid,rest有tcp

这里的u_str是什么,也请解释更多关于Recv-QSend-Q的内容?

EN

回答 2

Ask Ubuntu用户

发布于 2017-05-17 22:28:19

u_str是一个流套接字,相当于netstat's SOCK_STREAM。

SOCK_STREAM:这是一个流(连接)套接字。

来自维基百科

在计算机操作系统中,流套接字是一种进程间通信套接字或网络套接字,它提供面向连接、有序和唯一的无记录边界的数据流,具有创建和破坏连接以及检测错误的定义良好的机制。

让我们创建一个流套接字:

代码语言:javascript
运行
复制
netcat -lU /tmp/streamsocket

现在运行:

代码语言:javascript
运行
复制
ss -an | grep streamsocket

它将输出:

代码语言:javascript
运行
复制
u_str  LISTEN     0      5      /tmp/streamsocket 123360      * 0     

简而言之,它也可以是"UDP“或"TCP”的套接字类型。让我们创建一个UDP套接字:

代码语言:javascript
运行
复制
netcat -lu 127.0.0.1 8060

现在,ss -l sport = 8060将告诉您,这是一个"UDP“而不是"u_str”。

有关"Recv-Q“和”Send“列,请参阅man 8 netstat

未被连接到此套接字的用户程序复制的字节数。发送-q远程主机未确认的字节数。

票数 6
EN

Ask Ubuntu用户

发布于 2017-12-07 10:14:58

ss转储socket statistics。Netid u_strunix_stream的缩写,即自动对焦_UNIX套接字家族和袜子_流套接字类型:

AF_UNIX (也称为AF_LOCAL)套接字家族用于有效地在同一台机器上的进程之间进行通信。传统上,UNIX域套接字可以是未命名的,也可以绑定到文件系统路径名(标记为socket类型)。Linux还支持一个独立于文件系统的抽象命名空间。SOCK_STREAM提供有序、可靠、双向、基于连接的字节流.可支持带外数据传输机制。

来自快速入门ss(/usr/share/doc/iproute2-doc/ss.html)

然后两列(Recv和Send)显示排队等待接收和发送的数据量。

对于unix套接字,它是unix_diag_rqlen from unix_diag.h

票数 3
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/916241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档