组播路由
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章组播路由
本章主要讲述IP组播报文转发原理及相关协议。组播报文到达路由器后,查询路由器中的组播转发表,确定是否能够转发以及如何转发;IGMP协议主要用于主机与路由器之间成员关系的管理;动态组播路由协议用于维护全网一致的组播转发表。
本章主要内容:
组播介绍
IGMP协议相关术语解析
IGMP协议介绍
PIM-SM协议相关术语解析
PIM-SM协议介绍
PIM-SM调试命令及调试信息
PIM-DM协议介绍
DVMRP协议介绍
4.1IP组播相关术语解释
ip multicasting――ip组播。在RFC 1112和RFC 2236中定义了I P组播概念,即如何向一个主机组发送报文。一个主机组是指共享单独一个IP地址的多个设备。I P组播传送与I P单播相同,都使用“尽力(best-effort)”传输机制发送报文。这意味着对于该组中的所有主机,都不能保证数据包能够正确无误地、按顺序地接收。
multicast address――组播地址。目前,保留给IP组播的地址空间是D类地址,范围从224.0.0.0到239.255.255.255。这些地址的高位比特都被定义为“1110”。
multicast distribution tree――组播分布树。在组播模型中,源主机可以向任一加入组播组的主机传送信息。IP组播业务报文在网络中经过的路径成为组播分布树。它可以分为有源树和共享树两种类型。
source tree――有源树。树的根是组播信息源,分支形成了通过网络到达接收站点的分布树。有源树以最短的路径贯穿网络,因此它也常被称为最短路径树(SPT)。
shared tree――共享树。不使用信息源作为树根,而是使用位于网络中的某些可选择点作为公用根。此根称为汇聚点(RP)。
reverse path forwarding――逆向路径转发。组播业务包到达路由器时,路由器对报文执行RPF(检
查组播包是否在可返回源站点接口上到达)检查。检查成功时转发该包,否则丢弃该包。
multicast cache――组播转发缓存。又称为组播路由表项。它包含了组播业务报文的合法输入、输出接口信息,是RPF检查的依据。组播转发缓存由组播路由协议生成并更新。
4.2组播介绍
当信息(包括数据、语音和视频)传送的目的地址是网络中的一组用户时,可以采用多种传送方式。例如可以采用单播(Unicast)方式,为每个用户单独建立一条数据传送通路;又如采用广播(Broadcast)方式,把信息传送给网络中的所有用户,不管他们是否需要,都会接收到广播来的信息。以上两种方式都浪费了大量宝贵的带宽资源,而且广播方式也不利于信息的安全和保密。IP组播技术有效地解决了这个问题。组播源仅发送一次信息,信息在网络关键节点处被复制和分发,因此信息能被准确高效地传送到每个需要它的用户。简单地说,IP组播是一种保存带宽的技术,它把一个单独的信息流同时传送到多个接收者那里,减少了网络流量。
若网络中有不支持组播的路由器,组播路由器可以采用隧道方式将组播包封装在单播IP包中发送给相邻路由器,相邻的组播路由器再将单播IP头剥掉,然后继续进行组播传输,直至到达目的地。
4.2.1IP组播地址
IP组播地址用于标识一个IP组播组。IANA把D类地址空间分配给组播使用,范围从224.0.0.0 到239.255.255.255。组播地址前四位均为“1110”。
4.2.1.1IP组播地址的空间划分
整个IP组播地址的空间是这样划分的:224.0.0.0 到224.0.0.255 地址范围被IANA 预留,地址224.0.0.0 保留不做分配。其他地址供路由协议及拓扑查找和维护协议使用。该范围内的地址属于局部范畴,不论生存时间字段TTL值是多少,都不会被路由器转发也即只能在局域网里传送。224.0.1.0 到238.255.255.255 地址范围作为用户组播地址,在全网范围内有效。组播地址239.0.0.0 到239.255.255.255 地址范围为本地管理组播地址administratively scoped addresses,仅在特定的本地范围内有效。
4.2.1.2IP 组播地址到MAC 地址的映射
IANA 将MAC 地址范围01:00:5E:00:00:00 ~ 01:00:5E:7F:FF:FF 分配给组播使用,这就要求将28位的IP 组播地址空间映射到23 位的MAC 地址空间中。具体的映射方法是将组播地址中的低23 位放入MAC 地址的低23 位如图4-1所示:
图4-1 组播地址到MAC地址的映射
由于IP 组播地址的后28 位中只有23 位被映射到MAC 地址,这样会有32个IP 组播地址映射到同一MAC 地址上。
4.2.2IP组播特性
在一般的TCP/IP路由中,一个数据包传输的路径是从源地址路由到目的地址,利用Hop-by-Hop的原理在IP网络中传输。然而在IP组播环境中,数据包的目的地址不是一个而是一组,形成组地址.。所有的信息接收者都加入到一个组内,并且一旦加入之后,流向该组地址的数据立即开始向接收者传输。组中的所有成员都能接收到该数据包,因此为了接收数据包,必须首先成为组的成员,而数据包的发送者并不需要是组中的成员。组播环境中,数据传向组中的所有成员,不是组中成员的用户不会收到这些数据。
总的来说:IP组播具有如下特性:
对组成员所处的位置和成员的数量没有限制。也就是说:独立的主机可以在任意时间自由地加入或离开组播组;这些成员可以处在Internet的任何地方;一台主机在同一时刻也可以是一个以上组播组的成员。
一台主机可发送数据包到一个组播组,即使该主机不是这个组中的成员。向一个组播组内的所有IP主机传送报文如同单播一样,只向组地址发送一份报文即可。
路由器不需要保存所有主机的成员关系,它只需知道物理接口所在的网段上是否已经有主机属于某个组播组;主机只需保存自己加入了哪些组播组。
4.2.3IP组播路由协议
组播协议包括两个部分:一部分作为IP组播基本信令协议的因特网组播管理协议(IGMP);另一部分是实现IP组播流寻径的组播路由协议(例如:DVMRP、PIM-SM、PIM-DM)。
4.2.3.1因特网组播管理协议
IGMP定义了主机与路由器(也适用于路由器与路由器之间)之间组播成员关系的建立和维护机制,是整个IP组播的基础。IGMP通知路由器有关组成员的信息,路由器使用IGMP来获知与路由器相连的子网上是否存在组播组的成员。特定的应用程序能知道是来自哪个数据源的信息发送到了哪个组中:如果一