Learning the PF_RING API

Posted · Add Comment

Since the initial version, PF_RING has supported the pcap API that is familiar to many developers. This has allowed people to seamlessly port existing apps on top of PF_RING, simply relinking their apps using the PF_RING-aware version of libpcap. Unfortunately the pcap API is able to exploit just a subset of the features available in the native PF_RING API as demonstrated by the various apps we have coded to show how to the native API works.

In order to ease the development of new native PF_RING applications, we acknowledge it was time to properly document the API. In particular those functions that are part of  DNA and libzero. For this reason, we have created an HTML documentation of the API that describes not just the functions but also all the various datatypes. We hope this will enable the development of new native applications.

This said we have just released PF_RING 5.6.2, the last before the major revision 6.x that we will start rolling out in a few weeks. Beside the addition of many new features, on 6.x we have cleaned the API that in 5.x is a bit “fragmented” in “classic” PF_RING, DNA and libzero. In the new version everything will be easy and smooth. We believe you will appreciate hoping that this will further ease the development of new native applications.