简单的基于pld硬件防火墙(终稿)_第1页
简单的基于pld硬件防火墙(终稿)_第2页
简单的基于pld硬件防火墙(终稿)_第3页
简单的基于pld硬件防火墙(终稿)_第4页
简单的基于pld硬件防火墙(终稿)_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE29目录第一章绪论 1引言 1课题设计介绍 1第二章防火墙介绍 22.1什么是防火墙及防火墙的作用 22.2防火墙的架构 22.3防火墙的技术实现 22.4防火墙的特点 3第三章硬件防火墙 43.1硬件防火墙的基本功能 43.2防火墙实现基础原理 53.2.1包过滤防火墙 63.2.2应用网关防火墙 63.2.3状态检测防火墙 73.2.4复合型防火墙 8第四章网络防火墙的硬件实现 94.1

网络防火墙的硬件结构 94.1.2USB2.0接口芯片CY7C68013 104.2TCP/IP协议栈在UCOSII下的实现 10第五章利用PLD做一个硬件防火墙 125.1MAX+PLUSⅡ软件安装和使用 125.1.1概述 125.2MAX+PLUSⅡ设计硬件防火墙程序实例 145.2.1设计程序部分 145.2.2波形仿真部分 19结束语 20致谢 21参考文献 22第一章绪论引言随着现代科学技术的迅猛发展,能源问题、环境问题的日益成为人民所关注的问题。在电子科学领域也在以前所未有的革新速度,向着功能多样化,体积最小化、功耗最低化的方向迅速发展。现代电子产品在设计上有了新的突破:大量使用大规模的可编程逻辑器件,以提高产品的性能,缩小产品的体积,降低产品的消耗;广泛使用现代计算机技术,以提高电子设计的自动化程度,缩短开发周期,提高产品的竞争力。CPLD就是这样一个例子,PLD技术的发展,将大量复杂电路缩小到一块小芯片上实现原来电路的功能。课题设计介绍本设计就以硬件防火墙的实现为主要内容,简单介绍各类防火墙的实现,应用、及功能。然后就PLD为设计实例来具体说明硬件防火墙的原理实现。就硬件防火墙而言,一般具备一下的基本功能要求:(1)当设置的特真码与输入的代码相同时输出就按照防火墙的功能对其处理。(2)当设置的特真码与输入的代码不同时输出原代码。2、对PLD设计硬件防火墙的要求:(1)能在MAX+PLUSII平台上设计硬件代码,并编译通过。(2)用仿真能实现防火墙的基本功能。第二章防火墙介绍2.1什么是防火墙及防火墙的作用防火墙是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它是不同网络或网络安全域之间信息的唯一出入口,能根据企业的安全政策控制(允许、拒绝、监测)出入网络的信息流,且本身具有较强的抗攻击能力。它是提供信息安全服务,实现网络和信息安全的基础设施。

随着网络规模的扩大和开放性的增强,网络上的很多敏感信息和保密数据将受到很多主动和被动的人为攻击。一种解决办法是为需要保护的网络上的每个工作站和服务器装备上强大的安全特征(例如入侵检测),但这几乎是一种不切合实际的方法,因为对具有几百个甚至上千个节点的网络,它们可能运行着不同的操作系统,当发现了安全缺陷时,每个可能被影响的节点都必须加以改进以修复这个缺陷。另一种选择就是防火墙(Firewall),防火墙是用来在安全私有网络(可信任网络)和外部不可信任网络之间安全连接的一个设备或一组设备,作为私有网络和外部网络之间连接的单点存在。防火墙是设置在可信任的内部网络和不可信任的外部网络之间的一道屏障,它可以实施比较广泛的安全策略来控制信息流,防止不可预料的潜在的入侵破坏.DMZ外网和内部局域网的防火墙系统。2.2防火墙的架构防火墙产品的三代体系架构主要为:第一代架构:主要是以单一cpu作为整个系统业务和管理的核心,cpu有x86、powerpc、mips等多类型,产品主要表现形式是pc机、工控机、pc-box或risc-box等;

第二代架构:以np或asic作为业务处理的主要核心,对一般安全业务进行加速,嵌入式cpu为管理核心,产品主要表现形式为box等;

第三代架构:iss(integratedsecuritysystem)集成安全体系架构,以高速安全处理芯片作为业务处理的主要核心,采用高性能cpu发挥多种安全业务的高层应用,产品主要表现形式为基于电信级的高可靠、背板交换式的机架式设备,容量大性能高,各单元及系统更为灵活。2.3防火墙的技术实现从Windows软件防火墙的诞生开始,这种安全防护产品就在跟随着不断深入的黑客病毒与反黑反毒之争,不断的进化与升级。从最早期的只能分析来源地址,端口号以及未经处理的报文原文的封包过滤防火墙,后来出现了能对不同的应用程序设置不同的访问网络权限的技术;近年来由ZoneAlarm等国外知名品牌牵头,还开始流行了具有未知攻击拦截能力的智能行为监控防火墙;最后,由于近来垃圾插件和流氓软件的盛行,很多防火墙都在考虑给自己加上拦截流氓软件的功能。综上,Windows软件防火墙从开始的时候单纯的一个截包丢包,堵截IP和端口的工具,发展到了今天功能强大的整体性的安全套件。2.4防火墙的特点一般防火墙具备以下特点:1、控制对特殊站点的访问,广泛的服务支持:通过将动态的、应用层的过滤能力和认证相结合,可实现WWW浏览器、HTTP服务器、FTP等。2、提供监视Internet安全和预警的方便端点,对私有数据的加密支持,保证通过Internet进行的虚拟私人网络和商务活动不受损坏。3、客户端认证只允许指定的用户访问内部网络或选择服务,过滤掉不安全服务和非法用户。4、反欺骗:欺骗是从外部获取网络访问权的常用手段,它令数据包像是来自网络内部。防火墙能监视这样的数据包并扔掉它们。5、C/S模式和跨平台支持:能使运行在一平台的管理模块控制另一平台的监视模块。6、邮件保护:保护网络免受对电子邮件服务的攻击。第三章硬件防火墙硬件防火墙是指把防火墙程序做到芯片里面,由硬件执行这些功能,能减少CPU的负担,使路由更稳定。网络级防火墙一般根据源、目的地址做出决策,输入单个的IP包。一台简单的路由器是“传统的”网络级防火墙,因为它不能做出复杂的决策,不能判断出一个包的实际含意或包的实际出处。现代网络级防火墙已变得越来越复杂,可以保持流经它的接入状态、一些数据流的内容等等有关信息。许多网络级防火墙之间的一个重要差别是防火墙可以使传输流直接通过,因此要使用这样的防火墙通常需要分配有效的IP地址块。网络级防火墙一般速度都很快,对用户很透明。3.1硬件防火墙的基本功能防火墙的基本功能防火墙系统可以说是网络的第一道防线,因此一个企业在决定使用防火墙保护内部网络的安全时,它首先需要了解一个防火墙系统应具备的基本功能,这是用户选择防火墙产品的依据和前提。一个成功的防火墙产品应该具有下述基本功能:防火墙的设计策略应遵循安全防范的基本原则——“除非明确允许,否则就禁止”;防火墙本身支持安全策略,而不是添加上去的;如果组织机构的安全策略发生改变,可以加入新的服务;有先进的认证手段或有挂钩程序,可以安装先进的认证方法;如果需要,可以运用过滤技术允许和禁止服务;可以使用FTP和Telnet等服务代理,以便先进的认证手段可以被安装和运行在防火墙上;拥有界面友好、易于编程的IP过滤语言,并可以根据数据包的性质进行包过滤,数据包的性质有目标和源IP地址、协议类型、源和目的TCP/UDP端口、TCP包的ACK位、出站和入站网络接口等。如果用户需要NNTP(网络消息传输协议)、XWindow、HTTP和Gopher等服务,防火墙应该包含相应的代理服务程序。防火墙也应具有集中邮件的功能,以减少SMTP服务器和外界服务器的直接连接,并可以集中处理整个站点的电子邮件。防火墙应允许公众对站点的访问,应把信息服务器和其他内部服务器分开。防火墙应该能够集中和过滤拨入访问,并可以记录网络流量和可疑的活动。此外,为了使日志具有可读性,防火墙应具有精简日志的能力。虽然没有必要让防火墙的操作系统和公司内部使用的操作系统一样,但在防火墙上运行一个管理员熟悉的操作系统会使管理变得简单。防火墙的强度和正确性应该可被验证,设计尽量简单,以便管理员理解和维护。防火墙和相应的操作系统应该用补丁程序进行升级且升级必须定期进行。正像前面提到的那样,Internet每时每刻都在发生着变化,新的易攻击点随时可能会产生。当新的危险出现时,新的服务和升级工作可能会对防火墙的安装产生潜在的阻力,因此防火墙的可适应性是很重要的。3.2防火墙实现基础原理防火墙通常使用的安全控制手段主要有包过滤、状态检测、代理服务。下面,我们将介绍这些手段的工作机理及特点。包过滤技术是一种简单、有效的安全控制技术,它通过在网络间相互连接的设备上加载允许、禁止来自某些特定的源地址、目的地址、TCP端口号等规则,对通过设备的数据包进行检查,限制数据包进出内部网络。包过滤的最大优点是对用户透明,传输性能高。但由于安全控制层次在网络层、传输层,安全控制的力度也只限于源地址、目的地址和端口号,因而只能进行较为初步的安全控制,对于恶意的拥塞攻击、内存覆盖攻击或病毒等高层次的攻击手段,则无能为力。状态检测是比包过滤更为有效的安全控制方法。对新建的应用连接,状态检测检查预先设置的安全规则,允许符合规则的连接通过,并在内存中记录下该连接的相关信息,生成状态表。对该连接的后续数据包,只要符合状态表,就可以通过。这种方式的好处在于:由于不需要对每个数据包进行规则检查,而是一个连接的后续数据包(通常是大量的数据包)通过散列算法,直接进行状态检查,从而使得性能得到了较大提高;而且,由于状态表是动态的,因而可以有选择地、动态地开通1024号以上的端口,使得安全性得到进一步地提高。代理服务型防火墙,代表某个专用网络同互联网进行通讯的防火墙,类似在股东会上某人以你的名义代理你来投票。当你将浏览器配置成使用代理功能时,防火墙就将你的浏览器的请求转给互联网;当互联网返回响应时,代理服务器再把它转给你的浏览器。代理服务器也用于页面的缓存,代理服务器在从互联网上下载特定页面前先从缓存器取出这些页面。内部网络与外部网络之间不存在直接连接。代理服务器提供了详细的日志和审计功能,大大提高了网络的安全性,也为改进现有软件的安全性能提供了可能。但会降低网络性能,所以在一般情况下都不使用。3.2.1包过滤防火墙包过滤防火墙一般在路由器上实现,用以过滤用户定义的内容,如IP地址。包过滤防火墙的工作原理是:系统在网络层检查数据包,与应用层无关。这样系统就具有很好的传输性能,可扩展能力强。但是,包过滤防火墙的安全性有一定的缺陷,因为系统对应用层信息无感知,也就是说,防火墙不理解通信的内容,所以可能被黑客所攻破。

图4.1包过滤防火墙工作原理图3.2.2应用网关防火墙应用网关防火墙检查所有应用层的信息包,并将检查的内容信息放入决策过程,从而提高网络的安全性。然而,应用网关防火墙是通过打破客户机/服务器模式实现的。每个客户机/服务器通信需要两个连接:一个是从客户端到防火墙,另一个是从防火墙到服务器。另外,每个代理需要一个不同的应用进程,或一个后台运行的服务程序,对每个新的应用必须添加针对此应用的服务程序,否则不能使用该服务。所以,应用网关防火墙具有可伸缩性差的缺点。(图4.2)

图4.2应用网关防火墙工作原理图3.2.3状态检测防火墙状态检测防火墙基本保持了简单包过滤防火墙的优点,性能比较好,同时对应用是透明的,在此基础上,对于安全性有了大幅提升。这种防火墙摒弃了简单包过滤防火墙仅仅考察进出网络的数据包,不关心数据包状态的缺点,在防火墙的核心部分建立状态连接表,维护了连接,将进出网络的数据当成一个个的事件来处理。可以这样说,状态检测包过滤防火墙规范了网络层和传输层行为,而应用代理型防火墙则是规范了特定的应用协议上的行为。(图4.3)

图4.3状态检测防火墙工作原理图

3.2.4复合型防火墙符合型防火墙是指综合了状态检测与透明代理的新一代的防火墙,进一步基于ASIC架构,把防病毒、内容过滤整合到防火墙里,其中还包括VPN、IDS功能,多单元融为一体,是一种新突破。常规的防火墙并不能防止隐蔽在网络流量里的攻击,在网络界面对应用层扫描,把防病毒、内容过滤与防火墙结合起来,这体现了网络与信息安全的新思路。它在网络边界实施OSI第七层的内容扫描,实现了实时在网络边缘布署病毒防护、内容过滤等应用层服务措施。(图4.4)

图4.4复合型防火墙工作原理第四章网络防火墙的硬件实现概述

网络防火墙是一种控制用户计算机网络访问的软件或硬件。通过对它的各种规则设置,使得合法的链路得以建立;而非法的连接将被禁止,同时通过各种手段屏蔽掉用户的隐私信息,以保障用户的对网络访问的安全。目前一般个人电脑是用的软件防火墙,随着微电子的快速发展,我们可以完全利用嵌入式系统来实现硬件防火墙,从而提高系统的网络访问性能。

4.1

网络防火墙的硬件结构在本系统中,主芯片采用EPF10K100QC208-3。网络芯片采用的Realtek公司的RTL8019AS,它是一款10M的网络芯片。PC机的通信芯片采用Cypress的USB2.0的接口芯片CY7C68013,它可以完成PC机和硬件防火墙的高速通信。在本系统中还提供2M字节的FLASH和512K字节的RAM,它们分别由芯片SST39VF160和IS61LV25616AL来实现。如图1:图5.1网络防火墙系统的硬件结构

4.1.1网络通信芯片RTL8019

RTL8019AS网络芯片是REALTEK公司生产的,基于ISA接口的10M以太网通信芯片。它采用全双工方式来进行接收以太网数据,非常容易和微处理器接口。该芯片集成了以太网的物理层以及以太网的收发器,数据封包形式完全符合IEEE802.3标准。

4.1.2USB2.0接口芯片CY7C68013

CY7C68013是Cypress公司生产的一款USB2.0的接口芯片。它内部集成了8051的核,可以单独对该芯片编程。由该芯片完成USB2.0接口,跟PC机的通信速率可以高达10Mbyte/s。我们利用该款芯片来实现一个数据FIFO,即对微处理器来讲,它只要将数据写入该FIFO,然后该芯片就会将数据按照USB2.0的协议发送4.2TCP/IP协议栈在UCOSII下的实现

TCP/IP协议分为四层,分别为应用层、传输层、网络层,物理层。本系统中物理层主要包括8019的驱动程序,网络层包括IP协议和ARP协议,传输层主要包括TCP协议和UDP协议,应用层主要包括FTP、HTTP、SNMP和一些用户应用程序。由于该协议实现很复杂,这也是本系统实现的难点,下面给出该协议栈实现的函数框图:

用户过滤层。该层主要实现对一些非法端口裁定行屏蔽TCPICMPIGMPUDP用户过滤层,该层主要实现对IP地址和控制命令屏蔽IPARP用户过滤层。该层主要实现对一些非法端口裁定行屏蔽TCPICMPIGMPUDP用户过滤层,该层主要实现对IP地址和控制命令屏蔽IPARP物理层第五章利用PLD做一个硬件防火墙5.1MAX+PLUSⅡ软件安装和使用5.1.1概述MAX+PLUSⅡ开发系统是易学易用的完全集成化的EDA设计开发环境。该软件与LATTICE公司的iSPEXPERT及XILINX的ISE等软件一样都是CPLD/FPGA的基本开发环境,是CPLD/FPGA开发所必须的,它包含了开发CPLD/FPGA器件的全过程。下面将以MAX+PLUSⅡ的基本使用为基础介绍CPLD/FPGA器件的开发方法,CPLD/FPGA器件及其开发系统是极其复杂的,因此在学习使用时应注意如下特点: 1、MAX+PLUSⅡ的使用与学习一定要与CPLD/FPGA硬件的学习相结合。2、注意学习软件与动手练习相配合,只有多动手设计与调试才能真正掌握设计思想与设计方法。3、多参考相关的书籍或MAX+PLUSⅡ的帮助系统。4、在学习过程中要与数字电路、计算机语言等课程进行比较,找出相同点与不同点,进行比较、类比地学习。5、概念的区分与使用:(1)

器件与符号:如在数字电路中7400为一个器件,在MAX+PLUSⅡ中器件一般被CPLD/FPGA器件专用,而MAX+PLUSⅡ中调用的中小规模的器件都称为符号。本文中有时出于习惯,也会在该使用“符号”的地方而使用“器件”名称,因此在碰到像“器件”、“符号”这样的词,一定要注意上下文的联系。(2)

模块与符号:传统习惯,一般是将一个电路抽象后形成模块,利用模块进行更高层次的设计。而在MAX+PLUSⅡ中电路抽象后形成的模块依然称为“符号”。因此在见到“模块”与“符号”这样的词语时,也要注意上下文的联系。6)、通过本文学习,逐步掌握层次电路的设计,设计过程的功能仿真和时序仿真,同时学会底层编辑,利用硬件实验系统进行硬件的验证。MAX+PLUSⅡ与其它软件相比具有使用简单,操作灵活,支持的器件多,设计输入方法灵活多变等特点,掌握了MAX+PLUSⅡ后,对学习其它的EDA软件会有很大的帮助。1.1常用的设计输入方法如下:1.图形设计输入:MAX+PLUSⅡ的图形设计输入是较其他软件更容易使用的,因为MAX+PLUSⅡ提供了丰富的库单元供设计者调用,尤其是在MAX+PLUSⅡ里提供的mf库几乎包含了所有的74系列的器件,在prim库里提供了数字电路中所有的分离器件。因此只要具有数字电路的知识,几乎不需要过多的学习就可以利用MAX+PLUSⅡ进行CPLD/FPGA的设计。MAX+PLUSⅡ还包括多种特殊的逻辑宏功能(Macro—Function)以及新型的参数化的兆功能(Mega—Function)模块。充分利用这些模块进行设计,可以大大减轻设计人员的工作量和成倍地缩短设计周期。2.文本编辑输入:MAX+PLUSⅡ的文本输入和编译系统支持AHDL语言、VHDL语言、VERILOG语言三种输入方式。3.波形输入方式:如果知道输入、输出波形,也可以采用波形输入方式。4.混合输入方式:MAX+PLUSⅡ设计开发环境,可以进行图形设计输入、文本编辑输入、波形编辑输入混合编辑。具体操作方法是:在图形编辑、波形编辑时形成模块,在文本编辑时通过include“模块名.inc”或者采用Function(…..)Return(….)的方式进行调用。同样,文本编辑输入形成的模块,也可以在图形编辑时调用,AHDL语言编译的结果可以在VHDL语言下使用,VHDL语言编译的结果也可以在AHDL语言或图形输入时使用。这样灵活多变的输入方式,给设计使用者带来了极大的方便。1.2设计与器件的结构无关MAX+PLUSⅡ系统支持Altera公司的ACEX1K、FLEX10KE、FLEX10KB、FLEX10KA、FLEX10K、MAX9000、FLEX8000、MAX7000、FLEX6000、MAX5000、MAX3000及Classic等各种类型的可编程器件。而在设计输入、编译逻辑功能和功能仿真时并不关心器件的结构。只有在形成具体应用电路时,才会指定器件进行底层编辑。1.3底层编辑方便形象MAX+PLUSⅡ的底层编辑(FloorplanEditor)与实际CPLD器件的管脚一一对应,因此只需用鼠标简单的拖放即可完成I/O口等管脚的编辑任务。1.4MAX+PLUSⅡ系统完全集成化在MAX+PLUSⅡ系统环境下,可以完成所有的编辑、编译、网表提取、逻辑综合、适配、器件装配以及功能时序仿真。这样可以加快调试、缩短开发周期。1.5IP核丰富MAX+PLUSⅡ对系统自带的内核具有开放的特性,即这些内核既可以使用又可以浏览。同时,MAX+PLUSⅡ又允许设计人员将自己编辑的IPCORE添加到MAX+PLUSⅡ中。目前在ALTERA网站上发布了许多IP核,还有第三方的IP核都可以在MAX+PLUSⅡ系统中进行综合与验证,当然有的IP核需要合适的License文件。5.2MAX+PLUSⅡ设计硬件防火墙程序实例5.2.1设计程序部分根据防火墙原理我们可以想像,防火墙实际上就是一个病毒库。当网络传送过来的数据与防火墙中病毒数据一样的时候就会被防火墙屏蔽掉,从而保障了计算机的安全。主程序:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;调用程序包;entityktsjisport(x,clk:instd_logic;y:outstd_logic);端口设置及端口数据类型设置;end;ARCHITECTUREarchOFktsjis实体;signalww1,ww2,ww3,ww4:std_logic;定义信号;beginprocess(x,clk)beginwaituntilclk='1';时钟控制优先ifww1='1'andww2='1'andww3='1'andx='1'then--定义:当时钟信号为'1111'ww1<='0';elseww1<=x;endif;endprocess;process(x,clk)第一个进程进程敏感信号执行beginwaituntilclk='1';ifww1='1'andww2='1'andww3='1'andx='1'thenww2<='0';elseww2<=ww1;endif;endprocess;process(x,clk)第一个进程进程敏感信号beginwaituntilclk='1';ifww1='1'andww2='1'andww3='1'andx='1'thenww3<='0';elseww3<=ww2;endif;endprocess;process(x,clk)第一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论