diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /Documentation/networking/proc_net_tcp.txt |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'Documentation/networking/proc_net_tcp.txt')
-rw-r--r-- | Documentation/networking/proc_net_tcp.txt | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Documentation/networking/proc_net_tcp.txt b/Documentation/networking/proc_net_tcp.txt new file mode 100644 index 000000000000..59cb915c3713 --- /dev/null +++ b/Documentation/networking/proc_net_tcp.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | This document describes the interfaces /proc/net/tcp and /proc/net/tcp6. | ||
2 | |||
3 | These /proc interfaces provide information about currently active TCP | ||
4 | connections, and are implemented by tcp_get_info() in net/ipv4/tcp_ipv4.c and | ||
5 | tcp6_get_info() in net/ipv6/tcp_ipv6.c, respectively. | ||
6 | |||
7 | It will first list all listening TCP sockets, and next list all established | ||
8 | TCP connections. A typical entry of /proc/net/tcp would look like this (split | ||
9 | up into 3 parts because of the length of the line): | ||
10 | |||
11 | 46: 010310AC:9C4C 030310AC:1770 01 | ||
12 | | | | | | |--> connection state | ||
13 | | | | | |------> remote TCP port number | ||
14 | | | | |-------------> remote IPv4 address | ||
15 | | | |--------------------> local TCP port number | ||
16 | | |---------------------------> local IPv4 address | ||
17 | |----------------------------------> number of entry | ||
18 | |||
19 | 00000150:00000000 01:00000019 00000000 | ||
20 | | | | | |--> number of unrecovered RTO timeouts | ||
21 | | | | |----------> number of jiffies until timer expires | ||
22 | | | |----------------> timer_active (see below) | ||
23 | | |----------------------> receive-queue | ||
24 | |-------------------------------> transmit-queue | ||
25 | |||
26 | 1000 0 54165785 4 cd1e6040 25 4 27 3 -1 | ||
27 | | | | | | | | | | |--> slow start size threshold, | ||
28 | | | | | | | | | | or -1 if the treshold | ||
29 | | | | | | | | | | is >= 0xFFFF | ||
30 | | | | | | | | | |----> sending congestion window | ||
31 | | | | | | | | |-------> (ack.quick<<1)|ack.pingpong | ||
32 | | | | | | | |---------> Predicted tick of soft clock | ||
33 | | | | | | | (delayed ACK control data) | ||
34 | | | | | | |------------> retransmit timeout | ||
35 | | | | | |------------------> location of socket in memory | ||
36 | | | | |-----------------------> socket reference count | ||
37 | | | |-----------------------------> inode | ||
38 | | |----------------------------------> unanswered 0-window probes | ||
39 | |---------------------------------------------> uid | ||
40 | |||
41 | timer_active: | ||
42 | 0 no timer is pending | ||
43 | 1 retransmit-timer is pending | ||
44 | 2 another timer (e.g. delayed ack or keepalive) is pending | ||
45 | 3 this is a socket in TIME_WAIT state. Not all fields will contain | ||
46 | data (or even exist) | ||
47 | 4 zero window probe timer is pending | ||