IPv6环境下组播技术与网络构建的研究

2010-08-07 08:42杨志军
铁路计算机应用 2010年10期
关键词:单播接收者路由

王 锋,杨志军

(北京交通大学信息中心,北京100044)

IP组播技术由于它所具有的独特优越性—在IP组播网络中,即使用户数量成倍增加,主干网络带宽不需要随之成倍增加,而成为热点网络技术之一。

为了更好地使用和管理组播应用,IPv6对组播做了进一步的增强,明确要求IPv6设备必须支持组播,使IPv6网络中网络设备将普遍支持组播应用。在增强IPv6组播技术后,利用IPv6组播技术和流媒体技术构建视频组播系统,能充分发挥IPv6组播技术特点和优势,在下一代互联网上更好地传输图形和图像等流媒体业务。

1 IPv6组播模型分析与选择

根据接收者对组播源处理方式的不同,组播模型分为3类:ASM 模型、SFM 模型和SSM 模型。

ASM(Any-Source Multicast)模型就是任意源组播模型。在ASM 模型中,任意一个发送者都可以作为组播源向某组播组地址发送信息。众多接收者通过加入由该组播组地址标识的组播组以获得发往该组播组的组播信息。在 ASM 模型中,接收者无法预先知道组播源的位置,但可以在任意时间加入或离开该组播组。

SFM(Source-Filtered Multicast,信源过滤组播)模型继承了ASM 模型并进行了扩展,接收者只能收到来自被允许组播源的组播数据。从接收者的角度来看,只有部分组播源是有效的,组播源被经过了筛选。从发送者角度来看,两者的组播组成员关系完全相同。

SSM(Source-Specific Multicast,指定信源组播)模型为用户提供了能够在客户端指定组播源的传输服务。SSM模型与ASM模型的根本区别在于:SSM模型中的接收者已经通过其它手段预先知道了组播源的具体位置。SSM模型使用与ASM/SFM模型不同的组播地址范围,直接在接收者与其指定的组播源之间建立专用的组播转发路径。

基于IPv6的网上教学视频组播应用,由于组播网络覆盖范围广泛,并通过适当的方式让教学视频组播接收者了解组播源和组播组的信道信息,因此,采用效率高的SSM组播模型是合适的选择。

2 组播组管理协议

MLD (Multicast Listener Discovery Protocol,组播侦听者发现协议)的简称,它用于IPv6路由器在其直连网段上发现组播侦听者。组播侦听者(Multicast Listener)是那些希望接收组播数据的主机节点。目前,MLD有两个版本:

(1)MLDv1(由RFC 2710 定义),源自IGMPv2。(2)MLDv2(由RFC 3810 定义),源自IGMPv3。

所有版本的MLD协议都支持ASM模型;MLDv2可以直接应用于SSM模型,而MLDv1则需要在MLD SSM Mapping技术的支持下才能应用于SSM模型。

3 组播路由协议

目前IPv6环境中使用的组播路由协议主要为PIM-SM协议。IPv6 PIM是Protocol Independent Multicast for IPv6(IPv6协议无关组播)的简称,表示可以利用静态路由或者任意IPv6单播路由协议(包括RIPng、OSPFv3、IS-ISv6、BGP4+等)所生成的IPv6单播路由表为IPv6组播提供路由。IPv6组播路由与所采用的IPv6单播路由协议无关,只要能通过IPv6单播路由协议产生相应的IPv6组播路由表项即可。IPv6 PIM借助RPF(Reverse Path Forwarding,逆向路径转发)机制实现对IPv6组播报文的转发。当IPv6组播报文到达本地设备时,首先对其进行RPF检查:若RPF检查通过,则创建相应的IPv6组播路由表项,从而进行IPv6组播报文的转发;若RPF检查失败,则丢弃该报文。

根据实现机制的不同,IPv6 PIM分2种模式:

(1)IPv6 PIM-DM(Protocol Independent Multicast-Dense Mode for IPv6,IPv6协议无关组播-密集模式)。(2)IPv6 PIM-SM(Protocol Independent Multicast-Sparse Mode for IPv6,IPv6协议无关组播-稀疏模式)。

4 SSM模型在IPv6 PIM中的实现

SSM模型和ASM模型是两个完全对等的模型。目前,ASM模型包括IPv6 PIM-DM和IPv6 PIM-SM两种模式,SSM 模型能够借助IPv6 PIMSM的部分技术来实现。

SSM 模型为指定源组播提供了解决方案,通过MLDv2来维护主机与路由器之间的关系。鉴于IPv6 PIM-DM模式以“扩散—剪枝”方式构建以IPv6组播源为根的SPT,SPT的路径最短,但是分发树的建立过程效率较低,不适合大中型网络。

在实际应用中,通常采用IPv6 PIM-SM模式的一部分技术来实现SSM模型。由于接收者已经通过其它渠道知道了IPv6组播源的具体位置,因此在SSM模型中无需RP,无需构建RPT,也无需IPv6组播源注册过程来发现其它IPv6 PIM域内的IPv6组播源。与ASM模型相比,SSM模型仅需要MLDv2和IPv6 PIM-SM部分子集的支持,并且能够以相对于PIM-DM模式和PIM-SM模式更高的效率建立和维护组播分发树。

5 SSM地址结构

RFC4607定义具有前缀FF3x::/32的地址保留为1Pv6 SSM使用。即SSM地址是特殊的Unicatprefix-based 组播地址,必须满足P=l、T=I、Rsvd=Ox00、Plcn=Ox00。RFC3307规定,SSM地址必须将Network Prefix字段全部设置为0,因此当前SSM组播地址具有前缀FF3x::/96。

此外,考虑到未来地址格式的兼容性(例如,或许将来某个文档规定Network Prefix字段可以映射MAC地址,从而导致Network Prefix字段不为0),所有系统应该将所有前缀为FF3x::/32的组播地址视为SSM组播地址(此处RFC4607和RFC3306定义之间存在不一致:RFC3306定义的FF3x::/32可用于ASM。而此处却视为SSM),但当前SSM地址指派需在FF3x::/96地址范围之内。

RFC3307 还规定位于FF3x::4000:0001和FF3x::7FFF:FH之间的地址保留为IANA分配;FF3x::8000:0000到 FF3x::FFFF:FFFF之问的地址是用于动态分配的地址;而FF3x::0000:0000到FF3x::3FFF:FFFF之问的地址则是无效的SSM地址(RFC3307规定IANA分配的永久IPv6组播地址必须指定GID在0x0000 0001到0x3FFF FFFF之间,P和T比特都设置为0,然而SSM中P、T比特必须都为l。这种SSM地址指派是无效的)。

6 不同厂商设备的组播互操作性测试

北京交通大学IPv6校园网络采用了多厂商的产品和技术。鉴于组播环境需要在不同品牌的网络设备下组建,因此,我们对不同厂商的产品对IPv6组播的支持和互操作性进行了研究和测试,并与设备厂商的研发进行了多次的交互和研讨,使在我校网络平台下实现了全网IPv6组播环境的建立。测试方案如表1。

表1 测试方案

测试环境如图1。

说明:

(1)SA1配置为组播服务器,PB1,PC1,PC2配置为组播客户端。

(2)路由器A、B、C之间运行OSPFv2 和OSPFv3,PIM组播路由协议;测试内容与结果见表2。

表2 测试内容与结果

图1 IPv6组播测试环境

7 结束语

项目组已经在北京交通大学IPv6/IPv4全校双栈网络环境下,建立了PIM-SSM组播模型实现环境,并提供全校用户的IPv6视频组播服务。

[1] [美] Qing Li,[日] Tatuya Jinmei. IPv6详解 卷2:高级协议实现(英文版)[M] . 北京:人民邮电出版社,2009,2:33-206.

[2] 刘莹,徐恪 .Internet 组播体系结构[M] . 北京:科学出版社,2008.

[3] H Holbrook, Cain B. Source-specific Multicast for IP Internet Draft[D] . 2003.

[4] A Adams. RFC3973. Protocol Independent Multicast-Dense Mode (PIM-DM):Protocol Specification (Revised)[J] . The Internet Society, 2005 (2).

猜你喜欢
单播接收者路由
高空通信平台非正交广播与单播复用容量研究
基于SDN的组播安全机制
铁路数据网路由汇聚引发的路由迭代问题研究
功能翻译理论视角下英语翻译技巧探讨
一种基于虚拟分扇的簇间多跳路由算法
探究路由与环路的问题
口碑传播中影响因素作用机制研究及应用
基于预期延迟值的扩散转发路由算法
城市车辆网络单播路由协议:审查、分类和开放问题研究
IP互动电视快速频道切换的解决方案与实现