• DocumentCode
    3170330
  • Title

    Portable and Performant Userspace SCTP Stack

  • Author

    Penoff, Brad ; Wagner, Alan ; Tüxen, Michael ; Rüngeler, Irene

  • Author_Institution
    Google, Inc., Mountain View, CA, USA
  • fYear
    2012
  • fDate
    July 30 2012-Aug. 2 2012
  • Firstpage
    1
  • Lastpage
    9
  • Abstract
    One of only two new transport protocols introduced in the last 30 years is the Stream Control Transmission Protocol (SCTP). SCTP enables capabilities like additional throughput and fault tolerance for multihomed hosts. An SCTP implementation is included with the Linux kernel and another implementation called sctplib functions successfully in userspace on several platforms but unfortunately neither of these implementations have all of the latest features nor do they perform as well as the FreeBSD kernel implementation of SCTP. We were motivated to produce a portable implementation of the FreeBSD kernel SCTP stack that operates in userspace of any system because of both our desires to obtain a higher performance SCTP stack for Linux as well as to exploit recent developments in hardware virtualization and transport protocol onloading. Unlike any other userspace transport implementation for TCP or SCTP, our userspace SCTP stack simultaneously achieves similar throughput and latency as the Linux kernel TCP stack, without compromising on any of the transport´s features as well as maintaining true portability across multiple operating systems and devices. We create a callback API and implement a threshold to control its usage; our userspace SCTP stack with these optimizations obtains higher throughput than the Linux kernel implementation of SCTP. We describe our userspace SCTP stack´s design and demonstrate how it gives similar throughput and latency on Linux as the kernel TCP implementation, with the benefits of the new features of SCTP.
  • Keywords
    Linux; application program interfaces; fault tolerant computing; transport protocols; FreeBSD kernel implementation; Linux kernel TCP stack; SCTP stack; callback API; fault tolerance; multihomed hosts; multiple operating systems; performant userspace; portable userspace; sctplib functions; stream control transmission protocol; transport protocol onloading; IP networks; Kernel; Linux; Sockets; Throughput; Transport protocols;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Communications and Networks (ICCCN), 2012 21st International Conference on
  • Conference_Location
    Munich
  • Print_ISBN
    978-1-4673-1543-2
  • Type

    conf

  • DOI
    10.1109/ICCCN.2012.6289222
  • Filename
    6289222