当前位置:文档之家› IP多播的原理

IP多播的原理

IP多播的原理
IP多播的原理

IP组播的原理

传统数据传输有两种方式:单播、广播。单播传输在发送者和每个接收者之间实现点对点网络连接。如果一个发送者同时给多个接收者传输相同的数据,必须相应的复制多份相同的数据包。如果有大量主机希望获得数据包的同一份拷贝时。将导致发送者负担沉重、延迟长、网络拥塞。广播传输是指在IP子网内广播数据包.所有在子网内部的主机都将收到这些数据包。不论这些主机是否乐于接收该数据包,这样做就会造成了带宽的浪费和主机的资源浪费,还可能由于路由回环引起严重的广播风暴。所以广播的使用范围非常小.只在本地子网内有效。

IP组播是利用一种协议将IP数据包从一个源传送到多个目的地.将信息的拷贝发送到一组地址.到达所有想要接收它的接收者处。IP组播是将IP数据包”尽最大努力”传输到一个构成组播群组的主机集合,群组的各个成员可以分布于各个独立的物理网络上。IP组播群组中成员的关系是动态的.主机可以随时加入和退出群组,群组的成员关系决定了主机是否接收送给该群组的组播数据包,不是某群组的成员主机也能向该群组发送组播数据包。同单播和广播相比,组播效率非常高。在组播方式中.无论一个组播组中有多少成员,在整个网络的任何一条线路中都只传送单一备份的数据包,这样,组播的方式就可以大大地节省带宽,提高数据的传送效率,减少了网络出现拥塞的可能性。

IP组播技术的特点

◆群地址:在组播网中,每个组播群组拥有唯一的组播地址(D类地址),一

部分IP组播地址是由Internet管理机构分配的,其它的组播地址作为暂时

地址被用户使用;组播数据包可以送到标识目的组机的组地址,发送者

不必知道有哪些组成员,它自己不必是组成员,对组成员中的主机的数

目和位置也没有限制。主机不需和组成员以及发送者商量,可以任意加

入和离开组播组;使用组地址,不必知道主机指定的位置,可以找到具

有此组播地址的任何资源和服务器,在动态变化的信息提供者中搜寻到

需要的信息,或者发布信息到任意大小的可选用户群。

◆规模可扩展性:如果网络速率提高,广域组播网络的容量需要扩大,后

来产生的组播路由算法和协议如PIM-DM、PIM-SM、CBT都支持网络规

模的扩展,而上述的群地址和动态性也是适应规模可扩展性的另一方面。

◆健壮性:IP组播网络使用的路由协议和算法能适应网络路由动态变化,

它采用软件状态刷新机制,制作路由备份等方法,来维护群组成员之间

的连接,加强网络的健壮性。

◆路由算法的独立性:组播路由算法和协议独立于单播路由使用的协议,

但又依靠现存的单播路由表,在域内适应网络拓扑的变化,动态生成组

播树。

◆组播生成树的灵活性:组播生成树的形成与发送者和接收者的分布、网

络的流量状况及组成员的动态性有关,且组播生成树也反映了不同的组

播路由算法和组播应用。灵活的组播生成树有利于数据包的传送,不容

易造成网络的拥塞。

3.2 IP组播技术体系结构

组播协议分为主机一路由器之间的组成员关系协议和路由器一路由器之间的组播路由协议。组成员关系协议包括IGMP(W_连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。域内组播路由协议包括PIM—SM、PIM—DM、DVMRP等协议,域间组播路由协议包括MBGP、MSDP等协议。同时为了有效抑制组播数据在链路层的扩散,引入了IGMP Snooping、CCMP等二层组播协议。

3.3 组播地址分配与MAC地址

在组播通信中,我们需要两种地址:一个IP组播地址和一个Ethemet组播地址。其中,IP组播地址标识一个组播组。由于所有IP数据包都封装在Ethemet帧中。所以还需要一个组播Ethemet地址。为使组播正常工作,主机应能同时接收单播和组播数据,这意味着主机需要多个IP和Ethemet地址。IP地址方案专门为组播划出一个地址范围。在IPv4中为D类地址,范围是224.0.0.0到239.255.255.255。并将D类地址划分为局部链接组播地址、预留组播地址、管理权限组播地址。

◆局部链接地址:224.0.0.0~224.0.0.255,用于局域网,路由器不转

发属于此范围的IP包;

◆预留组播地址:224.0.1.0~238.255.255.255,用于全球范围或网络

协议;

◆管理权限地址:239.0.0.0~239.255.255.255,组织内部使用,用于

限制组播范围。将D类IP地址映射为Ethemet MAC地址是由数据链路层完成的。

在映射过程中,组播地址中共有9位不参与替换。包括高位字节8位以及紧接在该字节后面的一个标志位。其中最开始的4位1110表示属于D类IP地址.剩下23位进行替换,将IP组播地址中的低23位取代Ethemet组播地址01:00:5E:00:00:00的低23位。因此,有5位真正不参与映射,无论这些位的值是什么,组播Ethemet地址都是相同的。由于5个位共可以有32种不同的组合,所以映射并不具有惟一性。

3.4 组成员关系协议(IGMP)

IGMP协议运行于主机和与主机直接相连的组播路由器之间,主机通过此协议告诉本地路由器希望加入并接受某个特定组播组的信息。同时路由器通过此协议周期性地查询局域网内某个已知组的成员是否处于活动状态(即该网段是否仍有属于某个组播组的成员),实现所连网络组成员关系的收集与维护。ICMP有三个版本。ICMPvl由RFC1112定义。目前通用的是ICMPv2,由RFC2236定义。IGMPv3目前仍然是一个草案。IGMPvl中定义了基本的组成员查询和报告过程,ICMPv2在此基础上添加了组成员快速离开的机制,IGMPv3中增加的主要功能是成员可以指定接收或指定不接收某些组播源的报文。这里着重介绍IGMPv2协议的功能。

IGMPv2通过查询器选举机制为所连网段选举唯一的查询器。查询器周期性的发送普遍组查询消息进行成员关系查询;主机发送报告消息来应答查询。当要加人绀播组时,主机不必等待查询消息,主动发送报告消息。当要离开组播组时,主机发送离开组消息;收到离开组消息后,查询器发送特定组查询消息来确定是否所有组成员都已离开。通过上述IGMP机制,在组播路由器里建立起一张表。其中包含路由器的各个端口以及在端口所对应的子网上都有哪些组的成员。当路由器接收到某个组G的数据报文后,只向那些有G的成员的端口上转发数据报文。至于数据报文在路由器之间如何转发则由路由协议决定,IGMP协议并不负责。

3.5 二层组播相关协议

IP网络的二层组播相关协议包括IGMPSnooping和CGMP。

◆IGMP Snooping通过交换机去侦听主机发向路由器的IGMP成员报告消息的方

式,形成组成员和交换机接口的对应关系,放在组播CAM 表项中。交换机根据该对应关系将收到组播数据包只转给具有组成员的接口。

◆CGMP (Cisco Group Management Protoco1)是Cisco基于客户机/服务器模

型开发的私有协议,它将运行在路由器和交换机上,允许成员关系信息从路由器到交换机进行通信。在CGMP的支持下。组播路由器能够根据接收到的IGMP数据包通知交换机哪些主机何时加人和脱离组播组,交换机利用由这些信息所构建的转发表来确定将组播数据包向哪些接口转发。

GMRP是主机到以太网交换机的标准协议。它使组播用户可以在第二层交换机上对组播成员进行注册。

3.6 组播路由协议

在路由式网络中, IP组播路由协议克服了利用单播通信模型传递组播信息带来的带宽瓶颈,减少了发送相同数据信息到多个接收者的通信费用,这也是IP 组播应用得到发展的主要原因.组播网内数据的流动必须根据组播路由协议建立生成树,使发送源和组播组成员之间形成一条单独的转发路径,确保每个数据包

都能转发到目的地.IP组播路由协议分为域内协议和域间协议。域内协议包括PIM —SM 、PIM—DM 、DVMRP、CBT 等。域间协议包括MBGP 、MSDP、BGMP等。

3.7 组播高层协议

RTP是用于Internet上针对多媒体数据流的一种传输协议,允许应用传送不同类型的实时负载,例如音频、视频和其它具有实时特征的数据。它既可以使用单播,也可以使用组播作为下层传输协议,位于UDP协议之上来传输单播和组播数据流。RTP被设计为一对一或一对多的情况下工作,主要提供了时间信息和实现流同步。

RTCP属于RTP协议的一部分,它提供了流量控制和拥塞控制服务,主要提供与会话有关的和监视数据传递的信息,使用一些简单的服务质量测量,例如信息包丢失与抖动。

会话公告协议(SAP)作为组播会议会话的一个公告协议,由IETF的MMUSIC 工作组开发,当前的SAP版本在IETF的草案中描述。SAP的主机通过向熟知的组播地址和端口发送会话信息的SAP信息包,定期地宣告会议会话。信息包内的信息使用SDP,SDP信息可以选择加密,不允许被未批准的用户浏览。

会话描述协议(SDP)是SAP的伴随协议,用于实际会话信息的编码,也由IETF 的MMUSIC工作组开发,现在被定义在IETF的草案中。

另外,使用视频服务还需要安装相应的视频会议工具。nv是由施乐研究中心开发的一个视频会议工具,使用128KBPS的带宽,每秒钟提供3-5帧的视频速率;vat是由伯克利实验室开发的一个发送和接收音频的工具,因为它的视频界面而被称为可见的音频工具,它只能接收音频而不能接收视频;wb在主机屏幕上创建一个共享、虚拟的白板,可提供标准的绘画工具,也可作为草稿文件工具。会话目录(SDR)工具集成了nv、vat和wb软件工具,用于发布和安排多媒体视频会议,它要在主机上装有SDR工具,要在各路由器要进行SDR设置。SDR工具提供了一个IGMP直接的界面,用户可随意加入和离开组播组;用户点下窗口中的有关信息(例如时间和日期),双击参加的会议名,用户能看见、听见、参与目前的会议,自动地使用合适的软件工具:nv、vat、wb。

相关主题
文本预览
相关文档 最新文档