COMP3331 Lab4
COMP3331 Lab4
Question 2. What is the sequence number of the TCP segment containing the HTTP POST
command? Note that to find the POST command, you’ll need to dig into the packet content field
at the bottom of the Wireshark window, looking for a segment with a “POST” within its DATA
field.
From the below image the sequence number of the TCP segment containing the HTTP POST
command is 1.
Question 3. Consider the TCP segment containing the HTTP POST as the first segment in the
TCP connection.
(a) What are the sequence numbers of the first six segments in the TCP connection
(including the segment containing the HTTP POST) sent from the client to the webserver
(Do not consider the ACKs received from the server as part of these six segments)?
(b) At what time was each segment sent? When was the ACK for each segment received?
Given the difference between when each TCP segment was sent and when its
acknowledgement was received, what is the RTT value for each of the six segments?
(c) What is the EstimatedRTT value (see relevant parts of Section 3.5 or lecture slides) after
receiving each ACK? Assume that the initial value of EstimatedRTT is equal to the
measured RTT ( SampleRTT ) for the first segment and then is computed using
the EstimatedRTT equation for all subsequent segments. Set alpha to 0.125.
Question 5. What is the minimum amount of available buffer space advertised at the receiver for
the entire trace? Does the lack of receiver buffer space ever throttle the sender?
From the picture below the minimum amount of available buffer space advertised at the receiver
for the entire trace is 5840 bytes.
Looking through the entire trace the window grows and reaches a maximum receiver buffer size
of 62780. As there is never a lack of receiver buffer space the sender is never throttled.
Question 6. Are there any retransmitted segments in the trace file? To answer this question,
what did you check for (in the trace)?
As seen from the picture below, all sequence numbers from the source to the destination are
increasing meaning that there were no retransmitted segments in this trace file. If there were
retransmitted segments there would be repeated sequence numbers which is not indicated in
the graph below.
Question 7. How much data does the receiver typically acknowledge in an ACK? Can you
identify cases where the receiver is ACKing every other received segment (recall the discussion
about delayed acks from the lecture notes or Section 3.5 of the text)?
The receiver typically acknowledges the amount of data.
Acknowledged Sequence number Acknowledged Data
566 566
2026 1460
3486 1460
4946 1460
6406 1460
A case where the receiver is ACKing every other received segment occurs in what is a delayed
ack. An example of when this occurs in the trace file is when the source sends 2 packets with
sequence number 36509 and then another with a sequence number 37969. However, the
receiver only ACKs 37969, which is an example of delayed ACK since it successfully received
both packets.
Question 8. What is the TCP connection's throughput (bytes transferred per unit of time)?
Explain how you calculated this value.
To calculate the TCP connection’s throughput, we gather the total bytes transferred divided by
the total time taken. To identify the size of the data transferred, we look at the last ack number
minus the first sequence number (ignoring SYN)
Total bytes transferred = 164091 – 1
Total bytes transferred = 164090 bytes
To calculate the total time taken to transfer the total bytes we look at the last ACK sent minus
the time of the first segment sent.