Identify the key properties of the TCP protocol
Identify the key properties of the UDP protocol
Describe the transport requirements of applications that use TCP or UDP
Review higher-level protocols that require TCP or UDP
The interface between the application and the Internet layers in the TCP/IP stack is the transport layer. This layer implements protocols to transport packets in application-specific ways, depending on the individual requirements of the application. The two most commonly used transports are the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). TCP aims to provide reliable transmission but is more heavyweight, while UDP is lightweight but does not guarantee the delivery of packets. Thus, applications that are error tolerant in terms of data transmission tend to use UDP, while applications that require the reliable transmission of data use TCP. In this chapter we will examine the key characteristics of TCP and UDP and review several applications that use either TCP or UDP as the underlying transport.