Description
This example covers a number flowmatching functionalities working together:
- Set up and print statistics stream examples/flowmatch/learn_example_flowstat.cpp
- Set up NTPL filters examples/flowmatch/learn_example_ntpl.cpp
- Start threads to handle incoming data from MISS and UNHANDELED filters examples/flowmatch/learn_example_receiver.cpp
- Transmit data in a number of simple scenarios examples/flowmatch/learn_example_main.cpp
- Print flow info and status records examples/flowmatch/learn_example_receiver.cpp
For the purpose of self-containment, this example also implements the functionality for transmitting data which you will find in: examples/flowmatch/learn_example_transmitter.cpp However, that functionality is outside the scope of the flowmatcher, and other and better examples exists for transmitting data.
Finally, a handful of helper functions exists in: examples/flowmatch/learn_example_helper.cpp Just like the transmitter functionality, the helper functions is outside the scope of the flowmatcher, and can safely be ignored when working to understand the flowmatcher functionality.
The example program uses the following NTAPI functions:
- NT_Init()
- NT_Done()
- NT_StatOpen()
- NT_StatRead()
- NT_StatClose()
- NT_ExplainError()
- NT_NTPL()
- NT_ConfigOpen()
- NT_ConfigRead()
- NT_ConfigWrite()
- NT_ConfigClose()
- NT_FlowOpenAttrInit()
- NT_FlowOpenAttrSetAdapterNo()
- NT_FlowOpen_Attr()
- NT_FlowClose()
- NT_FlowStatusRead()
- NT_FlowRead()
- NT_FlowWrite()
- NT_NetRxOpen()
- NT_NetRxClose()
- NT_NetRxGetNextPacket()
- NT_NetTxOpen()
- NT_NetTxClose()
- NT_NetTxGet()
- NT_NetTxRelease()
- _NT_NET_GET_PKT_DESCR_PTR_DYN3()
This example is build for adapters with flowmatcher functionality, and with at least 2 ports.