123456789101112131415161718192021222324252627282930 |
- // SUT is a server, i.e. it opens a socket, binds and listens. The peer connects to the server.
- // The peer sends 3 messages. The first and third are acked. A retransmission should be sent
- // within the next second.
- // Problem: The RTO is too high, more than 2 seconds.
- 0.000 socket(..., SOCK_STREAM, IPPROTO_TCP) = 3
- 0.000 setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
- 0.000 bind(3, ..., ...) = 0
- 0.000 listen(3, 1) = 0
- 0.100 < S 0:0(0) win 32792 <mss 1000,sackOK,nop,nop,nop,wscale 7>
- 0.100 > S. 0:0(0) ack 1 <...>
- 0.150 < . 1:1(0) ack 1 win 257
- 0.150 accept(3, ..., ...) = 4
- 0.200 write(4, ..., 1000) = 1000
- 0.200 > . 1:1001(1000) ack 1
- 0.210 < . 1:1(0) ack 1001 win 257
- 0.220 write(4, ..., 1000) = 1000
- 0.220 > . 1001:2001(1000) ack 1
- 0.221 write(4, ..., 1000) = 1000
- 0.221 > . 2001:3001(1000) ack 1
- 0.300 < . 1:1(0) ack 1 win 257 <sack 2001:3001,nop,nop>
- * > . 1001:2001(1000) ack 1 // Retransmission
- +0.05 < . 1:1(0) ack 3001 win 257
- +0.05 close(4) = 0
- +0 > F. 3001:3001(0) ack 1
- +0 < F. 1:1(0) ack 3002 win 257
- +0 > . 3002:3002(0) ack 2
|