idea 1
-
结合这三者,做一个像第一篇论文一样使用ebpf去收集数据,然后使用第三篇论文中的方法(随机森林)去判断并阻止DDoS的方案.
因为随机森林比LSTM更为轻量,能改进第一篇论文中的时延问题,并且不再局限于检测.
ebpf 集成学习 在线学习
更多的体现学术创新点
实验步骤
-
使用ebpf程序完成数据收集和导出
特征名 描述 类型 saddr 源地址 u32 daddr 目的地址 u32 source 源主机端口 u16 dest 目的主机端口 u16 source_mac 源主机MAC地址 unsigned char* syn_nums 统计TCP通信中syn标志出现的个数 u32 syn_nums 统计TCP通信中syn标志出现的个数 u32 fin_nums 统计TCP通信中fin标志出现的个数 u32 fin_nums 统计TCP通信中fin标志出现的个数 u32 total_length 统计IP地址所有数据包的长度 u32 packets_length_max 统计某IP地址所有数据包中包长度的最大值 u16 packets_length_min 统计某IP地址所有数据包中包长度的最小值 u16 packets_nums 用于统计当前IP地址所有数据包的数量 u32 first_t 记录连接的时间 u64 newest_t 记录最新一次收到数据包的时间 u64 last_t 记录上一次收到数据包的时间 u64 idle_t_min 记录最小的等待时间 u64 idle_t_max 记录最大等待时间 u64 macs 用于统计同一MAC地址下有多少IP连入,变量类型为BPF_HASH表,键为MAC地址,值为IP连接数目 BPF_HASH - 完成数据流创建和更新的ebpf程序(已完成)
- 对map中的特征采样并导出到文件(已完成)
- 选择合适的ddos模拟程序(已完成)
- 完成label的自动化标记(已完成)
- 对数据调整处理(已完成)
-
使用收集的数据训练随机森林模型(已完成)
- 数据收集(已完成cic2017)
- 数据处理(已完成)
- 模型训练(已完成)
-
验证模型性能,根据结果调整特征直到符合要求(已完成)
-
迁移模型至ebpf程序, 并修改ebpf程序使其能够阻断DDos连接(已完成)
- 将模型转为c代码(已完成)
- 完成ebpf程序(已完成)
-
测试ebpf程序性能得出数据(已完成)
-
随机森林程序新增数组驱动,测试性能(已完成)
- 数组驱动(已完成)
-
训练和随机森林参数数目相同或类似的神经网络测试性能(已完成)
-
阅读复现别人论文(已完成?)
论文部分
- 论文结构
- 学术创新点