fghhbbb 发表于 2011-3-28 07:55:11

组播路由协议及其应用

当代社会已经进入信息时代,网络技术在飞速发展。由于视频会议、推送技术、大规模协作计算、为用户群进行软件升级、用于培训和企业报告的共享白板式的多媒体应用、网络代理、镜像和高速缓存站点等等应用,都依靠于从一个主机向多个主机或者从多个主机向多个主机发送同一信息的能力,而在Internet上分发的数目可能达数十万台,这些都需要更高的带宽,并且大大超出了单播的能力。一种能最大限度地利用现有带宽的有力武器是IP组播技术,这项技术已获得了包括AT&T、HP、IBM、Intel、Microsoft、Cisco和3Com等业界有影响的众多厂商的支持。     一、单播与广播     传统的点对点单播通讯,在发送方和每一接收方需要单独的数据通道。在这种通讯方式下,源IP主机向指定的目标IP主机发送信息包。IP信息包中的目标地址就是IP网络中惟一的主机地址。从一台主机送出的每个数据包只能传送给一个目标主机,通过路由器或交换机将这些IP信息包从源主机发送到目标主机。在源主机和目标主机之间的路径上的每一个路由器都维护由单播路由协议天生的单播路由信息库,并根据数据包中的IP目标地址在单播路由信息库中查找单播包转发路径。这种传送方式称为单播。       在单播方式下,假如有另外的多个用户希望同时获得这个数据包的拷贝是不可能的。发送信息的主机必须向每个希望接收此数据包的用户发送一份单独的数据包拷贝。这种巨大的冗余会带来很大的代价,首先,会给发送数据的源主机带来沉重的负担,由于它必须对每个要求都做出响应,这使得负担过于沉重主机的响应会大大延长。其次对路由器和交换机的性能也提出了更高的要求,治理职员***购买本来不必要的硬件和带宽来保证一定的服务质量。       在IP通讯另一个领域是IP广播,在这里,源主机向一个网段中的所有IP主机发送IP信息包。IP广播包的目标地址的主机部分被设置玉成“1”,网络部分设置成当前子网地址。在一些例子中,主机部分设置为全“0”,但是这种形式的IP广播地址通常不再使用。     IP网络的主机(包括路由器)都能识别以IP广播地址作为目标地址的信息包,一个子网中的所有IP主机都接收地址为本子网的广播地址的信息包。除非特别配置,路由器一般不会转发IP广播信息包,这样,IP广播通讯通常被限制在本地的子网内。而假如路由器转送这些广播,那么,路由回环将很可能引起一场严重的广播风暴。而且广播的主要的缺点就是每个广播都要发送数据至所有机器,消耗了所有机器上的资源,即使数据要被网络中大多数机器所丢弃。     二、组播化解矛盾     解决上述这些IP单播和IP广播题目的办法是构建一种具有组播能力的网络,答应路由器一次将数据包复制到多个通道上。采用组播方式,单台服务器能够对几十万台主机机同时发送连续数据流而无延时。组播发送方只要发送一个信息包而不是很多个,所有目的地同时收到同一信息包,更及时,更同步,可以把信息发送到任意不着名目的地,能减少网络上传输的信息包的总量。网络本钱变得相当低廉,可达到从未有过的传送能力。       IP组播通讯介于IP单播和IP广播通讯之间,并且能使主机发送IP信息包到IP网络中任何一组特定的主机上。这些主机都具有一种特定的IP地址,称之为IP组播组地址。支持组播的路由器会转发IP组播信息包至所有具有该组播地址的主机的接口上。单播与组播的区别如附图所示。     从图中可以清楚的看出,单播传送发送数据的多个拷贝,每个拷贝发送到一个接收者,主机轮流发送数据的拷贝,网络分别将它们转发至每个接收者,主机一次只能发送至一个接收者。而组播传送则只把发送数据的一个拷贝发送到多个接收者,主机发送数据的一个拷贝,可同时发送到多个接收者。网络在每个接收者的最后一个路由器或主机复制它,在一个给定的网络上每一个包只传送一次。     三、IP组播技术简介     组播首先要解决发送给谁的题目。按不同应用项目(如体育、文艺、娱乐或学习等)进行分组,组成员要向组播路由器通过IGMP协议进行注册登记,用户主机发出请示,提出具体组播地址。IP组播的地址采用D类IP地址确定组播的组。在Internet的“小数点”表示法中,组播地址范围是从224.0.0.0到234.255.255.255。为发送一份IP组播数据包,发送者要确定一个合适的组播地址,这个地址代表一个组。然后,组播数据通过普通的IP发送操纵发送出去。       其次要解决的题目是如何接收组播信息,有时在同一网段中有多个组播组的成员。对于信息的发送方来说相当简单,但接收方却十分复杂。为了能够正确地接收感爱好的组播信息数据包,主机上的应用首先要申请特定组播组的成员。这种申请通过Internet组治理协议(Internet Group Management Protocol,IGMP)传送到本网段上的路由器完成,如有必要,相关的信息还可能要传送到发送方的路由器,这取决于使用的组播路由协议。这一步完成,接收主机的网络接口卡开始侦听与新组播组地址相关的数据链路层组播地址。路由器把由发送方送来的组播数据包一跳一跳地发送到有接收者的网段上的路由器,局域网路由器根据组播信息包中的组地址转换出与它相关的数据链路层地址,并用这个地址建立数据链路层的报文。接收方的网络接口卡和网络驱动程序侦听这个地址,收到该组播包后,将IP层的组播数据包取出,传向上层TCP/IP协议堆栈,从而使数据适适用户的应用。       第三个题目是用户主机在注销对某个组的爱好时如何通知组播路由器。假如接收方使用的是IGMPv2,会主动地通知路由器离开。但假如是IGMPv1主机,注销就不会通知路由器,这时服务器要在一定时间后向本网段发出查询,接收主机的应答,若无用户应答,路由器就以为不再有接收者,不会再向该网段上转发组播信息。       第四个题目是组播信息的转发,要根据所使用的组播路由协议建立组播转发树。根据该转发树进行组播信息的转发,当某个处于转发树中的路由器收到一个组播信息后,对要转发的组播包进行拷贝和转发。假如路由器为最后一跳,组播包就以广播的方式传送到该网段中各主机接收者。       对于IP组播的研究早在80年代就已经开始有很多组播路由协议已经投入使用。像PIM(Protocol Independent Muiticast)、MBGP(Muticast Border Gateway Protocol)以及DVMRP(Distance Vector Multicast Routing Protocol)等协议的应用都比较广泛,但是目前还没有一种可靠的组播协议已经具备了处理大范围的组分发、发送者要求的反馈或各种类型使用路由器应用的能力。         1/3 123下一页尾页
页: [1]
查看完整版本: 组播路由协议及其应用