The click modular router
Top Cited Papers
- 1 August 2000
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 18 (3) , 263-297
- https://doi.org/10.1145/354871.354874
Abstract
Clicks is a new software architecture for building flexible and configurable routers. A Click router is assembled from packet processing modules calledelements. Individual elements implement simple router functions like packet classification, queuing, scheduling, and interfacing with network devices. A router configurable is a directed graph with elements at the vertices; packets flow along the edges of the graph. Several features make individual elements more powerful and complex configurations easier to write, includingpull connections,which model packet flow drivn by transmitting hardware devices, andflow-based router context,which helps an element locate other interesting elements. Click configurations are modular and easy to extend. A standards-compliant Click IP router has 16 elements on its forwarding path; some of its elements are also useful in Ethernet switches and IP tunnelling configurations. Extending the IP router to support dropping policies, fairness among flows, or Differentiated Services simply requires adding a couple of element at the right place. On conventional PC hardware, the Click IP router achieves a maximum loss-free forwarding rate of 333,000 64-byte packets per second, demonstrating that Click's modular and flexible architecture is compatible with good performance.Keywords
This publication has 16 references indexed in Scilit:
- The click modular routerACM Transactions on Computer Systems, 2000
- Activating networks: a progress reportComputer, 1999
- A 50-Gb/s IP routerIEEE/ACM Transactions on Networking, 1998
- IP switching-ATM under IPIEEE/ACM Transactions on Networking, 1998
- Eliminating receive livelock in an interrupt-driven kernelACM Transactions on Computer Systems, 1997
- Making paths explicit in the Scout operating systemPublished by Association for Computing Machinery (ACM) ,1996
- Random early detection gateways for congestion avoidanceIEEE/ACM Transactions on Networking, 1993
- The x-Kernel: an architecture for implementing network protocolsIEEE Transactions on Software Engineering, 1991
- The structuring of systems using upcallsPublished by Association for Computing Machinery (ACM) ,1985
- TheUNIXSystem: A Stream Input-Output SystemAT&T Bell Laboratories Technical Journal, 1984