~$ cat /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 0101007F:0035 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 11864 1 0000000000000000 100 0 0 10 0
1: 00000000:0016 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 11692 1 0000000000000000 100 0 0 10 0
2: 0100007F:0277 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 267923 1 0000000000000000 100 0 0 10 0
3: 00000000:1A0A 00000000:0000 0A 00000000:00000000 00:00000000 00000000 1000 0 389967 1 0000000000000000 100 0 0 10 0
4: 00000000:0CEA 00000000:0000 0A 00000000:00000000 00:00000000 00000000 117 0 14040 1 0000000000000000 100 0 0 10 0
5: 6F0A0A0A:D76D 4C4B14D1:0050 08 00000000:00000001 00:00000000 00000000 1000 0 249979 1 0000000000000000 112 4 33 10 -1
拿第一列舉例
local_address 0101007F:0035 本地IP(網絡字節序):本地端口(網絡字節序)
rem_address 00000000:0000 遠端IP(網絡字節序):遠端端口(網絡字節序)
st 0A 套接字狀態,不同套接字對應不同的值
enum {
TCP_ESTABLISHED = 1,
TCP_SYN_SENT, // 2
TCP_SYN_RECV, // 3
TCP_FIN_WAIT1, // 4
TCP_FIN_WAIT2, // 5
TCP_TIME_WAIT, // 6
TCP_CLOSE, // 7
TCP_CLOSE_WAIT, // 8
TCP_LAST_ACK, // 9
TCP_LISTEN, // 0A
TCP_CLOSING, // 1 /* Now a valid state */
TCP_MAX_STATES /* leave at the end! */
};
tx_queue:rx_queue 00000000:00000000 發送隊列中的數據長度:狀態是ESTABLISHED,表示的時接受隊列中的數據長度,狀態是LISTEN,表示已完成隊列的長度
tr tm->when 00:00000000 定時器類型,0表示沒有啓動定時器。1表示重傳定時器,4表示持續定時器,2表示連接定時器、FIN_WAIT_2定時器或TCP保活定時器,3表示TIME_WAIT定時器
retrnsmt 00000000 超時重傳次數
uid 0 用戶id
timeout 0 持續定時器或者保活定時器週期性發送出去但未被確認的TCP段數目,收到ACK後清零。
inode 11864 1 0000000000000000 100 0 0 10 0
11864 套接字對應的inode
1 sock結構的引用數
0000000000000000 sock結構的實例地址
100 RTO,單位是clock_t
0 用來計算延時確認的估值
0 快速確認數和是否啓用的標誌位的或運算結果
10 當前擁塞窗口大小
0 如果滿啓動閥值大於0x7ffffff顯示-1,否則表示慢啓動閥值