nDIP创建新的协议

1概述

官方的说明书有点老旧,针对最新的框架,创建一个测试的协议监控,作为一个设计模板demo。

2 实现

2.1 定义协议名称

每一个协议都必须在src/include/ndpi_protocol_ids.h头文件中定义一个对应的协议名称,如:

NDPI_PROTOCOL_ELASTICSEARCH         = 330,
NDPI_PROTOCOL_MYTEST                = 331,    //new

331是这个协议的ID,且必须是独一无二的。

2.2 添加协议源文件

a 确定协议名称ID后,需要在src/lib/protocols/下创建一个新的协议源文件,如my_test_protocol.c。

文件开头添加头文件,如下图:

#include "ndpi_protocol_ids.h"

#define NDPI_CURRENT_PROTO NDPI_PROTOCOL_MYTEST

#include "ndpi_api.h"

中间的宏定义可以不用。

在里面需要定义一个入口函数,如:

void ndpi_search_my_test_protocol(struct ndpi_detection_module_struct *ndpi_struct, struct ndpi_flow_struct *flow) 
{
   
  struct ndpi_packet_struct *packet = &ndpi_struct->packet;

  NDPI_LOG_DBG(ndpi_struct, "search my test protocol...\n");

  if (ndpi_check_my_test_protocol(ndpi_struct
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值