Transferring active networking technology from the research arena to everyday deployment on desktop and edge router nodes, requires a NodeOS design that simultaneously meets three goals: (1) be embedded within a wide-spread, open source operating system; (2) allow non-active applications and regular operating system operation to proceed in a regular manner, unhindered by the active networking component; (3) offer performance competitive with that of networking stacks of general purpose operating systems. Previous NodeOS systems, Bowman, Janos, AMP and Scout, only partially addressed these goals. Our contribution lies in the design and implementation of such a system, a NodeOS within the Linux kernel, and the demonstration of competitive performance for medium and larger packet sizes. The underlying approach to our NodeOS design is to provide a mapping from the existing system components and interfaces, to ones we architected for incorporating the active networking functionality. We also illustrate how such an interface-focused design easily renders to the deployment of other networking architectures, such as peer-to-peer networks and extensible routers.
- Active networks
- Extensible routers
- Interface design
- Network drivers
ASJC Scopus subject areas
- Computer Networks and Communications
- Electrical and Electronic Engineering