首页> 中文学位 >基于Linux的千兆线速防火墙的设计与实现
【6h】

基于Linux的千兆线速防火墙的设计与实现

代理获取

目录

文摘

英文文摘

声明

第一章绪论

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前景展望

致谢

参考文献

攻硕期间取得的研究成果

展开▼

摘要

随着互联网应用的日益普及,网络已成为主要的数据传输和信息交换平台,网络安全和信息安全是保障网上业务正常进行的关键。在构建安全网络环境的过程中,防火墙作为第一道安全防线,正受到越来越多用户的关注。目前防火墙仍然起着最基本的预防作用,仍然是保护网络安全所必须的工具。 目前,传统的软件防火墙大多数是在Linux的Netfilter框架之下实现的。更准确地讲,Netfilter是Linux内核中一个包过滤框架,它实现了包过滤、状态检测、网络地址转换和包标记等多种功能。本文对Linux的Netfilter框架进行了深入的研究和探讨,利用Netfiltor设计的开放性,在内核的数据链路层、网络层实现了自己的功能模块。本文在分析Neffiltor框架的基础上,结合FPGA设计的灵活性,设计了一种具有可扩展性和高性能的硬件防火墙的体系结构。 鉴于防火墙产品功能不断完善的发展趋势,交换功能和路由功能几乎成了防火墙产品不可或缺的组成部分。本文将在FPGA芯片内部实现交换功能和路由功能,但考虑到交换和路由功能的软件的复杂性,采取了一种折衷的处理方法:Linux内核完成路由表和交换表的创建,FPGA芯片以规则的形式把路由表和交换表存储下来。 本文借鉴Linux内核提供的交换、路由以及Netfilter框架的设计及实现方法,在FPGA芯片内部实现了交换、路由以及防火墙功能。同时,利用Linux系统提供的动态模块加载机制,把对FPGA芯片的操作和驱动实现为动态模块加入Linux内核,从而成为Linux内核的一部分。通过在Linux内核适当位置挂接钩子函数,以及在动态模块中实现钩子函数的方式,使Linux内核的交换、路由及防火墙规则与FPGA硬件交换、路由及防火墙规则保持一致。 最后,对该框架实现的防火墙的功能和性能进行了测试,从测试结果可以看出,该防火墙达到了千兆线速的要求。分析整个防火墙产品的框架设计和测试结果,最终得出结论:Linux内核和动态模块实现软硬件规则的一致性,FPGA芯片完成对数据包的处理,这使得该防火墙同时具有了软件的灵活性和硬件的高速性,突破了软件防火墙的性能瓶颈,从而为硬件防火墙的设计开辟了一条新的思路。

著录项

  • 作者

    胡波;

  • 作者单位

    电子科技大学;

  • 授予单位 电子科技大学;
  • 学科 计算机应用技术
  • 授予学位 硕士
  • 导师姓名 黄迪明;
  • 年度 2008
  • 页码
  • 总页数
  • 原文格式 PDF
  • 正文语种 中文
  • 中图分类 网络安全;
  • 关键词

    网络安全; 防火墙; 千兆线速; Linux;

  • 入库时间 2022-08-17 11:17:36

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号