408 字
2 分钟
ss
在 ss -anp 命令的输出中,u_seq 表示的是 UNIX 域顺序包套接字(UNIX Sequential Packet Socket)。这是一种 UNIX 域套接字(UNIX Domain Socket) 的类型。
详细说明
- 协议分类 :
u_seq是 UNIX 域套接字 (非网络协议,用于本地进程间通信),属于操作系统内部通信机制。- 不是 TCP/UDP 等网络协议,也不关联端口号或 IP 地址。
-
u_seq的含义 :seq代表 Sequential Packet(顺序包)。- 这种套接字类型提供 可靠的、面向连接的双向通信 ,并保留消息边界(每条消息作为一个完整单元传输)。
- 类似网络协议中的 SCTP,但仅限于本地进程间通信。
- 典型特征 :
- 在
ss -anp的输出中,u_seq对应 UNIX 域套接字 行,例如:u_seq LISTEN 0 128 /run/systemd/journal/socket 12345 users:(("systemd",pid=1,fd=10)) - 地址列 :通常显示为文件路径(如
/run/...),而非 IP。
- 在
- 与其他 UNIX 域套接字的区别 :
u_str(UNIX_STREAM):流式套接字(类似 TCP,无消息边界)。u_dgr(UNIX_DGRAM):数据报套接字(类似 UDP,不可靠)。-
u_seq是介于两者之间 :有连接可靠性 + 消息边界保留。
实际应用场景
- 常见于 系统服务间的可靠通信 (如
systemd、dbus等)。 - 适用于需要严格消息顺序和完整性的本地进程(如日志传输、控制命令)。
总结
u_seq是 UNIX 域顺序包套接字 ,用于 本地进程间的可靠、有序通信 。- 通过
ss -anp查看时,它是 UNIX 域套接字的类型标识之一,属于操作系统内部机制,与网络协议无关。