Transport Layer Flashcards
What is the transport layer?
end o end connection between 2 hosts
What are the services of the transport layer?
- communication between application processes running on 2 different hosts
What does the transport layer sender do?
break application messages into segments and pass to network layer
What does the transport layer receiver do?
reassemble segments into messages and pass to application layer
What are the 2 transport layer protocols?
TCP
UDP
What is UDP?
- unreliable
- connectionless
- demultiplexes IP packets
- error checks data
What is TCP?
- connection oriented
- full duplex reliable mechanisms
- recovery mechanism for packets
- flow and congestion control
What are the differences between TCP and UDP segment headers?
TCP much more complex as has more services
UDP has checksum
What are reliable data transfer mechanisms?
stop and wait
sliding window: go back n, selective repeat
How does TCP work?
initiates connection
send acks
closes connection
What does TCP do?
reliable data transfer over unreliable service
What triggers TCP retransmissions?
timeouts
duplicate acks
How can you implement TCP flow control?
buffer
- when buffer full, segments arriving don’t get acks
What is end to end congestion control?
used in TCP
- no explicit feedback
- congestion inferred from observed loss and delay
What is the equation for timeout interval?
timeout interval = estimated RTT + 4*DevRTT
- DevRTT = 4% safety margin
What is additive increase multiplicative decrease (AIMD) for TCP?
additively increase window size until loss occurs
then cut window in half
What is slow start for TCP?
when connection begins increase rate exponentially until first loss
initially congestion window = 1
double every RTT
increment for every ack received
How to switch from slow start to congestion avoidance for TCP?
variable slow start threshold
on event of loss, slow start threshold set to half of window size just before loss event
How is TCP fair?
divide capacity by number of flows so equal flow for each session?
capacity/no. sessions