基于Netfilter框架下并行队列处理器在内核中的设计与实现

被引量 : 0次 | 上传用户:Eltonxin
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在信息技术高速发展的今天,计算机网络在政治,军事,金融,商业,交通,电信,教育等方面的应用范围和所起作用日益增大,特别是Internet的迅猛发展,社会对计算机网络的依赖日益增强,网络的重要性和对社会的影响也越来越大。网络在给社会带来巨大贡献和便利的同时,也由于网络某种原因自身的安全问题,存在着极大的信息安全风险和隐患,网络安全问题日益突出。因此,网络安全技术的研究已成为现在计算机和通信界的一个热点,并且成为现在信息科学的一个重要研究领域。防火墙是最基础的网络安全设备,它的主要功能在于把那些不收欢迎的访问隔离在特定网络之外,是企业网络的边界防御体系。防火墙根据网络安全水平和可信任关系将网络划分成一些相对独立的子网,内外子网的通信受到防火墙的检查控制。它可以允许特定的用户和数据包穿过,同时将安全策略不允许的用户和数据包隔断,达到保护高安全等级的子网、限制外部网黑客的攻击、控制入侵蔓延等目的。防火墙可位于局域网和广域网之间,或是局域网和局域网之间。防火墙系统主要采用包过滤技术(Packet Filter),即监视并过滤网络上流入流出的包,拒绝发送那些可疑的数据包,但包过滤技术(Packet Filter)尚无法有效区分同一IP 地址;应用代理服务技术(Proxy Server),通过在应用网关上运行应用代理程序,使用代理程序代替原来的客户程序,接受客户端的请求,对来自局域网内的用户的会话请求转发,与防火墙外部的服务器建立连接,端口映射技术,端口映射是指将防火墙外网网卡地址的某一个端口映射到内部的某台服务器的一个服务端口,外网用户只需访问防火墙外网网卡地址的特定端口即可得到内部服务器的相应服务;网络地址转换技术(NAT),防火墙通过地址转换技术,将所有从内部发出的通<WP=70>过防火墙报文的源地址均修改成防火墙本身的IP地址,而在内部网络互相通讯时,仍使用各自的内部IP地址,内外两套IP地址不会发生冲突,防火墙能详尽记录每一个主机的通道,确保每个分组送往正确的地址,这样,内部网络对外部网络来说是透明的,使得外部网络无法了解内部网络的结构;防火墙产品所采用的技术还有,分组过滤,应用网关和电路网关多极过滤等。Linux良好的网络性能和开放源码的特点,使越来越多的用户选择了Linux作为防火墙的操作平台。防火墙允许网络管理员定义一个中心“控制点”来防止非法用户,如黑客、网络破坏者等进入内部网络,禁止存在安全脆弱性的服务进出网络,并抗击来自多种线路的攻击。此外,防火墙可以作为部署NAT(Network Address Translator,网络地址变换)的逻辑地址,来隐蔽私有网络,缓解IP地址的短缺。Linux防火墙的发展是相当迅速的,最开始是Linux 2.0内核的Ipfwadm,随后是2.2内核的Ipchains,到Linux 2.4内核的Netfilter/Iptables组合,防火墙的基本概念发生了不少变化,整体设计也有了较大的发展。Linux 2.0内核的Ipfwadm是AlanCox在Linux kernel发展的初期,从FreeBSD的内核代码中移植过来的,是基本的防火墙的管理工具。Linux 2.2内核的Ipchains实现了三个链:INPUT,OUTPUT和FORWARD,分别进行输入数据包、输出数据包和转发数据包的规则匹配,基本实现了包过滤、地址转换等功能,但是Netfilter最终取代了Ipchains,其中一个主要的原因就是Ipchains没有提供传递数据包到用户空间的框架,必须通过内核编程来实现处理数据包的功能,相当复杂,并且容易造成内核不稳定。所以,在2.4内核之后的Netfilter框架提出了队列处理器(ip_queue),它是以模块的方式被提出的,主要用于从内核传递数据包到用户空间处理,是内核态与用户态的接口。目前的队列处理器还属于测试阶段的模<WP=71>块,所以存在的问题还很多,其中一个最突出的问题就是ip_queue模块在同一时刻只能支持一个用户空间队列,这与Linux的目标——成为主动路由器操作系统是不相符的。因此,GNU组织提出一个了名为ipqmpd(队列多路复用器)的项目用来解决上述问题,它在用户空间引入了多路复用(multiplexer)守护进程,但是其效率较低,因为它使用socket机制在多路复用守护进程和用户空间进程之间通信。这样,当包到达多路复用守护进程后和进入用户空间之前又必须返回到内核中。除此之外,Netfilter中的ip_queue模块总是在内核中保留一份包的拷贝,这将使ip_queue很快溢出。本人针对上述两个问题重新编写了队列处理器模块,将并行的概念引入到其中,并且针对ip_queue模块队列经常溢出的问题进行了研究分析,并做出了修改。归纳起来,本文的创造性工作和所得到的结论如下:深入分析了现有的Linux防火墙体系结构,尤其是对2.4内核之后的Netfilter/Iptables框架进行研究。着重研究了Netfilter框架中的队列处理器模块ip_queue.o和GUN提出的ipqmpd(Ip_Queue Multiplexer Daemon)即队列多用复用器。分析了当前队列处理器存在的效率低、吞吐量不高等问题。将并行处理的概念引入到内核的队列处理器中,其中的并行是通过将队列与相应的用户空间进程Pid对应起来实现的,这样将其在内核中进行实现大大简化了ipqmpd重复两次通过socket进入内核的缺
其他文献
目的:观察双葛解酲丸对酒精性脂肪肝模型大鼠血清酶活力及肝脏指数的影响,探讨本处方对酒精性脂肪肝的保护作用。方法:以56度红星二锅头酒ig(10 mL.kg-1,2次/d,连续8周)的方
二维码在人们生活中的用途越来越多,其商业和使用价值也不断凸显,成为了很多商家的新宠。二维码支撑线上与线下的对接服务,系统采用二维码对固定资产进行标识,实现了固定资产
<正>为确保生产出早熟、优质、安全的草莓鲜果,提高草莓的生产水平和种植效益,使消费者吃上放心的草莓鲜果,本文规定了无公害草莓设施栽培技术规程。该规程适用于国内长江中
<正>2014年11月22日,由中央电视台综合频道与上海唯众传媒影视传播有限公司联合打造推出的中国青年电视公开课《青年中国说》在央视综合频道播出,当日"全国50城央视、省级卫
介绍了MCGS组态软件的主要特点及功能,在分析实际工程设计内容的基础上,采用MCGS软件工具对某图书馆中央空调控制系统进行了组态设计。
非周期时值的"混合—变拍子",主要指将混合拍子与变拍子相结合,从而组成现代音乐中经常出现的一种较为复杂的节奏形态。本文从巴托克的钢琴作品集《小宇宙》中,选取部分包含
本文将对房地产开发项目施工阶段的成本控制策略进行分析。
蒙古族在室韦时期与周边少数民族一样皆着左衽式服饰,后来到大蒙国时期和元朝时期,大多服用右衽式服饰,只有少数妇女和侍女等服用左衽式服饰。文章对此衣衽关系进行分析,说明
目的 :了解我院严重急性呼吸道综合征 (SevereAcuteRespiratorySyndrome,SARS ,即非典型肺炎 )治疗中肾上腺糖皮质激素的使用。方法 :对 4 3例SARS患者进行回顾性研究 ,分析
现代企业的品牌传播意识逐渐加强,事件营销作为一种集新闻、公关、广告、形象传播等于一体的市场推广手段对企业在进行品牌传播方面具有很大帮助,事件营销的策划要遵循一定的