Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

1 - [6 pts] Compare the GBN, SR, and TCP protocols as approaches toward pipeline

ID: 3844491 • Letter: 1

Question

1 - [6 pts] Compare the GBN, SR, and TCP protocols as approaches toward pipelined error recovery for reliable data transfer. Consider three packets are sent from a client to the server with sequence numbers 1, 2, and 3. Also, a connection is established prior to sending the first packet and there are no timers.

If the first packet arrives successfully, what is the sequence number in the corresponding acknowledgment sent by the server if using:

• GBN?

• SR?

• TCP?

Now consider the second packet is lost in transit to the server, but the third is received successfully. What is the sqeuence number in the corresponding acknowledgment sent by the server if using:

• GBN?

• SR?

• TCP?

2 – [4 pts] Suppose we provide a new implementation of the transport layer protocol TCP providing the same functionality using different algorithms.

• How does this impact operations at the application layer?

• How does this impact operations at the network layer?

3 – [4 pts] Suppose we eliminate TCP and instead rely exclusively on UDP as our only transport layer protocol.

• How does this impact operations at the application layer?

• How does this impact operations at the network layer?

4 – [4 pts] Consider the rdt protocol as discussed in class.

• What is the role of sequence numbers in the rdt protocol?

• What is the role of timers in the rdt protocol?

5 – [4 pts] Briefly compare and contrast TCP and UDP

6 – [4 pts] Describe an application for which UDP is an appropriate transport layer protocol. Why?

7 – [4 pts] Describe an application for which TCP is an appropriate transport layer protocol. Why?

8 – [4 pts] Briefly compare and contrast congestion control and flow control.

9 – Consider the figure below illustrating the operation of TCP Reno and answer the following questions.

• [3 pts] How do we identify when TCP slow start is operating? At what transmission round does this occur in the figure?

• [3 pts] How do we identify when TCP congestion avoidance is operating? At what transmission round does this occur in the figure?

• [4 pts] What is the initial value of sshthresh and how do we identify it?

• [3 pts] How do we identify a segment loss event occur via timeout? Do we see this in the figure? Where?

• [3 pts] How do we identify a segment loss event occur via a triple duplicate acknowledgment? Do we see this in the figure? Where?

45 40- 35- 30- 25- 20 15- 10- 4 6 8 10 12 14 16 18 20 22 24 26 Transmission round 5050505050 44332211 (sluaw bas) aziS MopulM uonsa6uoD

Explanation / Answer

The comparision and contrast between UDP and TCP is given below:

1. TCP stands for "transmission control protocol" while UDP stands for "user datagram protocol".
2. TCP is connection oriented protocol while UDP is connection less protocol.
3. TCP required where we required high reliability. While UDP is used very reliability is not very important.
4. In TCP, the speed of transmission is slow that UDP.
5. TCP provides the error correction mechanism while in UDP there is no error correction mechanisms.

Applications where UDP is appropriate transport layer protocol are given below:

1. In DNS (Domain name system) we are using UDP.
2. Its being used in SNMP(simple network management protocol)
3. UPD is also used in Dynamic host configuration.

Applications where TCP is appropriate transport layer protocol are given below:

1. In Web we are using TCP.
2. In FTP(File Transfer Protocol) we are using TCP.
3. SMTP(Simple mail transfer protocol) is based on TCP.
4. Telnet as well as SSH use the TCP.

The comparision and contrast between Flow Control and Congestion Control is given below:

1. In flow control we make sure that sender does not send more data so that receiver becomes overloaded. While in congestion control we make sure that our network is able to handle the high load packet rather than sending less packet like flow control.

2. Flow Control is basically initiated by the sender of the packet. While congestion control is being performed by the router in the network.