The Transport Layer: Tutorial and Survey SAMI IREN and PAUL D. AMER University of Delaware AND PHILLIP T. CONRAD Temple University Transport layer protocols provide for end-to-end communication between two or more hosts. This paper presents a tutorial on transport layer concepts and terminology, and a survey of transport layer services and protocols. The transport layer protocol TCP is used as a reference point, and compared and contrasted with nineteen other protocols designed over the past two decades. The service and protocol features of twelve of the most important protocols are summarized in both text and tables. Categories and Subject Descriptors: C.2.0 [Computer-Communication Networks]: General—Data communications; Open System Interconnection Reference Model (OSI); C.2.1 [Computer-Communication Networks]: Network Architecture and Design—Network communications; Packet-switching networks; Store and forward networks; C.2.2 [Computer-Communication Networks]: Network Protocols; Protocol architecture (OSI model); C.2.5 [Computer- Communication Networks]: Local and Wide-Area Networks General Terms: Networks Additional Key Words and Phrases: Congestion control, flow control, transport protocol, transport service, TCP/IP 1. INTRODUCTION work of routers, bridges, and communi- cation links that moves information be- In the OSI 7-layer Reference Model, the tween hosts. A good transport layer transport layer is the lowest layer that service (or simply, transport service) al- operates on an end-to-end basis be- lows applications to use a standard set tween two or more communicating of primitives and run on a variety of hosts. This layer lies at the boundary networks without worrying about differ- between these hosts and an internet- ent network interfaces and reliabilities. This work was supported, in part, by the National Science Foundation (NCR 9314056), the U.S. Army Research Office (DAAL04-94-G-0093), and the Adv Telecomm/Info Dist’n Research Program (ATIRP) Consortium sponsored by ARL under Fed Lab Program, Cooperative Agreement DAAL01-96-2-0002. Authors’ addresses: S. Iren and P. D. Amer, Department of Computer and Information Sciences, University of Delaware, Newark, DE 19716; P. T. Conrad, Department of Computer and Information Sciences, Temple University, Philadelphia, PA 19122. Permission to make digital/hard copy of part or all of this work for personal or classroom use is granted without fee provided that the copies are not made or distributed for profit or commercial advantage, the copyright notice, the title of the publication, and its date appear, and notice is given that copying is by permission of the ACM, Inc. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. © 2000 ACM 0360-0300/99/1200–0360 $5.00 ACM Computing Surveys, Vol. 31, No. 4, December 1999 Transport Layer • 361 CONTENTS (TCP) — and then contrast TCP with many alternative designs. 1. Introduction 2. Transport Layer Concepts and Terminology Section 2 introduces the basic con- 2.1 Introduction to TCP cepts and terminology of the transport 2.2 General Role of the Transport Layer layer through a simple example illus- 2.3 Terminology: SDUs, PDUs, and the like trating a TCP connection. Section 3 sur- 2.4 Example TCP Connection, Step-by-Step 2.5 What this example shows. and does not show veys the range of different services that 3. Transport Service can be provided by a transport layer. 3.1 CO-message vs. CO-byte vs. CL Similarly, Section 4 surveys the range 3.2 Reliability of protocol designs that provide these 3.3 Blocking vs. Non-Blocking 3.4 Multicast vs. Unicast services. (The important distinction be- 3.5 Priority vs. No-priority tween service and protocol is a major 3.6 Security vs. No-security theme throughout this paper.) Section 5 3.7 Status-reporting vs. No-status-reporting briefly surveys nine widely imple- 3.8 Quality-of-service vs. No-quality-of-service 4. Transport Protocol Features mented transport protocols other than 4.1 Connection-oriented vs. Connectionless TCP (UDP, TP0, TP4, SNA-APPN, 4.2 Transaction-oriented DECnet-NSP, ATM, XTP, T/TCP and 4.3 CO Protocol Features RTP) and two others that, although not 4.4 Error Control: Sequence Numbers, Acks, and Retransmissions widely implemented, have been particu- 4.5 Flow/Congestion Control larly influential (VMTP and NETBLT). 4.6 Multiplexing/Demultiplexing This section also includes briefer de- 4.7 Splitting/Recombining scriptions of eight experimental proto- 4.8 Concatenation/Separation cols that appear in the research litera- 4.9 Blocking/Unblocking 4.10 Segmentation/Reassembly ture (Delta-t, MSP, SNR, DTP, k-XP, 5. Transport Protocol Examples TRUMP, POC, and TP11). Section 6 5.1 UDP concludes the paper with an overview of 5.2 TP4 past, current, and future trends that 5.3 TP0 5.4 NETBLT have influenced transport layer design 5.5 VMTP including the impact of wireless net- 5.6 T/TCP works. This section also presents a few 5.7 RTP of the debates concerning transport pro- 5.8 APPN (SNA) 5.9 NSP (DECnet) tocol design. As an appendix, tables are 5.10 XTP provided summarizing TCP and eleven 5.11 SSCOP/AAL5 (ATM) of the transport protocols discussed in 5.12 Miscellaneous Transport Protocols Section 5. Similar tables for the experi- 6. Future Directions and Conclusion 6.1 Impacts of Trends and New Technologies mental protocols are omitted for reasons 6.2 Wireless Networks of space, but are available on the au- 6.3 Debates thors’ Web site: www.eecis.udel.edu/ 6.4 Final Observations ˜amer/PEL/survey/. APPENDIX This survey concentrates on unicast service and protocols — that is, commu- nication between exactly two hosts (or Essentially, the transport layer isolates two host processes). Multicast protocols applications from the technology, de- [Armstrong et al. 1992; Bormann et al. sign, and idiosyncracies of the network. 1994; Braudes and Zabele 1993; Deer- Dozens of transport protocols have ing 1989; Floyd et al. 1995; McCanne et been developed or proposed over the last al. 1996; Smith and Koifman 1996] pro- two decades. To put this research in vide communication among n $ 2 perspective, we focus first on the fea- hosts. Multicast represents an impor- tures of probably the most well-known tant research area currently undergoing transport protocol — namely the Inter- significant change and development, net’s Transmission Control Protocol and is worthy of a separate survey. ACM Computing Surveys, Vol. 31, No. 4, December 1999 362 • S. Iren et al. A previous study surveying eight years of thought about transport proto- transport protocols can be found in Do- col design. eringer et al. [1990]. A final reason that TCP provides a good starting point for study, is that the 2. TRANSPORT LAYER CONCEPTS AND history of research and development on TERMINOLOGY TCP can be traced in publicly available documents. Ongoing research and de- From an application programmer’s per- velopment of transport protocols, partic- spective, the transport layer provides ularly TCP, is the focus of two working interprocess communication between groups of the Internet Society. The two processes that most often are run- end2end working group of the Internet ning on different hosts. This section in- Research Task Force (IRTF, www.irtf. troduces some basic transport layer con- org) discusses ongoing long-term re- cepts and terminology through an search on transport protocols in general example: a simple document retrieval (including TCP), while the tcp-impl over the World Wide Web (herein Web) group of the Internet Engineering Task utilizing the TCP transport protocol. Force (IETF, www.ietf.org) focuses on short-term TCP implementation issues. 2.1 Introduction to TCP Both groups maintain active mailing lists where ideas are discussed and de- Although we provide a broad survey of bated openly. The work of these groups the transport layer, the service and pro- can be found in journal articles, confer- tocol features of TCP are used through- ence proceedings, and documents out this paper as a point of reference. known as Internet Drafts and Requests Over the last two decades the Inter- for Comments (RFCs). RFCs contain not net protocol suite (also called the only all the Internet Standards, but also TCP/IP protocol suite) has come to be other information of historical and tech- the most ubiquitous form of computer nical interest. It is much more difficult networking. Hence, the most widely for researchers to obtain similar infor- used transport protocols today are TCP mation concerning proprietary proto- and its companion transport protocol, cols. the User Datagram Protocol (UDP). A few other protocols are widely used, 2.2 General Role of the Transport Layer mainly because of their connection to the proprietary protocol suites of partic- To illustrate the role that the transport ular vendors. Examples include the layer plays in a familiar application, the transport protocols from IBM’s SNA, remainder of Section 2 examines the and Digital’s DECnet. However, the role of TCP in a simple interaction over success of the Internet has led nearly all the Web. vendors in the direction of TCP/IP as The Web is an example of a client/ the future of networking. server application. A human interacts The Internet’s marked success would with a Web browser (client) running on not alone be sufficient justification for a “local” machine. The Web browser organizing a survey around a single pro- communicates with a server on some tocol. Also important is that TCP pro- “remote” machine. The Web uses an ap- vides examples of many significant is- plication layer protocol called the Hy- sues that arise in transport protocol pertext Transfer Protocol (HTTP) [Bern- design. The design choices made in TCP ers-Lee et al.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages46 Page
-
File Size-