Contrasting with Conventional Networking

Onload User Guide (UG1586)

Document ID
UG1586
Release Date
2023-07-31
Revision
1.2 English

When using conventional networking, an application calls on the OS kernel to send and receive data to and from the network. Transitioning from the application to the kernel is an expensive operation, and can be a significant performance barrier.

When an application accelerated using Onload needs to send or receive data, it need not access the operating system, but can directly access a partition on the network adapter. The two schemes are shown in the following figure.

Figure 1. Contrast with Conventional Networking.

An important feature of the conventional model is that applications do not get direct access to the networking hardware and so cannot compromise system integrity. Onload is able to preserve system integrity by partitioning the NIC at the hardware level into many, protected 'Virtual NICs' (VNIC). An application can be granted direct access to a VNIC without the ability to access the rest of the system (including other VNICs or memory that does not belong to the application). Thus Onload with a supported NIC allows optimum performance without compromising security or system integrity.

Note: On X3-series adapters receive queues can be shared by more than one client, and so there must be a trust relationship between processes on the system. X3-series adapters should not be used in scenarios where strict POSIX isolation is necessary.

In summary, Onload can significantly reduce network processing overheads.