




已阅读5页,还剩60页未读, 继续免费阅读
(电力系统及其自动化专业论文)电铁实时监控系统组播通信安全性研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学硕士研究生学位论文第1 i 页 a b s t r a c t m u l t i c a s ti san o v e lm e t h o do fd a t at r a n s m i s s i o n w h i c hh a sb r o a dp r o s p e c t s f o ra p p l i c a t i o n i n t e r a c tg r o u pm a n a g e m e n tp r o t o c o l ( i g m p ) u s e di nm u l t i c a s t d o e sn o to f f e rm e m b e r sa c c e s sc o n t r o li np r e s e n t ;a sl o n ga so b t a i nt h em u l t i c a s t a d d r e s s e su s e di ns p e c i f i cb u s i n e s s , u s e i sc a l lj o i nt h em u l t i c a s tg r o u pw i t h o u t a u d i t e 正t h e na t t a i nt h ed a t ap a c k e t sa n dt a k et h em a l t i c a s td a t ab yp l a i n t e x t t r a n s m i s s i o nv i at h e s ed a t ap a c k e t s t h e r e f o r e ,i no r d e rt oe n s u r et h em n i t i c a s t d a t an o tt ob eu s e db yt h eu n a u t h o r i z e du s e r s ,w en e e dt oe n c r y p tt h ed a t a , w h i c h h a ss e c u r i t yr e q u i r e m e n t 、 w i t ht h er e f o r ma n dd e v e l o p m e n tb yl e a p sa n db o u n d so fr a i l w a y , a n dt h e s i x t hs p e e di n c r e a s eo fr a i l w a yg oo nw h e e l s ,e l e c t r i c a lr a i l w a ys c a d a s y s t e m d e v e l o p i n gt o w a r dl a r g e s c a l es y s t e m sa n dn e t w o r kc o n t r o ls y s t e m s ;t h en o v e l d i s t r i b u t e ds c a d as y s t e ms e th i g h e rd e m a n dt oi t sn e t w o r kc o m m u n i c a t i o n s s e c a r i t ya n dr e l i a b i l i t y a tp r e s e n t , w i t ht h ee x t e n s i v eu s eo fp o i n t t o - m u l t i p o i n t a n dm u l t i p o i n t - t o m u l t i p o i n td i s t r i b u t e da p p l i c a t i o n s ,m u l t i c a s ti sb e i n gm o r e a n dm o r ea t t e n t i o na n du s e hr e a l - t i m en e t w o r k , u s i n gi fm u l t i c a s tc a l lr e s o l v e d w e l lt h ew a s t eo fr e s o u r c e so fu s i n gu n i c a s ta n db r o a d c a s tn e t w o r k sa n dt h e p r o b l e m o f d e c l i n i n gp e r f o r m a n c e t h e r e f o r e ,i n t h i s p a p e r , m u l t i c a s t c o m m u n i c a t i o ni sp r o p o s e da st h em a i n t e c h n o l o g yo fn e t w o r kc o m m u n i c a t i o no f t h en e t w o r ks u p e r v i s o r ys y s t e mf o re l e c t r i c a lr a i l w a ys y s t e m ,a n dt h em u l t i c a s t s e c u r i t yi s s u e so ft h er e a l t i m em o n i t o r i n gs y s t e mi sl u c u b m t e d w i t ht h ea n a l y s i so ft h ec o m m u n i c a t i o nt y p ea n dt h es a f e t yi s s u e so ft h e r e a l - t i m em o n i t o rs y s t e mf o re l e c t r i c a lr a i l w a y ,t h i sp a p e rp u ti f s e ca n d 口 m u l t i c a s tc o m b i n ea n dd e s i g nt h em u l t i c a s ts e c n r ec o m m u n i c a t i o n sf r a m e w o r ko f t h ee l e c t r i cr a i l w a yr e a l t i m em o n i t o r i n gs y s t e mi nc o n n e c t i o nw i t ht h em o r e m a t u r eu n i c a s ts e c u r i t yp r o t o c o li f s e c ;d oi n d e p t hr e s e a r c ha n dc o m p a r i s o nt o t h et h r e ek e ym a n a g e m e n tp r o t o c o lo fm u l t i c a s t :s t a rr i g h t - k e ym a n a g e m e n t p r o t o c o l ,k e y4 c l a s s i f i c a t i o nt r e e s “a n dc o m p l e t eb i n a r yt r e e ,a n dc h o o s et h e c o m p l e t eb i n a r yk e ym a n a g e m e n tp r o t o c o la st h ek e ym a n a g e m e n to fe l e c t r i c r a i l w a yr e a l - t i m em o n i t o r i n gs y s t e m ;a n dr e a l i z et h ek e ym a n a g e m e n t w i t hv c + + 6 0 、 西南交通大学硕士研究生学位论丈第1 ii 页 f i n a l l y , t h ew o r kd o n ei n t h i sp a p e ri ss u m m e du p ,a n daf o r e c a s tt o t h e f l l t u r er e s e a t c hw o r ki sm a d e k e yw o r d s :s c a d a ;i p s e c :m u l t i c a s t ;g c k s ;g r o u pm e m b e r 西南交通大学硕士研究生学位论文第1 页 1 1 课题研究背景 第1 章绪论 在信息网络已成为国家重要基础设施的情况下,信息战将是一种跨国界、 隐蔽性、低花费和跨领域( 军事、经济、社会、资源) 的无硝烟战争。其高 技术性和战争情报的不确定性给信息战的防御带来了较大的难度。美国国防 部专门组织了“信息战执行委员会”研究国家信息战的战略,并对所属网络 和i n t e r a c t 站点进行了大量的攻击演练。国家级金融支付中心、证券交易中心、 空中管制中心、电信网管中心、铁路调度中心、军事指挥中心等必将成为信 息战的主要攻击目标诩。我国在信息化进程中对此必须早有准备。 s c a d a ( s u p c r v i s o r yc o n t r o la n dd a t aa c q u i s i t i o n ,数据采集与监视控制) 系统,是以计算机为基础的生产过程控制与调度自动化系统。它可以对现场 的运行设备进行监视和控制,实现数据采集、设备控制、测量、参数调节以 及各类信号报警等功能。应用在电气化铁道的牵引供电系统的s o 址l a 系统简 称电铁s c a d a 系统【2 i 。 电铁s c a d a 系统是一种对实时性要求很高的监控系统,大量的实时信息 要求在很短的、规定的时间内到达接收方,超时的数据对系统来说是没有意 义的,甚至是有害的。随着电铁s c a d a 系统的不断发展,需要采集的信息越 来越多,加大了s c a d a 系统的负担,也对整个调度自动化系统的实时性要求 越来越高。 电铁实时监控系统的调度端主要采用以太网进行组网,而采用以太网技 术的实时网络具有高带宽,低误码率的特点,但是如果瞬间通信流量很大, 仍然会造成网络拥挤、延迟增大、数据丢失等现象,无法满足系统实时性的 要求,在电铁s c a d a 监控系统中,数据传输量很大,对实时性、可靠性要求 高。通过利用口组播技术,使得电铁实时监控系统具有很好的扩展性,使新 增加的工作站或其他系统可以方便获取实时信息。组播组是一个开放的组, 发送者不必知道接收者真正的身份;同样,接收者也没有任何办法鉴别发送者 的身份以及验证接收到的数据是否完整,不能保证组播通信的安全。传统点 西南交通大学硕士研究生学位论文第2 页 对点模式下的各种安全协议和技术并不完全适合于组播,组播通信涉及到的 安全问题要比单播复杂得多,而且增加了复杂的组播通信安全机制有可能影 响到组播通信的实时性。 随着铁路跨越式的改革与发展和铁路的第六次提速的顺利进行,电铁 s c a d a 系统正朝着大系统( 即将原来的几套s c a d a 系统合并成一套s c a d a 系统) 和网络化控制系统( 即后台服务器、通信前置机、w e b 复视服务器等 设备集中在铁路局的信息处,操作员工作站设置在铁路供电段) 方向发展。 这种新型的s c a d a 分布式系统对其网络通信的安全性与可靠性提出了 更高的要求,组播安全性和可靠性是影响组播大规模应用的两大难题,现在 正成为研究的热点。因此,研究这种电铁实时监控系统组播通信的安全性与 可靠性具有重要意义,本课题的另一个同学将进行电铁实时监控系统组播通 信可靠性研究,本论文不再赘述。本论文将重点放在安全性方面的研究。 1 2 国内外现状分析 1 2 1 电铁s c a d a 系统现状 s c a d a 系统自诞生之日起就与计算机技术的发展紧密相关1 3 1 。s c a d a 系统的发展已经经历了三代。第一代是7 0 年代基于专用计算机和专用操作系 统的s c a d a 系统。第二代是8 0 年代基于通用计算机的s c a d a 系统,在第 二代中采用v a x 等其它计算机以及其它通用工作站,操作系统一般是通用的 u n i x 操作系统。第一代与第二代s c a d a 系统的共同特点是基于集中式计算 机系统,系统不具有开放性,因而系统维护、升级以及与其它系统联网构成 很大困难。9 0 年代按照开放的原则,基于分布式计算机网络以及关系数据库 技术的能够实现大范围联网的s c a d a 系统称为第三代。目前电铁s c a d a 系统中应用最多的就是这一代调度自动化系统。随着计算机、网络通信科技 的不断发展,已经出现第四代s c a d a 系统州。第四代s c a d a 系统的主要 特征是采用i n t e r n c t 技术、面向对象技术、神经网络技术以及j a v a 技术等技 术,继续扩大s c a d a 系统与其它系统的集成,综合安全经济运行以及商业 化运营的需要。电铁s c a d a 系统的大系统化和网络化控制预示着电铁 s c a d a 系统逐渐向第四代转变的趋势。 西南交通大学硕士研究生学位论文第3 页 总的说来,第三代( 如图1 - 1 所示) 和第四代( 如图1 2 所示) s c a d a 系统还是分布式监控系统。 撮作员工操作员工操作员工操作员工维护工 作站1 1作站1 2 作站n 1作站n 2 作站 哪。删蟒 謦 tt。 t 一 一l t 一一l 通讯l 、忐、器一队一”一复枧毫芋杰 图1 - 1 分布式监控系统示意图 操作员工撮作员工操作员工操作员工 作站1 l柞站1 2作站q l作站n 2 一 图1 - 2 分布式网络化控制的监控系统示意图 为了确保s c a d a 系统的高可用性,s c a d a 系统硬件配置的特点为: 系统的主要设备采用双机冗余备用;内部局域网为相互独立的双网结构: 对于网络化控制系统,操作员工作站是通过公共网( 如m i s 网) 与后台系 统通讯且为单网结构。 西南交通大学硕士研究生学位论文第4 页 1 2 2 组播安全研究现状 组播的组成员是动态的,网络中的主机可以随时加入或退出组播组,网 络对组中主机的数量和位置不作任何限制。一个主机可以通过i g m p t 习协议 同时加入多个组播组,同时它也可以向组中发送数据报,而不需要加入该组。 与单播相比,组播具有更复杂的体系结构,因此它也更容易受到攻击。组播 的安全性已经成为制约其发展的主要瓶颈。 组播安全是目前计算机网络安全中一个较新的研究方向,国内外的研究 均处在起步阶段。现阶段对安全组播的研究主要集中在保密性和认证这两个 方向。提供保密性的基本方法是所有组播组成员共享一个不为非授权成员所 知的组密钥,组密钥是对称密钥,所有组内的通信都通过这个密钥进行加密 和解密。每当组播组成员发生变化时,组密钥必须更新,以使新加入的成员 无法知道其加入前的历史数据( 前向安全性) ,离开的成员无法知道其离开之 后的通信内容( 后向安全性) 。如何安全地分发、更新组密钥也是组播安全研 究中的一个重要问题。此外,消息认证和源认证作为组播应用的瓶颈问题, 也成为安全组播研究的一个热点。 现有的加密和身份验证技术在保证单播通信和数据安全性方面已经比 较成熟,用于保护单播数据安全的一个可靠协议是i p s e c n ,该协议由互联网 工程任务组i e t f ( i n t e m e te n g i n e e r i n gt a s kf o r c e ) 开发,可无缝地为口协议引 入安全特性,它利用加密、认证、封装等技术为数据传输提供高度的安全性, 其中包括访问控制、完整性、数据源认证、重放保护及机密性。正是由于i p s e e 协议的安全性和在数据处理方面的有效性,人们希望i p s e c 也能够使用于组 播,使i p s e c 在保护单播的同时也能保护组播数据的安全,这样,既充分利 用了i p s e c 的安全性和有效性,又减少了协议涉及的重复性和复杂性。r c a n e t t i 等认为没有必要从头开发安全组播系统,应该充分利用安全单播领域 中现在已经非常成熟的i p s e c 技术r e ! 。 现有的i p s e c 协议是使用i k e 【9 】( i n t e m e tk e ye x c h a n g e ,i n t e m e t 密钥交 换) 协议作为密钥管理协议,而i k e 只是一个端对端的密钥交换协议,只能 适用于单播环境。组播由于面对的是组用户,除了要求具有单播的密钥交换 特点之外,为了保证前向安全和后向安全,还需要支持组密钥的动态分配和 更新,不能简单地将已有的i k e 协议作为i p s e c 的组播安全密钥管理协议。 为了将i p s e c 的安全特性应用到组播中去,现有的研究思想主要集中在两个 西南交通大学硕士研究生学位论文第5 页 方面:( 1 ) 设计一个全新的支持安全组播的i p s c c 协议。( 2 ) 在不改动i p s e c 协议的条件下,开发一种适用于组播环境的密钥管理协议。后一种思想不需 要修改现有的i p s e c 协议,减少了协议设计的复杂性和重复性。c a n e t t i 等对 i p s e c 进行了一些必要的扩充以支持p 噬【播,从而提出了一种基于i p s e c 的 安全组播架构。本论文在该安全框架下对电铁实时监控系统组播安全进行研 究。 1 3 论文主要工作 本论文的主要工作是分析电铁实时监控系统的功能,结构及设计模式, 研究组播技术、i p s e c 协议和网络通信安全机制,并设计了基于i p s e c 的电铁 实时监控系统组播安全通信,对星型密钥管理协议、密钥“分级树”和完全 密钥二叉树这三种组播密钥管理协议进行深入研究和比较,选择完全密钥二 叉树密钥管理作为电铁实时监控系统的密钥管理方式,使之适合电铁实时监 控系统组播安全通信密钥分发的需要,用v i s u a lc + + 6 0 实现该密钥管理算法, 证明该方案切实可行,论文的最后讨论了i p s e c 协议的实现。 本论文安排如下: 一 第1 章绪论主要说明课题的研究背景、研究内容、目标及实现的方法, 以及本论文的具体安排。 第2 章介绍口组播的概念和特点,对m 组播存在的安全性问题进行深 入的分析。对i p s e c 的体系结构以及包含的验证头a h 协议、封装安全载荷 e s p 协议和i n t e r a c t 密钥交换协议进行了介绍和研究。 第3 章分析了电铁实时监控系统的系统功能、结构和设计方案,重点分 析了电铁实时监控系统的组播通信和电铁s c a d a 的安全性。 第4 章设计电铁实时监控系统的组播安全通信框架,对几种组播密钥管 理方式进行分析和比较,并编程实现完全密钥二叉树的d i f f i e h e l l m a n 密钥交 换,d e s 加密和解密,组成员加入,退出和组播密钥定时更新。最后讨论了 口s e c 的实现方式。 最后总结全文,提出未来发展方向。 西南交通大学硕士研究生学位论文第6 页 第2 章ip 组播与安全 在1 9 9 2 年3 月的i e f t 会议上,组播的创立者s t e v e nd e e r i n g 和s t e p h e n c a s n e r 首次成功展示了组播骨干网m b o n c ,它是以i n t e r a c t 为依托的虚拟组播 网络。至今,组播技术经历了1 0 余年的发展历程。 目前,口组播可以运行在任何体系结构的网络之上,包括i n t e m e t 、a 跏、 帧中继、交换型多兆位数据服务和卫星,并有许多应用领域,如:视频会议、多 媒体、新闻发布和来自太空的远程实况广播。现在这种技术已成为国内外各 研究团体的科研机构研究的热点。 2 1 i p 组播的概念和特点 2 1 1 单播、广播与组播 在i n t e m e t 发展之初,普遍采用的数据传输方式有单播和广播2 种。随着 网络带宽资源的丰富,使得流媒体网络应用成为可能,这类应用通常要求把 信息从1 个源发送到多个目的地,数量较大,如果采用传统的单播方式,信 息源需要与1 个用户建立1 条单独的连接,并为其发送1 份数据拷贝,不但 浪费带宽,而且可能使信息源所在的网络不堪重负;而使用广播方式容易造 成信息的泛滥,甚至网络崩溃。组播就是顺应这种应用的需要而产生的。 单播是现在通常所采用的传播方式,基本特点是1 对1 地传输数据。单 播时,数据发送方每发出1 个数据包,只能传送到1 个接收方。如果数据发 送源要将同一信息发给n 个用户,就必须重复发送n 次,如图2 - 1 ( a ) 所示。 广播的基本特点是由路由器或交换机将同一个信息包无条件地发往每l 条分支路径,而由终端自行决定是接收下来还是将其丢弃。对发送方而言, 无论接收方有多少,同一个信息包均只需发送1 次,但对路由器或交换机而 言,有多少分支,就要重复发送多少次,而不管该分支上是否有该组用户。 如图2 - 1 ( c ) 所示。 西南交通大学硕士研究生学位论文第7 页 数据流 接收者3 接收者4接收者5 c a ) 单播 接收者3接收者4接收者5 ( b ) 组播 接收者 非接收者 蠹据漳接收肴非接收者 ( c 广播 图2 - 1 单播、广播、组播的传输方式 西南交通大学硕士研究生学位论文第8 页 组播( 5 】是一种允许1 个或者多个发送方发送单一数据包到多个接收方的 网络技术。原理是不论组成员的数量是多少,数据源只发送1 次数据包,并 且用组播地址寻址只向需要数据包的主机和网络发送包。利用这种方式,在 共享的链路上仅需要1 个原始分组的拷贝被传送,和单播、广播相比,组播 既节省了发送方发送分组的开销,又节约网络带宽资源,还提高了网络应用 服务的效率和能力。( 如图2 - 1 ( b ) 所示) 2 1 2 实现组播的前提条件 实现口组播传输,则组播源和接收者以及两者之间的下层网络都必须支 持组播。这包括以下几方面:( 1 ) 主机的t c i i i 实现支持发送和接收口组 播;( 2 ) 主机的网络接口支持组播;( 3 ) 有一套用于加入、离开、查询的 组管理协议,即i g m p ( v l ,v 2 ,v 3 ) ;( 4 ) 有一套口地址分配策略,并 能将第三层疋组播地址映射到第二层m a c 地址;( 5 ) 支持讲组播的应用 软件;( 6 ) 所有介于组播源和接收者之间的路由器、集线器、交换机、t c p i p 栈、防火墙均需支持组播i ”。 2 1 3 组播地址 在组播通信中,我们需要两种地址:一个坤组播地址和一个e t h e m e t 组 播地址。其中,m 组播地址标识一个组播组。口地址方案专门为组播划出 个地址范围,在口v 4 中为d 类地址,范围是2 2 4 0 0 0 到2 3 9 2 5 5 2 5 5 2 5 5 , 并将d 类地址划分为局部链接组播地址、预留组播地址、管理权限组播地址。 局部链接地址:2 2 4 0 0 0 2 2 4 0 0 2 5 5 ,用于局域阙,路由器不转发属于 此范围的口包; 预留组播地址:2 2 4 0 1 0 2 3 8 2 5 5 2 5 5 2 5 5 ,用于全球范围或网络协议; 管理权限地址:2 3 9 0 0 0 2 3 9 2 5 5 2 5 5 2 5 5 ,组织内部使用,用于限制组 播范围。 2 1 4 组播协议 组管理协议i g m p :主机使用i g m p 通知子网组播路由器,路由器使用 西南交通大学硕士研究生学位论文第9 页 i g m p 查询本地子网中是否有属于某个组播组的主机。 组播路由协议:组播路由协议可分为三类:密集模式协议( 如d v m r p , p i m d m ) 、稀疏模式协议( 如p i m - s m ,a 玎) 和链路状态协议( 如m o s p f ) 。 ( 1 ) 距离向量组播路由协议( d i s t a n c e v e c t o r m u l t i c a s t r o u t i n g p r o t o c o l : d v m r p ) 。 d v m r p i n 由单播路由协议r i p t o 扩展而来,两者都使用距离向量算法 得到网络的拓扑信息,不同之处在于r i p 根据路由表前向转发数据,而 d v m r p 则是基于反向路径转发( r p f ,r e v e r s ep a t hf o r w a r d i n g ) 机制。为 了使新加入的组播成员能及时收到组播数据,d v m r p 采用定时发送数据包 给所有的l a n 的方法,然而这种方法导致大量路由控制数据包的扩散,这部 分开销限制了网络规模的扩大。 ( 2 ) 开放式组播最短路径优先协议( m u l t i c a s to p e ns h o r t e s tp a t hf i r s t : m o s p f ) m o s p f 是一种基于链路状态的路由协议,是对单播o s p f 协议的扩展。 同o s p f 类似,m o s p f 定义了三种级别的路由:o s p f 区域内组播路由、 m o s p f 区域间组播路由、o s p fa s 间组播路由。 ( 3 ) 协议无关组播( p r o t o c o li n d e p e n d e n tm u l t i c a s t :p i m ) p i m 0 3 - “】由i d m r ( 域间组播路由) 工作组设计,p i m 不依赖于某一特 定单播路由协议,它可利用各种单播路由协议建立的单播路由表完成r p f 检 查功能。p i m 定义了两种模式:密集模式( d e n s e m o d e ) 和稀疏模式( s p a r s e m o d e ) 。 , 有核树组播路由协议( c o r e b a s e dt r e e s :c b t ) c b t 的基本目标是减少网络中路由器组播状态,以提供组播的可扩展性。 c b t 使用双向共享树,双向共享树以某个核心路由器为根,允许组播信息在 两个方向流动。 2 1 5i p 组播的特点 ( 1 ) 群地址 在组播网中,每个组播组拥有唯一的组播地址( d 类地址) ,组播数据 包可以送到标识目的主机的组地址,发送方不必知道有哪些组成员,它自己 不必是组成员,对组成员中主机的数目和位置也没有限制。主机不需要和组 成员以及发送方商量,可以任意加入和离开组播组:使用组地址,不必知道 主机指定的位置,可以找到具有此组播地址的任何资源和服务器,在动态变 西南交通大学硕士研究生学位论文第10 页 化的信息提供者中搜寻到需要的信息,或者发布信息到任意大小的可选用户 群。 ( 2 ) 规模可扩展性 如果网络速率提高,广域组播网络的容量需要扩大,后来产生的组播路 由算法和协议都支持网络规模的扩展,而上述的群地址和动态性也是适应规 模可扩展性的另一面。 ( 3 ) 健壮性 m 组播网络使用的路由协议和算法能适应网络路由动态变化,它采用软 件状态刷新机制,制作路由备份等方法,来维护群组成员之间的连接,加强 网络的健壮性。 ( 4 ) 路由算法的独立性 组播路由算法和协议独立于单播路由使用的协议,但又依靠现存的单播 路由表,在域内适应网络拓扑的变化,动态生成组播树。 ( 5 ) 组播生成树的灵活性 组播生成树的形成与发送方和接收方的分布、网络流量状况以及组成员 的动态性有关,且组播生成树也反映了不同的组播路由算法和组播应用。灵 活的组播生成树有利于数据包的发送,不容易造成网络的拥塞。 2 1 6i p 组播的应用 职组播技术有效地解决了单点发送多点接收的问题,实现了口网络中 点到多点的高效数据传送,能够大量节约网络带宽、降低网络负载。作为一 种与单播和广播并列的通信方式,组播的意义不仅在于此。更重要的是,可 以利用网络的组播特性方便地提供一些新的增值业务,包括在线直播、网络 电视、远程教育、远程医疗、网络电台、实时视频会议等互联网的信息服务 领域。组播从1 9 8 8 年提出到现在已经经历了十几年的发展,许多国际组织 对组播的技术研究和业务开展进行了大量的工作。随着互联网建设的迅猛发 展和新业务的不断推出,组播也必将走向成熟。尽管目前端到端的全球组播 业务还未大规模开展起来,但是具备组播能力的网络数目在增加。一些主要 的i s p 已运行域间组播路由协议进行组播路由的交换,形成组播对等体。在 口网络中多媒体业务日渐增多的情况下,组播有着巨大的市场潜力,组播业 务也将逐渐得到推广和普及。 西南交通大学硕士研究生学位论文第11 页 2 1 7i p 组播应用编程 在实际应用中,编程人员通常需要自己编制底层网络应用程序来实现网 上的底层通信,如具体实现口组播通信的功能。编制底层网络应用程序通常 要借助于网络数据通信编程接口,而在不同的操作系统中所提供的网络编程 接口是有所不同的,如在m i c r o s o f tw i n d o w s 环境下的网络编程接口就是 w i n d o w s 套接字( w i n d o w ss o c k e t ,简称w i n s o c k ) 。 w i n s o c k 提供了包括t c p i p 、i p x 等多种通信协议下的编程接口。不同 的w i n d o w s 版本支持不同的w i n s o c k 版本,其中w i n d o w s9 5 等早期版本本 身只支持w i n s o c k l 1 ( 1 6 位) 下的编程( 可以通过安装相关的软件包使其支 持w i n s o c k 2 0 ) ,而w i n d o w s 9 8 、w i n d o w sn t 4 0 、w i n d o w s2 0 0 0 则直接支持 w i n s o c k 2 0 ( 3 2 位) 。w i n s o c k 2 0 是w i n s o c k l 1 的扩展,除兼容w i n s o c k l 1a p i 外,还定义了一套可支持口组播的与协议无关的a p i 。 使用w i n s o c k2 0 实现口组播的一般步骤如下: ( 1 ) 初始化w i n s o c k 资源 在使用w i n s o c k 之前,必须调用w s a s t m u p o 函数初始化w i n d o w s s o c k e t sd l l 。它允许应用程序或d l l 指定w i n d o w ss o c k c t s a p i 要求的版本。 ( 2 ) 创建套接字 调用w s a s o c k e t o i 函数可以创建一个使用u d p 协议的套接字,它是加入 组播组的初始化套接字,并且以后数据的发送和接收都在该套接字上进行。 针对口组播通信,可将参数d w f l a g s 设置为w s af l a gm u l t n , o n n r r cl e a f 、w s af l a gm u l r 口0 i n tdl e a f 和w s af l a go v e r l a p p e d 的位和,指明口组播通信在控制层面和数据层面都是“无根的”,只 存在叶节点,它们可以任意加入一个组播组,而且从一个叶节点发送的数据 会传送到每一个叶节点( 包括它自己) ;创建的套接字具有重叠属性。 ( 3 ) 设置套接字的选项 调用s e t s o e k o p t 0 函数为套接字设置s o _ r e u s e a d d r 选项,以允许套接 字绑扎到一个已在使用的地址上。 ( 4 ) 绑定套接字 调用b i n d ( ) 函数绑定套接字,从而将创建好的套接字与本地地址和本地端 口联系起来。对于组播通信来说,发送和接收数据通常采用同一个端口。 ( 5 ) 设置组播套接字的模式 西南交通大学硕士研究生学位论文第12 页 w s a i o c a o i 蟊数的命令码s i om u l t i c a s tl 0 0 p 用来允许或禁止组播 通信时发送出去的通信流量是否也能够在同一个套接字上被接收( 即组播返 回) 。值得注意的是,在w m d o w s 9 5 9 8 n t 4 中,默认是允许组播返回,但不 能设置禁止,否则会出错;只有在w m d o w s2 0 0 0 以上版本中,才能设置允许 ,禁止组播返回。 w s 删0 函数的命令码s i o用来设置组播传播_ m u l t i c a s ts c o p e 的范围,即生存时间1 l 。每当组播路由器转发组播数据包时,。数据包中的 1 几值都会被减1 ,若数据包的1 几减少到o ,则路由器将抛弃该数据包。 t i l 的值是多少,组播数据便最多能经过多少个多播路由器。例如,1 几值 为o ,则组播只能在本地主机的多个套接字间传播,而不能传播到“网线”上; ”见值为1 ( 默认值) ,则组播数据遇到第一个路由器,便会被它“无情”地丢 弃,不允许传出本地网络之外,即只有同一个网络内的组播组成员才能收到 组播数据。 ( 6 ) 加入一个组播组 。 调用w s a j o i n l e a f 0 函数可加入一个组播组并指定角色( 发送者接收 者) 。调用时,参数d w f l a g s 可指定套接字作为发送者( j l、sender_only) 接收者( j lr e c e w e r或身兼两者。调用成功后会返 回一个组播套接字,调用_ o n l y ) 数关闭(该jl套b接ot字h就)closesocketo函离开了组播组,此 时可以调用w s a j o i n l e a f o i 函数再次加入组播组。注意,对组播组数据的接收 和发送不能在该套接字上完成。 ( 7 ) 向组播组发送数据 调用s e n d t 0 0 函数,可在指定的u d p 套接字上向指定的组播组发送组播 数据。调用时,参数t 0 应指向组播组的坤地址。值得注意的是,若一个应用 程序只是打算给组播组发送数据,便不必加入一个组播组。 ( 8 ) 等待事件 调用w s a a s y n c s e l e c t o i 蚕数,使套接字置于非阻塞模式,这时应用程序 就可在该套接字上接收以w i n d o w s 消息为基础的网络事件通知。例如,若参 数1 e v e n t 值为f dr e a d ,则应用程序可在套接字上接收到“数据正等待被读 入”的通知。 ( 9 ) 从组播组接收数据, 调用t e e v f x o m 0 函数,可在指定的u d p 套接字上读取输入数据。组播通 信中数据的发送与接收一般采用同一个端口,因此其发送套接字和接收套接 西南交通大学硕士研究生学位论文第13 页 字是一样的。 ( 1 0 ) 关闭套接字,释放w i n s o c k 资源。 。 在组播通信结束后,先调用c l o s e s o c k e t 0 函数关闭组播套接字和u d p 套 接字,然后调用w s a c l e a n u p 0 函数结束对w i n d o w ss o c k e t sd l l 的使用。 2 2i p 组播面临的问题 2 2 1 组播通信可靠性问题 口组播依赖于u d p ,因此不能保证组播数据包的可靠传输。可靠组播研 究的核心问题是如何根据组播通信过程中,网络丢失分组报文的情况,迅速 高效地恢复丢失的报文,使接收者收到正确、有序的报文。 为了达到可靠性的要求,接收者必须将关于接收组播数据包的状态发还 到发送者,即对发送者发送响应信息。 要实现口组播的可靠性之所以存在严重困难,其根本原因是每一种应用 程序对组播可靠性的要求差异很大,如实时交互应用对可靠性要求相对较低, 但对端到端传输延迟和网络抖动的要求很高,而非实时应用可靠性却是基本 的要求。 2 2 2 组播通信安全性问题 组播通信所面临的安全风险和单播通信所面临的安全风险非常相似,主 要包括未经授权的数据生成、修改、破坏和数据非法使用。但是由于组播体 系结构的特点,组播通信比单播通信具有安全风险,而且容易受到拒绝服务 攻击( d o s ,d e n i a lo fs e r v i c e ) ( 1 ) 组播通信技术中并没有对组中成员资格限制的机制,使得攻击者容 易模仿成合法成员。 ( 2 ) i p 组播的组地址范围是众所周知的,使得攻击者很容易找到一个组 播组口地址,并成为其合法的组成员之一。 ( 3 ) 球组播没有提供任何机制能阻止组成员或者非组内成员向这个组发 送数据。如果攻击者恶意的向这个组发送大量数据包,就很容易造成网络拥 西南交通大学硕士研究生学位论文第14 页 塞从而导致拒绝服务。 ( 4 ) 组播通信技术使用u d p 作为它的传输层协议,这就不存在内部协议 机制来控制拥塞。 ( 5 ) 相对于单播通信,组播报文将在更广泛的网络上传输,这样就给攻 击者更多机会进行数据报文的拦截和窃听。 由于组播通信体系结构的特点,组播的一些安全问题在单播中是不会出 现的,而且使用单播的一些安全技术并不一定适用于组播。下面是列举的一 些组播安全问题,这些安全问题并不是和所有组播应用相关。 ( 1 ) 数据保密。需要保证非组成员不能访问到组播数据。一般来说,都 是对数据进行加密来获得保密性。 ( 2 ) 组管理和访问控制。必须确定只有合法的参与方才能获得发送给这 个组的数据。这个安全问题主要涉及如下几点: a ) 怎样认证将来的组成员; 怎样安全的分发密钥给组成员,由于为了获得数据的保密性,需要用 到密钥; c ) 怎样阻止离开组的组成员获得这个组将来的通信数据; d 1 怎样阻止新加入组的组成员获得过去的这个组的通信数据; 一 曲怎样对这个组的通信数据进行记录和审计。 ( 3 ) 源认证。包括2 个层次的认证:第1 种是组认证,接收方能辨认是 否数据报文来在组中的成员而不是组外的成员;第2 种是成员认证,接收方 不仅能辨认出报文来自组成员,并知道来自某个具体发送方。 ( 4 ) 完整性。确定收到的数据并没有在传输过程中被修改过。 ( 5 ) 不可否认。这是指接收到数据的接收方有能力向第三方证明接收到 的数据确实是由发送方发送的,发送方不可否认。 ( 6 ) 服务可用。即使是恶意的攻击,也能保证服务可用。 在上述安全问题中组管理和源认证是2 个需要迫切解决的安全问题。其 中组管理主要是通过组密钥管理来解决。 2 3 网络通信安全机制 在当今的i n t e r n e t 中,已经设计了大量的协议,用来保障网络多个层次的 安全。决定到底在协议栈的哪一层实施安全措施时,要依赖于应用的安全需 西南交通大学硕士研究生学位论文第15 页 求以及用户自己的一些需要。但无论在协议栈的哪一层采取安全措施,下面 的这些服务都是必须要提供的: ( 1 ) 密钥管理( 包括密钥的协商和存储) ; ( 2 ) 机密性: ( 3 ) 抗抵赖; ( 4 ) 完整性认证; ( 5 ) 授权。 只要确定了在协议栈何层实施安全,则提供上述部分或全部服务是可能 的。某些情况下,有必要在某一层提供一些安全服务,而在另外一层提供其 他服务。根据t c p i p 协议的层次结构,网络安全可分为应用层安全、传输层 安全、网络层安全和数据链路层安全。 2 3 1 应用层安全 在应用层提供机密性和其他密码服务在过去是非常流行的,即使在今天, 在一些应用场合下,也是在应用层实施安全保障的。在应用层提供安全保障 有如下几方面的优点: ( 1 ) 由于是以用户为背景执行,所以访问用户凭证( 比如私人密钥) 变 得容易。 ( 2 ) 对用户想要保护的数据具有完全的访问权。 ( 3 ) 一个应用可自由扩展,不必依赖操作系统来提供这些服务。 ( 4 ) 应用程序对数据有着充分的理解,可据此采取相应的安全措施。 在应用层提供安全服务的缺点:针对每个应用,都要单独设计一套安全 机制。这意味着对现有的应用来说,必须对其进行改进,才能提供安全保障。 由于每个应用都必须定义自己的安全机制,所以犯错误的概率很大,为黑客 攻击打开了更多的安全漏洞。 2 3 2 传输层安全 与在应用层提供安全服务相比,在传输层提供安全服务具有一个显而易 见的好处,因为它不会强制要求每个应用都在安全方面作出相应的改进。现 有的应用可以“无缝”地获得安全服务。在传输层提供安全保障的典型例子 西南交通大学硕士研究生学位论文第16 页 如安全套接层( s s l ) 和传输层安全( t l s ,t r a n s p o r tl a y e rs e c u r e ) ,s s l 在 现代电子商务应用中十分流行,而t l s 是为万维网( w w w ) 提供安全服务 的。 然而,获得用户场景带来了复杂性。为提供由具体用户决定的服务,假 定只有1 名用户使用系统,而且这种假定目前已成为一种标准的做法。与应 用级的安全类似,传输层的安全只能在端系统实现。 具体的传输层安全措施要取决于具体的协议。譬如,t l s 协议在t c p 的 顶部提供了如认证、完整性和机密性等安全服务。t l s 需要为一个连接维持 相应的场景,而且目前并未在u d p 上实现,因为u d p 并不维持任何场景。 由于安全机制与特定的传输层协议有关的,所以对每种传输层协议,要重复 提供像密钥管理这样的安全服务。 然而,假如安全服务在网络层实现,它可以向下移至网络层。根据目前 的定义,传输层安全的另一个限制是应用程序仍需要进行修改,才能请求传 输层提供安全服务。 2 3 3 数据链路层安全 假定2 个主机或路由器之间存在一条专用通信链路,为避免有人窃听, 所有通信都需要加密,便可以用硬件设备来进行数据加密。 这样做最大的好处在于速度快。然而,该方案不易扩展,而且仅在专用 链路上才能很好地工作。另外,进行通信的2 个实体必须在物理上连接到一 起。通常链
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论