Suez : A High-Performance, Safely Extensible Router Architecture

1 Suez : Arabic Qanat as-Suways, sea-level waterway running north-south across the Isthmus of Suez in Egypt to connect the Mediterranean and the Red seas. The canal is an open cut, without locks, and provides the shortest maritime route between Europe and the lands lying around the Indian and western Pacific oceans. 2

Faculty: Tzi-cker Chiueh

Group Members:

Project Description:

Suez is a high-performance router architecture that supports efficient packet forwarding while allowing the addition of new functions to the router in a safe and efficient manner. The motivation for Suez comes from the need to integrate high forwarding performance with the ability to place intelligence inside the network, especially at the edges of the network. The key goals of the Suez architecture are to develop a scalable system that meets both requirements, while maintaining strong protection and performance isolation guarantees between the core router functions and the dynamically added computation.

The key design principle of Suez is to cleanly decouple the packet forwarding path from a general-purpose computation framework, and to provide a light-weight linkage between them. The key enabling feature for  achieving this decoupling is the use of programmable network processors in the forwarding path, that encode an efficient, lock-free and interrupt-free forwarding pipeline. Selected flows in the datapath are bound to processing in the computation framework. The computation framework runs on a general-purpose processor, allowing a rich set of extensions to be added to the router. The computation framework and the forwarding path operate independently and asynchronously post work to each other. The system works without using any interrupts, and all interactions take place via lock-free queues.

The key features of the datapath are an efficient routing lookup algorithm and an efficient link scheduling algorithm. The routing lookup algorithm exploits the redundancy present in the outcome of a routing lookup operation to come up with an efficient hash function. This is a simple bit-selector function that is then used as an index into a route lookup cache [1]. The scheduling algorithm is a discretized variant of fluid fair queuing that gives a parameterizable deviation from fluid fair queuing's optimal delay and fairness bounds, but incurs constant scheduling overhead independent of the number of real-time flows [3]. Combined with an efficient pipelined datapath implementation [2], these algorithms yield a high-performance forwarding path for Suez.

The computation framework of Suez, called Srishti, allows the composition of a computation graph for flow processing. Two critical features of Srishti are  that it provides strong memory protection and performance isolation guarantees to the core router functions from the dynamically added router functions. For this, the key enabling components of Srishti are an efficient intra-address space protection mechanism [4], and a CPU scheduler that prioritizes core router functions over router extensions. Flows are first-class resource principals in Srishti, and all computation is composed in terms of flows. Srishti's CPU scheduler also arbitrates the CPU between flows according to their reservations, so that end-to-end performance guarantees can be offered even to flows that have computation interposed in their datapath.

A functional prototype of Suez has been built from off-the-shelf Intel hardware and a Gbit/sec system-area network technology from Myrinet. The system consists of a set of nodes, each of which is a general-purpose PC, hosting Pentium-II 400 MHz CPUs. Each node connects to a Myrinet switch, which acts as a fast backplane for the system, and to the rest of the network, through Myrinet interfaces. These interfaces host on-board Lanai 4.X processors, which are the programmable network processors implementing Suez's forwarding path.



Code related to Suez may be found here.

Related Links:

1. Photo courtesy The Alberni Envoironmental Coalition, "Space Photos of the Earth" Gallery.
2. Cited from the Encyclopedia Britannica.