Software Architecture

IntelĀ® PAC
Napatech SmartNIC
Overview Document

In this chapter

This chapter describes NTAPI.


The API has only eight function types: Init, NTPL, Open, Close, Get, Release, Read and Write. These eight function types use different parameters depending on which stream type they are used on. To get type checking on all parameters, separate functions have been made for each stream type. In addition several variants exist for some of these functions.
Note: One function NT_Init(uint32_t version) (see DN-0449) is independent of the streams and is used to check the API version (see API). The function is defined in the ntapi.h file.

All of the functions are described in DN-0449.

The NTPL syntax and the macros (see DN-0449) are also part of the application interface to the driver.

Network streams

The NTAPI network stream functions are defined in the stream_net.h file. They are divided into receive functions, transmit functions and file functions.
Note: It is recommended that the NT_NetTxAddPacket function (see DN-0449) is not used. The NT_NetTxAddPacket function is present for legacy compatibility but it reduces the TX throughput. Instead dynamic packet descriptor 3 (see DN-1128) should be used for adding, for instance, VLAN tags or MPLS labels to the transmitted packets.

Configuration stream

The NTAPI configuration stream functions are defined in the stream_config.h file.

Information stream

The NTAPI information stream functions are defined in the stream_info.h file.

Event stream

The NTAPI event stream functions are defined in the stream_event.h file.

Statistics stream

The NTAPI statistics stream functions are defined in the stream_statistics.h file.