index.md (1310B)
1 +++ 2 title = "Transport: internet transport protocols" 3 +++ 4 5 # Transport: internet transport protocols 6 **Internet transport protocols** 7 UDP (User Datagram Protocol) 8 9 - very thin layer on top of IP 10 11 - provides: ports 12 13 - does not provide: flow/congestion control, retransmissions 14 15 - header format: 16 17 ![screenshot.png](8089dda42e4082b63932c5189770993a.png) 18 19 TCP (Transmission Control Protocol) 20 21 - provides reliable end-to-end byte stream (so applications can’t tell how many segments or packets were sent) 22 23 - header format: 24 25 ![screenshot.png](a151cbc9fbc2f68b138f6c45c4008a83.png) 26 27 - every data byte has its own sequence number 28 - window size — how much data receiver can handle, with small values leading to huge overhead 29 - congestion control 30 - congestion window is on sender, specifying how many segments can be transmitted. 31 - increase congestion window whenever ACKs arrive, until they don’t. 32 - then set slow start threshold to half of congestion window and start again. 33 - when threshold is crossed, switch to additive increase 34 - fast retransmission — three duplicate acks imply lost packet, whose identity can be infered from ack number (it’s the next packet in sequence). this packet is retransmitted right away 35 - in TCP Reno: 36 37 ![screenshot.png](c062aabb9720d559668e09f9a9c6fb4c.png)