【摘 要】本文以永新视博数字电视条件接收系统CDCAS3.0为背景,介绍了一种可由一个省网管理多个地市而共享一套CAS的分布式解决方案。文章详细阐述了该方案的工作原理、实现流程等关键技术要点;随后给出了相应的应用举例,为此分布式系统的实用性提供了例证。
1 1 引言
在国家的大力倡导下,我国电视行业的数字化进程正在迅猛推进。最新数据显示,截止2008年底,中国有线数字电视累计用户已达到4510万户[1]。与2003年的20多万户相比,可以说我国的数字电视行业已经进入了一个全新的阶段,各省网的整合步伐也正在逐步加快。一方面各省广电网络中心希望在保证各地市自身利益和服务自由度的前提下,建立省—市的节目和业务分布式共享平台;另一方面,省网整合带来用户数量的量级突破对CAS(Conditional Access System,条件接收系统)也提出了新的要求,CAS服务进入文献[2]中描述的第三阶段,系统服务压力开始凸现。
2 分布式条件接收系统原理
省网整合中首先要解决的是省网(通常也是节目提供商)与地市(通常也是网络运营商)之间的统一管理及双方分账问题。对于此问题,以往的做法通常是在各地市简单地增加若干复用器,再由省网CAS对地市节目进行远程加扰,并管理全部的节目,然后通过SMS进行双方分账。这个方法确实很好地解决了统一管理的问题,但是却还没有顾及随着用户数量的持续增长带来的系统压力问题:省网CAS在向各个地市广播发送EMM(Entitlement Management Message,授权管理信息)包时,由于简单远程加扰方法的自身机制所限,容易产生大量的数据冗余而导致带宽拥堵。
2.1 系统基本原理
本文所要描述的分布式解决方案则是从分布式的基本思路出发,在下级运营商处部署一个被称为“EMMS(EMM Sender,EMM包发送器)代理”的模块,工作在EMMS与本地MUX(Multiplexer,复用器)之间。
EMMS代理运行在下级地市,通过VPN(Virtual Private Network,虚拟专用网络)专线和EMMS连接,EMMS把需要发送的数据发送给EMMS代理,然后EMMS代理再把数据发送给本地MUX。由此,上级EMMS发送来的数据包已自动根据区域划分,EMMS代理在接收数据后再转发给本地的MUX。因而就能够避免上级CA必须把相同的EMM包发送给所有配置的MUX,也就解决了EMM包发送中的负担过重、带宽拥堵、效率低下等问题。分式布条件接收系统的总体系统框架如图1所示。
2.2 EMM包发送原理
CA系统启动后,在EMM包被发送之前,首先需要在系统中配置所有的区域名称,包含省级和所有的地市名称。
然后为EMML(EMM Loader,EMM包加载器)配置容器,对每一个区域,选择区域名称,并分别配置它的容器表达式,用于选择出与区域名称相对应的EMM包。可以使用卡的某一个特征来区分卡所属的区域,例如区域A的特征1的值是1,区域2的特征值是2,依次类推。如果容器1的区域属性是A,那么容器1的表达式就应该是“发送智能卡特征1值为A的EMM包”。
另外,在为EMMS配置复用器IP时,同样需要指定区域名称。由此,通知EMMS只把容器内包含的EMM包发送给同区域名称的复用器,以避免数据的冗余发送。
需要特别说明的是,同一个EMMS组配置的复用器可以属于不同的区域,同一个区域的复用器也可以配置在多个EMMS组上。假如不需要同一个区域内不同加扰器发送不同EMM包的功[page]能,则应尽量配置同一个区域的复用器到同一个EMMS上。
2.3 EMMS代理的工作原理
对于EMMS而言,EMMS代理相当于MUX,并且在EMMS配置上面,EMMS代理和复用器的配置方式也完全相同。EMMS代理/MUX是EMMS的服务端,EMMS根据自己的配置,连接到EMMS代理/MUX,并且把数据发送到EMMS代理/MUX。
另一方面,对于MUX而言,EMMS代理完全等同于EMMS,EMMS代理是MUX的客户端。EMMS代理根据自己配置的MUX的情况,主动和MUX建立连接,并且把EMMS发送来的数据转发给每一个连接的MUX。
另外,EMMS代理还负责提供和EMMS连接的情况,包括IP、连接时间、发送EMM包数量、平均带宽等信息;并提供和MUX通讯的查询界面,内容和目前EMMS上MUX连接状态数据完全相同。
数据接口标准方面,在EMMS和EMMS代理之间、EMMS代理和MUX之间的信息通讯完全遵循TS103197中的EMMG与MUX交互的接口标准。
3 实现流程
下面简要介绍这种省网(通常也是节目提供商)与地市(通常也是网络运营商)分布式解决方案的一个典型实现流程。
首先,所有CAS程序必须集中在省网机房内。并为所有的省网和地市节目必须进行统一的编排。任何地方如果修改节目配置必须由省网确认并且修改相应的调度文件,并上传到CDCAS3.0系统后才能生效。
其次,根据地市数目的多少进行EMMS组的配置。图1中仅出现一个EMMS组,但实际操作时可根据实际需求适当增加。
此时从EMMS发送出去的EMM包,已经是按照地区做区分,所以在各地区不需要再进行类似的包过滤。但从SDH(Synchronous Digital Hierarchy,同步数字体系)适配器发送到复用器的数据包含省网EMM流,所以在复用器上必须过滤SDH适配器发送过来的EMM流,并且插入ASI(Asynchronous Serial Interface,异步串行输入输出接口)分配器中的EMM流。
然后是容器配置,EMML有且只有一个组,不同地区的EMM包通过容器配置区分。如果加扰器数目较多,还需要为系统配置多个ECMG(Entitlement Control Message Generator,授权控制信息发生器)模块,每个ECMG模块连接的加扰器数目不超过32。另外,每个EMMS模块配置的复用器不超过64。如果一个EMMS连接复用器数量过大,会影响EMMS的发送效率。
在这些配置完成之后,EMMS代理便可启动服务,作为MUX和EMMS之间的代理服务器。EMMS代理运行在下级地市,通过VPN专线和EMMS连接,EMMS把需要发送的数据发送给EMMS代理,然后EMMS代理再把数据发送给本地MUX。如前文所述,此时地方的MUX收到的EMM包已按照地区做区分,而不需要再次过滤。
需要特别说明的是,在以上分布式CA的实现流程中,因为需要运行额外的EMMS代理程序,因此在下级地市需要至少运行一台服务器;另外,省网和下级地市VPN专线带宽必须考虑EMM包和ECM包占用带宽,因为地市节目和加密机连接、EMMS和地市复用器/EMMS代理都是通过VPN专线连接,所以VPN专线的可靠性对CAS运行存在影响。
4 应用举例
下面以某省的实际应用情况为例,介绍分布式条件接收系统的具体实现方案。本例子仅作参考,具体的节目数量以实际为准。
&nbs[page]p; 首先根据该省的实际情况,为其省网及3个地市进行复用器配置。该省的省网下传的节目包括卫视节目、中央台节目、省台节目、付费节目等,各地市则仅负责加入本地的地方台节目。由于省网承担着较多的数据包发送任务,因此相应地分配较多的10个复用器,对应10路节目流;而地市的自办节目少,数据包传送也较少,因此为A市、B市、C市这3个地市分别配置2个复用器,分别对应各自的2路节目流。
这样,整个系统总共使用16个复用器。该省的省网及3个地市的具体复用器配置如表1所示。表中各MUX对应的括号中依次是其IP地址末字节和区域名称。
表1 复用器配置示例
MUX1 (1,省网) |
MUX2 (2,省网) |
MUX3(3,省网) |
MUX4 (4,省网) |
MUX5 (5,省网) |
MUX6 (6,省网) |
MUX7 (7,省网) |
MUX8 (8,省网) |
MUX9 (9,省网) |
MUX10 (10,省网) |
MUX11 (11,A市) |
MUX12 (12,A市) |
MUX13 (13,B市) |
MUX14 (14,B市) |
MUX15 (15,C市) |
MUX16 (16,C市) |
然后再进行容器配置。在本例子中,为各个区域分别配置6个容器,因此EMML总共有24个容器。将它们按照复用器配置分成两个EMMS组,其中复用器1~12配置在EMMS1上,13~16配置在EMMS2上。具体的配置情况如表2所示。表中各容器对应的括号中依次是其容器ID、区域名称和EMMS组名。
表2 容器配置示例
容器1 (1,省网,EMMS1) |
容器2 (2,B市,EMMS2) |
容器3 (3,A市,EMMS1) |
容器4 (4,C市,EMMS2) |
容器5 (5,省网,EMMS1) |
容器6 (6,B市,EMMS2) |
容器7 (7,A市,EMMS1) |
容器8 (8,C市,EMMS2) |
容器9 (9,省网,EMMS1) |
容器10 (10,B市,EMMS2) |
容器11 (11,A市,EMMS1) |
容器12 (12,C市,EMMS2) |
容器13 (13,省网,EMMS1) |
容器14 (14,B市,EMMS2) |
容器15 (15,A市,EMMS1) |
容器16 (16,C市,EMMS2) |
容器17 (17,省网,EMMS1) |
容器18 (18,B市,EMMS2) |
容器19 (19,A市,EMMS1) |
容器20 (20,C市,EMMS2) |
容器21 (21,省网,EMMS1) |
容器22 (22,B市,EMMS2) |
容器23 (23,A市,EMMS1) |
容器24 (24,C市,EMMS2) |
由于在本系统中存在了多个区域,因此不需要配置0号容器,而由EMMS组自动给每[page]个区域创建一个即时容器(相当于原来的0容器),这个即时容器的数据来源是本区域配置在这个EMMS组上容器ID最小的容器。例如EMMS1组中共有12个容器,分别属于省网和A市两个区域,那么EMMS1分别为它们创建两个即时容器:省网即时容器数据来源于容器1,A市即时容器数据来源于容器3。
对于以上配置,CAS系统运行过程中:EMML通知EMMS1组内的模块创建容器(1,3,5…,23),通知EMMS2创建容器(2,4,6,…,24);EMML只会把容器(1,3,5,…,23)的EMM包发送给EMMS1组内的模块,只会把容器(2,4,6,…,24)的EMM包发送给EMMS2组内的模块。
由此,EMMS只会把容器(1,5,9,13,17,21)的数据发送到MUX1~MUX10;类似地,只把容器(3,7,11,15,19,23)的数据发送到MUX11、MUX12;只把容器(2,6,10,14,18,22)的数据发送到MUX13、MUX14;只把容器(4,8,12,16,20,24)的数据发送到MUX15、MUX16。各地方的MUX收到的EMM包已按照各自地区做区分。
5 结束语
在本文所述的分布式解决方案中,首先为省广电网络中心建立功能完备的数字电视前端系统,然后地市通过VPN或者DDN(Digital Data Network,数字数据网)线路与省网络中心的CAS和SMS(Subscriber Management System,用户管理系统)连接,完成对地市插入节目的加扰和对地市用户的服务。
这种分布式的数字电视平台运营方式可以帮助地市节约建设数字电视头端的成本;也有助于省平台和地市的社会化分工,促进资源的合理分配、降低运营和维护的费用,从而建立一个实用的全省节目共享平台。它从技术上解决了在不造成带宽压力的前提下,保证不同地市之间的同质服务和差异经营的难题。总之,这种分布式的CA方案可以很好地满足一个省网管理多个地市而共享一套条件接收系统的需求。