近年来,随着互联网的迅速发展,很多高带宽的视频应用逐步走进了人们的生活,如IPTV、视频会议、网络音视频广播、VoD、股市行情发布、远程教育、远程医疗等,引起了带宽的急剧消耗和网络拥挤等问题。IP组播技术有效地解决了单点发送多点接收、多点发送多点接收的问题,实现了IP网络中点到多点的高效数据传送,能够有效地节约网络带宽,降低网络负载。
采用EPON系统的FTTH宽带接入网络可以为每个用户提供较高带宽,可以满足任何视频压缩格式的视频业务传送需要,能在传输过程中提供较高的QoS保障。同时,由于EPON点到多点的结构,并且支持组播协议,是视频组播业务最好的用户接入手段。因此,在EPON系统中实现视频组播是非常有意义的,它可以利用网络的组播特性方便地提供一些新的增值业务,包括在线直播、网络电视、远程医疗、远程教育、网络电台、实时视频会议等互联网信息服务。
组播技术的三大基本特征
组播的概念最早于1988年出现在Steve Deering的博士论文中,1989年Deering又对标准IP网络层协议进行了扩展,提出了IP组播规范,1992年3月第一次建立组播主干网(Mbone),IETF成功地在组播网上举行了一次会议后引起了人们的广泛关注。
组播业务的实施具有以下基本特征。
● 组播地址。组播地址使源不需要知道组播接收者的具体地址,只需要向组播地址发送数据即可。希望接收数据也只需按照组播地址加入组播组。IP地址方案专门为组播划出一个地址范围,在IPv4中为D类地址(224.0.0.0~239.255.255.255),并将D类地址划分为局部链接组播地址、预留组播地址、管理权限组播地址,在IPv6中进一步为组播地址提供了许多新的标识功能。
● 组播路由。组播数据通过路由转发树发送到当前组中所有的成员。当有新的成员加入组播组时,一条到达该成员的路径就被续接到当前的组播树上。当成员退出组时,不再必要的路径就被剪枝。构建组播树有多种不同的组播路由协议,路由协议运行于组播路由器之间,负责将组播信息路由到每个接收者。
● 成员管理。组成员关系通过IGMP(互联网组管理协议)进行管理。主机使用IGMP消息通知本地的边缘组播路由器想加入的组,即告知组播路由器相应组的组播地址。组播路由器通过IGMP来维护一个组播成员列表,并且定期发送“成员询问”消息来探寻表中的各个成员是否仍然存在。组成员利用IGMP的加入和离开消息来动态地加入或者退出组播组。目前,IGMP v2已经广泛地配置在路由器中。IGMP v3增加了允许主机指定它要接收通信流量的主机对象功能。来自网络中其他主机的流量是被隔离的,IGMP v3也支持主机阻止那些来自于非要求的主机发送的网络数据包。
EPON系统中组播的实现
在EPON系统中,采取SCB+IGMP的方式实现组播业务的分发,利用基于扩展OAM的组播控制报文实现组播业务的控制和管理功能。
目前EPON系统基本都采用IGMP Proxy/Snooping协议实现组播,这种方式下,OLT利用IGMP Proxy、ONU利用IGMP Snooping实现对组播组成员的管理,通过IGMP Join/Leave和Query消息实现组播成员的动态加入/退出和维持。另外,各个运营商为了更灵活地管理组成员,可能采用自己的企业标准,如动态可控组播协议以更好满足IPTV的业务需求。
1.SCB
按照PON协议,虽然OLT和ONU之间的下行通道采用广播方式传递数据,但每条数据传输逻辑通道(EPON中的LLID)仅属于某一个0NU,当0NU接收到标识为其他ONU的数据时应丢弃该数据,从而保证了用户数据的正确转发和安全隔离。在单播传输方式下,OLT会把下行广播报文复制N份并分发到多个数据传输逻辑通道传送到 ONU。但为了更高效地传输组播业务,节省系统带宽,PON系统提供了一种特有的数据传输方式,即SCB (SingleCopyBroadcast,单拷贝广播)。
SCB技术是在OLT和ONU之间建立一条特殊的允许所有ONU从中合法接收数据的数据传输逻辑通道。在转发组播业务时,即使多个ONU点播了同一节目,OLT仍然只发送一份组播媒体流数据拷贝进入 SCB逻辑通道,所有ONU均接收同一份数据,即l份业务带宽可为N个用户提供服务,由此节省了大量的系统带宽。对于高清视频等高带宽需求的业务来说, SCB技术带来的带宽节省效果愈加显著。为了便于管理,PON系统要求在每个PON口下仅有惟一的一个 SCB数据传输逻辑通道,所有组播媒体流数据均在同一个逻辑通道中传输,如果需要区分隔离,可通过使用不同的VLANID来标识和区分。此外,需要注意的是,SCB数据传输逻辑通道是一条单向(仅下行)通道,仅用于传输下行组播媒体流,上行组播协议报文仍然利用单播通道进行传输。
2.IGMP Proxy/Snooping
IGMP Proxy的实现原理:OLT靠拦截用户和路由器之间的IGMP报文建立组播表,Proxy设备的上联端口执行主机的角色,下联端口执行路由器的角色。
IGMP Snooping的实现原理:OLT以侦听主机发向路由器IGMP成员报告消息的方式,形成组成员和交换机端口的对应关系,并根据该对应关系,将收到的组播数据包转发到组成员的端口。
组播系统由视频组播业务系统、IP城域网、接入网络和家庭网络4部分组成。
EPON系统实现视频组播的一般流程如下。
第1步:机顶盒(STB)或PC机通过发送DHCP报文从DHCP服务器获得一个IP地址。
第2步:BRAS对STB上报的用户名和密码进行验证,获得电子节目表。
第3步:用户在电子节目表进行节目选择。
第4步:选中节目后,STB就发送一个IGMP加入的请求报文。
第5步:在组播路由器上建立组播映射表(组和VLAN相对应)。
第6步:OLT上建立组播转发表,为每个加入组的用户复制视频流。
第7步:用户观看组播节目。
其中关键的是要在组播路由器中建立组播映射表和OLT上建立组播转发表并复制视频流。主要是通过IGMP Join/Leave和Query消息实现组播组成员的动态加入/退出和维持。具体实现因IGMP Proxy和IGMP Snooping的不同而不同。
在IGMP Proxy模式下,当OLT收到IGMP申请加入报文后,OLT启动IGMP Proxy功能,截获这个申请报文,然后是鉴权,鉴权通过后进行以下逻辑检查:若申请的组是OLT中还没有的,那么OLT就向上层路由器发送一个IGMP加入请求,并建立组播转发表;如果在OLT内已经存在一个这样的组播组,则直接将该用户加入OLT上的组播转发表,不再向上层路由器发送IGMP加入报文,同时建立组播业务和用户的对应表。
在IGMP Snooping模式下,当OLT收到IGMP加入报文后,通过侦听获得组播转发表消息,但对IGMP报文而言,它是透传经过OLT的。在实际应用中,EPON系统通过UNI端口的组播VLAN配置实现简单的用户组播权限控制,更复杂的业务权限控制(如预览、禁止等)由IPTV业务平台实现。