Module 2 Flashcards
What does the transport layer provide?
The transport layer provides an end-to-end connection between two applications running on different hosts
What is a packet for the transport layer called?
Segment
What is a packet for the transport layer called?
UDP & TCP
What is multiplexing, and why is it necessary?
A method used by networks to consolidate multiple signals – digital or analog – into a single composite signal that is transported over a common medium, such as a fiber optic cable or radio wave. It enables a host to run multiple applications and use the network simultaneously.
Describe the two types of multiplexing/demultiplexing.
Connectionless & connection-oriented
What are the differences between UDP and TCP?
UDP provides basic functionality and relies on the application layer to implement the remaining. On the other hand, TCP provides strong primitives to make end-to-end communication more reliable and cost-effective.
When would an application layer protocol choose UDP over TCP?
So with some real-time applications that are sensitive to delays, UDP is a better option, despite possibly higher packet loss.
Explain the TCP Three-way Handshake.
Step 1: The TCP client sends a special segment (containing no data) with the SYN bit set to 1. The client also generates an initial sequence number (client_isn) and includes it in this special TCP SYN segment.
Step 2: The server, upon receiving this packet, allocates the required resources for the connection and sends back the special “connection-granted” segment which we call SYNACK segment. This packet has the SYN bit set to 1, the acknowledgement field of the TCP segment header set to client_isn+1, and a randomly chosen initial sequence number (server_isn) for the server.
Step 3: When the client receives the SYNACK segment, it also allocates buffer and resources for the connection and sends an acknowledgment with SYN bit set to 0.
Explain the TCP connection tear down.
Step 1: When the client wants to end the connection, it sends a segment with FIN bit set to 1 to the server.
Step 2: The server acknowledges that it has received the connection closing request and is now working on closing the connection.
Step 3: The server then sends a segment with FIN bit set to 1, indicating that connection is closed.
Step 4: The client sends an ACK for it to the server. It also waits for sometime to resend this acknowledgment in case the first ACK segment is lost.
What is Automatic Repeat Request or ARQ?
A receiver sends acknowledgments indicating that it has successfully received the specific segment. If the sender does not receive an acknowledgment within a given period of time, the sender can assume the packet is lost and resend it. This method of using acknowledgments and timeouts is also known as Automatic Repeat Request or ARQ.
What is Stop and Wait ARQ?
The simplest way would be for the sender to send a packet and wait for its acknowledgment from the receiver. This is known as Stop and Wait ARQ.
What is Go-back-N?
The receiver sends an ACK for the most recently received in-order packet. The sender would then send all packets from the most recently received in-order packet, even if some of them had been sent before. The receiver can simply discard any out-of-order received packets. This is called Go-back-N.
What is selective ACKing?
The sender retransmits only those packets that it suspects were received in error. Then, the receiver would acknowledge a correctly received packet even if it is not in order. The out-of-order packets are buffered until any missing packets have been received, at which point the batch of the packets can be delivered to the application layer.
What is fast retransmit?
When the sender receives 3 duplicate ACKs for a packet, it considers the packet to be lost and will retransmit it instead of waiting for the timeout. This is known as fast retransmit.
What is transmission control, and why do we need to control it?
the transport layer to control the transmission rate.
Protect the Receiver buffer
protect the network from congestion