In order to use an ANIC adapter some basic software integration is required. Accolade’s world class technical support team is always available to provide software integration assistance and reference applications. Figure 5 shows the two major software integration points: 1) ANIC API and 2) ANIC Device Driver.
Figure 5: ANIC Stack
ANIC API (Application Programming Interface)
The security or networking application that runs in user space on the network appliance has to be modified in order to interact with the ANIC adapter. To keep the modification simple, Accolade provides a lightweight, C language API which is linked to the user application as a shared library. Various API calls are used to communicate with the ANIC adapter.
One of the many benefits of a standard API is investment protection. With a common API customers can seamlessly migrate their network appliance from one ANIC adapter (e.g. 10G) to another (e.g. 100G) without any significant modification to the host application.
ANIC Device Driver
A device driver (supplied by Accolade) must be loaded into the network appliance as an extension to the host kernel. Device drivers are available for Linux, Windows and FreeBSD. As with conventional device drivers the ANIC driver facilitates communication to the ANIC adapter (via the host kernel) for common operations such as adapter setup, turning ports on and off or reading port status. However, unlike conventional device drivers the ANIC driver also facilities a “fast path” or kernel bypass mode which is used for most data intensive interactions with the ANIC adapter such as table updates or bulk data transfer.
Figure 6 compares a conventional network appliance using a standard network interface card (NIC) such as from Intel with one that has an ANIC adapter.
Figure 6: ANIC Fast Path Communication
Network and Security Monitoring Use Case
Accolade ANIC adapters can be inserted in to a variety of different network appliances for lossless packet capture and acceleration. However one of the most common uses is in network monitoring appliances (NMAs) as shown in Figure 7.
Figure 7: Network Monitoring Appliances (NMAs)
Network monitoring appliances are a perfect fit for ANIC adapters because they are typically flooded with a large volume of packet data which they must process and analyze with software for some specific network, security or quality of service related purpose. The software analysis of the data runs the gamut from tracing a hacker after a security breach to network troubleshooting to measuring the quality of voice and video traffic.
ANIC adapters are inserted into the NMA for lossless packet capture and pre-processing (such as time stamping, packet filtering, and flow classification) of the incoming packets. All relevant data is then passed along directly to host memory for analysis by the security or networking application. The ANIC adapter saves valuable CPU cycles and thus achieves higher levels of processing speed and efficiency.