Motivated by the demand for routers with new capabilities, researchers have been building extensible routers that aid in the design and development of network protocols and services. This paper evaluates and compares three such systems: (1) Princeton's Scout-based Extensible Router, (2) MIT's Click router, and (3) Washington University's Router Plugins. To provide a framework in which these three systems can be studied, the paper also presents a simple model of an extensible router based on four primitive objects: queues, classifiers, forwarders, and schedulers. By composing these primitive objects it is possible to model everything from a standard, best-effort IP router to an application-level proxy. The paper also briefly discusses the role that extensible routers play in the construction of active, programmable, and overlay networks.