本文主要是介绍suricata for Hanic Improved documentation,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
增加了4个文件:runmod-hanic4.h,runmod-hanic4.c,source-hanic4.h,source-hanic4.c
1. source-hanic4.h,source-hanic4.c是根据 napatech网卡的source更改而来。重新实现了线程初始化函数(Hanic4StreamThreadInit)和从网卡获取数据包的函数(Hanic4StreamLoop)以及Hanic4StreamThreadDeinit函数。
1)在Hanic4StreamLoop()中通过hanic4_rx_stream_open()获取rx_stream.
2)通过hanic4_rx_stream_read_next()获取frame。
3)通过hanic4_parse_packet解析frame,获取hanic_header和contentPacket。
2. runmod-hanic4.h,runmod-hanic4.c是根据 napatech网卡的runmod更改而来。重新实现了AutoFP模式处理流程函数由RunModeSetLiveCaptureAutoFp改为RunModeSetLiveCaptureHanic4AutoFp。
3. 在util-runmodes.h和util-runmodes.c中分别增加了hanic网卡AutoFP模式处理流程函数RunModeSetLiveCaptureHanic4AutoFp的定义和实现。
4. 在util-runmodes的RunModeSetLiveCaptureHanic4AutoFp函数中增加了针对numa架构的线程亲和性设置。
1)通过numa_available()检查服务器是否支持numa架构。
2)通过szedata_get_numa_node()获取hanic网卡对应的numa结点。
3)通过get_num_of_cpus_on_node()获取numa结点所包含的cpu核数,即该结点可创建的线程数。
4)在创建receive线程时通过get_next_cpu_on_node()获取结点的core,并通过pthread_setaffinity_np()设置线程亲和性。
这篇关于suricata for Hanic Improved documentation的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!