Homework 4
Due Wednesday 10/26 @ 11:59pm
Question 1: Stop-and-Wait
Host A is transmitting packets of size p bytes
to host B over an unreliable link with capacity b Mbps using the Stop-and-Wait protocol. Host A
typically receives an ACK from host B approximately r ms after a transmission,
so timeout value is set to 1.5r ms.
- What throughput is achieved when no packets or ACKs are lost, and all ACKs are received
exactly r ms after transmission begins (expressed as a function of b, r and p)?
Your answer should be in Mbps.
- If each byte of the packet is corrupted with probability q while transiting the unreliable link,
what is the probability that the entire packet arrives uncorrupted at host B (as a function of
p and q)?
- What throughput is achieved when packets are corrupted with the probability computed
in part 2 and host B does not acknowledge corrupted packets? Assume that acknowledgments
are never corrupted.
- Suppose you are interested in purchasing a forward channel (to transmit packets) which
corrupts packets with probability qf and a back channel (to transmit acknowledgments)
which corrupts ACKs with probability qa. If your budget constrains you to purchase a pair
of channels such that qf + qa = 0.25, what values of qf
and qa should you choose, or are all
choices equivalent?
Question 2: Sliding Window
Questions from Kurose-Ross 7th edition Ch 3. Pages 294-295
- P22. GBN protocol with sender window size 4 and a sequence number range of 1024...
- P23. GBN and SR protocols...
- P26. Enormous file...
- P27. TCP
Question 3: TCP
Suppose you are interested in monitoring a TCP flow from host A to host B by installing a network monitor at router C which sees
both the data packets and the ACKs of the flow. For each packet that goes by, your monitor
logs 1) the time, 2) whether the packet was data, ACK, SYN or FIN, and 3) the sequence numbers
of packets in the forward direction and the Acknowledgment fields of packets in the reverse
direction (ACKs). We call this time-ordered information a TCP event stream
- Consider this partial event stream viewed by a network monitor:
| Time | Type of Packet | Sequence Number / ACK |
| 21 | Data | 36000 |
| 22 | Data | 37000 |
| 25 | ACK | 37000 |
|
26 | ACK | 38000 |
|
30 | Data | 38000 |
|
31 | Data | 39000 |
|
33 | Data | 41000
|
|
40 | ACK | 39000
|
|
41 | ACK | 39000
|
|
70 | Data | 38000
|
- Of the data packets witnessed at time 30-33, which arrived at B and which did not?
- Give the simplest explanation for the transmission we see at time 70.
- Now consider another TCP flow between A and B observed by C. Assume that the one-way
latency between A and B is 40 ms, and that C is 30 ms away from A and 10 ms away from
B. Also assume that the time to put bits on the wire is negligible. Now consider a TCP
flow in which the three-way handshake is initiated by A, and in which A has 3KB of data
to send to B. Assume that the ISN chosen by A is 8999 and that A sends 1KB payloads.
During this transfer, the second data packet is lost somewhere between A and C, and is
retransmitted after a 200ms timeout. Provide the TCP event stream that C witnesses for
this transfer. [Hint: Start with a regular timeline diagram, and then translate to event
stream table format.]
- Assuming actual round-trip time fluctuations are small, how could you estimate the RTT
of a monitored connection using an event stream from the middle of the network (and
without any other information)? Be as specific as you can about which data packets and
ACKs in a stream you will use.
What to Submit
Submit your username-hw04.doc or username-hw04.pdf or username-hw04.txt file with the the answers to these questions
on Moodle
Grading Criteria
Refer to the grading criteria file:
hw04.criteria.
Academic Honesty and Collaboration
Cooperation is recommended in understanding programming
concepts and system features. But the actual solution of the
assignments including all programming must be your individual
work. For example, copying without attribution any part of someone
else's program is plagiarism, even if you have modified the code.
The University takes acts of cheating and plagiarism very
seriously.