DTraceでTCPを眺めてみる

DTraceでTCPのCongestion Windowを可視化してみた記録

はじめに

TCPの帯域遅延積とかスロースタートの理解が、人によって異なる話はさておき。

DTraceを使ってTCPフローを眺めたら、もしかしてCongestion Windowも可視化出来るんじゃね?って思って簡単なDスクリプトを書いてみた。

一瞬かじっただけなので、非常に稚拙なのは許してぽん。

DTraceスクリプト

少し手直し。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/usr/sbin/dtrace -s
#pragma D option quiet
#pragma D option switchrate=50hz
dtrace:::BEGIN
{
printf(" %3s %15s:%-5s      %15s:%-5s %6s  %s  %10s %6s %6s %6s\n", "CPU", "LADDR", "LPORT", "RADDR", "RPORT", "BYTES", "FLAGS", "LWIN", "LTHRESH", "RWIN", "RSCALE");
}

tcp:::send
{
this->length = args[2]->ip_plength - args[4]->tcp_offset;
printf(" %3d %16s:%-5d -> %16s:%-5d %6d  (", cpu,args[2]->ip_saddr, args[4]->tcp_sport,args[2]->ip_daddr, args[4]->tcp_dport, this->length);
}


tcp:::receive
{
this->length = args[2]->ip_plength - args[4]->tcp_offset;printf(" %3d %16s:%-5d <- %16s:%-5d %6d  (", cpu,args[2]->ip_daddr, args[4]->tcp_dport,args[2]->ip_saddr, args[4]->tcp_sport, this->length);
}


tcp:::send,
tcp:::receive
{
printf("%s", args[4]->tcp_flags & TH_FIN ? "FIN|" : "");
printf("%s", args[4]->tcp_flags & TH_SYN ? "SYN|" : "");
printf("%s", args[4]->tcp_flags & TH_RST ? "RST|" : "");
printf("%s", args[4]->tcp_flags & TH_PUSH ? "PUSH|" : "");
printf("%s", args[4]->tcp_flags & TH_ACK ? "ACK|" : "");
printf("%s", args[4]->tcp_flags & TH_URG ? "URG|" : "");
printf("%s", args[4]->tcp_flags & TH_ECE ? "ECE|" : "");
printf("%s", args[4]->tcp_flags & TH_CWR ? "CWR|" : "");
printf("%s", args[4]->tcp_flags == 0 ? "null " : "");
printf("\b) ");
}

tcp:::send,
tcp:::receive
{
printf("%d %d %d %d", args[3]->tcps_cwnd, args[3]->tcps_cwnd_ssthresh, args[3]->tcps_rwnd,args[3]->tcps_rcv_ws);
printf("\n");
}

試しに動かしてみた感じ。(このとき、2008R2からiSCSIイニシエータで接続して、切断するまで。SSHは…面倒なのでgrepで消した。

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
# ./tcp_win.d \grep -v ":22"
CPU LADDR:LPORT RADDR:RPORT BYTES FLAGS LWIN LTHRESH RWIN RSCALE
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (SYN) 0 1073725440 262300 14
1 192.168.122.32:3260 -> 192.168.122.24:61378 0 (SYN|ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 208 (PUSH|ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 0 (ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 88 (PUSH|ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 348 (PUSH|ACK) 4380 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 0 (ACK) 5840 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 336 (PUSH|ACK) 5840 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 5840 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 7300 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 64 (PUSH|ACK) 8760 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 8760 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 56 (PUSH|ACK) 11680 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 11680 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 56 (PUSH|ACK) 14600 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 14600 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 7300 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 8760 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 10220 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 84 (PUSH|ACK) 10220 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 10220 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 10220 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 11680 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 11680 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 13140 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 152 (PUSH|ACK) 13140 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 13140 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 13140 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 14600 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 14600 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 68 (PUSH|ACK) 16060 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 56 (PUSH|ACK) 17520 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 17520 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 20440 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 56 (PUSH|ACK) 23360 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 23360 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 68 (PUSH|ACK) 26280 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 72 (PUSH|ACK) 26280 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 26280 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 29200 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 56 (PUSH|ACK) 32120 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 35040 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 36500 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 37960 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 39420 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 42340 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 43800 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 46720 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 48180 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 51100 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 52560 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 54020 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 55480 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 58400 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 59860 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 61320 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 62780 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 64240 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 67160 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 68620 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 71540 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 73000 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 74460 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 75920 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 78840 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 16060 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 16060 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 17520 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 18980 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 18980 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 18980 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 20440 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 21900 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 21900 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 23360 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 24820 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 24820 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 24820 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 26280 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 26280 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 27740 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 29200 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 30660 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 30660 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 32120 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 32120 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 33580 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 33580 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 33580 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 35040 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 36500 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 37960 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 39420 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 40880 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 40880 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 42340 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 43800 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 45260 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 45260 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 46720 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 48180 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 49640 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 49640 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 51100 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 52560 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 54020 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 55480 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 56940 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 56940 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 58400 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 59860 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 61320 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 62780 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 64240 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 65700 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 65700 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 67160 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 68620 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 70080 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 70080 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 71540 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 73000 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 74460 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 75920 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 77380 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 77380 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 78840 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 80300 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 80300 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 81760 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 97820 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 99280 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 100740 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 103660 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 81760 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 83220 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 83220 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 84680 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 84680 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 86140 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 86140 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 87600 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 87600 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 89060 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 89060 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 90520 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 90520 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 91980 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 91980 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 93440 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 93440 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 94900 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 94900 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 96360 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 96360 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 97820 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 99280 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 100740 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 102200 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 102200 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 103660 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 105120 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 105120 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 108040 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 109500 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 110960 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 113880 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 115340 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 116800 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 119720 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 121180 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 122640 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 125560 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 106580 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 106580 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 108040 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 109500 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 110960 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 112420 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 112420 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 113880 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 115340 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 116800 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 118260 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 118260 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 119720 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 121180 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 122640 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 124100 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 124100 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 125560 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 127020 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 127020 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 560 (PUSH|ACK) 128480 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (ACK) 128480 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 48 (PUSH|ACK) 129940 1073725440 262800 3
0 192.168.122.32:3260 -> 192.168.122.24:61378 0 (FIN|ACK) 129940 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 48 (PUSH|ACK) 129940 1073725440 262800 3
1 192.168.122.32:3260 <- 192.168.122.24:61378 0 (FIN|ACK) 129940 1073725440 262800 3
1 192.168.122.32:3260 -> 192.168.122.24:61378 0 (ACK) 131400 1073725440 262800 3

Congestion Windowが徐々に大きくなっているのが見えるね。

どうしたら面白おかしく書けるだろうか。

Hugo で構築されています。
テーマ StackJimmy によって設計されています。