70 likes | 197 Views
Computer Networks. Transport Layer (Part 2). Transport Layer. Last class Transport layer functions This class Repeat last lecture’s missing section on congestion control…. Specific transport layers. Specific transport layers. UDP unreliable (“best-effort”), unordered
E N D
Computer Networks Transport Layer (Part 2)
Transport Layer • Last class • Transport layer functions • This class • Repeat last lecture’s missing section on congestion control…. • Specific transport layers
Specific transport layers • UDP • unreliable (“best-effort”), • unordered • unicast or multicast delivery • TCP • reliable • in-order • unicast • SCTP (will not cover in class) • See http://www.ietf.org/rfc/rfc2960.txt • reliable • optional ordering • unicast
TL: UDP and Transport Layer Functions • Demux to upper layer • UDP port field • Quality of service • none • Security • none • Delivery semantics • Unordered • Unicast or multicast • Flow control • none • Congestion control • none • Reliable data transfer • none, but data integrity provided by checksum
TL: UDP: User Datagram Protocol http://www.rfc-editor.org/rfc/rfc768.txt “no frills,” “bare bones” Internet transport protocol “best effort” service, UDP segments may be: lost delivered out of order to app connectionless: no handshaking between UDP sender, receiver each UDP segment handled independently of others Why is there a UDP? no connection establishment (which can add delay) simple: no connection state at sender, receiver small segment header no congestion control: UDP can blast away as fast as desired
TL: UDP: more often used for streaming multimedia apps loss tolerant rate sensitive other UDP uses (why?): DNS SNMP reliable transfer over UDP: add reliability at application layer application-specific error recovery! many applications re-implement reliability over UDP to bypass TCP new transport protocols? 32 bits source port # dest port # Length, in bytes of UDP segment, including header checksum length Application data (message) UDP segment format
TL: UDP checksum Sender: treat segment contents as sequence of 16-bit integers checksum: addition (1’s complement sum) of segment contents sender puts checksum value into UDP checksum field similar to IP’s header checksum Receiver: compute checksum of received segment check if computed checksum equals checksum field value: NO - error detected YES - no error detected. But maybe errors nonethless? More later …. Goal: detect “errors” (e.g., flipped bits) in transmitted segment