( 2008/3/7 11:13 )
摘要 采用 EPON系统的 宽带接入 网络可以为每个用户提供较高带宽,并且能较好地支持组播功能,是视频组播业务重要的用户接入手段。在EPON系统中应用组播,可以充分发挥EPON网络点到多点结构的特点,使同一个组播组的用户共享一条流,从而提高下行带宽的利用率。
1、引言
近年来,随着 互联网的迅速发展,很多高带宽的视频应用逐步走进了人们的生活,如 IPTV视频会议、网络音视频广播、 VoD、股市行情发布、E-learning、远程教育、远程医疗等,引起了带宽的急剧消耗和网络拥挤等问题。 IP组播技术有效地解决了单点发送多点接收、多点发送多点接收的问题,实现了IP网络中点到多点的高效数据传送,能够有效地节约网络带宽,降低网络负载。
采用EPON(ethernet passive optical network)系统的宽带 接入网络可以为每个用户提供较高带宽,可以满足任何视频压缩格式的视频业务传送需要,能在传输过程中提供较高的 QoS保障。同时,由于EPON点到多点的结构,并且支持组播协议,是视频组播业务最好的用户接入手段。因此,在EPON系统中实现视频组播是非常有意义的,它可以利用网络的组播特性方便地提供一些新的 增值业务,包括在线直播、 网络电视、远程医疗、远程教育、网络电台、实时视频会议等互联网信息服务。
2、组播技术
组播的概念最早于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也支持主机阻止那些来自于非要求的主机发送的网络数据包。
3、EPON技术
EPON旨在将目前最为简单和应用最为广泛的 以太网技术与 PON系统相结合,以点对多点的方式解决以太网接入问题。EPON系统主要由中心局的线路终端(OLT)、光配线网(ODN)、用户端的 光网络单元(ONU)组成。OLT的作用是为 光纤接入网提供网络侧与其他网络之间的接口并经一个或多个ODN与ONU通信,OLT与ONU的关系为主从通信关系。ODN为OLT与ONU之间提供 光传输手段,其主要功能是完成光信号功率的分配。
无源光配线网为点到点结构,按照其连接方式不同主要可分为星型、树型、总线型和环型结构。在选择结构时需要考虑多种因素,如房屋的分布与建筑结构、OLT和ONU之间的距离、不同业务的光通道、可用的产品与技术、光功率预算、波长的分配、升级的需要、可靠性和可用性、操作管理和维护、ONU供电、安全性、 光缆容量、接续次数等。ONU的组成分为 光纤光缆、无源光衰减器、光连接器、光分路器、ODF、光缆交接箱、分支接头盒、分纤盒、用户智能终端盒等。EPON中的ONU采用了技术成熟而又经济的以太网协议,实现了成本低廉的以太网二层或三层交换功能,可以为多个最终用户提供相当高的共享带宽。
4、EPON系统中组播的实现
在EPON系统中,采取SCB+IGMP的方式实现组播业务的分发,利用基于扩展OAM的组播控制报文实现组播业务的控制和管理功能。
目前EPON系统基本都采用IGMP Proxy/Snooping协议实现组播,这种方式下,OLT利用IGMP Proxy、ONU利用IGMP Snooping实现对组播组成员的管理,通过IGMP Join/Leave和Query消息实现组播成员的动态加入/退出和维持。另外,各个 运营商为了更灵活地管理组成员,可能采用自己的企业标准,如动态可控组播协议以更好满足IPTV的业务需求。下面对IGMP Proxy/Snooping和动态可控组播协议分别加以介绍。
4.1 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业务平台实现。
4.2 动态可控组播业务的实现
由于IGMP Proxy/Snooping组播协议中没有提供用户认证支持,所以用户可以随意加入一个组播组并可以任意离开,同时运营商无法对用户进行计费。针对这些问题,为了给不同级别用户提供相应服务以实现组播业务在实际环境中的灵活应用,提出了基于IGMP Proxy/Snooping方式的动态可控组播方案,可控组播方案强调的是业务开展的控制能力和增值能力。
业务控制能力要使 网络安全在严密的控制之下,能够有效地防止协议***、非法组播源、非法转播、非法接收者。业务增值能力要能够为组播源组播接收者订制服务进行相应的认证计费,为用户提供QoS保障使网络得到有效增值。
4.2.1 实现方式
动态可控组播协议的核心思想是OLT基于IGMP控制报文携带的用户标识信息进行用户鉴权,并通过扩展OAM消息实现ONU对组播数据报文的转发控制。具体协议如下所述。
OLT维持一个用户组播业务权限控制表,集中管理用户的组播业务访问权限。OLT利用用户的LLID或上行的IGMP Join报文携带的VLAN ID进行端口(用户)识别,并基于组播权限控制表判断该端口(用户)是否具有所申请的组播业务的访问权限及其参数。OLT通过扩展的组播控制OAM报文将端口(用户)对该组播频道的访问权限下发到ONU,由ONU执行对该端口(用户)的组播业务流的转发或关断操作。组播权限控制统一由OLT侧网管系统进行集中管理,OLT是组播权限管理的主体,ONU是组播权限管理的执行者。同时OLT支持IGMP Proxy功能与上层的组播路由器配合,实现组播业务流的动态申请和送达。
ONU维持一个组播组地址过滤和组播转发表。相对于OLT的组播控制表,该表容量较小,仅处理本ONU内当前的组播业务流控制功能,并按照OLT下发的MulticastControl OAMPDU动态刷新。ONU将接收到的IGMP Join/Leave报文打上标识端口(用户)身份的VLAN Tag,并透传到OLT。ONU接收OLT下发的扩展的组播控制OAM报文(该报文包含一系列组播控制表项),并按照该报文增加或删除ONU本地的组地址过滤和组播转发表项,然后执行相应的组播业务流的转发和关断。同时,ONU应支持对下行组播业务流的untag操作(即将组播业务流上的VLAN Tag剥除)。
4.2.2 组播VLAN
EPON系统应支持组播VLAN。OLT上划分组播专用的VLAN,即组播业务使用一个或者多个专用于组播业务的VLAN实现与其他业务相隔离,一个组播VLAN对应一个组播频道或者一个频道组(指一个权限统一管理的组播频道的集合)。一个组播频道仅属于一个特定的组播VLAN。在SCB信道中传送的组播业务流均带有组播VLAN Tag。用户的其他数据流(包括单播业务以及上行的IGMP报文等)划入另外的单播VLAN/CVLAN。
5、组播在EPON系统中的应用
由于EPON网络具有点到多点结构,OLT通过广播LLID信道以单拷贝广播(SCB)方式将组播内容分发给所有ONU。通过EPON系统传输组播数据,将极大地节省和有效利用带宽。鉴于组播和EPON的这些特点,笔者在EPON系统上搭建了一套视频组播环境,为组播业务在EPON系统中的应用积累经验。试验环境包括1台OLT设备提供2个PON口、2个上联接口。每个PON口为32台ONU提供接入服务;1个上联接口作为数据业务上联接口;1个上联接口作为视频业务接口。系统共包含64台ONU,通过该系统可实现视频会议、 视频点播和普通互联网业务等功能。
5.1 网络结构
组播服务器与OLT上联口连接,提供组播视频业务(如图1所示)。
图1 视频组播业务组网
5.2 实现过程
对不同的组播源设置组播组,并进行VLAN划分,对各用户设置其组播映射表,下面用一个应用可控组播协议的例子来说明组播业务的实现过程。
将用于视频会议的组播源1设置为组播组224.1.1.1,并将其划入VLAN 4000;将用于学习用的视频资料组播源2设置为组播组224.1.2.1,将其划入VLAN 4010。在EPON系统中设置各个ONU用户对于组播组的接收权限。如用户A/B/C对于组播224.1.1.1,并且组播VLAN为4000的组播流的权限都为允许,而对于组播224.1.2.1,且组播VLAN为4010的组播流的权限依次为允许、预览(一次预览时长2 min,预览间隔10 min,每天预览次数3次)、禁止。动态可控组播是基于多端口ONU,表1中ONU端口ID代表ONU的端口号。
表1 OLT侧用户组播权限控制
那么对于A、B、C收看视频会议组播源1的实现过程如下。
●A/B/C在客户端发送组播组224.1.1.1的Join报文。
●OLT部分根据接收到的Join报文查找各用户的组播映射表,发现对于224.1.1.1的组播流,A/B/C均拥有收看权,然后对A/B/C发送包含组播组224.1.1.1,以及它对应的组播VLAN 4000的OAM消息,告诉A/B/C(ONU)可以转发该组播流。
●OLT检查该组播组是否是第一次加入,若不是,则不再做处理,否则发送Join报文给组播服务器,组播服务器发送相应组播流。
对于A/B/C收看视频会议组播源2的实现过程如下。
●A/B/C在客户端发送组播组224.1.2.1的Join报文。
●OLT部分根据接收到的Join报文查找各用户的组播映射表,发现对于224.1.2.1的组播流,A的权限为允许,B的权限为预览,C的权限为禁止,对于A的处理同上个例子,不再重复。
●对于B,发送包含组播组224.1.2.1,以及它对应的组播VLAN 4010的OAM消息,告诉A/B/C(ONU)可以转发该组播流,但到了预览时间后,OLT会发OAM消息给B(ONU),删掉B中允许转发224.1.2.1,组播VLAN为4010的组播流。
●由于用户C对于该组播流的权限为禁止,所以OLT在收到C的Join请求后不会做任何操作,C将不会转发该组播流(由于EPON下行是广播的方式,所以如果和C在一个PON下的其他ONU能接收转发该组播流,则C也能收到,只是C中没有转发该组播流的权限而不转发)。
●OLT检查该组播组是否是第一次加入,若不是,则不再做处理,否则发送Join报文给组播服务器,组播服务器发送相应组播流。
上面例子只是描述了用户的加入过程,由于组播传输过程中的查询、离开应用的是标准的IGMP,所以在这里就不再做描述。