IP组播技术在视频中的应用
四、 IP 组播技术的特点
IP 组播技术具有以下特点。
1. 群地址
在组播网中,每个组播群组拥有惟一的组播地址( D 类地址),一部分 IP 组播地址是由 Internet 管理机构分配的,其他的组播地址作为暂时地址被用户使用;组播数据包可以送到标识目的组机的组地址,发送者不必知道有哪些组成员,它自己不必是组成员,对组成员中主机的数目和位置也没有限制。主机不需要和组成员以及发送者商量,可以任意加入和离开组播组;使用组地址,不必知道主机指定的位置,可以找到具有此组播地址的任何资源和服务器,在动态变化的信息提供者中搜寻到需要的信息,或者发布信息到任意大小的可选用户群。
2. 规模可扩展性
如果网络速率提高,广域组播网络的容量需要扩大,后来产生的组播路由算法和协议如 PIM-DM 、 PIM-SM 、 CBT 等都支持网络规模的扩展,而上述的群地址和动态性也是适应规模可扩展性的另一方面。
3. 健壮性
IP 组播网络使用的路由协议和算法能适应网络路由动态变化,它采用软件状态刷新机制,制作路由备份等方法,来维护群组成员之间的连接,加强网络的健壮性。
4. 路由算法的独立性
组播路由算法和协议独立于单播路由使用的协议,但又依靠现存的单播路由表,在域内适应网络拓扑的变化,动态生成组播树。
5. 组播生成树的灵活性
组播生成树的形成与发送者和接收者的分布、网络的流量状况以及组成员的动态性有关,且组播生成树也反映了不同的组播路由算法和组播应用。灵活的组播生成树有利于数据包的传送,不容易造成网络的拥塞。
五、 IP 组播技术
1.IP 组播地址分配
在组播网内,一个组播群组指定为一个 D 类地址。使用点分十进制表示发来描述组播地址的范围是: 224.0.0.0 到 239.255.255.255 ,但是地址 224.0.0.0 是保留的,它不能赋给任何群组。
在组播通信模型中,需要两种新型地址:一个 IP 组播地址和一个 Ethernet 组播地址, IP 组播地址表示一组接收者,它们要接收发给整个组的数据;由于 IP 包封装在 Ethernet 帧内,所以还需要一个 Ethernet 组播地址。为使组播模型正常工作,主机应能同时接收单播和组播数据,主机需要多个 IP 地址和 Ethernet 地址,其中单播 IP 和 Ethernet 地址用于单播通信,而 Ethernet 组播地址用于组播通信。如果主机不准备接收组播地址,就设置为零组播地址。所以,单播和组播地址之间的主要差异在于每个主机都有一个惟一的单播地址,组播地址则不然。
将 D 类 IP 地址映射为 Ethernet MAC 地址是由数据链路层完成的。从组播映射到令牌环网络第 2 层地址的过程,是 CISCO 路由器采取的工作程序,而 Ethernet 及 FDDI 网络从组播到第 2 层的映射相当直接。
在映射过程中,组播 IP 地址中共有 9 位不参与替换,包括高位字节 8 位以及紧接在该字节后面的一个标志位,其中最开始的 4 位 1110 表示属于 D 类 IP 地址,剩下 23 位进行替换,将 IP 组播地址中的低 23 位取代 Ethernet 组播地址 01 : 00 : 5E : 00 : 00 : 00 的低 23 位。因此,有 5 位真正不参与映射,无论这些位的值是什么,组播 Ethernet 地址都是相同的。由于 5 个位共可以有 32 种不同的组合,所以映射并不具有惟一性。
2.IGMP
在一个组播路由器建立路由,传送其组播群组成员关系信息之前,它必须确定在本地网络上有一个或多个主机是否加入了某个组播群组。为此,组播路由器和实现组播的主机必须使用互连网组管理协议 (IGMP , Internet Group Management Protocol) 来进行群组成员关系信息的通信。利用 IGMP ,组播路由器可判断在与自己连接的任何一个网络上,是否存在组播组的一些成员,如存在组成员,组播路由器便可加入一个特定的组播组,并将组播数据转发给加入该组的主机。因此, IGMP 被主机用来通知直连的路由器,令其加入一个组播组,使组播网具有动态性和灵活性。
最初的 IGMP 规范是在 RFC 1112 文件里详细定义的,我们通常将这套规范称为 “IGMP 版本 1” ,由斯坦福大学的 S.Deering 成文于 1989 年 8 月。后来又由施乐 PARC 公司的 W.Fenner 对最早的 IGMP 版本 1 进行了大幅更新,更新的结果就是 RFC 2236 文件即 IGMP 版本 2 。两个版本的 IGMP 相互间可进行少许操作。在 IGMP 版本 2 临近正式批准时。 IDMR 已经开始 IGMP 版本 3 的研究工作,现在已有的 draft 为 draft-ietf-idmr-igmp-v3-05.txt 。 IGMPv1 中定义了基本的组成员查询和报告过程, IGMPv2 在此基础上添加了组成员快速离开的机制, IGMPv3 中增加的主要功能是成员可以指定接收或指定不接收某些组播源的报文。
3. 二层组播相关协议
IP 网络的二层组播相关协议包括 IGMP Snooping 和 CGMP 。
IGMP Snooping 通过交换机去侦听主机发向路由器的 IGMP 成员报告消息的方式,形成组成员和交换机接口的对应关系,放在组播 CAM 表项中。交换机根据该对应关系将收到组播数据包只转给具有组成员的接口。
CGMP(Cisco Group Management Protocol) 是 Cisco 基于客户机 / 服务器模型开发的私有协议,它将运行在路由器和交换机上,允许成员关系信息从路由器到交换机进行通信。在 CGMP 的支持下,组播路由器能够根据接收到的 IGMP 数据包通知交换机哪些主机何时加入和脱离组播组,交换机利用由这些信息所构建的转发表来确定将组播数据包向哪些接口转发。 GMRP 是主机到以太网交换机的标准协议,它使组播用户可以在第二层交换机上对组播成员进行注册。
4.IP 组播路由协议
在路由式网络中,对于传递组播信息流,一个至关重要的问题是 IP 组播路由协议,它克服了利用单播通信模型传递组播信息带来的带宽瓶颈,减少了发送相同数据信息到多个接收者的通信费用,这也是 IP 组播应用得到发展的主要原因。组播网内数据的流动必须根据组播路由协议建立生成树,使发送源和组播组成员之间形成一条单独的转发路径,确保每个数据包都能转发到目的地。
本文来自: 站长(http://www.qqcf.com) 详细出处参考:http://study.qqcf.com/web/351/55913.htm