(通信与信息系统专业论文)一种新的内嵌式防火墙负载均衡系统.pdf_第1页
(通信与信息系统专业论文)一种新的内嵌式防火墙负载均衡系统.pdf_第2页
(通信与信息系统专业论文)一种新的内嵌式防火墙负载均衡系统.pdf_第3页
(通信与信息系统专业论文)一种新的内嵌式防火墙负载均衡系统.pdf_第4页
(通信与信息系统专业论文)一种新的内嵌式防火墙负载均衡系统.pdf_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

摘要 随着计算机技术以日新月异的速度发展,我们对计算机的性能和可靠性要求 越来越高,但是在很多时候单个计算机的性能远远达不到用户的要求,于是就产 生了将多个计算机或服务器联合起来做成一个集群为客户提供服务的技术,通常 情况下集群技术包括高性能计算集群技术,高可用集群技术和负载均衡技术。目 前应用最广的就是将高可用和负载均衡结合在一起实现的网络技术。自从这种技 术出现后,各大防火墙的生产厂商纷纷将其应用于防火墙,但是至今为止,绝大 多数的防火墙的负载均衡功能都是通过第三方的负载均衡模块实现的。这无疑在 很大程度上提高了防火墙的成本。为此,我们本文提出了一种新的内嵌式防火墙 负载均衡系统,它以模块的形式运行在防火墙本身,负责实现防火墙的负载均衡 功能。 本文首先主要介绍了现有的集群技术及其分类,着重介绍了其中的高可用和 负载均衡技术,然后介绍了我们需要实现模块的平台基于l i n u x 操作系统的防火 墙,接下来提出了一种新的内嵌式防火墙负载均衡系统,详细阐述了该系统工作 原理,模块的划分,各部分的结构、功能、所用技术及其实现。 关键词;负载均衡高可用性集群n e t r d t e r 组播l i n u x a b s t r a c t 3 a l o n gw i t h t h ei n c r e d i b l e d e v e l o p m e n ts p e e do fc o m p u t e rt e c h n o l o g y , o u r e x p e c t a t i o n 协w a r d sc o m p u t e rp e r f o r m a n c ea n da v a i l a b i l i t y i s b e c o m i n gh i g h e r u n f o r t u n a t e l y , t h ep e r f o r m a n c eo fs i n g l ep c o rs e r v e ri sf a rf r o mo u re x p e c t a t i o n , a sa r e s u l t , t h ec l u s t e rt e c h n o l o g yw h i c hm a k e sab u n c ho fc o m p u t e r sw o r kt o g e t h e ra sa g r o u pp , o v i d m gt h es e r v i c et h a tm 哟t h e c u s t o m e r sn e e d sa p p e a r e d n o r m a l l y , t h e r e a r ct h r e ek i n d so fc l u s t e rt e c h n o l o g y :h i g l lp e r f o r m a n c ec o m p u t i n gc l u s t e r c c l u s t e r ) l 0 a db a l a n c i n gc l u s t e r , ( l bc l u s t e r ) a n d 硪g ha v a i l a b i l i t yc l u s t e r ( h a c l u s t e r ) ,a n dt h em o s tc o m n l o nu s e dn e t w o r kc l u s t e rt e c h n o l o g yi sa m i x t u r eo ft h et w o l a t t e ro n e s t h i sp a p e ri n t r o d u c e dt h ee x i s t i n gc l u s t e rt e c h n o l o g ya n di t sc l a s s i f i c a t i o n , a sw e l la st h ec l u s t e rt e c h n o l o g yu s e di nf i r e w a l l , p u tu pw i t han 州e m b e d d e df i r e w a i l l o a d b a l a n c i n gs y s t e m ,a n de x p a t i a t e dt h et h e o r i e s a sw e l la ss t r u c t u r e ,f u n c t i o na n d i m p l e m e n t a t i o no fe a c hp a r ti nd e t a i l a tl a s t , t h ep a p e rm a d ea l le v a l u a t i o no ft h i s s y s t e ma c c o r d i n gt ot h es t a n d a r d so ff i r e w a l lc l u s t e rt e c h n o l o g y a f t e rt h ea p p e a r a n c e o fc h i s t e tt e c h n o l o g y , m o s tf i r e w a l l p r o d u c t i o n v e n d o r s 仃i e dt oi m p l e m e n tt h i s t e c h n o l o g yi nt h e r eo w n 丘r e w a l lp r o d u c t s b u tt i l ln o w , t h el o a db a l a n c i n gf u n c t i o n a l i t y o f m o s tf i r c w a n sa r er e a l i z e dt h r o u g ht h i r dp a r tp r o d u c t s ,u n d o u b t e d l y , t h i sw i l li n c r e a s e t h ec o s to f f a e w a l l ;t h e r e f o r e t h i sp a p e rp r o p o s e dan e a k i n do f 锄b e d d e df i r e w a l ll o a d b a l a n c i n gs y s t e mw h i c hc a l lr u n a sam o d u l ei nt h ef i r e w a l la n dr e s p o n s i b l ef o rt h el o a d b a l a n c i n gf o rf i r e w a l li t s e l f t h i sp a p e ri n t r o d u c e st h ee x i s t i n gc l u s t e rt e c h n o l o g ya n di t sc a t e g o r y , f o c u s e so n t h eh i g ha v a i l a b i l i t yt e c i m o l o g ya n dl o a db a l a n c i n gt e c h n o l o g y , a n dt h e ni n t r o d u c e st h e l i n u xo sb a s e df i r e w a l lo nw h i c h0 1 1 1 m o d u l ei m p l e m e n t a t i o ni sb a s e da n dt h en e t f i l t e r m o d u l ea sw e l l ,i n c l u d i n gt h ea r c h i t e c t u r e ,f u n c t i o nr e g i s t e rm e c h a n i s ma n di m p o r t a n t d a t as t r u c t u r e s ;砒l a s ti tp r o p o s e sab r a n dn e we m b e d d e df i r e w a l ll o a db a l a n c i n gs y s t e m a n dd e t a i l e dt h e o r i e s , m o d u l ep a r t i t i o n , t h ea r c h i t e c t u r e ,f u n c t i o n a l i t y , t e c i m o l o g ya n d i m p l e m e n t a t i o no f e a c hm o d u l e k e y w o r d :l o a db a l a n c i n g ;h a ;c l u s t e r ;n e t f f l t e r ;m u l t i - b r o a d c a s t ;l i n u x ; 声明 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一一切相关责任。 本人签名:塞亚盘日期2 碰五f 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文 在解密后遵守此规定) 本学位论文属于保密,在年解密后适用本授权书。 本人签名: 导师签名: 塞亚蠢 日期望丝玉! 盔堡量同期鲨z :2 :l 第一章绪论 第一章绪论 1 1 集群技术概述 随着计算机技术的发展和越来越广泛的应用,越来越多的依赖于计算机技术 的应用系统走进了我们的工作和生活。在给我们带来方便和效率的同时,也使得 各行各业对于计算机技术的依赖程度越来越高。尽管随着计算机技术以日新月异 的速度发展,单台计算机的性能和可靠性越来越好,但还是有许多现实的要求是 单台计算机难以达到的。 在这些情况下,往往需要将多台计算机组织起来进行协同工作来模拟一台功 能更强大解决问题。这种技术称为集群技术。目前应用最为广泛的集群计算技术 可以分为三大类:科学集群( 高性能集群) 技术、负载均衡集群技术和高可用性 集群技术。 高性能计算集群,英文原文为m g hp e r f o r m a n c ec o m p u t i n gc l u s t e r ,简称h p c c l u s t e r ,是指以提高科学计算能力为目的计算机集群技术。 负载均衡集群,英文原文为l o a db a l a n c i n gc l u s t e r ,简称l bc l u s t e r ,是以实 现负载均分,提高系统数据吞吐量为目的服务器集群技术。 高可用性集群,英文原文为碰g h a v a i l a b i l i t yc l u s t e r ,简称h a c l u s t e r ,是指 以减少服务中断( 宕机) 时间为目的的服务器集群技术。 1 2 内嵌式防火墙负载均衡系统课题的引出及意义 1 2 1 防火墙负载均衡系统的迫切性 随着全球经济的增长【l 】,世界各地各种各样的组织对i t 系统的依赖都在不断 增加,电子贸易使得商务一周七天2 4 小时不问断的进行成为了可能。新的强大的 应用程序使得商业和社会机构对日常操作的计算机化要求达到了空前的程度,趋 势非常明显,我们无时无刻不依赖于稳定的计算机系统。 这种需求极速的增长,使得对系统可用性的要求变得非常重要,许多公司和 组织的业务在很大程度上都依赖于计算机系统,任何的宕机都会造成严重的损失, 关键1 1 r 系统的故障可能很快造成整个商业运作的瘫痪,每一分钟的宕机都意味着 收入、生产和利润的损失,甚至于市场地位的削弱。 为了提高整个系统的可用性,除了提高计算机各个部件的可靠性以外,一般 2 一种新的内嵌式防火墙负载均衡系统 情况下都会采用集群的方案。 自从集群技术诞生以来,如何将其应用在网络设备上,从而提高网络的高可 用性( h a ) 成为研究的热点问题;同样,防火墙作为绝大多数网络必备的一个网络 设备,担任着网络警察的作用,甚至有时集成了网关等功能;当防火墙发生故障 时,整个网络很可能出现瘫痪,或者当网络吞吐量过大时,防火墙无法达到要求 的吞吐量,成为整个网络吞吐量的瓶颈,为了避免这些问题,如何实现防火墙的 集群也成为各大防火墙制造商的研发热点。 1 2 3 防火墙负载均衡系统研究现状 据分析,当前国内外绝大多数知名防火墙制造商提供的负载均衡功能的实现 分为以下三种:一类是简单的应用第三方提供的负载均衡设备,而这会在很大程 度上增加了防火墙的成本;另一类是应用v r r p ( v l m l a lr o u t e rr e d u n d a n c yp r o t o c 0 1 ) 等技术实现了对内网的分割,并非真正意义上的负载均衡;第三类是应用 l v s ( l i n u x v i r t u a ls e r v e r ) 等技术实现了对内网的服务器的集群,而并非防火墙本身 的集群;所以以内嵌的模块形式实现集群技术成为解决防火墙集群的最佳方案, 从而达到以最低的成本实现防火墙的高可用性,并提高了网络的安全程度的目的。 本文所研究的负载均衡方案就是基于这一点出发而设计的。 1 2 3 防火墙负载均衡系统课题的意义和来源 在内嵌式防火墙负载均衡系统的设计上,国内还没有成熟的产品,绝大多数 的防火墙的负载均衡都是依赖第三方的产品完成的,这在很大的程度上增加了防 火墙的本身的成本,并且增加了网络的复杂程度,因此研制能够内嵌在防火墙自 身,并且实现高可用性及负载均衡的模块必然会大大提高网络的可用性,且带来 很大的经济效益。 本课题来源于海信数码科技有限技术公司“内嵌式防火墙负载均衡系统”项 目。 1 3 课题采用的主要技术及预期目标 1 3 1 采用的相关技术 由于我们整个设计是内嵌在基于l i n u x 的网络防火墙之中,而这种防火墙的包 过滤、地址转换和连接跟踪功能都是在n e t f i l t e r 模块中实现的,所以我们的模块也 第一章绪论 已此种形式注册在n e t f i l t e r 之上,挂载在l i n u x 内核之中,我们的设计用到了l i n u x 操作系统中模块的整个架构,n e t f i l t e r 的架构和函数注册机制,我们的集群系统对 外网和内部用户的都是透明的,所以我们需要在所有的网口之上虚拟出多个m 地 址,使用完全一致的m a c 地址,这些采用了l i n u x 的m a c 和口地址虚拟技术: 为了将数据包尽可能平均的分配到集群内的各个防火墙节点去处理,我们需要设 计简单可靠的网络数据包分配算法,而算法的设计又完全依赖于数据包包头的信 息,所以我们又用到了l i n u x 操作系统中t c p i p 协议的实现和整个网络架构,以 及一些重要的数据结构。 为了实现高可用的功能,我们的系统必须设计网络检测的功能,实时的检测 整个网络的变化,包括旧的节点的撤出,节点故障以及新的节点的加入,所以我 们将所有的节点中的同步网口加入一个多播组,所以用到了多播的概念,同时所 有的代码必须通过s o c k e t 编程实现。 当节点变化时,我们必须将集群内正常工作的节点数e c h o 到内核当中,这部 分我们用到了l i n u x 中可以进行用户空间于内核空间通信的p r o c 文件系统,我们 在此文件系统中注册若干个文件,用于将正常工作的节点数,以及一些其他的信 息传入内核中的算法之中。 整个系统的人机界面使用c g i 和b s h e l l 语言编写。 1 3 2 内嵌式防火墙负载均衡系统的最终实现的效果 当启动防火墙中的负载均衡功能时,整个防火墙的集群系统对于外网和内网用 户完全透明,整个系统拥有多个虚拟的地址,对应网口拥有完全一致的m a c 地址,当数据包进入集群系统后,各个节点平均的处理自己符合算法结果的数据 包,从而实现负载的均分。 当防火墙集群出现网络变化时,如新的节点加入,旧的节点的撤出,已有节 点发生故障,整个集群能在几乎察觉不到的时间内检测节点的变化,并无缝的将 数据包重新进行分配,如果变化是由节点故障引起的,系统会及时的发出报警, 通知管理员进行修复。 整个系统提供非常友好的人机界面,用户能在界面上输入集群需要的参数, 启动和停止集群功能,并实时的检测当前集群内节点的运行情况。 1 4 本论文研究的内容及安排 论文主要是阐述整个系统在设计和实现时用到的关键技术。整篇文章各个 章节安排如下; 4 一种新的内嵌式防火墙负载均衡系统 第二章集群技术简介介绍了集群技术的概念及分类,并对我们需要实现的 高可用性和负载均衡进行了着重的阐述,并提出了衡量一个集群网络功能好坏的 标准。 第三章基于l i n u x 的防火墙技术简介介绍了我们整个集群系统的实现平台 基于l i n u x 的包过滤防火墙的概念。 第四章内嵌式负载均衡模块设计架构此部分是整个论文的重点,包括我们 需要镶嵌模块的部分n e f f i l t e r 的概念,架构,重要数据结构以及函数注册机制;整 个负载均衡系统的实现机制,模块划分,模块功能的实现,以及所使用的技术。 第五章结束语简要总结了整个论文研究的内容。 第二章集群技术简介 第二章集群技术简介 2 1 集群技术的发展史 5 集群并不是一个全新的概念,其实早在七十年代计算机厂商和研究机构就开 始了对集群系统的研究和开发。由于主要用于科学工程计算,所以这些系统并不 “为大家所熟知。直到l i n u x 集群的出现,集群的概念才得以广为传播。 对集群的研究起源于集群系统的良好的性能可扩展性( s e a l a b i l i t y ) 1 2 。提高c p u 主频和总线带宽是最初提供计算机性能的主要手段。但是这一手段对系统性能的 提供是有限的。接着人们通过增加c p u 个数和内存容量来提高性能,于是出现了 向量机,对称多处理机( s m p ) 等。但是当c p u 的个数超过某一阈值,像s m p 这些 多处理机系统的可扩展性就变的极差。主要瓶颈在于c p u 访问内存的带宽并不能 随着c p u 个数的增加而有效增长。与s m p 相反,集群系统的性能随着c p u 个数 的增加几乎是线性变化的。图2 1 显示了这种情况。 j 图2 1 几种计算机系统的可扩展性 将多台同构或异构的计算机连接起来协同完成特定的任务就构成了集群系 统。简单地说,集群( c l u s t e r ) 就是一组计算机 3 1 ,它们作为一个整体向用户提供 一组网络资源。这些单个的计算机系统就是集群的节点( n o d e ) 。一个理想的集群 是,用户从来不会意识到集群系统底层的节点,在他,她们看来,集群是一个系统, 而非多个计算机系统。 所以我们将c l u s t e r 集群技术可定义为:一组相互独立的服务器在网络中表现 为单一的系统,并以单一系统的模式加以管理。此单一系统为客户工作站提供高 6 一种新的内嵌式防火墙负载均衡系统 可用性的服务。大多数模式下,集群中所有的计算机拥有一个共同的名称,集群 内任一系统上运行的服务可被所有的网络客户所使用。c l u s t e r 必须可以协调管理 各分离的组件的错误和失败,并可透明地向c l u s t e r 中加入组件。一个c l u s t e r 包含 多台( 至少二台) 拥有共享数据存储空间的服务器。任何一台服务器运行一个应用 时,应用数据被存储在共享的数据空间内。每台服务器的操作系统和应用程序文 件存储在其各自的本地储存空间上。c l u s t e r 内各节点服务器通过一个内部局域网 相互通讯。当一台节点服务器发生故障时,这台服务器上所运行的应用程序将在 另一节点服务器上被自动接管。当一个应用服务发生故障时,应用服务将被重新 启动或被另一台服务器接管。当以上的任一故障发生时,客户都将能很快连接到 新的应用服务上。 集群系统采用的操作系统主要有v m s 、u n i x 、w i n d o w s n t 和l i n u x n 。 美国d e c 公司( d i g i t a le q u i p m e n tc o r p o r a t i o n ) 开发的v m s c l u s t e r 系统开发 最早,技术也很成熟,应用也很广泛,但由于v m s 操作系统只能在d e c 公司的 v a x 系列和a l p h a 系列服务器上运行,v m s c l u s t e r 的应用受到很大限制。 u n 是服务器或工作站上普遍使用的操作系统,它运行稳定、安全性也比较 好,因此许多大的公司都采用了基于u n i x 的集群系统解决方案,如d e c 、h p 、 s u n 、m m 、n c r 和d g 等公司,其中在国内影响比较大的主要是d e c 、h p 、s u n 和i b m 。其中d e c 公司的t m c l u s t e r 系统提供了由4 台d i 百t a la l p h as e r v e r 组成 的集群系统,它集高可靠性、高可用性和易管理性于一身,是关键业务计算机系 统的理想解决方案。 基于w i n d o w s n t 的集群系统解决方案厂商主要有m i r c r o s o f t 和d e c 。m i 凹o s o f t 于1 9 9 5 年就开始了集群系统的开发工作。w i n d o w s2 0 0 0 中已经增加了集群功能, 该高可用性集群叫做w o l f p a c k ,也叫做m i c r o s o f tc l u s t e rs e r v e r ( m c s ) 。它主要是 在企业级对基于w i n d o w sn t 服务器的应用程序提供可用性和可升级性。w o l f p a c k 现在支持两个服务器,一个用来对用户提供服务,另一个作为备份服务器使用。 m i c r o s o f t 下一步的目标是将w o l f p a c k 支持的节点数扩展到1 6 个。w o l f p a c k 的缺 陷在于:它只提供了两个节点的失败恢复功能,而没有采用复杂的应用程序资源 管理功能,因此在一定程度上影响了系统的高可用性、高可靠性和可升级性。 w o l f p a c k 不能支持多种操作系统,而只能运行于w m d o w sn t 操作系统上。由于 晰n d o w s n t 操作系统本身在稳定性、大型并行计算上与i j n 系统存在较大差距, 目前主要在中小型系统上应用。但是随着w i n d o w s n t 系统走向成熟,基于 w i n d o w s n t 的计算机集群系统将获得更广泛的应用。 九十年代末期,l i n u x 操作系统不断走向成熟,它的健壮性不断增强,并且提 供了g n u 软件和标准化的p v m ( p a r a l l e lv i r t u a lm a c h i n e ) 、m p i ( m e s s a g ep a s s i n g i n t e r f s 屺e ) 消息传递机制,最重要的是l i n u x 在普通p c 机上提供了对高性能网络的 第四章内嵌式负载均衡防火墙的设计架构! 支持,这样就大大推动了基于l i n u x 的集群系统的 发展。 t u r b o l i n u x 公司推出了能够显著地提高基于t c p i p 协议的多种网络服务的服 务质量的高可用性集群系统t u r b o e l u s t e r 。r e dh a t 也提供了基于l i n u xv n t u a l s e r v e r 思想构建的高可用性集群系统p i r a n h a 。由e r i c s s o n 软件工程研究中心开发 的高可用性集群系统e d d i e 的主要目的是提供一个商业级的,能提供较好的服务质 量的w e b 服务器的解决方案。 p l a t f o r m 公司开发的高可用性集群系统l s f 提供了分布式集群系统的解决方 案,通过将物理上分离的多个集群连接在一起使使多个同构或异构的计算机能够 通过局域网或广域网共享计算资源,并能够为用户提供对资源的透明访问。 高性能集群系统m o s 为l i n u x 核心增添了集群计算的功能。在m o s 集 群环境中,用户无需对应用程序进行修改,或将应用程序与库连接起来,或将应 用程序分配到不同的节点上运行。m o s i x 会自动将这些工作透明地交给别的节点 来执行。 日本的f 5 公司开发出了高可用性集群b i g - i p ,它是使用于本地网络站点或 数据中心的高可用的、智能化的负载平衡产品,它提供了对网络流量的自动和智 能的管理。与前几种集群系统不同的是,b i g i p 向用户提供的是一个即插即用设 备,而其它的提供的都是软件方法。 i b m 、m i c r o s o f t 和i n t e l 于2 0 0 0 年7 月联合发布了一种高可用性服务器集群 软件及硬件包,这种服务器集群的配置包括3 2 台m mn e t f i n i t y8 5 0 0 r 及i n t e l p e n t i t t mh ix e o n 处理器,运行i b m 的d b 2u n i v e r s a ld a t a b a s e 和m i c r o s o f t w i n d o w s2 0 0 0 a d v a n c e ds e r v e r 操作系统,每分钟可以执行4 4 0 8 7 9 次交易。这套系 统面向数据密集的应用,特别是b 2 b 、电子商务和企业资源规划领域。 在科学计算领域中,人们开始把注意力投向通过普通p c 机或工作站的集群 来代替昂贵的超级计算机。比较成功的例子是高性能集群系统b e o w u l f , 它最初是 由n a s a 的g o d d a r df l i g h tc e n t e r 进行开发的,主要目的是支持大规模的科学计算 问题,如地球和太空科学面临的一些计算问题。 国内也有不少公司进行了集群系统的研究和开发工作。 联想公司在1 9 9 9 年9 月推出了用于分布式高性能计算的n s l o o o o 高性能集 群服务器,该系统是一个四节点的系统,主要基于联想万全4 5 0 0 r 服务器,以总 体成本相对较低的设备组合,足以替代传统r i s c 小型机和中型机的工作,而价格 仅为市场上同等性能小型机的1 2 1 4 朗新公司也推出了类似于t u r b o c l u s t e r 的高可用性集群系统l o n g s h i n ec l u s t e r s e r v e r 。 1 9 9 9 年9 月2 0 日,中国第一家专业面向l i n t l x 高端应用市场的集群网络有限 8 一种新的内嵌式防火墙负载均衡系统 公司推出了国内首例l i n u x 安全集群系统。它是国内第一个通过公安部认证的安全 l i n u x 系统,而其集群技术也已应用于诸多国际著名网站,如l i n u x 的门户 w w w 1 i n u x c o m 、英国国家j a n e t c a c h e 网、奥地利的入口站点和瑞士电信等。其 核心代码也已被纳入美国r e d h a t l i n u x 发布版的核心。 中国自主开发研制的集群式高性能计算机集群系统“自强2 0 0 0 s l m p c s ”于 2 0 0 0 年9 月在上海大学问世。这一系统的峰值速度达到每秒3 0 0 0 亿次浮点操作, 是当前中国国内集群式高性能计算机系统中速度最快的。 2 2 集群的共性与分类 典型的集群共有的特点是【5 j :集群都是将普通p c 工作站、工作站或服务器通 过某种方式连接起来构成的多机系统。连接方式可以采取通过网络适配器和网络 集线器,或通过将各个机器的r s 2 3 2 串口直接连接起来,还可以通过内存通道卡 和内存通道集线器的方式连接各台机器。 集群系统都具有良好的可用性,即它们都能够在集群的某部分资源出故障的 情况下继续向用户提供持续的服务。几乎所有的典型集群都拥有灾难恢复功能。 集群系统有良好的可扩展性。只需很少的配置工作就可以方便地向集群中加入或 删除工作节点。 典型的集群系统提供了良好的可管理性。管理人员通过简单的操作就可以对 集群中的工作节点或控制节点进行配置工作。 集群系统一般都提供了负载平衡功能。负载平衡包括静态负载平衡和动态负 载平衡,为了最大程度地利用集群中的一切资源,集群需要具有动态负载平衡功 能,它能够通过监视集群中的实际节点的负载情况并动态地进行调度的改变。 大部分集群系统都有一个主控机,它能够对集群中的机器的运行状态进行监 视,而且能够根据各机器的负载轻重进行任务的调度。 同时我们可以根据功能的不同将常见的集群可分为三类: ( 1 ) 科学集群( 高性能集群) 为集群开发并行编程应用程序,以解决复杂的科学问题。这是并行计算的基 础,尽管它不使用专门的并行超级计算机,这种超级计算机内部由十至上万个独 立处理器组成。但它却使用商业系统,如通过高速连接来链接的一组单处理器或 双处理器p c ,并且在公共消息传递层上进行通信以运行并行应用程序。因此,我 们会常常听说又有一种便宜的l i n u x 超级计算机问世了。但它实际是一个计算机 集群,其处理能力与真的超级计算机相等,通常一套像样的集群配置开销要超过 $ 1 0 0 ,0 0 0 。这对一般人来说似乎是太贵了,但与价值上百万美元的专用超级计算 机相比还算是便宜的。 第四章内嵌式负载均衡防火墙的设计架构 ! ( 2 ) 负载均衡集群 负载均衡集群为企业需求提供了更实用的系统。如名称所暗示的,该系统使负载 可以在计算机集群中尽可能平均地分摊处理。该负载可能是需要均衡的应用程序 处理负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大量用 户。每个节点都可以处理一部分负载,并且可以在节点之间动态分配负载,以实 现平衡。对于网络流量也是如此。通常,网络服务器应用程序接受了太多入网流 量,以致无法迅速处理,这就需要将流量发送给在其它节点上运行的网络服务器 应用。还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。 ( 3 ) 高可用性集群 可用性集群的出现是为了使集群的整体服务尽可能可用,以便考虑计算硬件 和软件的易错性。如果高可用性集群中的主节点发生了故障,那么这段时间内将 由次节点代替它。次节点通常是主节点的镜像,所以当它代替主节点时,它可以 完全接管其身份,并且因此使系统环境对于用户是一致的。 在集群的这三种基本类型之间,经常会发生混合与交杂。于是,可以发现高 可用性集群也可以在其节点之间均衡用户负载,同时仍试图维持高可用性程度。: 同样,可以从要编入应用程序的集群中找到一个并行集群,它可以在节点之间执 行负载均衡。尽管集群系统本身独立于它在使用的软件或硬件,但要有效运行系 统时,硬件连接将起关键作用。 2 2 1 高性能计算集群 高性能计算( h i g hp e r f o r m a n c ec o m p u t i n g ) 集群【6 】,简称h p c 集群。这类集群 致力于提供单个计算机所不能提供的强大的计算能力,即高性能集群通过将多台 机器连接起来同时处理复杂的计算问题。模拟星球附近的磁场、预测龙卷风的出 现、定位石油资源的储藏地等情况都需要对大量的数据进行处理。传统的处理方 法是使用超级计算机来完成计算工作,但是超级计算机的价格比较昂贵,而且可 用性和可扩展性不够强,因此集群成为了高性能计算领域瞩目的焦点。高性能计 算主要研究如下两类问题: 大规模科学问题,象天气预报、地形分析和生物制药等; 存储和处理海量数据,象数据挖掘、图象处理和基因测序; 顾名思义,高性能集群就是采用集群技术来研究高性能计算。 1 0 一种新的内嵌式防火墙负载均衡系统 2 2 1 1 高性能计算分类 高性能计算的分类方法很多。这里从并行任务间的关系角度来对高性能计算 分类。 高吞吐计算( h i g h - t h r o u g h p u tc o m p u f i n g ) 有一类高性能计算【7 1 ,可以把它分成若干可以并行的子任务,而且各个子任务 彼此问没有什么关联。象在家搜寻外星人( s e t i h o m e s e a r c hf o r e x w a t e r r e s t r i a li n t e l l i g e n c ea th o m e ) 就是这一类型应用。这一项目是利用i n t e m e t 上的闲置的计算资源来搜寻外星人。s e t i 项目的服务器将一组数据和数据模式发 给i n t e m e t 上参加s e t i 的计算节点,计算节点在给定的数据上用给定的模式进行 搜索,然后将搜索的结果发给服务器。服务器负责将从各个计算节点返回的数据 汇集成完整的数据。因为这种类型应用的一个共同特征是在海量数据上搜索某些 模式,所以把这类计算称为高吞吐计算。所谓的i n t e r n e t 计算都属于这一类。按照 f l y n n 的分类,高吞吐计算属于s i m d ( s i n g l ei n s t r u c t i o n m u l t i p l ed a t a ) 的范畴。 分布计算( d i s t r i b u t e dc o m p u f i n g ) 另一类计算刚好和高吞吐计算相反,它们虽然可以给分成若干并行的子任务, 但是子任务间联系很紧密,需要大量的数据交换。按照f l y n n 的分类,分布式的高 性能计算属于m i m d ( m u l t i p l ei n s t r u c t i o n m u l t i p l ed a t a ) 的范畴。 l i n u x 高性能集群系统 当论及l i n u x 高性能集群时,许多人的第一反映就是b e o w u l l 起初,b e o w u l f 只是一个著名的科学计算集群系统。以后的很多集群都采用b e o w u l f 类似的架构, 所以,实际上,现在b e o w u l f 已经成为一类广为接受的高性能集群的类型。尽管 名称各异,很多集群系统都是b e o w u l f 集群的衍生物。当然也存在有别于b e o w u l f 的集群系统,c o w 和m o s i x 就是另两类著名的集群系统。 b e o w u l f 集群 简单地说,b e o w u l f 是一种能够将多台计算机用于并行计算的体系结构。通常 b e o w u l f 系统由通过以太网或其他网络连接的多个计算节点和管理节点构成。管理 节点控制整个集群系统,同时为计算节点提供文件服务和对外的网络连接。它使 用的是常见的硬件设备,象普通p c 、以太网卡和集线器。它很少使用特别定制的 硬件和特殊的设备。b e o w u l f 集群的软件也是随处可见的,象l i n u x 、p v m 和m p i 。 第四章内嵌式负载均衡防火墙的设计架构坐 2 2 2 高可用性简介 2 2 2 1 高可用性内涵 高可用性是一种给终端用户提供尽可能短的可察觉的d o w n 机时间的能力隅】, 这并不是说我们要求某项服务总是可用的,分析家如m e t a g r o u p 定义了一系列 的高可用的目标,即从所谓的最高的“九个五( 9 9 9 9 9 ) ”的高可用的目标到基 本的9 5 ,这是一个系统的计划的可用时间,所以“九个五”的目标要求一个系 统9 9 9 9 9 的时间都是可用的,这也可以换算为保证一个系统在不问断运行的前 提下,每年的d o w n 机时间不超过5 分钟,相比之下,9 9 的可用时间允许每年高 达8 7 小时的d o w n 机时间,而9 5 的目标允许高达4 3 6 小时,也就是1 8 天的d o w n 机时间,g a r t n e rg r o u p 注意到将高可用的目标从9 5 提高到9 9 9 9 9 的代价是以 指数增长的,所以谨慎的系统的所有者必须在选择高可用目标的时候将d o w n 机时 间对他们业务的影响考虑进去。 通常情况下,计算机系统的可用性( a v a i l a b i l i t y ) 是通过系统的可靠性( r e l i a b i l i t y ) 和可维护性( m a i n t a i n a b i l i t y ) 来度量的。工程上通常用平均无故障时间( m t t f ) 来 度量,即计算机系统平均能够正常运行多长时间,才发生一次故障。系统的可靠 性越高,平均无故障时间越长。可维护性用平均维修时间( m 珊t ) 来度量,即系 统发生故障后维修和重新恢复正常运行平均花费的时间。系统的可维护性越好, 平均维修时间越短。计算机系统的可用性定义为:m t t f ( m t t f + m t t r ) + 1 0 0 。 由此可见,计算机系统的可用性定义为系统保持正常运行时间的百分比1 9 1 。 业界根据可用性把计算机系统分为如下几类,如下表2 1 所示: | 可用比例( p e r c e n t l a v a i l a b i l i t y ) r 一 l 9 9 5 二= := :。:2 。:。一 l 9 9 9 !:=_ l 9 9 9 9 ! v _ _ - _ - v _ - :_ 。1 。一一 9 9 9 9 9 r 一 l 9 9 9 9 9 9 表2 1 系统可用性分类 对于关键业务,停机通常是灾难性的。因为停机带来的损失也是巨大的。下 面表2 2 的统计数字列举了不同类型企业应用系统停机所带来的损失。 1 2 一种新的内嵌式防火墙负载均衡系统 应用系统 每分钟损失( 美元) 一 呼叫中0 ( c a l lc e n t e r ) 2 7 0 0 0 企业资源计划( e r p ) 系统 1 3 0 0 0 。一一 一一 供应链管理( s c m ) 系统 1 1 0 0 0 一一 一 v,n,u 电子商务 a s y n f c k i p c t e s t a b l i s h e d +b 响应a 的连接请求 n , c t _ i s _ r e p l y a ba c k i p c t e s t a b l i s h e d a 确认b 的响应 表4 1t c p 建立连接的状态变迁 这个表说明的是创建t c p 连接所经历的状态变迁。表中没有显示删除t c p 连 接所经历的状态,这是因为删除t c p 连接是通过超时执行的,任何状态下都可以 删除连接,所以并不需要额外的状态变迁。 对t c p 连接,还有一个t c p 的状态变迁。它和连接的状态不同,它记录了 t c p 协议的状态转换,其中涉及更多与t c p 连接相关的状态。并且超时也是在这 个状态基础上赋值的。具体的实现可以参考源代码。 除了上面列出的状态外,还有一个重要的状态i pc tr e l a t e d 。这个状态用 于创建动态连接时使用。动态连接有两类,一是处理使用了动态地址或端口的应 用协议;二是针对t c p 、u d p 、i c m p 等协议的i c m p 差错报文。动态连接与原连 接相关,所以用了一个特殊的状态来标识它们。 u d p 的连接跟踪可以用下面的表4 2 来说明: 发包的方向连接状态说明 a bl pc tn e wa 到b 的u p d 包 b - a i p c t e s t a b l i s h e d +b 到a 的u d p 包( 端口与a i p c t i s r e p l y 到b 的包相反) 表4 2 u d p 的状态变迁 u d p 本来是一个无状态的协议,连接跟踪记录的的是两个方向上的u d p 包, 并且不同状态下,连接的超时值不同。 i c m p 的连接跟踪可以用下面的表4 3 来说明: 一种新的内嵌式防火墙负载均衡系统 a - - bi pc tn e w a 到b 的i c m p 查询包 ib ) a i p c t e s t a b l i s h e d + b 到a 的对i c m p 查询包的 i p c t i s r e p l y 应答包 表4 3i c m p 的状态变迁 i c m p 协议也是一个无状态的协议,连接跟踪记录的是i c m p 的查询包和查询 应答包,只有在记录了查询包的情况下才允许相应的应答包通过【2 ”。 为了处理应用协议里面的动态地址和端口,每个使用动态地址和端口的协议 一般都定义了数据结构i ec o n n t r a c k _ h e l p e r ,并把它放到一个全局的链表中。这类 协议一般都会有控制连接和数据连接两个不同的连接,如f t p 协议。而在这个结 构中定义了匹配其协议控制连接的参数,当创建或更新结构i p时都会查conntrack 找链表中有没有相应的i pf

温馨提示

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

最新文档

评论

0/150

提交评论