Linux哲学思想是一切皆文件,即对于Linux做的任何操作,都可以在Linux中找到与之对应的文件。
进程1421中36 -> socket:[24056]
在进程1421中存在fd 37(对应socket:[24056]),24056即为socket连接对应的inode节点,该节点的信息可以在/proc/net/tcp中找打,即上图所示。
/proc/net/tcp详解
参考链接:
https://www.kernel.org/doc/html/latest/networking/proc_net_tcp.html?highlight=proc%20net%20tcp
- 第一部分
13: 0781A8C0:0016 0A81A8C0:C0E8 01
| | | | | |---> 套接字状态
| | | | |--------> 远端端口,16进制表示
| | | |---------------> 远端IP地址
| | |----------------------> 本地端口
| |----------------------------> 本地IP地址
|-----------------------------------> Linux为每个socket建立的唯一编号
套接字状态:
1:TCP_ESTABLISHED
2:TCP_SYN_SENT
3:TCP_SYN_RECV
4:TCP_FIN_WAIT1
5:TCP_FIN_WAIT2
6:TCP_TIME_WAIT
7:TCP_CLOSE
8:TCP_CLOSE_WAIT
9:TCP_LAST_ACL
10:TCP_LISTEN
11:TCP_CLOSING
- 第二部分
00000000:00000000 02:00015FD4 00000000
| | | | |-------> 超时重传次数
| | | |----------------> 超时时间
| | |----------------------> 定时器类型
| |-----------------------------> 接收队列
|-------------------------------------> 发送队列
- 第三部分
0 0 720656 2 ffff94a98f617000 25 4 23 10 27
| | | | | | | | | |----> 如果不等于-1,则该值表示慢启动阈值
| | | | | | | | |-------> 当前拥塞窗口大小
| | | | | | | |----------> 快速确认数和是否启用的标志位的或运算结果
| | | | | | |-------------> 用来计算延时确认的估量值
| | | | | |---------------> 重传超时时间
| | | | |-------------------------> socket对应的内存地址
| | | |-----------------------------------> sockfd对应的引用计数
| | |---------------------------------------> socket inode节点号
| |--------------------------------------------> unanswered 0-window probes
|-----------------------------------------------------> 有效用户ID