A Fast, Flexible Network Interface Framework

Willy S. Liao, See-Mong Tan, Roy H. Campbell · 1997

The Network Interface Framework (NIF) is an object-oriented software architecture for providing networking services in the Choices object-oriented operating system. The NIF supports multiple client subsystems, provides clients with low-latency notification of received packets, and imposes no particular structure on clients. By contrast, traditional BSD UNIX-style networking does not meet the last two requirements, since it forces clients to use software interrupts and queueing. BSD UNIX cannot accomodate a process-based protocol subsystem such as the x -Kernel, whereas the NIF can. We have ported the x -Kernel to Choices by embedding it into the NIF. Using the standard x -Kernel protocol stack with NIF yields Ethernet performance comparable to BSD networking. The NIF is also flexible enough to support services that cannot easily be supported by traditional BSD, such as quality-of-service for multimedia. Preliminary performance results for asynchronous transfer mode (ATM) networks show that the NIF can be used to minimize jitter for continuous media data streams in the presence of non-realtime streams.

Read the paper · More papers on PaperTik