Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Transport layer
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
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!
==Protocols== This list shows some protocols that are commonly placed in the transport layers of the [[Internet protocol suite]], the [[OSI protocols|OSI protocol suite]], [[NetWare]]'s [[IPX/SPX]], [[AppleTalk]], and [[Fibre Channel]]. {{Div col|colwidth=30em}} * ATP, [[AppleTalk|AppleTalk Transaction Protocol]] * CUDP, [[Cyclic UDP]]<ref>{{citation |url=https://www.cs.cornell.edu/zeno/Papers/cyclicudp.pdf |title=Cyclic-UDP: A Priority-Driven Best-Effort Protocol |author=Brian C. Smith |access-date=2020-02-23}}</ref> * DCCP, [[Datagram Congestion Control Protocol]] * FCP, [[Fibre Channel Protocol]] * IL, [[IL Protocol]] * MPTCP, [[Multipath TCP]] * NORM, [[NACK-Oriented Reliable Multicast]] * [[QUIC]] * RDP, [[Reliable Data Protocol]] * RUDP, [[Reliable User Datagram Protocol]] * SCTP, [[Stream Control Transmission Protocol]] * SPX, [[IPX/SPX|Sequenced Packet Exchange]] * SST, [[Structured Stream Transport]] * TCP, [[Transmission Control Protocol]] * UDP, [[User Datagram Protocol]] * [[UDP-Lite]] * ΞΌTP, [[Micro Transport Protocol]] {{div col end}} === <span class="anchor" id="COMPARISON1"></span><span class="anchor" id="Comparison of transport layer protocols"></span>Comparison of Internet transport layer protocols === {| class="wikitable" style="text-align:center" |- ! scope="col" | Feature ! scope="col" | [[User Datagram Protocol|UDP]] ! scope="col" | [[UDP-Lite]] ! scope="col" | [[Transmission Control Protocol|TCP]] ! scope="col" | [[Multipath TCP]] ! scope="col" | [[SCTP]] ! scope="col" | [[DCCP]] ! scope="col" | [[RUDP]]{{efn|RUDP is not officially standardized. There have been no standard-related developments since 1999.}} |- | style="text-align:left" | Packet header size | 8 bytes | 8 bytes | 20β60 bytes | 50β90 bytes | 12 bytes{{efn|Excluding data chunk headers and overhead chunks. Without embedded chunks, an SCTP packet is essentially useless.}} | 12 or 16 bytes | 14+ bytes<!--Including 8-byte UDP header--> |- | style="text-align:left" | Typical data-packet overhead | 8 bytes | 8 bytes | 20 bytes | ?? bytes | 44β48+ bytes{{efn|Counted as follows: 12 bytes SCTP header + 16 bytes DATA chunk header or 20 bytes I-DATA chunk header + 16+ bytes SACK chunk. Additional non-data chunks (e.g. AUTH) and/or headers for additional data chunks, which might easily increase the overhead with 50 bytes or more, not counted.}} | 12 or 16 bytes | 14 bytes |- | style="text-align:left" | Transport-layer packet entity | Datagram | Datagram | Segment | Segment | Datagram | Datagram | Datagram |- | style="text-align:left" | Connection-oriented | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} |- | style="text-align:left" | Reliable transport | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{No}} | {{Yes}} |- | style="text-align:left" | Unreliable transport | {{Yes}} | {{Yes}} | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} |- | style="text-align:left" | Preserve message boundary | {{Yes}} | {{Yes}} | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} |- | style="text-align:left" | Delivery | Unordered | Unordered | Ordered | Ordered | Ordered / Unordered | Unordered | Unordered |- | style="text-align:left" | Data [[checksum]] | {{Optional}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Optional}} |- | style="text-align:left" | Checksum size | 16 bits | 16 bits | 16 bits | 16 bits | 32 bits | 16 bits | 16 bits |- | style="text-align:left" | Partial [[checksum]] | {{No}} | {{Yes}} | {{No}} | {{No}} | {{No}} | {{Yes}} | {{No}} |- | style="text-align:left" | Path [[Maximum transmission unit|MTU]] | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{dunno}} |- | style="text-align:left" | [[Flow control (data)|Flow control]] | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{No}} | {{Yes}} |- | style="text-align:left" | [[Congestion control]] | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{dunno}} |- | style="text-align:left" | [[Explicit Congestion Notification]] | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{Yes}} | {{dunno}} |- | style="text-align:left" | Multiple [[Stream (computing)|streams]] | {{No}} | {{No}} | {{No}} | {{No}} | {{Yes}} | {{No}} | {{No}} |- | style="text-align:left" | [[Multi-homing]] | {{No}} | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{No}} | {{No}} |- | style="text-align:left" | Bundling / [[Nagle's algorithm|Nagle]] | {{No}} | {{No}} | {{Yes}} | {{Yes}} | {{Yes}} | {{No}} | {{dunno}} |} {{notelist}} === {{Anchor|COMPARISON2}}Comparison of OSI transport protocols === ISO/IEC 8073/ITU-T Recommendation X.224, "Information Technology - Open Systems Interconnection - Protocol for providing the connection-mode transport service", defines five classes of connection-mode transport protocols designated class 0 (TP0) to class 4 (TP4). 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. All OSI connection-mode protocol classes provide expedited data and preservation of record boundaries. Detailed characteristics of the classes are shown in the following table:<ref>{{cite web | title = ITU-T Recommendation X.224 (11/1995) ISO/IEC 8073 | url = http://www.itu.int/rec/T-REC-X.224-199511-I/en/ | website = Itu.int | access-date=2017-01-17 }}</ref> {| class="wikitable" |- ! scope="col" | Service ! scope="col" | TP0 ! scope="col" | TP1 ! scope="col" | TP2 ! scope="col" | TP3 ! scope="col" | 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}} | {{No}} | {{Yes}} | {{Yes}} |- | Reinitiate connection (if an excessive number of [[Protocol data unit|PDUs]] are unacknowledged) | {{No}} | {{Yes}} | {{No}} | {{Yes}} | {{No}} |- | Multiplexing and demultiplexing over a 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}} |} There is also a connectionless transport protocol, specified by ISO/IEC 8602/ITU-T Recommendation X.234.<ref>{{cite web | title = ITU-T Recommendation X.234 (07/1994) ISO/IEC 8602 | url = http://www.itu.int/rec/T-REC-X.234-199407-I/en/ | website = Itu.int | access-date=2017-01-17 }}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Transport layer
(section)
Add topic