文摘
英文文摘
声明
第一章绪论
1.1 课题研究背景
1.2研究现状
1.3 本文的研究工作及创新点
1.3.1本文的研究工作
1.3.2本文的研究难点及创新点
1.4本文的组织结构
1.5本章小结
第二章 防火墙技术分析
2.1 防火墙的概念
2.1.1防火墙的目的
2.1.2防火墙的作用
2.2 防火墙的拓扑图
2.3防火墙的分类
2.3.1软硬件形式划分
2.3.2发展趋势划分
2.4本章小结
第三章Linux内核防火墙Netfilter
3.1 Linux编程技术介绍
3.1.1 内核模块与应用程序的对比
3.1.2模块化编程技术介绍
3.2 Netfilter组成
3.3Netfilter HOOK
3.4 Netfilter工作流程
3.4.1数据包流向
3.4.2 Netfilter/Iptables组件
3.5 用户空间工具
3.6 使用Netfilter和Iptables对数据包进行过滤
3.7 利用Iptables和Netfilter进行NAT转换
3.8 利用Iptables和Netfilter进行数据包处理(Packet mangling)
3.8.1针对数据包处理的目标扩展
3.8.2排队数据包到用户空间
3.9本章小结
第四章 千兆线速防火墙总体设计及硬件实现
4.1 总体设计及框架
4.1.1需求分析
4.1.2总体框架
4.1.3防火墙主要功能模块概述
4.2硬件平台设计思路
4.2.1芯片选择依据
4.2.2硬件平台结构框图
4.2.3 FPGA外部接口
4.2.4 FPGA芯片功能介绍
4.2.5 FPGA内部结构框图
4.2.6模块说明
4.2.7 FPGA处理流程
4.3本章小结
第五章 千兆线速防火墙软件设计及实现
5.1 软件框架结构设计
5.2 Linux模块机制
5.2.1 Linux模块分析
5.2.2模块加载
5.2.3模块卸载
5.2.4 Linux模块编程
5.3动态模块实现
5.4 路由模块实现
5.4.1 Linux路由配置处理流程
5.4.2内核定义钩子函数
5.4.3调用路由钩子函数
5.5 Iptables规则填写过程
5.5.1 Iptables配置流程
5.5.2内核定义钩子函数
5.5.3内核Netfilter修改说明
5.5.4 xwall_rule_ctl_hook实现
5.6 NAT模块实现
5.6.1 NAT功能描述
5.6.2 NAT模块实现函数
5.6.3 NAT规则添加实现函数
5.7 访问控制模块实现
5.7.1 ACL功能描述
5.7.2 ACL模块实现方式
5.7.3 ACL模块实现函数
5.7.4 ACL规则添加实现函数
5.8 状态检测模块实现
5.8.1状态检测功能描述
5.8.2状态检测模块实现
5.9本章小结
第六章 系统测试
6.1 ACL硬件规则测试
6.1.1测试目的
6.1.2测试拓扑图
6.1.3测试过程
6.1.4测试结果分析
6.2 NAT硬件规则测试
6.2.1测试目的
6.2.2测试过程(SNAT)
6.2.3测试结果分析
6.3硬件防火墙性能测试
6.3.1测试目的
6.3.2测试拓扑图
6.3.3测试过程
6.3.4测试结果分析
6.4本章小结
第七章 结论与展望
7.1 本论文研究总结
7.2前景展望
致谢
参考文献
攻硕期间取得的研究成果