Abstract
Multiplexing of multiple application streams over a single transport connection is a widely used technique in modern computer networks, HTTP/2 and SSH are well-known examples. For many use cases, multiplexing has advantages over operating multiple dedicated transport connections. However, neither of the two dominating transport protocols Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) offer multiplexing support, therefore multiplexing has to be implemented individually at application level. The Stream Control Transmission Protocol (SCTP) is an ideal candidate for being used as an universal multiplexing transport protocol. SCTP provides a rich feature set, matching many requirements of a modern transport protocol and SCTP also offers native multiplexing by using its concept of streams. A primary feature of the protocol design is the expandability with new features using SCTP protocol extensions. In addition to the FreeBSD, Linux and Solaris kernel stacks, SCTP has found a wide deployment due to the usage as the underlying transport protocol for WebRTC data channels. This thesis evaluates the impact of transport layer multiplexing for a wide range of network traffic patterns by using the SCTP protocol as an example. This includes the aspects of buffer management, error recovery as well as the process of connection establishment. The results are backed by extensive evaluations using discrete event simulations. In addition to the protocol specific improvements, a generic and transparent multiplexing API is provided. All techniques are developed by focussing on backward compatibility and deployability in real implementations. The results gained and the improved mechanisms can also be applied to other transport protocols, such as TCP or Quick UDP Internet Connections (QUIC).
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.