• DocumentCode
    644278
  • Title

    Fast and flexible: Parallel packet processing with GPUs and click

  • Author

    Sun, Weibin ; Ricci, Robert

  • Author_Institution
    Flux Research Group, University of Utah, School of Computing, Salt Lake City, USA
  • fYear
    2013
  • fDate
    21-22 Oct. 2013
  • Firstpage
    25
  • Lastpage
    35
  • Abstract
    We introduce Snap, a framework for packet processing that outperforms traditional software routers by exploiting the parallelism available on modern GPUs. While obtaining high performance, it remains extremely flexible, with packet processing tasks implemented as simple modular elements that are composed to build fully functional routers and switches. Snap is based on the Click modular router, which it extends by adding new architectural features that support batched packet processing, memory structures optimized for offloading to coprocessors, and asynchronous scheduling with in-order completion. We show that Snap can run complex pipelines at high speeds on commodity PC hardware by building an IP router incorporating both an IDS-like full-packet string matcher and an SDN-like packet classifier. In this configuration, Snap is able to forward 40 million packets per second, saturating four 10 Gbps NICs at packet sizes as small as 128 byes. This represents an increase in throughput of nearly 4x over the baseline Click running comparable elements on the CPU.
  • Keywords
    Graphics processing units; IP networks; Kernel; Parallel processing; Pipelines; Ports (Computers); Throughput;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Architectures for Networking and Communications Systems (ANCS), 2013 ACM/IEEE Symposium on
  • Conference_Location
    San Jose, CA, USA
  • Print_ISBN
    978-1-4799-1640-5
  • Type

    conf

  • DOI
    10.1109/ANCS.2013.6665173
  • Filename
    6665173