OpenNSL API Guide and Reference Manual
Kernel Network (KNET) Configuration

In certain applications is it desirable to have switch packets go in and out of the operating system's network protocol stack. This can be accomplished by writing a software connector module on top of the OpenNSL Tx/Rx API that forwards packets to and from the native network interfaces of the operating system.

In some environments (such as Linux User Mode) a simple software connector solution may be too inefficient for a number of reasons, and the Kernel Network Interface (KNET) has been developed to address this.

The KNET API provides an interface for managing virtual kernel (operating system) network interfaces which communicate through the CPU port of the switch device. On the transmit path the low-level driver will multiplex packet streams from the virtual network interfaces as well as the OpenNSL TX API. On the receive side the driver will de-multiplex the packets from the switch into the virtual network interfaces and the OpenNSL RX API based on a set of packet filters which are also managed through the KNET API.