在对OEL 7服务器(3.10.0-1062.9.1.el7.x86_64)上的问题进行故障排除时,我运行了命令
sudo ss -s
哪个给了我输出:
Total: 601 (kernel 1071)
TCP: 8 (estab 2, closed 0, orphaned 0, synrecv 0, timewait 0/0), ports 0
Transport Total IP IPv6
1071 - -
RAW 2 0 2
UDP 6 4 2
TCP 8 5 3
INET 16 9 7
FRAG 0 0 0
做ss -a | wc -l
时返回了225条条目。
这引出我一个问题,kernel 1071
实际上是什么?
浏览各种手册页没有提供答案。
使用 strace
,我可以看到 ss
的读取内容:
/proc/net/sockstat
/proc/net/sockstat6
/proc/net/snmp
/proc/slabinfo
浏览这些文件和文档,看起来值似乎来自 /proc/slabinfo
。
通过 /proc/slabinfo
进行1071的抓取又得到了一个条目:
sock_inode_cache 1071 1071 640 51 8 : tunables 0 0 0 : slabdata 21 21 0
浏览sock_inode_cache
上的文件和文档到目前为止没有帮助。我希望这里的人知道内核计数器实际在计数什么,或者可以指出正确的方向。
答案 0 :(得分:1)
内核1071实际计数了什么?
sock_inode_cache
表示Linux内核Slab的统计信息。它显示了那里有多少个套接字inode(活动对象)。
struct socket_alloc
对应于sock_inode_cache
的平板缓存,并包含struct socket
和struct inode
,因此它已连接到VFS。