Unit 4 Part A 1. What is TCP? • Transmission Control Protocol (TCP) offers the following services – Reliable – Connection oriented – Byte-stream service It is a more sophisticated transport protocol is one that offers a reliable, connection-oriented, byte-stream service. Transmission Control Protocol (TCP) is probably the most widely used protocol. It also includes a flow-control. 2. Draw TCP header format
3. What is UDP? The User Datagram Protocol (UDP) is called a connectionless, unreliable transport protocol. It does not add anything to the services of IP except to provide process-to-process communication instead of host-to-host communication. It is host to host(process to process) communication transport protocol UDP is a simple transport protocol that extends the host-to-host delivery of packets of the underlying network into a process-to-process communication 4. Draw UDP packet format
5. When can an application make use of UDP? • Multimedia streaming – Retransmitting lost/corrupted packets is not worthwhile – By the time the packet is retransmitted, it’s too late – E.g., telephone calls, video conferencing, gaming
•
Simple query protocols like Domain Name System – Overhead of connection establishment is overkill – Easier to have application retransmit if needed
6. What are the advantages of using UDP over TCP? • Finer control over what data is sent and when – As soon as an application process writes into the socket – … UDP will package the data and send the packet • No delay for connection establishment – UDP just blasts away without any formal preliminaries – … which avoids introducing any unnecessary delays • No connection state – No allocation of buffers, parameters, sequence #s, etc. – … making it easier to handle many active clients at once • Small packet header overhead – UDP header is only eight-bytes long 7. Compare TCP and UDP (Nov 2016) TCP Acronym for
Transmission Control Protocol
UDP User Datagram Protocol or Universal Datagram Protocol
TCP is a connection-oriented UDP is a connectionless protocol. protocol. Reliable Unreliable Since it follows Error control, Since there is no connection, error Function Flow control, Acknowledgement control, flow control and mechanism acknowledgement Use by other HTTP, HTTPs, FTP, SMTP, DNS, DHCP, TFTP, SNMP, RIP, protocols Telnet VOIP. The speed for TCP is slower than UDP is faster because there is no Speed of transfer UDP. error-checking for packets. There is absolute guarantee that There is no guarantee that the the data transferred remains Reliability messages or packets sent would reach intact and arrives in the same at all. order in which it was sent. Header Size TCP header size is 20 bytes UDP Header size is 8 bytes. UDP does error checking, but no Error Checking TCP does error checking recovery options. Connection
8. What is mean by congestion? Congestion in a network occurs if user sends data into the network at a rate greater than that allowed by network resources. 9. What is congestion control in TCP? It involves preventing too much data from being injected into the network, thereby causing switches or links to become overloaded. Thus flow control is an end to an end issue, while congestion control is concerned with how hosts and networks interact. 10. List out various features of sliding window protocol? TCP’s variant of the sliding window algorithm, which serves several purposes:
(1) It guarantees the reliable delivery of data, (2) It ensures that data is delivered in order, and (3) It enforces flow control between the sender and the receiver. 11. List the mechanisms used for congestion control. 1. Additive Increase / Multiplicative Decrease 2. Slow start 3. Fast transmit and fast recovery 12. Define slow start(May 2016) It is a congestion control mechanism used with TCP. Slow start is used to rapidly increase the sending rate up to this value, and then additive increase is used beyond this point. Slow start that is used to increase the congestion window rapidly from a cold start. Slow start effectively increases the congestion window exponentially, rather than linearly. Specifically, the source starts out by setting CongestionWindow to one packet. When the ACK for this packet arrives, TCP adds 1 to CongestionWindow and then sends two packets. Upon receiving the corresponding two ACKs, TCP increments CongestionWindow by 2—one for each ACK—and next sends four packets. The end result is that TCP effectively doubles the number of packets it has in transit every RTT. 13. Define congestion The idea of TCP congestion control is for each source to determine how much capacity is available in the network, so that it knows how many packets it can safely have in transit. Once a given source has this many packets in transit, it uses the arrival of an ACK as a signal that one of its packets has left the network, and that it is therefore safe to insert a new packet into the network without adding to the level of congestion. By using ACKs to pace the transmission of packets, TCP is said to be selfclocking. 14. Differentiate delay and jitter Delay: Is the amount of time data(signal) takes to reach the destination. Now a higher delay generally means congestion of some sort of breaking of the communication link. Jitter: Is the variation of delay time. This happens when a system is not in deterministic state eg. Video Streaming suffers from jitter a lot because the size of data transferred is quite large and hence no way of saying how long it might take to transfer. 15. What is RED? Random Early Detection in each router is programmed to monitor its own queue length and when it detects that congestion is imminent, to notify the source to adjust its congestion window. 16. What is the difference between service point address, logical address and physical address?
17. What are the three events involved in the connection? For security, the transport layer may create a connection between the two end ports. A connection is a single logical path between the source and destination that is associated with all packets in a message. Creating a connection involves three steps: Connection establishment Data transfer Connection release 18. How do fast retransmit mechanism of TCP works?(April 2017) A TCP sender uses a timer to recognize lost segments. If an acknowledgement is not received for a particular segment within a specified time (a function of the estimated round-trip delay time), the sender will assume the segment was lost in the network, and will retransmit the segment. 19. Compare flow control versus congestion control.(Nov 2017) Flow control prevents a fast sender from overrunning the capacity of slow receiver. Congestion control prevents too much data from being injected into the network, thereby causing switches or links overloaded beyond its capacity. Flow control is an end-to-end issue, whereas congestion control is interaction between hosts and network. Part B 1. Explain the congestion control mechanism in detail (May 2015,Nov 2015,May 2016,Nov 2016, Nov 2017) 2. With the help of a neat diagram, explain how TCP messages a byte achieved through TCP. Also give the packet format of TCP( May 2015, Nov 2015) 3. Explain the UDP (May 2016) 4. Explain connection management with state transition diagram (May 2015) 5. Explain in detail about the simple demultiplexing and reliable byte stream. (Note : simple demultiplexing is UDP and reliable byte stream is TCP) 6. Explain various fields of the TCP header and the working of the TCP protocol.(Nov 2016) 7. With TCPs slow start and AIMD for congestion control, show how the window size will vary for a transmission where every 5th packet is lost. Assume an advertised window size of 50 MSS.( April 2017)