Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
OSI model
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Layer 4: Transport layer=== {{main|Transport layer}} The transport layer provides the functional and procedural means of transferring variable-length data sequences from a source host to a destination host from one application to another across a network while maintaining the quality-of-service functions. Transport protocols may be connection-oriented or connectionless. This may require breaking large protocol data units or long data streams into smaller chunks called "segments", since the network layer imposes a maximum packet size called the [[maximum transmission unit]] (MTU), which depends on the maximum packet size imposed by all data link layers on the network path between the two hosts. The amount of data in a data segment must be small enough to allow for a network-layer header and a transport-layer header. For example, for data being transferred across [[Ethernet]], the MTU is 1500 bytes, the minimum size of a TCP header is 20 bytes, and the minimum size of an IPv4 header is 20 bytes, so the maximum segment size is 1500β(20+20) bytes, or 1460 bytes. The process of dividing data into segments is called [[packet segmentation|segmentation]]; it is an optional function of the transport layer. Some connection-oriented transport protocols, such as [[Transmission Control Protocol|TCP]] and the OSI connection-oriented transport protocol (COTP), perform segmentation and reassembly of segments on the receiving side; connectionless transport protocols, such as [[User Datagram Protocol|UDP]] and the OSI connectionless transport protocol (CLTP), usually do not. The transport layer also controls the reliability of a given link between a source and destination host through flow control, error control, and acknowledgments of sequence and existence. Some protocols are state- and [[connection-oriented]]. This means that the transport layer can keep track of the segments and retransmit those that fail delivery through the acknowledgment hand-shake system. The transport layer will also provide the acknowledgement of the successful data transmission and sends the next data if no errors occurred. Reliability, however, is not a strict requirement within the transport layer. Protocols like UDP, for example, are used in applications that are willing to accept some packet loss, reordering, errors or duplication. [[Streaming media]], real-time multiplayer games and [[voice over IP]] (VoIP) are examples of applications in which loss of packets is not usually a fatal problem. The OSI connection-oriented transport protocol defines five classes of connection-mode transport protocols, ranging from class 0 (which is also known as TP0 and provides the fewest features) to class 4 (TP4, designed for less reliable networks, similar to the Internet). Class 0 contains no error recovery and was designed for use on network layers that provide error-free connections. Class 4 is closest to TCP, although TCP contains functions, such as the graceful close, which OSI assigns to the session layer. Also, all OSI TP connection-mode [[Communication protocol|protocol]] classes provide expedited data and preservation of record boundaries. Detailed characteristics of TP0β4 classes are shown in the following table:<ref>{{cite web |title=ITU-T Recommendation X.224 (11/1995) ISO/IEC 8073, ''Open Systems Interconnection β Protocol for providing the connection-mode transport service'' |publisher=ITU|url=http://www.itu.int/rec/T-REC-X.224-199511-I/en/}}</ref> {| class="wikitable" style="margin:0 auto;" ! Feature name ! TP0 !! TP1 !! TP2 !! TP3 !! TP4 |- | Connection-oriented network | {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Connectionless network | {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} |- | Concatenation and separation | {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Segmentation and reassembly | {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Error recovery | {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Reinitiate connection{{smallsup|a}} | {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} |- |style="padding-right:1.0em;"| Multiplexing{{\}}demultiplexing over single [[virtual circuit]] | {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Explicit flow control | {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} |- | Retransmission on timeout | {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} |- | Reliable transport service | {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} |- |colspan="6" style="font-size:90%;"| {{sup|a}} If an excessive number of [[Protocol data unit|PDUs]] are unacknowledged. |} An easy way to visualize the transport layer is to compare it with a post office, which deals with the dispatch and classification of mail and parcels sent. A post office inspects only the outer envelope of mail to determine its delivery. Higher layers may have the equivalent of double envelopes, such as cryptographic presentation services that can be read by the addressee only. Roughly speaking, [[tunnelling protocol]]s operate at the transport layer, such as carrying non-IP protocols such as [[IBM]]'s [[Systems Network Architecture|SNA]] or [[Novell]]'s [[IPX]] over an IP network, or end-to-end encryption with [[IPsec]]. While [[Generic Routing Encapsulation]] (GRE) might seem to be a network-layer protocol, if the encapsulation of the payload takes place only at the endpoint, GRE becomes closer to a transport protocol that uses IP headers but contains complete Layer 2 frames or Layer 3 packets to deliver to the endpoint. [[L2TP]] carries [[Point-to-Point Protocol|PPP]] frames inside transport segments. Although not developed under the OSI Reference Model and not strictly conforming to the OSI definition of the transport layer, the [[Transmission Control Protocol]] (TCP) and the [[User Datagram Protocol]] (UDP) of the Internet Protocol Suite are commonly categorized as layer 4 protocols within OSI. [[Transport Layer Security]] (TLS) does not strictly fit inside the model either. It contains characteristics of the transport and presentation layers.<ref name="ccnp">{{cite book |last1 = Hooper |first1 = Howard |title = CCNP Security VPN 642-648 Official Cert Guide |date = 2012 |publisher = Cisco Press |isbn = 9780132966382 |page = 22 |edition = 2 |url = https://books.google.com/books?id=5PJisOKJ0k8C&pg=PA22 }}</ref><ref name="stackex_layer">{{cite web|url=https://security.stackexchange.com/a/93338|title=What layer is TLS?|website=Information Security Stack Exchange|first1=Andrew|last1=Spott|first2=Tom |last2=Leek|display-authors=etal}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)