skip to main content
10.1145/781498.781506acmconferencesArticle/Chapter ViewAbstractPublication PagesppoppConference Proceedingsconference-collections
Article

Exploiting task-level concurrency in a programmable network interface

Published:11 June 2003Publication History

ABSTRACT

Programmable network interfaces provide the potential to extend the functionality of network services but lead to instruction processing overheads when compared to application-specific network interfaces. This paper aims to offset those performance disadvantages by exploiting task-level concurrency in the workload to parallelize the network interface firmware for a programmable controller with two processors. By carefully partitioning the handler procedures that process various events related to the progress of a packet, the system can minimize sharing, achieve load balance, and efficiently utilize on-chip storage. Compared to the uniprocessor firmware released by the manufacturer, the parallelized network interface firmware increases throughput by 65% for bidirectional UDP traffic of maximum-sized packets, 157% for bidirectional UDP traffic of minimum-sized packets, and 32--107% for real network services. This parallelization results in performance within 10--20% of a modern ASIC-based network interface for real network services.

References

  1. Alteon WebSystems. Gigabit Ethernet/PCI Network Interface Card: Host/NIC Software Interface Definition, July 1999. Revision 12.4.13.]]Google ScholarGoogle Scholar
  2. M. Björkman and P. Gunningberg. Locking effects in multiprocessor implementations of protocols. In Proceedings of the ACM SIGCOMM '93 Conference, pages 74--83. ACM Press, 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. N. J. Boden, D. Cohen, R. E. Felderman, A. E. Kulawik, C. L. Seitz, J. N. Seizovic, and W.-K. Su. Myrinet: A Gigabit-per-Second Local Area Network. IEEE MICRO, 15(1):29--36, 1995.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Buonadonna and D. Culler. Queue Pair IP: A Hybrid Architecture for System Area Networks. In Proceedings of the 29th International Symposium on Computer Architecture, pages 247--256, May 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. Gallatin, J. Chase, and K. Yocum. Trapeze/IP: TCP/IP at Near-Gigabit Speeds. In Proceedings of the FREENIX Track: 1999 USENIX Annual Technical Conference, June 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. N. C. Hutchinson and L. L. Peterson. The x-Kernel: An Architecture for Implementing Network Protocols. IEEE Transactions on Software Engineering, 17(1):64--76, Jan. 1991.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. Kim, V. S. Pai, and S. Rixner. Improving Web Server Throughput with Network Interface Data Caching. In Proceedings of the Tenth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 239--250, October 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R. Morris, E. Kohler, J. Jannotti, and M. F. Kaashoek. The click modular router. ACM SIGOPS Operating Systems Review, 34(2):24--25, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. T. Mudge. Power: A First-Class Architectural Design Constraint. Computer, 34(4):52--58, April 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. E. M. Nahum, D. J. Yates, J. F. Kurose, and D. F. Towsley. Performance Issues in Parallelized Network Protocols. In Proceedings of the Operating Systems Design and Implementation, pages 125--137, 1994.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. J. Poskanzer. thttpd - tiny/turbo/throttling HTTP server. Acme Labs, Feb. 2000. Unix manual page.]]Google ScholarGoogle Scholar
  12. I. Pratt and K. Fraser. Arsenic: A User-Accessible Gigabit Ethernet Interface. In Proceedings of IEEE INFOCOM '01, pages 67--76, 2001.]]Google ScholarGoogle ScholarCross RefCross Ref
  13. J. Satran, K. Meth, C. Sapuntzakis, M. Chadalapaka, and E. Zeidner. iSCSI. IETF Internet draft draft-ietf-ips-iscsi-14.txt, work in progress, July 2002.]]Google ScholarGoogle Scholar
  14. P. Shivam, P. Wyckoff, and D. Panda. EMP: Zero-copy OS-bypass NIC-driven Gigabit Ethernet Message Passing. In Proceedings of the 2001 ACM/IEEE Conference on Supercomputing (SC2001), Nov. 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. P. Shivam, P. Wyckoff, and D. Panda. Can User-Level Protocols Take Advantage of Multi-CPU NICs? In Proceedings of the International Parallel and Distributed Processing Symposium (IPDPS'02), pages 64--69, Apr. 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Exploiting task-level concurrency in a programmable network interface

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        PPoPP '03: Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
        June 2003
        250 pages
        ISBN:1581135882
        DOI:10.1145/781498
        • cover image ACM SIGPLAN Notices
          ACM SIGPLAN Notices  Volume 38, Issue 10
          Proceedings of the ACM SIGPLAN symposium on principles and practice of parallel programming (PPoPP 2003) and workshop on partial evaluation and semantics-based program manipulation (PEPM 2003)
          October 2003
          331 pages
          ISSN:0362-1340
          EISSN:1558-1160
          DOI:10.1145/966049
          Issue’s Table of Contents

        Copyright © 2003 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 11 June 2003

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader