Brad Penoff

Brad Penoff

Brad comes from Ohio where he attended The Ohio State University as an undergraduate in Computer Science & Engineering as well as Computational Linguistics. After 3 years at Sun Microsystems, he attended the University of British Columbia where he obtained both a Masters and PhD in Computer Science where he focused on the implementation of large-scale parallel compute clusters, spending two summer internship at Argonne National Laboratory's supercomputing group. He has worked at Google working on the Scale & Performance team for Payments since Fall 2011, and leads the Throughput team.

Research Areas

Authored Publications
Sort By
  • Title
  • Title, descending
  • Year
  • Year, descending
    Portable and Performant Userspace SCTP Stack
    Alan Wagner
    Michael Tuexen
    Irene Ruengeler
    Computer Communications and Networks (ICCCN), 2012 21st International Conference on, IEEE
    Preview 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. View details