The packet-based interface enables processing of packets. This means that the driver software has access to every single packet. It is possible to merge packets from multiple SmartNICs based on the time stamps in the individual packets. This is defined as packet merging (see Packet Merging).The packet-based interface is a zero-copy interface meaning that the driver software gives a pointer to the original packet buffer to the application or even to multiple applications. In cases with more than one application it is the responsibility of the applications to make sure that they can work on the same buffer either at the same time or one after the other. The driver software lets the applications get the packets when they are ready, so if any synchronization is needed between applications sharing a stream, this must be provided by the applications.
Packet-based interface is specified in the NT_NetRxOpen function in the stream_net.h file.