Chapter 3 NetWorks Flashcards
What are the main transport layer services?
Multiplexing/demultiplexing, connectionless transport (UDP), reliable data transfer, connection-oriented transport (TCP), congestion control.
What does the transport layer do?
Provides logical communication between application processes running on different hosts.
What are the two primary transport protocols?
TCP (reliable, ordered delivery) and UDP (unreliable, unordered delivery).
What does the sender transport protocol do?
Breaks application messages into segments, adds headers, and sends them to the network layer.
What does the receiver transport protocol do?
Reassembles received segments into messages and passes them to the application layer.
What is multiplexing?
The process of handling data from multiple sockets and adding transport headers.
What is demultiplexing?
The process of directing received transport-layer segments to the correct application process.
What fields are used for UDP demultiplexing?
Destination port number only.
What fields are used for TCP demultiplexing?
Source IP, source port, destination IP, destination port (4-tuple).
What are the characteristics of UDP?
Connectionless, unreliable, unordered delivery, minimal header, no congestion control.
What are common applications of UDP?
Streaming multimedia, DNS, SNMP, HTTP/3.
What is the UDP segment structure?
Source port, destination port, length, checksum, and application data.
What does the UDP checksum do?
Detects bit errors in transmitted segments.
What affects the complexity of reliable data transfer protocols?
Characteristics of the unreliable channel (loss, corruption, reordering).
What are the key functions of a reliable data transfer protocol?
Sending, receiving, detecting errors, retransmission if needed.
What are the key function calls in reliable data transfer?
rdt_send(), udt_send(), rdt_rcv(), deliver_data().
What assumptions does RDT 1.0 make?
The underlying channel is perfectly reliable (no bit errors, no packet loss).
How does RDT 1.0 operate?
The sender creates a packet and sends it; the receiver extracts and delivers the data.
What problem does RDT 2.0 address?
Bit errors in packets.
How does RDT 2.0 handle bit errors?
Uses checksums to detect errors and acknowledgments (ACKs/NAKs) to signal correct/incorrect receipt.
What is the ‘stop and wait’ mechanism?
The sender sends one packet and waits for an ACK or NAK before sending the next one.
What is a fatal flaw in RDT 2.0?
If an ACK/NAK is corrupted, the sender does not know what happened.
How does RDT 2.1 fix the flaw in RDT 2.0?
Uses sequence numbers (0,1) to detect duplicate packets and retransmit only when necessary.
What must the receiver do in RDT 2.1?
Check for duplicates and determine if the packet should be delivered.
What is a key difference between RDT 2.0 and RDT 2.1?
RDT 2.1 requires the sender to remember if the last transmitted packet was 0 or 1.