Test Description:
This test shows the behavior of generic Tahoe TCP with delayed ACKs.Expected output:
Server .................Router.................Client
8Mbs 5ms 800kbs 100ms
6(0)------------------0(1) 0(0)-----------------7(0)
SSF Test Configuration File: f5.dml
send window = receive window = 50 packetsSSF Tcpdump File: f5.tcpdump (at router)
Note that the ACK for the SYN+ACK packet is piggy-backed with the first data request sent by Client. The ACK for the data request is piggy-backed with the first data sent by Server. The rules for ack generation with delayed ack are not well seen at the router because of delay-induced near-overlap of symbols on the sequence plot. In contrast, they are well seen at the client tcpdump sequence plot. Sequence plot at Client side:
From the Client tcpdump, we can see that:
NS Test Trace with the same parameters NS tcpdump trace file:f5.tr
The trace plot at client recorded the receive time of data packet and
send time of ACK. The first ACK must be a delayed ACK, the timestamp of
this packet must be a fast timeout tick. Starting from this point, we label
the x-axis every 200 ms. The 4th ACK must also be a delayed ACK, but it's sent
between 500ms and 600ms after the 1st delayed ACK. It appears that the ns
TCP implementation uses a different method of timing the delayed acks.
Trace Analysis: The output is consistent with expected output. |