(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf_第1页
(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf_第2页
(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf_第3页
(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf_第4页
(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(计算机系统结构专业论文)容忍入侵的群组通信系统中全序多播协议研究.pdf.pdf 免费下载

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

文档简介

摘要 捅要 复制技术是实现容忍入侵,提高系统的可用性和可靠性的一个重要支撑技术, 包括主动复制和被动复制。而群组通信又是实现这两种复制方法的重要手段。本 文通过对容忍入侵的特点、群组通信模式以及复制技术实现要求等方面深入分析, 从群组通信在整个系统中的位置和群组通信内部结构两个角度出发提出了容忍入 侵的群组通信的体系结构;并对该结构中的子模块全序多播层展丌详细分析,具 体研究全序多播协议的实现问题。通过对现有的几十种全序多播协议的分析和比 较,围绕“组”的概念和特征,文章提出了全序多播协议的分类方案及相应分类 结果。在已有的针对单个组和多个不重叠组的全序多播协议基础之上,提出了实 现重叠组的全序多播的一种简单方案。考虑到效率和扩展性,最后又提出了实现 重叠组全序多播的另一种方案传播树方法并进行了分析。 关键词:容忍入侵复制技术群组通信全序多播重叠的组 a b s t r a c t a b s t r a c t r e p l i c a t i o n i s v e r y u s e f u la n di m p o r t a n tt o s u p p o r tt h e r e a l i z a t i o no fi n t r u s i o n t o l e r a n c e ,i n c l u d i n g a c t i v e r e p l i c a t i o n a n d p a s s i v er e p l i c a t i o n i n d e e d ,g r o u p c o m m u n i c a t i o ni si n d i s p e n s a b l et ob o 也r e p l i c a t i o nt e c h n o l o g i e s w i t ht h et h r o u g h o u t a n a l y s i so nt h ep r o p e r t i e s ,o p e r a t i o nm o d e s a n dr e q u i r e m e n t sf o ri n t r u s i o nt o l e r a n c e , g r o u p c o m m u n i c a t i o na n dr e p l i c a t i o n ,a l la r c h i t e c t u r eo fi n t r u s i o n t o l e r a n tg r o u p c o m m u n i c a t i o ns y s t e mi sp r e s e n t e di nt h i sp a p e rw i t ht h ee m p h a s i z e so ni t si n t e r n a l s t r u c t u r e f o c u so nt h ec o n c e p to f g r o u p ”a n di t sc h a r a c t e r i s t i c s 、ac l a s s i f i c a t i o no f e x i s t i n g t o t a lo r d e rm u l t i c a s t p r o t o c o l s i s p r o p o s e d b yf a r ,e x i s t i n g t o t a lo r d e r m u l t i c a s tp r o t o c o l sa r ea l lb a s e d0 ns i n g l eg r o u po rm u l t i p l en o n - o v e r l a p p e dg r o u p s a s s u m p t i o n ,w h i c h i sn o te n o u g ht oc o v e ra l le n v i r o n m e n t s a i m e dt oi m p l e m e n tt o t a l o r d e rm u l t i c a s t p r o p e r l y i nt h e o v e r l a p p e dg r o u p s ,a n o v e lt o t a lo r d e rm u l t i c a s t p r o t o c o li sp r e s e n t e d f u r t h e r m o r e ,c o n s i d e r i n g i t se f f i c i e n c ya n ds c a l a b i l i t y , w ed e s i g n a l la l t e r n a t i v et o t a lo r d e r m u l t i c a s t p r o t o c o l f o r o v e r l a p p e dg r o u p sb yu s i n g p r o p a g a t i o n t r e e k e y w o r d s :i n t r u s i o nt o l e r a n t ; r e p l i c a t i o n ;g r o u pc o m m u n i c a t i o n ;t o t a l o r d e r m u l t i c a s t ;o v e r l a p p e dg r o u p 声明 y 6 9 5 7 3 5 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:j 配k 只期:迦吐:厶皇里一 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保整和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印、或其它复印手段保存论文。( 保密的论 文在解密后遵守此规定) 本人签名: 导师签名: 日期:之旦堕! z ! 皇望 日期:皂虹。z :麴 固 第一章绪论 第一章绪论 1 1 引言 随着i n t e m e t 的日益普及,网络己成为人们相互通信、共享资源的重要手段, 对于企业而苦,网络更是占有举足轻重的地位。但网络在带束极大便利的同时, 又使人们不得不面对来自网络的侵害。近年来,随着人们对安全防护意识的提高, 计算机安全技术已成为计算机学科体系中的重要领域,计算机安全工作也己成为 社会公共安全工作的组成部分。 早期,人们所关注的是如何构造安全的系统,强调将攻击者拒之门外,通过 加密和严格的存取控制保护信息的保密和完整,如安全操作系统、安全数据库等, 但随着研究与应用的逐渐深入,人们已经认识到,要想构造绝对安全的系统在现 实中是不可能的。例如在安全操作系统研究领域,现已证明,仅如何全面描述系 统中信息的流向,就是一个n p c 问题 1 】。 传统的安全机制,如认证协议、数字签名和加密解密技术等在维持系统正常 运转、提供合适的业务等方面,发挥了重要作用。但其所保障的,仍是传统意义 上的可用性( a v a i l a b i l 崎) 、机密性( c o n f i d e n t i a l i t y ) 、完整性( i n t e g r i t y ) 、认证 ( a u t h e n t i c a t i o n ) 和不可否认性( n o n r e p u d i a t i o n ) 等安全通信范畴的属性 1 2 , 在实现网络系统的安全保护方面还很不够。尽管密码方法是信息安全最重要的技 术之,而且仍是信息安全领域主流的研究方向之,在未来信息系统的保护方 面必将发挥越来越大的作用,但对于诸如d o s ( d e n i a l o f - s e r v i c e ) 之类的攻击行 为,大多数密码方法并不能发挥有效作用。 为此,人们试图将多种技术集成,如在密码保护和受控访问等基础上,增加 入侵检测机制,以此满足不同的安全策略和安全需求。这也体现了现代纵深防御 ( d e f e n s ei nd e p t h ) 的基本安全思想。 入侵检测【2 3 】作为防御的第二道防线,它的目标并不在于构造安全、可靠的 计算环境或网络系统,而是试图对系统的用户信息进行分析,咀达到对用户非法 行为的预报、检测和报警的目的,进而由有关系统对非法行为进行控制,属于一 种发生入侵后的被动防御技术。将入侵检测技术与传统安全技术结合,有望达到 比较理想的系统安全目标。 然而,已知的商用入侵检测系统还很不完善,般只能检测已知的和定义好 的入侵或者攻击行为,且存在些性能上的问题,如高误报率,漏检,不精确的 报告,以及攻击和检测之间的时间延迟等。事实上,要想对入侵活动进行比较精 确的描述、定义或分类是很困难的,且存在一些已知的理论与技术难题,如目标 2容忍入侵的群组通信系统中全序多播协议研究 识别、计算机用户行为的描述、实时检测和海量数据处理等。因此,如果没有理 论和技术上的突破,入侵检测系统不大可能具有令人满意的系统性能。 所以,必须要有新的途径来解决以上安全问题。容忍入侵技术就是在以上前 提f 提出的。它将密码学与容错计算相结合,主要研究如何在遭受攻击的情况下 继续保护系统的服务能力。 1 2 容忍入侵技术 1 2 1 容忍入侵技术综述 容忍入侵( i i n t r u s i o nt o l e r a n c e ) 是一种全新的信息安全技术与研究方法 3 _ 8 。 与传统安全技术( 更强调保护系统使之难以受到入侵) 不同,容忍入侵的设 计目标是系统在受到攻击时,即使系统的某些部分已经受到破坏、或者被恶意攻 击者控制时,系统仍能够触发一些防止这些入侵造成系统安全失效的机制,从而 仍然能够对外继续提供正常的或降级的服务,保证系统基本功能的正常运行,同 时保持了系统数据的机密性与完整性等安全属性。 与入侵检测技术不同,容忍入侵主要考虑在入侵存在的情况下系统的生存能 力,其主要思想是用分_ 靠式系统中的硬件或者软件容错技术屏蔽任何入侵或者攻 击对系统功能的影响,保证系统关键功能的安全性和连续性。 容忍入侵系统i t s ( i n t r u s i o nt o l e r a n ts y s t e m ) 是这样的一个系统,即它能 够在面对攻击的情况下,仍然连续地为预期的用户提供实时的服务。容忍入侵系 统能够容忍一些用攻击避免和预防手段无法检测到的信息攻击。这些攻击可能透 过外层防御,即用攻击避免和预防手段设置的防御,如防火墙系统,认证和加密 系统等。系统通过采取一些必要的措施( 如重新配置硬件和软件资源,系统冗余 等) 保证关键功能持续提供基本服务。 一般而者,攻击容忍系统技术包括两个方面。一是容忍技术( t o l e r a n c e t e c h n o l o g i e s ) 。这是目前商用系统所缺乏的功能。容忍技术可以让系统对入侵和攻 击具有可复原性能( 弹性) ,这些技术包括资源重新分配,系统冗余等。二是容忍 机制的触发i 器( t o l e r a n c et r i g g e r s ) 。入侵检测系统就可以充当一个这样的触发器。 但即使目前最项级的入侵检测系统( i d s ) ,也具有太高的误撮率和太低的入侵识别 范围。理论上,触发器应该具有很高的覆盖范围和零误报率。很高的覆盖范围是 指对任何攻击和入侵导致的错误都能检测出来;同时,错误在系统传播之前就应 该被检测到。例如,如果容忍系统结构依赖于单元的冗余备份,就必须在所有备 份单元崩溃之f i i 发现入侵攻击。当然,在错误影响到容忍机制之前检测到错误也 是很重要的。 虽然容忍入侵也必须处理入侵的问题,但本质上它仅对那些需要保护的功能 第一章绪论 和服务进行约束,使得它们是容忍入侵的。正是由于这一点,使得容忍入侵成为 我们建立防御系统的最有发展希望的方法。 第个有利条件是,我们现在考虑的仅仅是那些对于系统服务构成威胁的事 件,而不是任意的事件。通过特定的事件,就能开发一个入侵的触发器。 第二个有利条件是,我们可以从容锗和可生存性研究等领域借鉴很多成熟的 技术。 第三个有利条件是,新开发的容忍入侵技术最终能够被用于建立新的信息系 统,它对于入侵而言不是脆弱的,最起码能到达期望的服务级别。 在容忍入侵技术罩,我们需要将注意力从攻击者和攻击本身转移到要保护的 对象上,这才是约束所要提供的服务功能的本质所在。这意味着攻击的结果要t e 攻击的原因要更重要。因为系统在判断一个攻击是恶意的攻击还是自然故障之前, 就必须处理攻击所带来的负面影响。这里强调的重点是操作的连续性或者说是尽 管有攻击还要提供最低级别的服务。 可以在系统各个不同的层次上提供容忍入侵:在应用层,或在中删件层,或 在操作系统层,还可以是在硬件层。一个很有发展潜力的方法是在中间件层次上 实现容忍入侵,为分布式应用提供容忍入侵的服务( 例如远程方法调用) 。币在进 行的研究项目包括有m a f t i a 9 、i t d o s i o 和r r u a 1 1 1 等。 1 2 2 容忍入侵与容错技术比较 软件系统是一个非常复杂的系统,即使坚持采用最完善的软件工程实践方法, 但是要完全消除那些在操作阶段会引起失效的所有的b u g 或者故障是不可能的。一 种可以选择的方法就是建立错误容忍( f a u k t o l e r a n c e ) ( 简称容错【1 2 1 ) 的系统, 保证系统如果失效还可以从失效中恢复过来,正常运行。 类似的,要建立一个软件系统要保证它是完全安全的也是不可能的。在考虑 安全的前提下,即使经过最周全考虑的系统仍然可能有被疏忽的安全脆弱点,在 系统运行生命期内,仍然可能被攻击者利用引起安全故障。在软件系统中,由于 随机故障或者安全脆弱点引起的失效的过程如图1 1 所示; 圈日圈鸯圈 囤斟夏口藐固 圈1 1 两种引起系统失效的过程 由图1 ,1 可以看出,容忍入侵在设计体系上和容错相似,但是两者之列仍然存 在如下差异: 4容忍入侵的群组通信系统中全序多播协议研究 ( 1 ) 系统所经受的硬件或软件故障在本质上讲基本上都是偶然事件。这样的 故障引起的原因要么是设计上的缺陷,要么是物理上的损坏、环境状况造成的影 响。而安全入侵则是由用户蓄意行为引起的。然而,安全入侵自身很可能是以故 障的形式显现出来的。例如,堆栈溢出可能导致系统拒绝服务( d o s ) 或者被用来 调用一系列恶意代码。 ( 2 ) f 如我们前面所提出的那样,安全入侵是由主动攻击者造成的,不像故 障是偶然发生的现象。所以,攻击者必须得花费时间和精力来发动安全入侵。一 般柬讲,攻击可能是在一段时间之内某个随机时间点到达,而故障则是完全随机 发生。在两种情形下,这种随机性可以使用合适的随机过程来描述,例空 1 p o i s s o n 过程,非均匀p o i s s o n 过程,m a r k o v 链等。同样的,攻击者实施攻击所花费的时问 精力可以模型化为随机变量,通过选定的分布函数来描述。 ( 3 ) 在实施攻击之前,攻击者总是需要主动识别系统中可以被利用来实施攻 击的安全脆弱点,而我们总是假设系统对于故障而言是脆弱的。 ( 4 ) 一旦系统受制于安全攻击,容忍入侵系统对于安全威胁的反应行为和容 错系统中触发的行为很类似,不过具体的细节有所差异。这种相似性允许我们可 以利用一些比较成熟的随机模型和分析方法。例如,m a r k o v 链和s e m i m a r k o v 过程 ( s m p ) 已经被大量使用在容错领域的建模和系统安全入侵行为分析上。 鉴于以上讨论,本文我们采用容错系统最一般的方法复制技术来研究讨 论容忍入侵系统中的几个关键问题。 1 2 3 国外研究现状 在美国国防高级研究计划署( d a r p a ) 有关研究计划的支持下,美国许多科 研机构开展了容忍入侵的方法与技术方面的研究。欧盟也设立了自己的一些高级 研究计划,如m a f t i a 计划等。在这些计划的支持下,西方国家在与容忍入侵技 术相关的领域内取得了许多显著的成绩。 m a f t i a 项目旨在开发这样一种框架,即在大面积的故障和攻击下能保证分 饰式应用的可靠性( d e p e n d a b i l i t y ) 。该项目计划通过使用可靠的中间件、大规模 的入侵检测系统、可信任的第三方和分布式验证机制作为框架的构成模块。 i t d o s 9 和i t u a ( i n t r u s i o nt o l e r a n c eb yu n p r e d i c t a b i l i t ya n da d a p t a t i o n ) 【1 0 项目 致力于建立个自适应的容忍入侵的中间件。该中间件能帮助c o r b a 容忍恶意 的攻击。i t u a 项目是b b n 科技,i l l i n o i s 大学和m a r y l a n d 大学联合进行的,它 组合了高级的冗余管理技术。 第一章绪论 1 3 复制技术与群组通信 容忍入侵的主要思想是利用硬件或者软件技术屏蔽恶意的攻击或者入侵对系 统功能的影响保证系统关键功能的安全性和业务的连续性。容忍入侵系统因此 具有这样的一种机制,当它重要的部件已被攻陷或者被智能化的对手所控制的时 候,它仍然能继续发挥作用。 而实现容忍入侵,提高系统的可靠性( r e l i a b i l i t y ,两个连续故障之间的平均时 问) 和可用性( a v a i l a b i l i t y ,在任意的时刻系统正常起作用的可能性) 的一个重要 机制就是复制技术( r e p l i c a t i o nt e c l l l l o l o g y ) 。 复制技术 2 0 】通过对同一个服务进程( 或数据、a g e n t 、对象) 进行多次复制并将 复制品放在不同的服务器上,当出现故障、某个或某几个服务器上的服务失效时, 整个系统的可用性仍然可以得到保证,这样就防止了单点失败现象,提高了系统 的可靠性和可用性;同时复制技术还可以避免有大量客户提出请求而只有一个服 务进程在运行导致的瓶颈现象,提高了系统的性能。复制技术实际上是系统容错 ( f a u l tt o l e r a n c e ) 的唯一机制。 复制技术有两种基本方法,一是主动复制( a c t i v er e p l i c a t i o n ) ,另一种是被 动复制( p a s s i v er e p l i c a t i o n ) 。 1 3 1 主动复制 主动复制技术【2 1 也称为状态机方法( t h es t a t em a c h i n ea p p r o a c h ) ,这种技术 给所有的复制品赋予了相同的地位,没有中心控制点。所有的复制品以相同的次 序执行同一个操作,然后将结果反馈给请求者。 主动复制技术中,很重要的问题就是每一个复制品的状态都必须要始终保持 一致,否则,复制就失去了存在的价值。 主动复制的主要优点是故障响应较快,然而缺点是它要求所有的动作均以确 定性方式( d e t e r m i n i s t i c ) 执行。所谓确定性的行为指的是该行为的结果仅仅依赖 于触发该行为的请求和复制品当前的状态。 1 - 3 2 被动复制、 被动复9 n 2 2 也称为主一备份方法( t h e p r i m a r y - b a c k u pa p p r o a c h ) 。这种方法中, 仅仅有一个复制品( 称之为主席) 执行操作,然后将处理结果反馈给客户,而且 主席要负责及时更新其它所有的复制品。 被动复制的优点是它允许非确定性行为( n o n - d e t e r m i n i s t i c ) ,并且所要求的 处理能力要比主动复制的少。但是,很大的一个缺点是当出现故障时响应特别迟 缓,因为必须要重新选择一个复制品作为主席。 6容忍入侵的群组通信系统中全序多播协议研究 1 3 3 复制技术与群组通信 对于主动复制而占,关键的问题要保证各个复制品之间状态的一致性,所以 必须要求每一个复制品处理客户请求的次序是一致的,即要对客户请求信息进行 排序。所以,在基于主动复制技术的容忍入侵系统中,必须要能提供全序多播 ( t o t a lo r d e rm u l t i c a s t ) ,保证发送给所有目的地的信息要被接收进程按照同 一相对次序进行传递( 即使是在有故障的情况下) 。 而对于被动复制技术,它有两个重要问题需要解决,一是如何选择一个主席, 二是保持适时更新。也就是说,如果主席一旦发生故障,就必须及时采取措施重 新选取一个成员当作主席,而且将发生故障的成员从组里删除。所以必须要有群 组成员的动态加入和退出、错误恢复等群组的管理功能。 全序多播和群组管理是群组通信系统中需要解决的两个重要问题,故我们可 以说不论是主动复制方法还是被动复制方法,都无一避免地要使用群组通信。群 组通信 2 3 - 2 4 是指把同一数据块( 报文、分组或文件等) 从一台计算机传送到一个 由若干台计算机组成的集合的每个成员的过程。关于群组通信的基本定义、特征 及体系结构等内容我们将在第二章详细展开讨论。 在本文中,我们讨论的重点是针对主动复制技术,也就是转而讨论群组通信 系统中的全序多播问题。 1 - 4 本论文工作 1 4 1 课题来源 本文的工作来源于国家自然科学基金重大研究计划项目( n o 9 0 2 0 4 0 1 2 ) “容忍入侵的入侵检测模型与检测方法研究”和教育部优秀青年教师资助计划。 1 4 2 本文特点和文章结构 本文的出发点是建立在i p m u l t i c a s t 的群组通信机制之上,以复制技术为连接 容忍入侵和群组通信的桥梁,紧紧围绕全序多播这个主题,展开对分布式网络环 境下容忍入侵的群组通信研究。 本文所作的主要工作有:讨论了容忍入侵技术的新思想新方法,提出了容忍 入侵的群组通信的体系结构,详细分析了全序多播的相关问题,根据不同的研究 目的对目前存在的几十种全序多播协议进行了分类研究,针对有重叠组的情形提 出了一种实现全序多播的简单方案,最后给出了一种使用传播树的方法来实现重 叠组的全序多播。 本文其它章节安排是这样的:第二章是对容忍入侵的群组通信系统体系结构 第一章绪论 进行研究和设计,第三章是关于系统模型与全序多播的讨论,第四章是对全序多 播算法的分类研究,第五章提出了重叠组全序多播协议简单设计方案,第六章是 利用传播树方法实现重叠组的全序多播,第七章是对全文的总结及对未来工作的 展望。 第一章容忍入侵的群组通信体系结构 9 第二章容忍入侵的群组通信体系结构 2 1 群组通信综述 2 1 1 群组通信的引入 在传统的计算机网络中,点到点通信和广播通信是两种主要的通信方式。点 到点通信允许单个网络节点向网络上的另一个网络节点发送报文;而广播通信则 允许某个网络节点将一个报文一次发送给网上的所有节点。 传统的计算机网络技术,主要研究的是计算机问的互联和互操作,特别是丌 放系统互联参考模型中主要考虑的是点到点的通信问题,即各种计算机网络通信 服务都是通过一系列的点到点通信实现的,这也是计算机网络在互联和互操作情 况f 的主要通信模型。这种通信模型能够满足计算机之间基本的互联和互操作等 基本要求。例如,w w w ,电子邮件,文件传输,远程登录等等。在这些应用中参加 计算的实体只有两个,这两个实体有时可能对等的,但多数情况下是基于客户月艮 务器( c l i e n t s e r v e r ) 计算模式,进行通行的双方使用的网络通信协议大都是t c p i i p 协议。 现在出现了一种新的应用,参加计算的节点往往是多个,这些节点通过网络 互连,此时若仍然采用传统的点到点通信方式,要把相同的报文重复发送,浪费 了网络资源,增加网络的传输负担,严重地影响了通信效率;而广播通信又不能 越过路由器的限制,只能在同一个子网中传输,并且只能把报文传送到子嘲中的 所有节点,不能实现与特定的部分节点的通信。例如分布式会议系统,远程教学, 股票市场信息交换,共享自板( s h a r e dw h i t c b o a r d ) ,计算机支持的防同工作系统 c s c w ( c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k ) ,容错系统( f a u l t - t o l e r a n ts y s t e m ) , 和基于i n t e r a c t 的联机游戏、多人聊天、网络会议等均涉及多点通信的问题,具有 群组通信的特征。 在基于复制技术的容忍入侵系统中,需要保护的服务进程和它的复制品就构 成了一个组,不论是哪一种复制技术,都无一避免地要使用群组通信。 2 1 2 群组通信的特征 群组通信是指把同一数据块( 报文、分组成文件等) 从一台计算机传送到一个 由若干台计算机组成的集合的每个成员的过程 2 3 。 群组通信有多种层次,从广义的角度来讲包括各种层次的通信群组内各通信 实体间的通信,如应用系统中各进程间的信息交流、操作系统层各进程问的协调 和数据传输层的信息传送。在应用系统和操作系统层次上讨论的进程可能在一台 l o容忍入侵的群组通信系统中全序多播协议研究 机器中,也可能在不同的机器上。 群组通信是对传统的计算机网络概念的发展,需要引入些原来没有或不重 要的新特征: ( 1 ) 点到多点的通信 已有的计算机网络技术,特别是开放系统互联参考模型( o s i r m ) 中主要考虑 的问题是点到点的通信,这是计算机网络在互联和互操作情况下的主要通信模型。 在基于复制技术的容忍入侵系统中,需要拂调的不仅仅是两台计算机间的信息交 流而是一个计算机群体( 服务进程及其备份品) 的同时协调工作,需要提供高效 的点到多点通信能力。 ( 2 ) 复杂的用户环境和网络环境 与点到点通信相比,点到多点通信模块研究面临更加复杂的用户环境和网络环 境。同一群组中各用户可能在机器类型、操作系统、外设性能、c p u 处理能力等 方面存在巨大差异;连接各用户的各段网络会在带宽、延时和误码率等方面存在 差异。这对通信模块研究带来很大的影响,对计算机网络提出了更高的技术要求。 一个客户将信息传送给多个客户,进行一点到多点的通信是群组通信的主要 特点。多点通信在物理层就开始获得支持,但在传统的计算机网络中,网络层和 传输层主要集中在点到点的通信上,不能很好的适用于群组通信的要求,不过现 在这方面的研究成果越来越多,如支持多点通信的x t p 协议等。 2 1 3 群组通信的通信机制 在分椎式网络环境下,有三种数据通信方式,分别是单播、广播和多播( 也 叫组播,本文对多播和组播不加区分) 。 单播( u n i c a s t ) 需要在发送方和每一接收方之间都建立一条单独的数据通道, 从一台服务器送出的每个数据包只能传送给一个客户机,这种巨大的冗余很可能 导致服务器的响应时间延迟,服务器负担过重,甚至网络拥塞。 广播( b r o a d c a s t ) 意味着网络向子网中的每一台主机都投递份数据包。无 论这些主机是否希望接收这些数据包,并且广播只在本地子网内有效,对于子网 以外的客户机不能满足其数据传送请求。 针对以上问题提出了一种新型网络传输方案,也就是基于i p 网络的m u l t i c a s t 技术。多播( m u l t i c a s t ) 是允许一个或多个发送者( 多播源) 一次地、同时地发送 单一的数据包到多个接收者( 多播组) 的一种网络技术。在i p 多播中采用了组的 概念,把用户分为不同的组,并利用一些高级的网络协议来保证最有效地利用带 宽,把数据通过用户组传给真正需要数据的用户。这个多播组是动态形成的,每 个具有多播能力的i p 站点都可以动态地加入或者退出这个组。多播源把数据包发送 到特定多播组,而只有属于该多播组的主机才能接收到该数据包。 第二章容忍入侵的群组通信体系结构 这种技术最早由s t e p h e nd e e r i n gt 1 9 8 8 年在他的博士论文 2 5 中提出,并且 在r f c l l l 2 中提出了i p m u l t i c a s t 的开放式服务模型【2 6 ,描述了计算机如何发送和 接收多播数据包。模型的基本内容如下: 1 ) 数据包都具有i p 数据包同样的格式; 2 ) 一个计算机任何时候都可以发送多播数据包,即使它不属于这个组: 3 ) 一个计算机可以加入任何个组,同时它可以属于多个组; 4 ) 一个计算机可以任意的加入或是离开一个多播组: 5 ) 一个多播组由一个d 类i p 地址( 从2 2 4 0 0 0 到2 3 9 2 5 5 ,2 5 5 2 5 5 之间) 标识 ( i p v 4 中) 。 在i p v 4 中,i p 地址存在三种类型:单播、多播和广播。传统的a 类、b 类、c 类地址都被用于单播。与单播地址用来标识单个主机不同,i p 多播地址是用来标 识一个多播组,多播源把数据包发送到特定多播组,只有加入了该多播地址的成 员主机才能接收到数据包。 d 类地址用于多播,如图所示,多播地址的前4 个比特位为l l l 0 ,范围是 2 2 4 0 0 0 蛩j 2 3 9 2 5 5 2 5 5 2 5 5 。其中,2 2 4 0 0 o 到2 2 4 0 0 2 5 5 之间的地址为局 部链接地址,用于局域网,路由器不转发属于此范围的i p 包,例如2 2 4 0 0 1 代表 子网内所有主机。一个多播地址标识着一组目标主机,对应于同一个多播地址的 目标主机构成一个多播组;在向一个多播地址发送数据时,数据将发送给属于该 组播组的各个成员。 o12343 1 1l 1 i 1 1 0 i 组播组标识 l 表2 1i e 组播地址结构 由于所有的i p 数据包都要封装在e t h e m e t 帧中传输,所以在l p 多播中除了需要 一个i p 多播地址之外,还需要一个e t h e r n e t 多播地址,在二者之间存在一个映射 关系。i p 多播数据帧都使用0 x 0 1 0 0 5 e x x x x x x 格式的e t h e r n e t t j o , 址,具有固定的 2 4 位前缀。要把i p 多播地址映射成为相应的e t h e r n e t 地址,只需将i p 组播地址的低 位2 3 比特放到指定的e t h e m e t 多搔地址的低位2 3 比特上。 i p 多播的主要优点有: ( 1 ) 高效的多目标传送。当一个发送者向多目标传送相同信息时,多播通信 相对点到点通信而言,数据传输量减少:也不像广播通信那样,必须给每个目标 都传送数据。多播可以大大的节省网络带宽,因为无论有多少个目标地址,在整 个网络的任何一条链路上都只传送单一的数据包。因为数据源只需要发送出一份 数据包而由多播路由器将数据包复制到有组成员的各个路由器接口上再进行分 ! !查垒垒堡堕迸塑望堕墨堑! 全堡至堡垫坚塑至 发,从而提高了数据传送效率,改善了网络的性能,减少了主干网出现拥塞的r ,j 能性。另外多播组成员不受地理位置的限制。 ( 2 ) 传输目标不确定,参与通信的机器数量相对于程序而苦是透明的。传输 的目标是由一个组地址来标识,而不是一系列具体地址,发送者使用这个组地址, 可以向不确定的一群接收者传输数据,接收者可咀随时参加和退出组。 ( 3 ) 对等通信。也就是说没有客户机和服务器之分,参与通信的主机可以使用 相同的通信程序。 i p 多播是介于点到点通信和广播通信之间的一种数据传输方式。多播允许一 + i p 节a 将一个报文一次发送给网络上的一组指定节点,只有该组内的节点可以 接收到该报文,其它节点则不能收到。这- - 组i p 节点是动态形成的,每一个i p 节 点都可以动态地加入或退出该组。 2 1 4i g m p i o m p ( i n t e m e tg r o u pm a n a g e m e n t p r o t o c o l ,r f c l l l 2 年1 1 r f c 2 2 3 6 ) 是由i e t f 发御的i n t e m e t 组管理协议。主要用于主机和路由器之间互相交换多播组成员信息 如图2 1 所示。 图2 1i g m p i g m p 是最基本的组成员关系协议,专门被用在属于同一予网的主机与路由器 之间进行有关多播组成员状态的通信,它主要提供主机加入多播组、主机退出多 播组、指定组查询等功能。网络上的多播路由器利用i g m p 协议,获知其所在网络 上的多播组的成员,并决定一个多播消息是否应该被转发。一旦多播路由器接收 到一个多播信息包,就检查该消息的组i d ;当确定与共相连的网络上存在该组的 成员时,就转发该组信息包。在多播消息转发到消息宿的最后阶段,i g m p 负责提 供所需的信息。 加入多播组:当子网中某个主机希望加入到某一个多播组时,它通过立即发 第二章容忍入侵的群组通信体系结构 送或者是在收到i g m p 多播路由器的成员关系查询消息后发送“成员关系报告”消 息,来通知其i g m p 多播路由器,并准备接收来自该多播组的多播数据。当同- - i p 子网中有多个主机希望加入同个多播组时,多播路由器只需要接收其中至少一 个主机的报告即可,其它主机抑制自己的报告消息。 维持多播组:当一个或多个主机成为某个组的成员后,i g 忡路出器就周期性 地对该组发送成员关系查询消息,查询组内的成员是否还参与其中,并且等待其 中至少一个主机作出应答,只要还有一个主机仍在应答,路由器就继续维持多播 分发树接收多播数据。 i g m p 的操作过程是这样的:主机通过i g m p 协议让多播路由器知道自己是某一 多播地址的组成员。要想加入个组,主机发送一个i g m p 报告报文给多播路由器 指明要加入的多播组。同时,多播路由器为了维护所连接网络当前活动的组成员 清单,它必须周期性的发出i g m p 查询报文,该报文中含有多播地址。仍为这个多 播地址组成员的主机必须接收这个报文,并对多播路由器的这个查询做出响应。 2 2 典型的群组通信系统 群组通信系统是构建容错分布式系统和支持集群计算操作系统的有效机制。 传统的群组通信大都致力于系统的性能和对分布式应用的支持,最近几年对群组 通信的研究开始着重于系统的服务语义的规范。 这里简单介绍过去2 0 年国外开发的几个经典的群组通信系统,主要关注的是 那些具有容错能力或者说是容忍入侵的群组通信系统。 2 z 1i s i s h o r u s i s i s 2 7 2 8 ( 原意:古代埃及司生育和繁殖的女神) 是第一个支持可靠的分 布式应用的群组通信系统,是由美国c o m e l l 大学1 9 8 7 年开发出来的,主要用于研 究分布式系统中的容错问题,加强系统的可靠性和可用性。它内部的通信都是通 过点到点的数据传输实现的。i s i s 作为一个应用程序开发包( t o o lk i t ) 提供给用户 使用,i s i s 在美国已经被应用于金融交易和电信交换系统。 i s i s 系统作为最早的容错的群组通信系统,引起了其它容错的群组通信系统的 研究和开发。例如,c o m e l l 大学的h o r u s 2 8 ,c a l i f o r n i a 大学的t o t e m 3 1 和 s e c u r e r i n g ,还有h e b r e w 大学的t r a n s i s 2 9 - 3 0 系统等。 h o r u s ( 古埃及的太阳树,i s i s 之子) 2 8 ,是i s i s 系统的后继版本。h o m s 提供的通信框架比i s i s 更加通用,并且对实时性和安全性提供了一定的支持。 1 4释忍入侵的群组通信系统中全序多播协议研究 2 2 2e n s e m b l e e n s e m b l e 是一个灵活的群组通信系统,它是由一系列的子协议构成的。每一 个子协议提供某一个特定应用所需要的属性。系统建立的时候可以选择合适的 子协议的子集合构成一个协议堆来满足应用需求。 e n s e m b l e 是一个灵活的分层的堆,所以它很容易加上新的层提供新的属性。 e n s e m b l e 有很多安全特性,但是它只能容忍崩溃型故障( c r a s hf a i l u r e s ) 。e n s e m b l e 的一个缺点是它是以m l 语言来实现的,这就使得那些不愿意学习这门语言的研究 者难以访问它。 e n s e m b l e 的重要的子协议的c 语言的实现版本已经被m a r kh a y d e n 实现了,他 是e n s e m b l e 的原始开发者之一。这个实现版本就叫做c e n s e m b l e 。我们可以在其中 插入新的容忍入侵的子协议,提供组成员管理和可靠的、全序的信息传递。 2 2 3t r a n s i s t r a n s i s 2 9 3 0 是以色y l j h e b r e w 大学的一项研究项目。它结合了加州大学圣芭 芭拉分校( u c s b ) 的t r m s 系统和上述的i s i s 的一些特点,由此定名为t r a n s i s 。t r a n s i s 最大的创新点是允许网络分割( p a r t i t i o n ) 和合并( m e r g e ) 。当网络出现故障时, 通过把组内成员隔离成多个部分,使得组通信系统继续正常工作;当故障消除后 被分割的部分合并成原先的组。 z 2 4 i b t e m t o t e m 3 1 是u c s b 开发的群组通信系统。它支持的环境是多个相连的局域网。 整个t o t e m 系统分为两个层次,单独个局域网内和局域网问。它在局域网范围内 提供可靠的全序的多播服务( r e l i a b l et o t a lo r d e r e dm u l t i c a s t ) 。它是利用硬件的广 播机制来实现的,所以能很好的用于局域网范围的对实时性要求比较高的容错系 统,如空中交通管制系统,事务处理,银行系统和数据库备份系统。 z z 5 r a m p a r t 是a t & t b e l l 实验室建立的一个安全的容错的服务工具箱。它提供组成员服务 协议,当进程组出现b y z a n t i n e 故障的时候( 假设不超过组成员1 3 的有故障) 能提 供可靠的、原子多播服务。 r 啪p a n 中的协议使用公钥密码加密来验证信息。进程通信都是通过点到点网 络来发送和接收信息。该工具已经被使用,建立容忍入侵的应用。例如,秘密的 拍卖服务和秘钥管理服务。 第二章容忍入侵的群组通信体系结构 2 2 6 s e c u r e r i n g s e c u r e r i n g 组通信系统提供了容忍b y z a n t i n e 故障的可靠信息传递服务和组成 员服务。g c s 中的关键协议是信息传递协议和组成员协议。在组成员协议中,组 成员被组织成一个逻辑环,使用令牌( t o k e n ) 来控制环中的信息多播,拥有令牌 的进程允许多播信息。 当进程有故障时,不可靠的b y z a n t i n e 故障探测器就向成员协议报告,然后通 过正确的进程形成一个新的逻辑环来重构系统。信息传递协议保证了信息传递是 以一致的、全序的方式向组里的所有成员传递信息。 已经有一些项目或工程曾用过这些经典的群组通信系统来支持可靠的分布式 应用。例如,u i u c 的a q u a 项目使用了e n s e m b l e 组通信系统来建立中间件,以使 得在出现崩溃性故障的时候,该中间件可以提供期望级别的可依赖性服务。u c s b 的e t e r n a l 系统使用了t o t e m 群组系统以扩展带有对象复制和容错的c o r b a 。 已有的研究工作表明,现有的网络通信协议不能满足群组通信的全部要求, 由此引发了对群组通信协议的研究。 2 3 容忍入侵的群组通信体系结构 2 3 1 群组通信系统网络协议栈中所处位置 我们从群组通信在系统中的位置着手讨论容忍入侵的群组通信体系结构。 通过以上经典群组通信应用系统的特点介绍,我们可以这样来描述分布式应 用系统。系统中的每个成员都可以看作是一个计算节点,每个计算节点都是独 立的,它们通过网络( l a n 或w a n ) 互连,它们之间通过传递消息进行紧密的合作, 并且消息的时延是不能忽略的。图2 2 和图2 3 分别从物理和逻辑观点对该模型进 行了描绘。 f 图2 2 物理观点的 煞、 蹰2 3 逻辑观点的系统删p u( :p r o c e s s i n gu n i t 处理单元) 州州川”伏。 另外,因为不存在一个统一的物理时钟,进程之间都是以异步方式执行。每 1 6容忍入侵的群组通信系统中全序多播协议研究 个进程在组内有唯一的标识。 由于我们的群组通信系统是基于i pm u l t i c a s t 构建的。所以它应该是处于网络 层之上,应用层之下。从群组通信在整个系统中所处的位置考虑,群组通信系统 的体系结构如图2 4 所示。 应用层 群组通信 i p 层( 支持多播) 网络接口层 物理网络 幽2 4 群组通信】; i 蹦系统中所处的侥置 2 3 2 群组通信要解决的关键问题 基于对群组通信特征的分析,再结合容忍入侵

温馨提示

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

评论

0/150

提交评论