一.引言
2009年2月18日至28日,在哈尔滨举办了第二十四界世界大学生冬季运动会(简称“大冬会”),此次大冬会是历史上比赛项目设置最多的一届盛会,共设有12个大项,82个小项。其中冰上5个大项在哈尔滨市举行,共计33个小项;雪上5个大项在亚布力进行,也是共计33个小项;剩余2个雪上大项(共计16个小项)则在帽儿山进行。
二.总体需求与系统架构
本届大冬会在三个赛区同时进行,分别是:哈尔滨、亚布力、帽儿山。为实现这三个赛区的赛事资料共享,系统采用主IBC(哈尔滨)+分IBC(亚布力)+制作区(帽儿山)的方式设计,主分IBC之间采用光纤连接,通过远程IP高速传输方式实现主分IBC之间赛事资料的同步,帽儿山的赛事信息通过卫星方式传回哈尔滨的主IBC。各系统衔接关系如图1所示。

图1 第24届大冬会系统总体结构
图中MCS总控信号调度位于哈尔滨,亚布力、帽儿山的一些比赛将会通过卫星实时传回哈尔滨的主IBC,其中亚布力通过卫星回传的信号仅仅是作为一种备份手段,也就是在主分IBC之间通过光缆传输的IP链路发生故障的情况下才会启用。由于帽儿山赛区和主IBC之间采用卫星信号传输,在主IBC完成赛事收录,所以本文主要介绍一下关键的主分IBC系统之间的互联技术。
三.主分IBC互联主要技术要求
本届大冬会根据自身的具体情况,创新性地提出采用主、分IBC的方式构建一套全高清的赛事资料共享系统,其中主IBC(哈尔滨)要求能够同时收录7路高清赛事视音频信号,分IBC要能够同时收录3路高清赛事视音频信号。要求在收录的过程中,两个IBC能够立即互相同步收录的低码视音频文件,延时不超过3分钟,也就是说,在收录时按照每隔10分钟进行分段的情况下,要保证每段10分钟的低码素材在3分钟之内传输到另外一个IBC。在当日比赛结束后,要把分IBC(亚布力)的高码素材自动回传到主IBC(哈尔滨),保证主IBC赛事资料的完整性。同时为了满足在亚布力新闻记者的工作需要,允许亚布力记者直接使用从哈尔滨同步到亚布力的低码素材进行节目创作,在打包合成时,或者在下载输出时,再通过非线性编辑软件,从主IBC直接剪切需要的高码素材片段,这样可以降低分IBC的存储要求,同时也减少了传输带宽压力。在这整个的过程中涉及以下关键技术点:
1.赛事信息同步
赛事信息的创建是在IBC的收录系统中完成的,在编排收录计划的时候就已经完成了赛事信息的输入。该信息需要主分IBC之间能够准实时的同步,以便主分IBC中的用户,能够及时了解哈尔滨和亚布力两个赛区当前进行或即将进行的比赛。赛事信息可能会有调整,这就要求主分IBC同步系统要支持赛事信息修改操作的自动同步。
2.场记信息同步
在赛事收录期间,会安排专人使用场记系统进行实时的场记事件记录,这些实时记录的场记信息会极大的方便各体育记者进行关键镜头的定位,提高新闻和赛事集锦节目的制作效率。那么主分IBC要同步的赛事资料中自然也要包含场记信息。
3.低码素材同步
主分IBC收录时采用高低码同步收录(双采),收录后的低码素材要及时传输到另外一个IBC中。
4.高码素材同步
分IBC中收录的素材要在每天比赛结束后,自动传输到主IBC中。主IBC中的高码素材不需要传输到分IBC中。
5.成品节目回传
允许前端记者在分IBC(亚布力)完成成品节目的制作,将打包好的高清成品节目及时回传到主IBC,实现该节目在主IBC演播室的当日播出。
四.互联设计方案与关键技术
分析前面提到的五点关键技术要求,可以归纳成三种信息同步需求:低码素材及信息同步、高码素材回传、成品节目回传。在这三类同步需求中,文件传输环节是其共同点,也是主分IBC互联的核心技术所在,所以在关键技术介绍部分将对文件传输做重点描述。

图2 分IBC(亚布力)赛事信息、场记信息、低码素材同步到主IBC(哈尔滨)的过程
1.低码素材及信息同步方案
为了实现赛事信息、场记信息、低码素材在主分IBC间的同步,设计了如图2所示的具体方案。图2详细描述了赛事信息、场记信息、低码素材自动从分IBC(亚布力)同步到主IBC(哈尔滨)的过程,具体如下:
步骤一,收录编单:相关操作人员在收录系统中编辑收录计划,同时输入赛事相关信息:参赛队伍、开始时间、比赛地点等等,这是一个人工操作过程。
步骤二,赛事信息同步:后端数据同步服务负责自动将赛事信息同步到主IBC。
步骤三,赛事收录/场记记录:比赛开始,收录视频服务器按照收录计划开始收录,场记人员开始使用场记系统记录场记信息。场记记录是一个人工操作过程。
步骤四,视频、场记关联整理:收录时间达到预先定义的时间间隔,产生视音频片段素材,将场记系统记录的场记信息和这些片段建立关联。这是一个后台服务自动处理的过程。
步骤五,低码视频(含场记)同步通知:将包含场记的视频文件作为一个任务通知给文件传输调度服务器,让文件传输调度服务器完成最终传输任务的调度。这是一个后台服务自动处理的过程。
步骤六,低码文件传输(含场记):传输调度服务将传输任务调度给具体的文件传输服务,由文件传输服务完成具体的传输任务。这是一个后台服务自动处理的过程。
步骤七,登记低码视频和场记信息:文件传输到主IBC后,传输调度服务会通知主IBC的数据同步服务,告知其文件传输完毕,主IBC的数据同步服务此时需要将传来的文件登记到主IBC信息系统中,同时将场记系统也记录到主IBC的信息系统中。这是一个后台服务自动处理的过程。
步骤八,主IBC检索使用:用户在主IBC的赛事检索系统中可以看到场记信息,同时也可以浏览低码视频进行编辑创作。该步骤需要人工参与。
从主IBC向分IBC同步赛事信息、场记信息、低码流视音频文件的过程和上面描述的过程非常相似,仅仅是将主分IBC互相换位一下。
[Page]
2.高码素材同步方案
高码同步过程相对简单,这里不再提供流程图示,而是仅以从分IBC向主IBC同步高码素材为例描述一下整个过程,具体的系统衔接情况也可以参考图2。
步骤一,按策略通知传输高码:首先由分IBC的数据同步服务,按照时间策略向文件传输调度服务发送文件传输任务。
步骤二,传输高码流视音频文件:文件传输调度服务收到任务后,将任务下发给空闲的文件传输服务,文件传输服务完成具体的文件传输工作。
步骤三,高码文件登记:文件传输完毕后,文件传输调度服务将会通知主IBC的数据同步服务,主IBC数据同步服务需要把传输到主IBC的高码流视音频文件登记到主IBC的信息系统中。
在高码流同步的整个过程无需人工干预,全部由后台服务自动完成。
3.成品节目回传方案
从分IBC将成品节目回传到主IBC的过程和高码素材回传的过程相似,其核心也是文件传输的过程,具体步骤如下:
步骤一,发送节目回传任务:用户手工挑选打包合成好的成品节目,启动节目回传过程。
步骤二,传输成品节目视音频文件:文件传输调度服务收到任务后,将任务下发给空闲的文件传输服务,文件传输服务完成具体的文件传输工作。
步骤三,成品节目登记:文件传输完毕后,文件传输调度服务将会通知主IBC的数据同步服务,主IBC数据同步服务需要把传输到主IBC的成品节目视音频文件登记到主IBC的信息系统中,并且要标明这些内容为成品节目。
整个节目回传过程除了发起任务外,其他环节无需人工干预。另外,这些回传的内容都是当天在演播室播出的节目,对时效性要求很高,所以在文件传输调度环节要按照最高优先级处理,优先传输成品节目。
4.互联关键技术实现
在赛事同步方案中最关键的问题就是:传输效率能否满足实际需求。从现场实测的主分IBC之间光缆传输带宽(空传数据,非文件传输)看,效果比较理想,基本接近本地千兆以太网的速度。那么剩下的问题就是要让实际文件传输的速度尽可能接近空传数据速度即可,同时还要保证数据传输的准确性。
我们知道一个典型的TCP传输过程如下:
·发送端:从文件读取一段数据到内存(t1),将内存中的数据写入到Socket(t2),然后再从文件读取下一段数据。
·接收端:从Socket接收一段数据(t3),将数据写入文件(t4),然后再从Socket接收下一段数据。
这个过程涉及到所有环节都是采用同步方式,对于某一段数据来说传输总的时间至少是t1+max(t2,t3)+t4,如果一个文件有n段数据的话,那么传输总时长至少为n×(t1+max(t2,t3)+t4)。采用这种传输方式肯定不能充分利用主分IBC间光缆传输的带宽,将时间浪费在本地系统的存储上。
为提高传输速度,在具体实现时,我们采用多线程+多数据队列的方式完成整个传输过程。发送端和接收端的关键逻辑如图3、图4所示。

图3 TCP传输数据发送端实现逻辑图 图4 TCP传输数据接收端实现逻辑图
在实际的实现过程中,还加入了MD5校验线程,从而保证了数据传输的可靠性,相应的也会增加一个MD5校验数据链表。因为MD5线程的介入,才决定使用多数据队列方式,而没有使用一个统一的公共链表,这样可以最大程度上减少由于线程间数据同步带来的整体传输性能的下降。采用这种模式,文件传输的整体耗时应该接近n×max(t1,t2,t3,t4,t5,t6)。注:t5,t6为MD5计算耗时。
另外,值得一提的是,MD5校验失败后,不是终止文件传输,而是继续传输,仅仅将校验失败的位置记录下来,当传输结束后,重新传输这些校验失败的数据,而不是整个文件重新传输一遍。采用这种技术也极大地提高了传输的整体效率。
在整个文件传输过程中还涉及到任务调度、优先级调整等一些技术点,在这里就不再一一赘述了。
五.实际使用效果
本系统的实际部署情况为:在主分IBC各部署了两台文件传输服务器,传输调度服务器一台,部署在主IBC(哈尔滨),另外将数据同步服务部署在主分IBC的文件传输服务器上,与文件传输服务共用一台服务器。这样在实际运行时可以保证有4条传输链路在工作,其中2条用于从主IBC向分IBC传输文件,另外2条用于从分IBC向主IBC传输文件。
经过实际测试和正式运行观察,单条链路的速度在15Mb/sec~21Mb/sec之间波动,平均在16.7Mb/sec左右。单条链路的传输速度基本稍快于本届大冬会高码流视音频采用的压缩码率(码率为120Mb/sec的DNxHD压缩格式,采用mxf格式封装),对于采用1.5Mb/sec的MPEG-4低码率视音频来说,传输更是游刃有余,按照10分钟分段的低码流素材大多在10秒之内完成。
由于传输速度超出项目最初的预期,再加上亚布力同时开展的比赛很少超过2个,所以在比赛期间对高码流素材的传输策略做了调整,由当日所有比赛结束后传输改为立即传输,优先级的顺序从高到低依次是:成品节目回传、低码流素材传输、高码流素材传输,以便保证节目播出需要。调整后,分IBC(亚布力)的大多数高码流素材,可以在延迟10分钟之内回传到主IBC(哈尔滨),大大提高了节目的时效性,同时高码流素材及时回传到主IBC,也降低了现场技术人员的工作强度,缩短了系统维护时间。
六.总结
本届在哈尔滨举行的大冬会按照本文介绍的主分IBC互联方案搭建的互联系统,也正式服务于本届盛会。在为期10天的比赛过程中,该互联系统达到了最初的设计要求,圆满完成主分IBC之间赛事资料同步任务,赢得了包括世界大学生体育联合会、第24界世界大冬会组委会以及中央电视台、黑龙江电视台、上海文广新闻传媒集团、北京电视台、天津电视台、大连电视台等国内外用户的好评。
该互联系统,保障了主、分系统之间的高清异地、实时编辑,实现了赛事资料的即时共享,在远距离高速数据传输方面,为今后广播电视领域在大型多地举办的体育赛事,或者其他大型活动,进行异地联合报道,实现视音频以及相关资料的即时共享,积累了宝贵经验,同时也为其他领域的大数据量远程异地同步问题,提供了参考。
[Page]