see attachment

1 answer below »
see attachment






CMP_SCI_4730_Homework 2 1/3 Assigned: 30th September, 2022 Due: 10th October, 2022 Computer Networks and Communications (CMP_SCI 4730) Homework 2 (Transport Layer) Remarks: Maximum raw score achievable is 115, maximum scaled score achievable is 100. 1. Give brief answers for each of the following parts: [15] a) Explain at least two features of TCP that make the data transfer reliable. b) Explain two features that TCP has and UDP does not, making the latter an unreliable protocol. c) Why would an application programmer choose to run an application over UDP rather than TCP? 2. Explain briefly how multiplexing and demultiplexing work in the transport layer. Use a sketch if that helps your explanation. [5] 3. QUIC (Quick UDP Internet Connections) is a new transport layer protocol. What features makes this protocol better than UDP? [5] 4. State True or false for each of the following parts: [2 each] a) Host A sends a large multi-segment file to Host B over a TCP connection. If a segment with a sequence number ‘s’ is sent, then the next segment will necessarily have the sequence number ‘s+1’. b) In TCP, the sequence number of the segment is the same as that of the first byte of the segment. c) UDP can carry extra control information in its header because of which it becomes a reliable transport protocol. d) In the network assisted congestion control both the network and the transport layers have to co-operate. e) The size of ‘rwnd’ remains same throughout the duration of a TCP connection. 5. A packet is transmitted from St. Louis to Chicago over a 1 Gbps link. The packet size is 5000 bits has a transmission delay of 10 microseconds. If the ACK from Chicago is received in 20 msec., then what is the channel utilization? What is CMP_SCI_4730_Homework 2 2/3 the effective throughput? Assume that the ACK packet is very small and has no transmission delay. [10] 6. In problem 4, it is seen that the utilization of the 1 Gbps channel is low, and the effective throughput is less than 1 Mbps. [10] a) How does pipelining in TCP improve channel utilization? b) If the sender could send 10 packets without waiting for an ACK, then what would be the utilization and throughput? 7. UDP uses 16-bit checksums for error control. The following three 16-bit words are to be sent from host A to host B: 1000011101010101, 0010011111000011, and 1111000110101011. [12] a) Calculate the checksum that A will send to B. b) How will B use the checksum to verify integrity of data? c) Does the method that you suggest detect all one-bit errors? Why? d) Can it correct one-bit errors? Why? 8. To set up a connection, TCP uses a 3-way handshake using segments with the following flags SYN, SYN-ACK and ACK set as required. [20] a) What is the sequence in which these flags are used in the handshake process? b) What feature of TCP handshake makes TCP vulnerable to DoS attack known as SYN flooding? c) During the handshake, the server sends and Initial Sequence Number (ISN) with the SYN-ACK. Why is this number randomly generated? d) If the attacker can steal a large number of ISNs sent by the server, can the attacker cause server to create many fully open connections by sending ACKs using those ISNs? What can server do to prevent such an attack? 9. Host A sends data segments to B and receives ACKs for correctly received data segments. If the timeout value is large enough such that 5 consecutive data segments can be received by B and their ACKs can be received by A, if none of these are lost. Suppose host A sends 5 segments to B and the 2nd segment is lost. In the next attempt all 5 data segments are correctly received by B. Based on the given information, answer the following for both GBN and SR. [10] a) How many segments does A have to send in all and how many ACKs does B send? b) What are their sequence numbers? CMP_SCI_4730_Homework 2 3/3 10. The hypothetical data transfer protocol (HDTP) uses only negative ACKs. If you were the sender and transfer data only infrequently, would you prefer HDTP over the normal implementations of TCP that use ACKs? Explain your answer. Now suppose that you have a lot of data to send and the end-to-end connection experiences few losses. Would you still prefer HDTP? Explain your answer. [10] 11. The figure below pertains to the TCP Reno behavior. Answer the following with a brief justification. [Based on Chap 3, Prob 40 of the textbook] [1 point each] a) Identify the intervals where slow start is operating. b) Identify the intervals where congestion avoidance is operating. c) After the 16th transmission round, is the segment loss detected by a triple duplicate ACK or by a timeout? d) After the 22nd transmission round, is the segment loss detected by a triple duplicate ACK or by a timeout? e) What is the initial value of sshthresh? f) What is the value of ssthresh at the 24th transmission round? g) Assuming a packet loss is detected after the 26th round by the receipt of a triple duplicate ACK, what will be the values of the congestion window size and of ssthresh? h) Suppose TCP Tahoe is used (instead of TCP Reno) and assume that triple duplicate ACKs are received at the 16th round. What are the ssthresh and the congestion window size at the 19th round?
Answered 4 days AfterOct 06, 2022

Answer To: see attachment

Baljit answered on Oct 10 2022
62 Votes
MULTIPLEXING AND DEMULTIPLEXING WORK IN THE TRANSPORT LAYER
1.
a) TCP support segmentation mechanism that is data is divided into small segments called packet. Each packet sent by sender have unique Sequence number is used to correct the order of the packet received. Which helps re
ceiver to make correct order of the data ,elimination of the duplicate and damaged segments of the data.
The Acknowledgement mechanism of the TCP makes it reliable. Because receiver sends acknowledgement to the sender whether it received the data packet or not. If receiver did not receive the data packet then it will send a negative acknowledgement to sender so that sender can resend it.
b) UDP does not support segmentation of data wherever TCP support it and each segment sent by sender has unique sequence number oriented mechanism that helps to restore order of the segments and helps to eliminate duplicate and damaged data segments.
TCP has acknowledgement mechanism which helps to receive lost and damaged data because receiver sends acknowledgement to the sender whether it received the data packet or not but in UDP there is no such mechanism.

c) Application programmer choose to run application over UDP instead of it is unreliable than TCP. Since UDP don’t have much requirement like acknowledgement ,sequence number ,flow control so there is no delay to make a connection. So it offers faster speed than TCP. In the application where programmer need more speed than reliability they prefer UDP.
2. Multiplexing is the process of taking data from different application processes of the sender and enveloping that data with header and sending full data to receiver while demultiplexing is the process of delivery of data received to correct application. For the process of multiplexing and demultiplexing of data .Sender must know the IP address of receiver and port number of the application at destination side.
Let’s Take the example:- Suppose there is sender A and receiver B. Both have two applications X and Y. Now application X and Y of sender want to send data to application X and Y of receiver. To send data from A to B, A must mention the IP address of B and Port number of X and Y of receiver B in the header. Data from both application of sender enveloped with respective header that contain IP and Port number and sent as single message called multiplexing. At receiving end message is unwrapped and sent to respective port number.
Figure 1 Multiplexing and demultiplexing

3. QUIC (Quick UDP internet Connections) is a transport layer network protocol which is designed to reduce the delay . The aim of QUIC is to make system faster and more reliable .It is built on the top of UDP. It increase the speed by reducing connection establishment time and by eliminating head of line blocking problem .
We know that UDP is not reliable that...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here