Transport Layer Internet Transport Layer Click here for subtitle multiplexing/demultiplexing port numbers well-known ports dynamic binding UDP: unreliable datagram transport TCP: reliable stream transport UDP: User Datagram Protocol unreliable, connectionless service uses IP checksum allows to distinguish among multiple destinations within a given host TCP: Transmission Control Protocol stream transport connection oriented service (~ virtual circuit) unstructured stream reliable transport positive acknowledgment with retransmission sliding window Go-back-N end-to-end flow control buffering full duplex TCP (cont.) segments vs. IP packets maximum segment size MTU discovery checksum windows octet/byte-based 3 pointers ack-ed bytes transmitted but not ack-ed bytes "transmittable" but not yet transmitted bytes (vs. bytes that cannot be transmitted until acks are received and the window slides) variable window size windows serve for error control flow control window advertisement congestion control congestion window window = min{rx advertisement, congestion window} slow-start multiplicative decrease, additive increase adaptive retransmission timeout silly window syndrome avoidance: receiver and sender heuristics TCP Connections 3-way handshake SYN, FIN msgs