skip to main content
10.1145/502034.502056acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
Article

Building a robust software-based router using network processors

Published:21 October 2001Publication History

ABSTRACT

Recent efforts to add new services to the Internet have increased interest in software-based routers that are easy to extend and evolve. This paper describes our experiences using emerging network processors---in particular, the Intel IXP1200---to implement a router. We show it is possible to combine an IXP1200 development board and a PC to build an inexpensive router that forwards minimum-sized packets at a rate of 3.47Mpps. This is nearly an order of magnitude faster than existing pure PC-based routers, and sufficient to support 1.77Gbps of aggregate link bandwidth. At lesser aggregate line speeds, our design also allows the excess resources available on the IXP1200 to be used robustly for extra packet processing. For example, with 8 × 100Mbps links, 240 register operations and 96 bytes of state storage are available for each 64-byte packet. Using a hierarchical architecture we can guarantee line-speed forwarding rates for simple packets with the IXP1200, and still have extra capacity to process exceptional packets with the Pentium. Up to 310Kpps of the traffic can be routed through the Pentium to receive 1510 cycles of extra per-packet processing.

References

  1. 1.M. A. Blumrich, C. Dubnicki, E. W. Felten, K. Li, and M. R. Mesarina. Virtual-Memory-Mapped Network Interfaces. IEEEMicro, 15(1):21-28, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.A. T. Campbell, S. Chou, M. E. Konnavis, and V. D. Stachtos. Implementing Routelets: Virtual Router Support for the IXP1200 Network Processor. In/XA Univeristy Program Workshop, Portland, Oregon, June 2001.Google ScholarGoogle Scholar
  3. 3.M. Dasen, G. Fankhauser, and B. Plattner. An Error Tolerant, Scalable Video Stream Encoding and Compression for Mobile Computing. In Proceedings of ACTS Mobile Summit 96, pages 762-771, November 1996.Google ScholarGoogle Scholar
  4. 4.B. Davie and Y. Rekhter. MPLS: Technology and Applications. Morgan Kaufmann Publishers, Inc., 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.D. Decasper, Z. Dittia, G. Parulkar, and B. Plattner. Router Plugins: A Software Architecture for Next Generation Routers. IEEF,/ACM Transactions on Networking, 8(1):2-15, February 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.P. Druschel, L. L. Peterson, and B. S. Davie. Experiences with a High-Speed Network Adaptor: A Software Perspective. In Proceedings of SIGCOMM '94 Conference, pages 2-13, October 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.M. E. Fiuczynski, R. E Martin, T. Owa, and B. N. Bershad. On Using Intelligent Network Interface Cards to support Multimedia Applications. In Proceedings of the 8th International Workshop on Network and Operating System Support for Digital Audio and Video, pages 95-98, July 1998.Google ScholarGoogle Scholar
  8. 8.IBM Microelectronics Division. IBM PowerNP NP4GS3 Network Processor Solutions Product Overview, April 2001.Google ScholarGoogle Scholar
  9. 9.IEEE. Standard 802.3, October 2000.Google ScholarGoogle Scholar
  10. 10.Intel Corporation. IXP12OONetworkProcessorDatasheet, September 2000.Google ScholarGoogle Scholar
  11. 11.Intelligent I/O (I20) Special Interest Group. Intelligent I/O (I20) Architecture Specification, Version 2.0, March 1999.Google ScholarGoogle Scholar
  12. 12.S. Karlin and L. Peterson. VERA: An Extensible Router Architecture. In Proceedings of the 4th International Conference on Open Architectures and Network Programming (OPENARCH), pages 3-14, April 2001.Google ScholarGoogle ScholarCross RefCross Ref
  13. 13.E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. E Kaashoek. The Click Modular Router. ACM Transactions on Computer Systems, 18(3):263-297, August 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.M. E. Kounavis, A. T. Campell, S. Chou, E Modoux, J. Vicente, and H. Zhuang. The Genesis Kernel: A Programming System for Spawning Network Architectures. IEEE Journal on Selected Areas in Communications, 19(3):511-526, March 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.H. C. Latter and R. M. Needham. On the Duality of Operating System Structures. Operating Systems Review, 13(2):3-19, April 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16.D. L. Mills. The Fuzzball. In Proceedings of the SIGCOMM '88 Symposium, pages 115-122, August 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.V. Paxson. Automated Packet Trace Analysis of TCP Implementations. In Proceedings of the ACM SIGCOMM '97 Conference, pages 167-179, September 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 18.E Pradhan and T.-C. Chiueh. Operating System Support for Programmable Cluster-Based Internet Routers. In Proceedings of the 7th Workshop on Hot Topics in Operating Systems (HotOS-VII), pages 76--81, March 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.X. Qie, A. Bavier, L. Peterson, and S. Karlin. Scheduling Computations on a Programmable Router. In Proceedings of the ACM SIGMETRICS 2001 Conference, pages 13-24, June 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20.M. J. Ranum, K. Landfield, M. Stolarchuk, M. Sienkiewicz, A. Lambeth, and E. Wall. Implementing a Generalized Tool For Network Monitoring. In Proceedings of the Eleventh Systems Administration Conference (LISA '97), pages 1-8, San Diego, CA, October 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21.O. Spatscheck, J. Hansen, J. Hartman, and L. Peterson. Optimizing TCP Forwarder Performance. IEEE/ACM Transactions on Networking, 8(2): 146-157, April 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22.V. Srinivasan and G. Varghese. Fast address lookups using controlled prefix expansion. ACM Transactions on Computer Systems, 17(1): 1--40, February 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.D. E. Taylor, J. S. Turner, and J. W. Lockwood. Dynamic Hardware Plugins (DHP): Exploiting Reconfigurable Hardware for High-Performance Programmable Routers. In Proceedings of the 4th International Conference on Open Architectures and Network Programming ( OPENARCH), pages 25-34, April 2001.Google ScholarGoogle ScholarCross RefCross Ref
  24. 24.C. B. S. Traw and J. M. Smith. Hardware/Software Organization of a High-Performance ATM Host Interface. 1EEE Journal on Selected Areas in Communications (Special Issue on High Speed Computer/Network Interfaces), 11(2):240-253, 1993.Google ScholarGoogle Scholar
  25. 25.Vitesse Semiconductor Corporation. IQ2000 Network Processor Product Brief, 2000.Google ScholarGoogle Scholar
  26. 26.T. von Eicken, A. Basu, V. Buch, and W. Vogels. U-Net: A User-Level Network Interface for Parallel and Distributed Computing. In Proceedings of the 15th ACM Symposium on Operating Systems Principles, pages 40-53, December 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Building a robust software-based router using network processors

      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
        SOSP '01: Proceedings of the eighteenth ACM symposium on Operating systems principles
        October 2001
        254 pages
        ISBN:1581133898
        DOI:10.1145/502034

        Copyright © 2001 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: 21 October 2001

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        SOSP '01 Paper Acceptance Rate17of85submissions,20%Overall Acceptance Rate131of716submissions,18%

        Upcoming Conference

        SOSP '24

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader