|
ABSTRACT
We revisit the problem of scaling software routers, motivated by recent advances in server technology that enable high-speed parallel processing--a feature router workloads appear ideally suited to exploit. We propose a software router architecture that parallelizes router functionality both across multiple servers and across multiple cores within a single server. By carefully exploiting parallelism at every opportunity, we demonstrate a 35Gbps parallel router prototype; this router capacity can be linearly scaled through the use of additional servers. Our prototype router is fully programmable using the familiar Click/Linux environment and is built entirely from off-the-shelf, general-purpose server hardware.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Astaro: Security Gateway. http://www.astaro.com.
|
| |
2
|
Cavium Octeon Multi-Core Processor Family. http://caviumnetworks.com/OCTEON_MIPS64.html.
|
| |
3
|
Cisco 7600 Series Routers. http://cisco.com/en/US/products/hw/routers/ps368/index.html.
|
| |
4
|
Cisco 7600 VPN Port Adapter. http://cisco.com/en/US/products/ps6917/index.html.
|
| |
5
|
Cisco Carrier Routing System. http://cisco.com/en/US/products/ps5763/index.html.
|
| |
6
|
Intel 10 Gigabit XF SR Server Adapters. http://intel.com/Products/Server/Adapters/10-GbE-XFSR-Adapters/10-GbE-XFSR-Adapters-overview.htm.
|
| |
7
|
Intel VTune Performance Analyzer. http://software.intel.com/en-us/intel-vtune/.
|
| |
8
|
Narus: Real-Time Traffic Intelligence. http://narus.com.
|
| |
9
|
NetFPGA: A Line-rate, Flexible Platform for Research and Classroom Experimentation. http://netfpga.org.
|
| |
10
|
NLANR: Internet Measurement and Analysis. http://moat.nlanr.net.
|
| |
11
|
Principles and Practices of Interconnection Networks, Chapter 6. William J. Dally and Brian Towles, Morgan Kaufmann, 2004.
|
| |
12
|
Receive-Side Scaling Enhancements in Windows Server 2008. http://www.microsoft.com/whdc/device/network/NDIS_RSS.mspx.
|
| |
13
|
Riverbed: Application Acceleration. http://www.riverbed.com.
|
| |
14
|
Sourcefire: Network Security. http://www.sourcefire.com.
|
| |
15
|
Symantec: Data Loss Protection. http://www.vontu.com.
|
| |
16
|
Vyatta Series 2500. http://vyatta.com/downloads/datasheets/vyatta_2500_datasheet.pdf.
|
| |
17
|
Cisco Opening Up IOS. http://www.networkworld.com/news/2007/121207-cisco-ios.html, December 2007.
|
| |
18
|
Juniper Press Release: Open IP Solution Program. http://www.juniper.net/company/presscenter/pr/2007/pr-071210.html, July 2007.
|
| |
19
|
Next Generation Intel Microarchitecture (Nehalem). http://intel.com/pressroom/archive/reference/whitepaper_Nehalem.pdf, 2008.
|
| |
20
|
M. Al-Fares, A. Loukissas, and A. Vahdat. A Scalable, Commodity, Data Center Network Architecture. In Proceedings of the ACM SIGCOMM Conference, Seattle, WA, USA, August 2008.
|
| |
21
|
T. Anderson, T. Roscoe, and D. Wetherall. Preventing Internet Denial-of-Service with Capabilities. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets), Cambridge, MA, USA, November 2003.
|
| |
22
|
K. Argyraki, S. Baset, B.-G. Chun, K. Fall, G. Iannaccone, A. Knies, E. Kohler, M. Manesh, S. Nedevschi, and S. Ratnasamy. Can Software Routers Scale? In Proceedings of the ACM SIGCOMM Workshop on Programmable Routers for Extensible Services of TOmorrow (PRESTO), Seattle, WA, USA, August 2008.
|
| |
23
|
A. Bianco, R. Birke, D. Bolognesi, J.M. Finochietto, G. Galante, and M. Mellia. Click vs. Linux. In Proceedings of the IEEE Workshop on High Performance Switching and Routing (HPSR), Hong Kong, May 2005.
|
| |
24
|
R. Bolla and R. Bruschi. PC-based Software Routers: High Performance and Application Service Support. In Proceedings of the ACM SIGCOMM Wokshop on Programmable Routers for Extensible Services of TOmorrow (PRESTO), Seattle, WA, USA, August 2008.
|
| |
25
|
B. Chen and R. Morris. Flexible Control of Parallelism in a Multiprocesor PC Router. In USENIX Technical Conference, 2001.
|
| |
26
|
B. Chinoy and H.-W. Braun. The National Science Foundation Network. Technical Report GA-21029, SDSC Applied Network Research group, 1992.
|
| |
27
|
D. Comer. Network System Design using Network Processors. Prentice Hall, 2004.
|
| |
28
|
W.J. Dally and B. Towles. Principles and Practices of Interconnection Networks. Morgan Kaufmann, 2004.
|
| |
29
|
N. Egi, M. Dobrescu, J. Du, K. Argyraki, B.-G. Chun, K. Fall, G. Iannaccone, A. Knies, M. Manesh, L. Mathy, and S. Ratnasamy. Understanding the Packet Processing Capabilities of Multi-Core Servers. Technical Report LABOS-REPORT-2009-001, EPFL, Switzerland, February 2009.
|
| |
30
|
N. Egi, A. Greenhalgh, mark Handley, M. Hoerdt, F. Huici, and L. Mathy. Fairness Issues in Software Virtual Routers. In Proceedings of the ACM SIGCOMM Workshop on Programmable Routers for Extensible Services of TOmorrow (PRESTO), Seattle, WA, USA, August 2008.
|
| |
31
|
N. Egi, A. Greenhalgh, mark Handley, M. Hoerdt, F. Huici, and L. Mathy. Towards High Performance Virtual Routers on Commodity Hardware. In Proceedings of the ACM International Conference on Emerging Networking EXperiments and Technologies (CoNEXT), Madrid, Spain, December 2008.
|
| |
32
|
R. Ennals, R. Sharp, and A. Mycroft. Task Partitioning for Multi-Core Network Processors. In Proceedings of the IEEE International Conference on Computer Communications (ICCC), Mauritius, April 2005.
|
| |
33
|
P.P. Gelsinger. Intel Architecture Press Briefing. http://download.intel.com/pressroom/archive/reference/Gelsinger_briefing_0308.pdf, March 2008.
|
| |
34
|
P. Gupta, S. Lin, and N. McKeown. Routing Lookups in Hardware at Memory Access Speeds. In Proceedings of the IEEE INFOCOM Conference, San Francisco, CA, USA, March 1998.
|
| |
35
|
S. Kandula, D. Katabi, S. Sinha, and A. Berger. Flare: Responsive Load Balancing Without Packet Reordering. ACM Computer Communications Review (CCR), 37(2), April 2007.
|
| |
36
|
D. Katabi, M. Handley, and C. Rohrs. Internet Congestion Control for High Bandwidth-Delay Product Networks. In Proceedings of the ACM SIGCOMM Conference, Pittsburgh, PA, USA, August 2002.
|
| |
37
|
I. Keslassy, S.-T. Chuang, K. Yu, D. Miller, M. Horowitz, O. Solgaard, and N. McKeown. Scaling Internet Routers Using Optics. In Proceedings of the ACM SIGCOMM Conference, Karlsruhe, Germany, August 2003.
|
| |
38
|
E. Kohler, R. Morris, et al. The Click Modular Router. ACM Transactions on Computer Systems, 18(3):263--297, August 2000.
|
| |
39
|
T. Koponen, M. Chawla, B.-G. Chun, A. Ermolinskiy, K.H. Kim, S. Shenker, and I. Stoica. A Data-Oriented (and Beyond) Network Architecture. In Proceedings of the ACM SIGCOMM Conference, Kyoto, Japan, August 2007.
|
| |
40
|
N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turn. OpenFlow: Enabling Innovation in Campus Networks. ACM Computer Communications Review, 38(2), April 2008.
|
| |
41
|
J.C. Mogul, P. Yalagandula, J. Tourrilhes, R. McGeer, S. Banerjee, T. Connors, and P. Sharma. API Design Challenges for Open Router Platforms on Proprietary Hardware. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets), Calgary, Alberta, Canada, October 2008.
|
| |
42
|
K. Papagiannaki, S. Moon, C. Fraleigh, P. Thiran, and C. Diot. Analysis of Measured Single-Hop Delay from an Operational Backbone Network. In Proceedings of the IEEE INFOCOM Conference, New York, NY, USA, June 2002.
|
| |
43
|
C. Partridge, P.P. Carvey, E. Burgess, I. Castineyra, T. Clarke, L. Graham, M. Hathaway, P. Herman, A. King, S. Kohalmi, T. Ma, J. Mcallen, T. Mendez, W.C. Milliken, R. Pettyjohn, J. Rokosz, J. Seeger, M. Sollins, S. Starch, B. Tober, G.D. Troxel, D. Waitzman, and S. Winterble. A 50 Gigabit Per Second IP Router. IEEE/ACM Transactions on Networking, 6(3), June 1998.
|
| |
44
|
PIC-SIG. PCI Express Base 2.0 Specification, 2007. http://www.pcisig.com/specifications/pciexpress/base2.
|
| |
45
|
T. Spalink, S. Karlin, L. Peterson, and Y. Gottlieb. Building a Robust Software-Based Router Using Network Processors. In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP), Banff, Canada, October 2001.
|
| |
46
|
J. Turner, P. Crowley, J. Dehart, A. Freestone, B. Heller, F. Kuhms, S. Kumar, J. Lockwood, J. Lu, M. Wilson, C. Wiseman, and D. Zar. Supercharging PlanetLab -- A High Performance, Multi-Application, Overlay Network Platform. In Proceedings of the ACM SIGCOMM Conference, Kyoto, Japan, August 2007.
|
| |
47
|
L. Valiant and G. Brebner. Universal Schemes for Parallel Communication. In Proceedings of the ACM Symposium on Theory of Computing (STOC), Milwaukee, WI, USA, June 1981.
|
| |
48
|
B. Veal and A. Foong. Performance Scalability of a Multi-Core Web Server. In Proceedings of the ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS), Orlando, FL, USA, December 2007.
|
| |
49
|
R. Zhang-Shen and N. McKeown. On Direct Routing in the Valiant Load-Balancing Architecture. In Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM), St Louis, MO, USA, November 2005.
|
| |
50
|
L. Zhao, Y. Luo, L. Bhuyan, and R. Iyer. SpliceNP: A TCP Splicer using a Network Processor. In Proceedings of the ACM Symposium on Architectures for Networking and Communications Systems (ANCS), Princeton, NJ, USA, October 2005.
|
|