




已阅读5页,还剩52页未读, 继续免费阅读
(计算机软件与理论专业论文)active+dns实现研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着i n t e r a c t 的高速发展,基于传统构架的网络的局限性日益明显,网络需 要新的思想和技术,a c t i v en e t w o r k s 应运而生。本文介绍了a c t i v en e t w o r k s 的 概念、历史、框架结构、关键技术和现有模型。在对a n 深入研究后本文作者就 d n s 在a c t i v en e t w o r k 中的实现提出了一种将传输和解析相结合的新方法。同时 设计并实现了a d n s 的一个原型系统,并对它进行了测试和性能评估。测试结 果正如预期所料,用传输和解析相结合的方法实现a d n s 兼有良好的性能和巨 大的灵活性,从而使我们确信a c t i v en e t w o r k 将极大地促进计算机网络的发展, 最终成为网络构架新模式。 【关键词l : a c t i v en e t w o r k ,n s 2 ,a d n s ,性能评估,i p 网络 vv v 托ij “ a c t i v ed n s 实现研究 摘要 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e r n e t 。t h el i m i t a t i o no fn e t w o r k t e c h n o l o g i e sb a s e d o nt r a d i t i o n a la r c h i t e c t u r ei sb e c o m i n go b v i o u s t h e r e n e e d sn e wt h o u g h ta n dt e c h n i q u e ,s oa c t i v en e t w o r k sw a sp r e s e n t e dt o s o l v et h ep r o b l e m t h i s p a p e r i n t r o d u c e st h ec o n c e p t 。h i s t o r y , f r a m e w o r k s , k e ym e c h a n i s m ,c u r r e n tr e s e a r c h o fa c t i v en e t w o r k s a r e rt h o r o u g h s t u d yt h ea c t i v en e t w o r k ,t h ea u t h o ro f t h i sp a p e rp o s t e dan e wm e t h o d a b o u tt h er e a l i z a t i o no fd n si nw h i c ht h et r a n s f e ra n dr e s o l u t i o na r e c o m b i n e d a tt h es a m et i m e ,t h ep r o t o t y p ei sa l s od e s i g n e da n dr e a l i z e d , t o g e t h e rw i t ht h et e s ta n dp e r f o r m a n c ee v a l u a t i o no v e ri t t h er e s u l t so f t h ee v a l u a t i o ni sa so u re x p e c t a t i o n ,b yc o m b i n i n gt h et r a n s f e ra n d r e s o l u t i o n t h ea d n ss h o w r e s p e c t a b l ep e r f o r m a n c e a n d g r e a tf l e x i b i l i t y , i tl e a d st l st ob e l i e v et h a t a c t i v en e t w o r kw i l lp r o m o t et h ed e v e l o p m e n t o ft h en e t w o r k sa n db e c o m et h en e w p a r e r n o fn e t w o r ka r c h i t e c t u r e f k e y w o r d 】: a c t i v en e t w o r k ,n s 2 ,p e r f o r m a n c e e v a l u a t i o n ,i pn e t w o r k s ,a d n s 1 引言 网络以疯狂的速度发展,原来网络构架的局限性日益明显,在这种形势下, 主动网络思想和技术应运而生,将现有网络应用扩展到主动网络上成为必然趋 势,作为i p 网络中的重要组成部分,研究d n s 在主动网络中的实现将有利于主 动网络由理论走向实践。 1 1i n t e r n e t 高速发展 1 1 1 进入网络时代 二十世纪六十年代初,包交换思想的出现为后来i n t e m e t 的发展奠定了坚实 的基础: 数据被分成一个个小包传输,可以让他们经过不同路由到达目的地。 增加了对数据的窃听的困难( 因为数据被分割成了包) 。 路由冗余,提高可靠性。即使某个路由中断,通讯依然可以保持。 网络健壮性大大提高,为实现网络信息传输安全提供了最大可能。 作为包交换概念的体现者,i n t e r a c t 的前身a r p a n e t 在1 9 6 9 的年的正式亮 相,标志着网络新时代的来临。此后网络互联技术迅速发展,电子邮件,t e l n e t , f t p ,新闻组等相继问世。 1 9 7 7 年传输控制协议( t c p ) 的制定,使互联网的基石包交换网络传 输成为主流。 1 9 8 3 年1 月1bt c p i p 成为互联网上的正式协议以后,互联网定义为使用 t c p f l p 协议互联的一个网络集合。接入互联网的网络、主枫和用户快速增长, i n t e r n e t 成为世界性的网络,加拿大、欧洲和太平洋地区加入到网络连接中来。 1 9 8 4 年,主机数量突破l ,0 0 0 台。域名服务系统( d n s ) i e 式启用和1 9 8 7 年 商业化的互联网诞生加速了i n t e r n e t 的膨胀。到了1 9 9 0 年已经拥有3 0 0 0 个网络 和3 0 0 0 0 0 台计算机。 进入9 0 年代,随着w w w ( w o r l d 、v i d ew e b ) 的应用,很多普通用户用上了 i n t e r n e t ,网络服务开始进入家庭。商业和媒体开始关注互联网,种新的商业 模式出现,超市、银行开始步入互联网。 如今,全球的互联网接入用户已经达到6 亿,在中国,互联网用户已经超过 3 3 0 0 万,w e b 站点将近2 7 万。 支持i n t e m e t 疯狂发展的互联网技术举足轻重,为了解决各种网络互联所遇 到方方面面的问题,大家必须遵守统一的标准,形成一个协议族。在这个协议族 中,传输控制协议t c p ( t r a n s m i s s i o nc o n t r o lp r o t o c 0 1 ) 和网际互联协议i p ( i n t e m e t 第6 贞 垒型:! ! 型! 窒型型塑一一! ! :! p r o t o c 0 1 ) 是其中的核心。 1 1 2i p 网络技术 i p 是互联网协议的简称( i n t e m e tp r o t o c 0 1 ) ,它的英语缩写为i p ,也是因特 网的核心协议,它有良好的网络互联功能,i p 协议能很好地适应x 2 5 低速网络 和a t m 高速网络。除此之外i p 协议还适应以太网等广播介质网和d d n 点到点 通信网络,组建i p 网时只要使用按协议标准生产的设备建网,按协议规定运行 和维护,都能达到满意的效果,i p 协议的广泛应用,将成为i n t e m e t 的重要支撑。 为支持i n t e m e t 互联网技术的发展,i p 技术已形成了t c p ( t r a n s m i s s i o n c o n t m lp r o t o c 0 1 ) 传输控制协议和网际互联协议i p 。使用t c p i p 技术组建成一 个网络,网络的传输交换、各类终端、信令都在统一的协议上运行,它就是被称 为i p 技术的i p 网。 i p 网络技术相对于传统的基于电路交换的通信网络技术,它是一种面向非 连接的分组分组包交换的技术,电路交换技术能为每个呼叫建立一个连接的技 术,不管它是否通信,都将一直被一对用户合用,而不能被其它用户共享,是一 条专用线,所以它有特定的带宽和时延,特别适合语言和视频等对时延敏感的业 务应用。 i p 协议直接依赖于i p 分组头信息,不需事先建立连接,就可执行分组转发 路径的数据协议,它主要的技术特点有以下几点: ( 1 ) 网络扩展性相当强,配备了统一寻址体系;还应有足够的链路冗余, 模块冗余,设备冗余,路由冗余,以满足i p 网优越性能的需要, ( 2 ) 它采用分布式结构,易实现不同种类网络互联,使各种传输技术都可 以用来构成宽带i p 接入网: ( 3 ) 由于采用了独立服务的模块化结构,能支持多种不同应用,非常容易 增加新添业务:( 4 ) 特别适合非实时的通信,因它采用的是无连接技术: ( 5 ) i p 技术支持点到点连接,也支持点到多点和多点到多点的连接方式。 i pv 6 分组头信息格式如图1 1 所示: v e r s i o np r i o rf l o wl a b e l p a y l o a dl e n g t h n e x th e a d e r h o p l i m i t s o u r c ea d d r e s s d e s t i n a t i o na d d r e s s 图卜lt h ei p h e a d e r v e r s i o n 标识协议版本号,长度为4 b i t s ,值为6 。 p r i o r标识包的优先级,长度为4 b i t s 。 f l o w l a b e l 流量标识,提供服务质量控制,长度为2 4 b i t s p a y l o a dl e n g t h 标识负载长度,长度为1 6 b i t s 。 n e x th e a d e r 标识出一个下一包头的类型。长度为8 b i t s h o pl i m i t 跳数限制,长度为8 b i t s 。 s o u r c ea d d r e s s 和d e s t i n a t i o na d d r e s s 标识源和目的主机的i p 地址。长度为 1 2 8 b i t s i pv 6 比i p v 4 定义了更少的字段,但是通过扩展首部使i p v 6 的功能大大加 强,在i p v 6 中每一首部可带零个,一个或多个扩展首部,每一扩展首部由前一 首部的n e x th e a d e r 标识。 1 2i p 网络面临的挑战 对网络新的需求和新的应用层出不穷,多媒体特别是语音的视频的发展要求 网络提供越来越高的服务支持。新的应用主要有: 多媒体应用( 如视频传输或i n t e m e t 电话) 。多媒体应用能够从实时传输和组 播服务中获益。例如,为了保证对时间敏感的数据能够得到有效的传输, r s v p 采用预留带宽的方法。当只有一个发送者,而有很多接收者时,i p 组 播技术减少了带宽的消耗。在r s v p 的例子中,在网络层上并不能有效地提 供带宽预留功能:而在组播的例子中,如果实际的拓扑跟预定的拓扑不一致 的话,将导致带宽消耗和时延的增加,这正是早期的m b o n e 中所存在的 问题。 移动主机应用。膝上型电脑能够从为无线传输而优化的主机移动和传输服 务获益。例如,移动i p 能够使主机不经再次配置就能在不同的地点使用。 w e b 应用。w e b 服务器能够从缓存和分布式装载技术中获益。例如,c i s c o c a c h e d i r e c t o r 采用截取重复请求的技术大大减少了网络流量,而采用了分布 式装载技术后可以把请求分配给多个服务器,这些技术对终端用户是透明 的,并且减少了带宽消耗和时延。 但很不幸,在现有的i p 网络中,要修改网络层协议是件费时费力的事情, 因为这需要标准化、人工调试和后向兼容。上面所提到的前两组例子就表现出这 个过程的困难。而在第三组例子中,虽然可以很快得到应用,但它是生产商实现 的用户透明性,这对于这个个例是有效的,但却不具有代表性。此外,随着i n t e m e t 的广泛应用,对安全支持的要求也越来越高,而这点i p 网络无法满足。 以上问题的根本原因在于i p 网络自身的局限性。i p 网络是在各种不同的物 理链路上构建同一的网络层服务( i p 层服务) 来达到互操作性。i n t e m e t 上所有的 :矗8 贝 a c t i v ed n s 实现研究 鹅一帝 节点通过发送i p 包来互相通信,许多应用程序相互之间通过i p 来交换数据。然 而,尽管i p 层之上和之下的技术可以多种多样但i p 本身是固定的,不灵活的, 它仅仅是被动地传输包,而不关心这些包的内容。在这种网络中,网络的计算能 力是极其有限的,例如在转发的时候对i p 包头进行处理,或者在面向连接的网 络中发送信令。所以要解决以上问题,必须超越i p 网络而另辟奚径。 1 3 从i p v 4 到i p v 6 采用t c p i p 协议的i n t e m e t 获得了空前的成功,这说明i p 协议的功能设计 是强有力的,并已经证明了它能够连接小至几个节点,大至i n t e m e t 上难以计数 的主机。然而,随着i n t e r a c t 用户的不断增加,按最初设想设置的3 2 位i p 地址 空i 司已不能满足分配的需求,虽然采取了一些暂时的解决方法如c i d r 和她址翻 译,但这也不过延续不了i p v 4 多久的寿命。新的计算机和通信技术在不断发展, 用户对网络服务的要求也越来越高,如实时话音和视频通信,需要协议保证一定 的时延限制,新的网络应用要求安全的通信方式,而目前的i p 版本( i p v 4 ) 缺 少有效的机制来满足这些需求。因此需要在新一代的i p 协议中考虑这些问题 1 9 9 0 年,i e t f 开始了新一代i p 的研究,这就使i p v 6 或者叫做i p n g ,它的 主要目标如下: 支持数十亿计的主机,即使是在低效的地址分配方案。 减少路由表的规模。 简化协议,提高路由器处理包的速度。 提供比当前i p 更好的安全支持。 更加注重服务类型,特别是对实时数据的支持。 增强多播功能,允许规定地址范围。 当主机移动后保持i p 地址不变。 协议可以不断进化。 允许新旧协议共存。 i p v 6 是一个建立可靠的、可管理的、安全和高效的l p 网络的长期解决方案。 从i p v 4 向i p v 6 的过渡是人们未来实现全球i n t e m e t 不可跨越的步骤,它决不是 一朝一夕就可以办得到的。从i p v 4 向i p v 6 的转换是一个相当长的过渡时期,在 此过渡期间需要i p v 4 与i p v 6 共存、 1 4a c t i v en e t w o r k 的产生 人们由于发现现有的i p 网络存在的问题后,开始寻求改进的方法,实现网 络智能化就是其中的一个方向。智能化表现在网络的传输和处理上能向用户提供 a c t i v ed n s 实现研究 第一章 更为方便、友好的应用接口:在路由选择、拥塞控制和网络管理等方面显示出更 强的主动性。1 9 9 0 年,c l a r k 和t e n n e n h o u s e 首先提出,必须发展一种可修改的 网络。这种网络必须具有很强的灵活性,并且它必须能从结构上保证各种应用要 求和实现策略。后来,d a r p a ( d e f e n s e a d v a n c e dr e s e a r c hp r o j e c t a g e n c y ) 开始关 注这项技术,并资助了这方面的很多研究项目。1 9 9 5 年,d a r p a 研究协会在关 于未来网络发展方向的讨论中,现有网络的一些问题被提出,这些问题包括:在 共享网络中应用新技术的困难,由于各层的冗余操作而导致的性能低下,在已 有网络模型上添加新的服务很困难等等。为解决这些问题,科学家们考虑了几个 策略,这些策略经过综合就形成了主动网络的概念。主动网络( a c t i v en e t w o r k ) 的研究,使得网络内执行的计算能动态地变化,该变化可以是“用户指定”或“应 用指定”,且用户数据可以利用这些计算。主动网络是一种可编程的网络,它之 所以被称成为主动的,是因为: ( a )网络节点对途经的包进行基于用户的处理,而不是固定的按照i p 协 议进行处理。此时节点成为一个为处理提供a p i 的虚拟机。 ( b )应用程序可以向网络中注入新的协议,从而动态地扩展网络层功能。 主动网络所具有的这种灵活性源于其体系结构。值得注意的是,这种灵活性也带 来了潜在的性能和安全方面的问题,这是主动网络的研究中所需要解决的。 1 9 9 6 年t e n n e n h o u s e 在一次网络技术的年会上发表了一篇关于主动网络构架 的文章,引发了人们对主动网络研究的热潮。近几年来,主动网络方面的研究有 了很大的进展,在这方面有m i t 的a n t s ,u n i v e r s i t yo f p e n n s y l v a n i a 的 s w i t c h w a r e ,c o l u m b i a u n i v e r s i t y 的n e t s c r i p t 等等。 a c t i v ed n s 实脱i j | _ 究 第二章 2a c t i v en e t w o r k 基础 2 1 概念 主动网络之所以被认可的一个重要原因就是a c t i v e 技术或多或少已经存在 允许向网络中注入用户程序的技术在实际应用中被证实是可行的。 2 1 1 主动技术 a c t i v e 技由来已久,它出现在操作系统和程序语言领域已经有十几年了,但 是应用到网络中来还是新的尝试。 “推”和“拉”技术是最早的a c t i v e 技术,“推”技术是在客户端没有请求 的情况下,服务端主动把数据发送给客户端的技术。从理论上讲,“推”技术是 指服务方不需要客户方的请求即可主动地将数据送至客户方。但在实际应用中, 这种服务的主动性是有一定限度的,即在用户许可的范围内提供主动服务。“推” 技术通过编译或解释执行的代码实现,支持集成和传输。当前主要应用在网络层 以上的端与端节点之间。“拉”技术则来自于防火墙、w e b 代理服务器、组播路 由器、移动代理服务器和视频网关的应用,是用户根据自身需求,自动从服务器 取得所需数据。“推”和“拉”技术的目的是为网络节点增添智能,从而增强网 络的性能,这两种技术都极大的推动了主动网络的发展。 a c t i v e 技术常用来解决通用性、效率和安全性三个重要方面的问题,然而早 期的工作往往只强调其中之一。p o s t s c f i p t 是解决通用性问题的例子,应用程序 产生在打印机上执行的通用代码,并且可以在网络上共享和分发,其中并不关心 安全性问题。 在并行领域,“a c t i v em e s s a g e ”更注重效率问题。它把程序缩减为一条指令, 每条消息调用驻留在接收者处的处理句柄。该处理旬柄提供了一种低费用的技术 来分发到来的消息。这种系统更多的考虑了并行处理器内在效率,而不是安全。 异构分布式系统的出现加速了这方面研究的步伐。x k e r n e l 通过提供规则的 堆栈结构能够使消息分发自动化。现在已经有了同时提高安全和效率的例子。最 近,在w e b 方面有人在做兼顾三个方面的研究。 2 1 2 主动网络实现方法 a c t i v en e t w o r k s 可以理解为采用了a c t i v e 技术的网络。在解决当前网络问题 的各种方法中我们已经用到a c t i v e 技术。 垒! ! :! 里型! 壅丝! ! ! ! ! ! 三要 主动网络之所以被称为“主动”的,有以下两个原因: 路由器对流经它们的用户数据进行“计算”,这种处理并不局限于头部, 而且根据需要对载荷也进行处理。 实现将可执行代码传送至网络节点中执行,使节点对包的处理过程是基 于用户或应用程序的。 例如,一个用户可以发送包含“t r a c e ”程序的包,在到达目的地的过程中, 程序可以被主动路由器执行。图2 1 说明了主动路由器如何执行以上操作。主动 路由器还能和传统路由器进行互操作,在这种情况下,主动路由器仅仅简单地转 发收到的普通包。 主动网络依其程序和数据是否被离散的传送可以被分为两种实现方案:离散 的和连续的。 源端主动路由器 传统路由器 主动路由器目的端 n u 詈十 心络 2 1 2 1离散方法 2 - 1 主动网络的传输过程 使用一种分离技术,数据的处理与程序的注入可以被分为两个独立的部分执 行。用户在主动网络中包的收发方式与传统处理方法类似。当一个包到达以后, 包的头部被检查并分配一个程序对包数据进行处理。由于可以根据头部信息确定 由哪个程序对包进行处理,故可以取得一定程度的灵活性。 当程序的装入需要得到仔细控制或每个程序都相对较大时,就需要对程序的 装入和执行进行分离。这种方法已经被应用于c c i t t 的智能网络中。在i n t e m e t 中,程序的装入被严格限制,只有拥有“特权”的路由器管理员有权进行这项工 作。允许操作员向路由器动态装载代码对于实现路由器的可扩展性有利,即使不 筑1 2 , a c t i v ed n s 实现研究 第二章 是为了处理基于用户或应用的计算。 2 1 2 2连续方法 主动网络的另一种类型是使用主动包的方法,主动包方法的思想则走得更 深远一些。每个包不仅仅包含数据还包含了小程序段,主动程序的传输和装入是 通过包进行的。当一个包到达主动节点的时候,包内容被处理,处理方式与 p o s t s c r i p t 打印机翻译发给它的文件类似。 主动包中的小程序可以被主动网络的中间节点的路由器和交换机识别并在 中间节点上执行,因此报文的传输过程就是它被执行的过程。在主动网络的中间 节点上,除了现有的路由选择和交换功能外还有三个新的元素:( 1 ) 一个代码调 用机制,用来将代码从主动包中调到节点中;( 2 ) 一个临时的执行环境,用来执 行从主动包中调入的代码;( 3 ) 一个永久的存储空间,主动包程序也被允许从节 点的永久性存储空间( 节点的高速缓存) 中取出或放入数据。当主动包到达节点 时,代码调用机制就会把主动包中的代码调出来连同主动包中的数据一起放入 一个临时的执行环境中。然后代码可以在这个临时环境中执行,并允许有限制 地访问节点的内存或是其它存储元素等资源。当程序执行完毕之后,它所在的 临时环境就被撤销,它所占用的存储空间也被释放。程序执行的结果可能是产生 更多的主动包并传输到网络上的其它节点去,也可能仅仅是改变改变节点的缓冲 存储器的内容。 图2 2 为主动节点内包的处理过程。 2 - 2 主动节点的组织 a c t i v ed n s 实现研究 第二章 2 2 框架结构 根据各方面研究成果,a nw o r k i n gg r o u p 定义了标准的a n 模型,在该模 型中定义与主动网络有关的内容。 2 2 1 主动网络有关协议 a n e p ( a c t i v e n e t w o r k s e n c a p s u l a t i o np r o t o c 0 1 ) 用户必须能够控制自己发送的包,使它能够到达一个特定的e e a n e p 提 供了这种能力。a n e p 的头部含有一个称为“类型标识符”的字段,系统通过类 型标识符的分配来决定包该由哪个e e 处理。如果一个特定的e e 存在于一个节 点,那些含有合法的包头并且其类型标识符是分配给这个e e 的包将被路由到和 该e e 相连的信道。信道的创建是在e e 启动的时候。 包并不需要一定含有a n e p 的头部才可以被e e 处理,e e 也能够处理普通 包由非主动节点产生的只要建立适当的信道就行了。一个典型的例子就 是上面提到的提供i p v 4 转发功能的“伪e e ”。另一个例子是通过传输层头部欺 骗来提供增强t c p 服务的e e ( 图2 4 中e e 3 的功能) 。 a n e p 也通过n o d e o s 提供其它支持,包括: ( 1 ) 错误控制字段。当一个包到达某个不存在合适e e 的节点时( 可能 是节点不支持或者资源无法获得) ,a n e p 头可以告诉n o d e o s 该如何进行 处理,是简单地丢掉,还是转发,亦或是发给源端一个错误消息。 ( 2 ) 安全凭证。要求网络中的每一个节点都接收并保留所有经过包的 认证信息( 如公钥证书) 是不现实的,但对于每个包,在它进入网络的时候进 行一次认证则是可行的,采用这种方法就实现了端到端的认证。相同的技术 可以应用在域间的交换节点上。而a n e p 的头部正好可以做这种用途。 关于a n e p 的详细资料将在第三章介绍。 c o p s ( c o m m o no p e np o l i c ys e r v i c e ) c l i e n t - t y p e f o ra n 该草案提出了一个旨在加强主动网络策略的c o p s 客户类型,是将c o p s p r 应用到主动网络上的版本,主要关心的是主动策略的提供,不包括提供策略的触 发方式。 2 2 2 主要构件 按照a nw o r k i n gg r o u p 的a n 模型,系统中的每一个a n 节点按功能被分 为三部分:节点操作系统( n o d e o s ) ,执行环境( e e ) 和主动程序( a a ) ,这些组件 的组织形式如图2 - 3 所示。由于在单个节点上有多个e e 实例运行,n o d e o s 对 她1 4 负 a c t i v ed n s 实现研究 第二章 节点资源进行分配和调度,这些资源包括带宽,c p u 和存储等。n o d e o s 把e e 和资源的管理隔离开来的同时也实现e e 之间的隔离,在此基础上实现安全策略 的管理。每个e e 实现解释主动包的虚拟机功能,向那些控制它们的包提供编 接口。 a c t i v e a p p l i c a t i o n舟山 e x e c u t i o n e n v i o n m e n t s n o d e0 s 日曰日 u ooo c h a n n e l ss t o r e jm g m t 【 1 e e i 。怒,r 、 e r _ i _ 、 p o l i c yd b 图2 3a n 构架及组件 为了提供对q o s 的足够支持,n o d e o s 允许有比e e 更细的资源分配等级。 当e e 向n o d e o s 提出一个资源请求时,伴随这个请求有一个标识符,此标识符 可能代表这个e e ,也可能代表一个端用户。n o d e o s 把这个信息提供给一个安 全引擎( s e e ) ,这个安全引擎检查策略数据库,验证请求提出者是否有权得到这 项服务。 每个节点都有一个不同的进行管理的执行环境,通过它可以对节点的一些配 置和策略进行控制。通过此执行环境可对系统进行的控制包括: 1 维护节点的安全策略数据库 2 装入新的e e ,更改已有e e 的配置 3 支持从远端对管理服务的实例化 管理环境中任何可以通过包进行初始化和控制的功能必须进行加密并从属 于系统安全策略数据库。 2 2 3 执行环境和主动程序 个执行环境定义了一台虚拟机及其编程接口,程序通过把适当的代码封装 在包罩,然后向执行环境发送这些包来控制虚拟机。节点操作系统提供对节点资 源的访问能力,执行环境通过使用节点操作系统实现虚拟机。一些执行环境实现 了通用的虚拟机,另一些则提供了有更多限制的编程接口,这种特定的虚拟机是 为特定的应用服务的。 主动程序是指一个程序。当这个程序被虚拟机执行时,就提供了端到端的服 鹕l5 “ a c t i v ed n s 实现研究 第一= 牵 务。因此,主动程序使用执行环境的编程接口,实现了为终端用户程序服务的客 户化的网络服务。这些代码可以通过包进行带内传输,也可以进行带外传输。 大多数终端用户并不希望对网络编程,也不对计算机编程,运行于端节点的 应用程序通过调用主动程序来使用网络服务,这些主动程序可以由执行环境开发 者提供,也可以由第三方提供。 执行环境可能或多或少是可夸平台移植的,但不是必须的,使e e 和n o d e o s 之间的接口标准化有利于e e 移植到新的平台。主动程序严格要求在其运行e e 的支持平台之间可移植。 2 2 3 1生成方式 执行环境应该能够提供并发访问的机制。在理想情况下,一个端用户可以同 时使用多个服务。主动网络的最终目的是使启用新的网络服务变得简单化,因此 主动网络的构建不能仅仅着眼予新服务的安装,还应包括对服务创建的方法的支 持。在构造主动程序时使用构件的方法是一个可能的选择,执行环境提供基本的 服务构件,网络a p i 利用构件组成网络服务提供给用户。 2 2 3 2更新方式 执行环境向主动程序提供编程接口,该接口的语义必须被严格定义以使独立 开发的主动程序能够使用该接口。在主动网络中安装和使用新的e e 具有重要意 义,通过节点管理体现了对该e e 的某种信任。出于这种考虑,一个被安装使用 的e e 必须在一个公开发表的文档中提供以下要点: 该e e 的a p i 。这些a p i 描述了主动程序怎么控制该虚拟机,这种描述 可以引用其它的a p i 。 该执行环境所监听的缺省的a n e p 包类型。 以上体系结构只是描述了在一个主动节点上安装新e e 的标准方法。如果系 统支持,任何动态下载和安装新e e 的方法都必须由节点管理者通过管理e e 来 进行。 相比较而言,执行环境的安装使用比主动程序的安装使用更重要。否则的话, 主动程序也要定义出它提供给应用程序的编程接口,还要对它所支持的e e 做出 规定。 2 2 3 3 通讯方式 执行j ;i = 境被假设为相互独立的,主动网络的体系结构对执行环境问的通信和 a c t i v ed n s 实现研究 第二章 互操作未作任何规定。但可以使用普通的信道技术来实现执行环境间的通信。例 如,一个在执行环境e e i 上运行的主动程序可能发一个包给本机的另一个执行环 境e e j ,它只要将包发向一个本地回路并使用适当的a n e p 类型即可。当然利用 执行环境可共同访问的存储区也可实现通讯的目的,在这种情况下,安全性是一 个必须考虑的问题。 2 2 4 节点操作系统 节点操作系统是工作在执行环境和物理资源( 传输带宽、处理器时间片、存储 能力1 之间的一层。它的产生是出于对多个执行环境的并发支持,对安全的支持 和各个执行环境所要求的基本功能的支持。这些基本功能包括实现传输包的信 道,在信道和执行环境问路由包,协调对节点资源的访问请求,有时也包括一些 普通的服务如路由等。 2 2 5 包在主动节点中的处理过程 对所有主动节点来说基本的操作模型是相同:n o d e o s 通过各种技术实现通 信通道,这些技术包括物理链路技术( 如e t h e m e t 、a t m ) 和高层协议( 如t c p 、u d p 、 i p ) ,e e 在这些信道上进行包的收发。包通过主动节点的逻辑图如图2 5 所示。 当主动节点从物理链路上收到一个包时,首先根据包的内容( 比如包头) 进 行分类,根据分类将包送到适当的本地信道,信道会进行相应的协议处理包 括可能的安全检查。对输入包的分类是由e e 在创建信道时确定的模式控制的。 典型的情况是,e e 要求为具有特定属性的包建立相应的输入信道,这些属性如 以太网包类型,i p 地址与t c p 端口的组合。建立信道的请求必须由e e 自己或 代表主动程序提出,安全引擎保证请求的合法性。经过输入信道的处理之后包被 提交给相应的e e 解释或处理,也有可能直接送到输出到物理连接,不符合任何 模式的包将被丢掉。 在输出端,e e 把包发往输出信道,在输出信道进行协议处理和输出调度。 总的浼来,包处理过程为:链路输入、分类、输入协议处理、e e 处理、输出协 议处理、调度和链路输出。请注意在主动网络中发包并不总是与收包相对应, e e 总是把包暂存,定期转发,或者自发的产生一些包。 n o d e o s 提供对节点计算资源和传输资源的多层次访问机制。这些规划技术 把各种通讯孤立起来,使他们彼此不受影响。例如,它保证了个出错的e e 不 会耗尽节点所有的计算资源。它也能提供各种服务,例如预留带宽,或实现公平 的服务。请注意在输入信道只对计算资源进行计划,而在输出信道则对计算和传 输资源都进行了计划,这就保证了公平性,但以上所做的计划都必须从属于安全 策略。需要说明的是n o d e o s 只能保证隔离e e 之间的影响,为了应对输入包和 输出包之间关系的任意性,e e 必须实现某种通用的机制确保网络的稳定。 图2 - 4 包流经主动节点过程 2 2 6 端系统和中间系统 帅一 一 扣一 :_ + 瞳量簟 主动网络包括端系统和中间系统,端系统是为终端用户程序服务的,而中间 系统的主要责任则是转发包或者是执行包中的程序。主动网络与i p 网络的一个 区别就是网络的中间系统也有主动程序这一层。因此端系统和中间系统都包括节 点操作系统、执行环境和主动程序三部分。很自然,这两种系统有着不同的安全 和其他策略。对一些用户来说,一个只有最基本的节点操作系统支持的简单e e 已经足够了,一个装有特定e e 的手提系统就是这方面的一个例子。 2 2 7 资源抽象 节点操作系统为执行环境提供了对节点资源的访问途径。节点操作系统定义 了四种主要的资源抽象:线程池、内存池、信道和流。线程和内存的抽象跟传统 的操作系统类似,信道实现了较低层次的协议处理和包的传输和接收。流抽象是 作为计算的基本单位,所有这三种资源都是以流的方式来分配和计划的。因此节 点操作系统可以跟一个流关联,这个流包括一组并发的线程,一个内存池和一组 输入,输出信道。 所有对节点操作系统的请求都是由一个客体发出的。每个请求都要有一个认 证过程,以确信它有相应的权限。节点操作系统通过安全策略引擎和安全策略数 据库来认证和对这些请求进行授权。执行环境实现自己的安全策略来加强节点的 安仑件,仉足其不能覆盖节点操作系统的策略。 她1 8 虹 2 2 8 构件接口 节点结构中的主要接1 3 是:执行环境和节点操作系统之间,主动程序和执行 环境之间,端系统应用程序和主动程序之间。节点操作系统- 执行环境接口不影 响线路上传输的数据并且对应用程序是不可见的。它是基于本地的,就像系统调 用一样,可以有多种实现方式。节点操作系统的接1 3 规范包含了节点操作系统提 供给执行环境的系统调用。 执行环境主动程序接口是基于执行环境的,它体现的服务的实现过程,主动 程序应用程序接口基于主动程序所实现的服务,体现的是节点可以提供的服务。 一些执行环境( 主动程序) 提供了跟语言无关的接口,而其它的则可能要求用一种 特定的语言书写。 注意到前两个接口是跟应用程序无关的,可以独立开发和修改而不影响应用 程序。 2 , 2 9 互操作性 i p 网络可互操作性 自从网络的出现,网络的发展迅速是有目共睹的,早期的发展普遍未考虑网 络之间的互联,因此存在着多种网络标准,实现网络间的互操作性是作为补救措 施提出的。传统的网络结构把上层( 端到端) 和下层( 点到点) 隔离开来,网络 层通过提供固定的基于应用或用户的服务来实现互操作性,这些服务支持端系统 之间的透明数据交换。 在ip 网络中网络层的服务是实现互操作性的关键,通过详细规定i p 协议 的语义和语法并且在路由器和通讯的端系统之间统一使用达到互操作性的目的, 也就是说,要求所有节点对流经它们的包进行相同的计算。 主动网络可互操作性 主动网络中,计算是动态可变的,并且可以是由用户或应用指定,可 访问用户的数据,这跟传统网络有很大的差别。在这种情况下如何获得互操作性 是一个必须考虑的问题。 从体系结构的方面来看,尽管主动节点可以为不同用户执行不同的计算,但 是如果这些节点都支持“相等”的计算模型,那么可互操作性就能得到实现,因 此主动网络中网络层的互操作性可以建立在一致的程序编码和计算环境上面。 从节点资源的角度考虑的话,要实现互操作性主动包的程序员必须对什么是资源 以及资源如何命名有着相同的理解,同时系统中必须具有限制访问稀有和敏感资 源的机制。 a c t i v ed n s 实现研究 第三帝 3a c t i v en e t w o r k 实现 3 1 代码传送 代码传送技术保证了运行代码能够被自动和动态传送到所需要的节点。个 好的传送方法必须是有效的,能够适应节点连接发生变化的情况。 很多种不同的技术都是可能做到这一点的。一种极端的情况是,每一个包都 带有运行代码。这种方法只适用于传输很短的代码段并且带宽不是首要考虑的因 素。另一种极端的情况是,运行代码可以使用带外传输的方式预先装入所有需要 的节点,这种方法不符合快速应用新的网络服务的要求。 一种较好的方法是被称为d e m a n d i n gl o a d 的带内传输方法。这种方法有以 下几个优点。首先,它限制了代码只被传送到需要的地方,并且能够适应节点和 连接的失败:其次,它能够提高启动性能,并以代码的传送和执行交叠在一起的 方式,从而方便协议的短期使用;最后,在需要一部分代码的时候,通过包传输 相应代码,而不是以每会话的方式,传输此会话所需的所有代码,从而提供了更 细致的层次。 该方法是指在需要时装入代码,并对代码进行缓存以提高性能。在端系统, 应用程序可以随时使用一种新的协议,它所要做的只是在本地对协议的定义进行 注册即可。此时,具有新的a n e p 类型的包就被注入网络。随着包在网络中被 传输,处理相应包的协议也被传输。为此,包必须根据它们的依赖关系被组织成 代码组。如果一种类型的包引用了另一种类型的包,它们必须被归为一个代码组。 该方法的操作步骤如下所示,图见3 1 1 包在传输过程中,标识自己的类型和它所属的协议。该信息对一个给定 的包是不变的。 2 当一个包到达一个节点时,缓存里的协议处理代码被检测。如果没有所 需要的代码,一个装入所缺代码的请求被发往数据流上游的主动节点, 即该数据包所经过的上一个主动节点。包执行被挂起一段时间,等待相 应的代码的到来。 3 当一个节点收到一个装入代码的请求且该节点能够回答该请求时,该节 点发送一个包含相应代码的响应包给请求节点。 4 当一个节点收到了一个装入响应,它将该响应中的代码装入缓存。如果 所需的代码都已驻留该节点,休眠包会被唤醒。如果在一个设定时间段 内被挂起包所需的代码响应没有到达,则该包被丢弃。 该方法有一些重要属性。 第一,一个节点对其上游节点有依赖关系,代码将从源节点沿着包传输路径 a c t i v ed n s 实现研究 第三常 扩散。当传输了很多包以后,就形成了一个区域,在该区域中,代码被重复调用, 代码传输不再需要。如果网络路径发生变化时,代码传输再次启动以适应新的网 络连接。 第二,这种方法的无连接特性提供了代码的快速装载能力而不用考虑可靠 性。有两个原因可能会导致失败: 1 请求所发向的节点没有所请求的代码 2 网络拥塞导致了包的丢失 对代码的请求是由包的到来触发的。由于这些请求总是被定向到提出请求节 点的上游节点。在这种情况下,所请求的代码驻留在上游节点的缓存里。因此, 代码请求失败的主要原因就是网络拥塞。这也是我们不用更高层的连接,如t c p , 来进行代码传输的原因。在极少数失败的情况下,将由端系统的高层处理过程来 决定什么程度的可靠性是恰当的。 3 2 安全检查 图3 - 1 代码组的d e m a n d i n g l o a d 网络,尤其是i n t e m e t 所特有的共享特性要求有严格的安全保证。显然,这 意味着网络的灵活性必须以一种安全的方式增加。安全意味着减少错误和无意识 行为的危险,也意味着通常所说的保护隐私,完整性和恶意攻击情况下的服务可 提供性。因此,在主动网络中必须提供安全和认证机制。 很多种不同的技术都是可能做到这一点的。一种方法是,对所有的包都进行 认证,但这将导致网络性能的急剧降低。另一种方法是进行用户级认证,这种方 法可以兼顾安全与性能。具体描述如下: 这种方法把主动网络中的设备( 服务) 分为三类: 公共服务 蚺2 i 以 a c t i v ed n s 实现研究第三章 需认证的服务 需核实的服务 公共设备是指那些可以提供给任何人的服务,对这些设备( 服务) 的滥用并不 会导致什么严重后果。这样的一个例子是“p i n g ”,p i n g 只是请求目的节点发回 一个i f 确的应答,因此可以作为一个公共服务。下一个安全等级是需认证的服务, 一个用户需服从标识检查以确信他有权使用该服务。远程登录是这类服务的例 子,它使用一个口令进行访问控制。需核实的服务是那些超出以上两类服务功能 的服务,这类服务常见于通用代码领域。例如,一个类型校验器可以对一个未认 证的a p p l e t 的安全性进行检验。这种技术的一个扩展是把一些等级的认证服务作 为需核实服务的一部分,这样做的主要目的是为了限制提供给服务请求者的接 口,也有可能是为了限制对时间、空间和带
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 装配式墩柱连接技术专题
- 幼儿生病看病流程指南
- 综合安全培训课件
- 扶梯电路培训课件
- 企鹅创意美术课件
- 海南热带海洋学院《大学英语A》2023-2024学年第一学期期末试卷
- 楚雄师范学院《钢琴演奏指导》2023-2024学年第一学期期末试卷
- 安徽电子信息职业技术学院《医学遗传学C》2023-2024学年第一学期期末试卷
- 大连职业技术学院《赛事模拟对抗》2023-2024学年第一学期期末试卷
- 小儿便血护理查房
- 2025年浙江杭州市西湖区专职社区招聘85人历年高频重点提升(共500题)附带答案详解
- 应急管理部门职工招聘合同
- 2025年教师招聘教师资格面试逐字稿初中体育教师招聘面试《排球正面双手垫球》试讲稿(逐字稿)
- 2024北京海淀初一(上)期中数学试卷及答案解析
- 2023年贵州贵州贵安发展集团有限公司招聘笔试真题
- 七年级下册古诗词对比阅读训练-2025年中考语文复习之古代诗歌阅读
- 2025年中学教师综合素质考点梳理
- 神经内科常见药物及管理
- 2025版国家开放大学法学本科《国际私法》历年期末纸质考试案例题题库
- 【MOOC】中医诊断学-福建中医药大学 中国大学慕课MOOC答案
- 物理-2025年中考终极押题猜想(广州专用)(原卷版)
评论
0/150
提交评论