Transport Layer Flashcards
What is a TCP(Transmission Control Protocol)?
TCP provides reliable, ordered, and error-checked delivery of bytes between applications.
What is a UDP(User Datagram Protocol)?
Quick, connectionless communication
What is Multiplexing and Demultiplexing?
Multiplexing (at sender)- how servers handle data from multiple sockets, Multiplexers add the transport header.
Demultiplexers(at receiver)- use header info to deliver segments to the correct socket
What is a UDP checksum?
Used to detects errors (e.g., flipped bits)
What is the Stop and Wait protocol
When the sender sends a packet, and then waits for the receiver to respond, this means that we can have a one-bit sequence number.
What’s the difference between the demultiplexing process in UDP vs TCP?
UDP only looks at the destination port
TCP looks at a combination of the source IP addr. and port number dest. IP addr. and port number.
Name 3 uses of UDP
- SNMP
- Streaming Multimedia
- DNS
Is it possible to have a UDP connection that’s reliable?
Yes, this can be implemented in the application layer
What’s rdt1.0?
Reliable transfer over a reliable channel
What’s rdt2.0?
Transfer with bit errors. Repeats transfer to recover these errors after getting control messages(ACKs, NACKs).
How does rdt2.0 handle ACK/NACK corruption/duplication?
Stop and Wait protocol is implemented, this is where the sender adds a sequence number to each packet and waits for the receiver response.
What is a Pipeline protocol?
Sender allows multiple packets to be sent, they don’t have to be acknowledged packets. e.g. Go Back N, Selective Repeat
What’s the difference between Selective repeat and the Go-Back-N protocols?
In Selective repeat the rcvr sends an individual ack for each packet and the sndr has a timer for each unacked packet.
MEANWHILE…
In Go-Back-N the rcvr sends a cumulative ack and has a timer for the oldest unacked packet.
What is a method of increasing utilization?
Pipelining
Does TCP use cumulative or individual acknowledgements?
Cumulative, similar to GBN