Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 从/proc/net/sockstat获取网络连接_Linux_Sockets_Networking_Proc - Fatal编程技术网

Linux 从/proc/net/sockstat获取网络连接

Linux 从/proc/net/sockstat获取网络连接,linux,sockets,networking,proc,Linux,Sockets,Networking,Proc,我在显示套接字的/proc中找到此信息: $ cat /proc/net/sockstat sockets: used 8278 TCP: inuse 1090 orphan 2 tw 18 alloc 1380 mem 851 UDP: inuse 6574 RAW: inuse 1 FRAG: inuse 0 memory 0 你能帮我找到这些值的含义吗?这些值是否足够可靠,或者我需要在其他地方搜索它 这些是在Linux中查找TCP/UDP连接信息的另一种方法吗?您可以使用netstat

我在显示套接字的/proc中找到此信息:

$ cat /proc/net/sockstat 
sockets: used 8278
TCP: inuse 1090 orphan 2 tw 18 alloc 1380 mem 851
UDP: inuse 6574
RAW: inuse 1
FRAG: inuse 0 memory 0
你能帮我找到这些值的含义吗?这些值是否足够可靠,或者我需要在其他地方搜索它


这些是在Linux中查找TCP/UDP连接信息的另一种方法吗?

您可以使用
netstat
命令,该命令本身使用
/proc
文件系统,但打印的信息更便于人阅读

例如,如果要显示当前tcp连接,可以发出以下命令:

netstat -t

查看
mannetstat
以了解众多选项。

据我所知,
/proc/net/sockstat
是查找这些信息最可靠的地方。我经常自己使用它,而且只有一台服务器来管理同时连接,这是我唯一可以可靠统计信息的地方

你能帮我找到这些值的含义吗

根据代码,这些值是正在使用的套接字数(TCP/UDP)、孤立TCP套接字数(应用程序没有更多句柄的套接字,它们已经调用了
close()
)。TCP
tw
我不确定,但根据结构名称(TCP_death_row),这些套接字将在不久的将来被彻底销毁
sockets
表示分配的套接字数(据我所知,考虑不同状态下的TCP套接字),而
mem
表示TCP套接字分配的页数(内存使用)


这篇文章围绕这一主题进行了一些讨论。

它们都在内核源代码的某个地方…@MarcB我也同意,但应该有一些简单的方法来获取这些信息。的确如此。这可能是你对OSS世界的贡献。。。一个记录所有这些东西的网站。