OC和DC的比较

目的

在数字电视标准制定过程中,我们需要规定一种标准传输协议,以便数字电视接收设备能够装载从广播流中播放的数据。ISO/IEC13818-6规范定义了几种数据传输协议。在广播的环境中,使用较广的是DSMCC数据转盘(DSMCC Data Carousal,以下简称DC)和DSMCC对象转盘(DSMCC Object Carousal,以下简称OC)。本文的目的旨在客观地分析两种协议标准,以便为我国数字电视标准制定提供一个参考。

2 DC/OC协议简介

DSMCC Data CarousalDSMCC用户-网络数据下载协议(DSMCCU-N Download)的在广播(Broadcast)环境下的一种应用。其主要特征是:

(1)    将要传送的数据分装在模块(module)中,不同的模块可盛装不同的数据,不同的模块又可集合在一起,形成以组(group)为单位的模块组;

(2)    modulegroup组中,用户可根据实际需要传送有关模块或组的信息(通过Module Info ByteGroup Info Byte,或Private Data Info),这些信息均是以描述符(descriptor)的形式表现的。

(3)    根据传送的数据情况,用户可选择1层或2层的格式(1level or 2level)。

(4)    DC的协议比较直观,层次清楚,可扩展性强。DSMCC对象转盘(Object Carousal)是在DC的基础上加的一层封装。它将CORBA的一些概念用于广播环境,采用BIOP格式(Broadcast inter-ORB protocol)封装数据,并将数据称为对象。

OC定义的数据对象主要有:文件、目录及事件等。由于CORBA是基于分布式的网络环境的,故用于广播环境并不是直接了当的,故DVB对比它作了一些限制,如每个对象的键值(Object-key)的长度不能超过4,等等。

DSMCC-OC的对象信息(BIOP Message)是分布在模块(module)中,为了将某个对象(Object)定位,OC(或说CORBA)引用了IORInter Object Reference)的概念,采用IOR可以获取对象广播所在的PID,它是对象定位和连接的索引表。在DVB-MHP中,只有Profile Body(一种IOR的形式)被应用。

OC所采用的数据对象传播的定位与索引是相当繁琐的,实现起来比较复杂,测试也比较困难。

3 DCOC在技术层面上的比较

(1)    传送文件系统

在表面上看,DC只能用来传送数据,而不能用来传送文件和目录。其实这种观点是错误的,在DC的结构中,我们可以通过Descriptor的形式来定义DC中的数据类型和关系。附录中列出了一种简单有效的通过DC传送树型文件系统的方法,这种方法通过在DCModule Info ByteGroup Info Byte定义描述符,因而完全符合标准的DC协议,且非常灵活,它的实现也很简单。通过这一扩展,DC就与OC一样,都能传送文件系统了。同样DC也可传送事件。

(2)    DC相比,除了在实现上要困难许多外,OC还有下述不足之处:

Ø  占用多的宽带(bandwidth):每个文件(File)的BIOP信息(BIOP Message)的头描述(header)占用43Byte,在目录BIOP Directory中,每个文件或记录占用72Byte,这样每个文件将需要115Byte这么多的header描述,在广播环境中,交互式应用的文件一般较多,这样就浪费了许多带宽。

Ø  每个对象(Object)可以通过不同的PID播发,而搜索这些定位(PID)将耗费许多时间,尤其是在广播环境中,一般数据文件播发频率均以秒为单位,一个轮播需要几秒或十几秒的时间,这样装载每个文件(对象Object)所花费的时间都很长,影响应用效果(观众的耐心是有限的)。

Ø  OC实际上是2DCDCof2level)的一种应用。在装载整个OC之前,必须先装载OC中的Service Gateway,它定义文件系统的根目录。而装载这个根目录必须经过3项串行连续(sequential)的数据装载。这样就增加了整个的数据装载时间;而装载其它的对象数据,还需要装载在DII中的BIOP Profile Body以便找到数据对象传送的PID,然后才能装载数据。

以上的分析可以看出,在实际应用中,OC将比较低效,且占用不必要的带宽,而DC则恰恰相反。

从市场应用来看

目前OC用于英国地面数字广播(DTG,且只用来传送MPEG-5应用(它一般包括应用描述和用图形数据)。DC被日本ARIB定义为标准数据传送协议,用于传送基于BMLBS数字电视广播,它已在日本被用于商业运营。

MHPOC定义为其传输协议标准,但MHP并未在世界任何一个地方真正开展商业运营。MHP标准的测试还没有完成。因此,同OC一样,DC也是经过商业运营检验的有效的传输协议。

我们的选择

在我国的数字电视标准制定过程中,我们应该借鉴别人的教训,发挥后发优势,在传输协议标准选择的问题上,我们应该有以下几方面的条件:

(1)    无论是接发端还是接收端,协议应该是一种高效性的,即文件打包容易,数据接收时也很快捷。

(2)    尽量少浪费带宽,避免不必要的overhead,因为带宽(bandwidth)是很昂贵的。

(3)    协议的可扩展性强,以满足现在和将来的需求。

(4)    实现起来比较简单,更好地适应市场需求。

根据上述选择标准和我们对DC/OC的技术分析,我们可以得出结论,DC优于OC,我们应该选择DC作为我们数字电视数据传输标准协议。

OC是基于DC的上一层协议,DC的效率高一点,OC对应用层的开发支持好一些,他们之间没有优劣之说每个数据广播/中间件的厂商各有各的做法,厂商之间也不要过多争论他们的优劣。



[装载]OC与DC之比较

与之比较

在以DVB为基础的数字电视系统中,在TS码流中插入的数据可以分为几类:

1)                节目信息,即PSI信息,包括PAT、PMT、NIT等,这些信息是从码流中分解出节目所必需的;

2)                业务信息,即SI信息,包括NIT、SDT、EIT、TDT、TOT等,这些信息包括了网络描述、业务说明、节目介绍、时间等;

3)                专用数据(如Subtitle、Teletext等),这类数据是作为辅助业务的;

4)                应用类数据,这类数据的数据格式和传输封装方式与具体的应用相关,而且数据量都比较大。

在DVB的系统中,上述前三类的数据类型都是通过DSM-CC Section方式来封装的,这种方式的优点是通过校验和来排查数据传输中的错误。但是DSM-CC的Section封装只是解决了所需的一部分要求,另外还需要对数据结构、数据关系进行定义。前三类数据都具有明确的应用目标,在DVB标准中,对他们的用途、数据格式、封装方式都进行了详细而明确的定义。第四类数据随着具体应用的不同而存在较大的变化,DVB标准无法预先具体地定义。但是,DVB标准为这些数据的发送提供了几种机制,虽然没有明确数据格式,但在传输封装上作了尽可能细致的规定和说明。

一、DVB的5种数据广播方式

DVB系统中,针对上述的第四类数据,提供了5种广播式传输机制。应用系统可以根据具体使用要求,选择一到几种机制。这几种方式各有自己的特点。

1 数据管道(Data piping)

这种方式实现在广播网上传送简单的、异步的端到端数据。广播数据直接由MPEG-2 TS包的负载携带。

2 数据流(Data Streaming)

这种方式实现在广播网上发送面向流的端到端数据,发送方式可以是异步的,也可以是同步的或从同步的。数据是由MPEG-2系统中定义的PES携带。异步数据流仅指无定时要求的数据流(如RS-232数据)。同步数据流是指有定时要求的数据流,且数据和时钟可以在接收端重新生成一个同步的数据流(如E1、T1)。从同步的数据流是指有定时要求的数据流,且流中的数据通过和其它类型的数据流同步能够回放(如视频和音频)。

3 多协议封装(MPE)

这种方式在广播网上传送通讯协议数据报(datagram)。实现方法是把数据报封装成DSM-CC section,后者和MPEG-2私有section格式兼容。

4 数据轮(DC)

这种方式通过广播网周期性地发送数据模块。模块大小已知,且可以随时更新、加入数据族或从中删除。如果业务需要,模块可以聚集成模块组,同样,组可以聚集成超组。

数据轮使用DSM-CC数据轮传送。在DVB数据广播规范中,定义了用于DVB兼容网络需要添加的结构和描述子,没有对PID和定时参数的外部引用,从而能够离线准备内容。

5 对象轮(OC)

这种方式通过广播网络周期性地发送数据模块,数据模块的内容既可以是目录结构、文件实体,也可以是流或流事件信息,这些内容以对象的方式进行封装,对于不同类型的对象可以分别指定发送速率。不同的对象可以跨流发送,同一个对象也可以属于多个对象轮,因此对象轮的传送方式给予了前端系统非常灵活的操作方式,即可以将多种内容关联操作,形成一个功能强大的服务,而且还可以根据服务应用的优先级给予不同级别的响应。

6 对象轮——多媒体业务广播的首选

从上面的介绍可知道,对象轮这种发送机制是最灵活的。在开展基于数据广播的多媒体业务时,有几个要求:

1)                载体类型以文件和信号流两种方式为主,而文件需要比较复杂的目录结构;

2)                媒体类型多种多样,包括文字、图片、视频、音频等;

3)                业务组织形式需要灵活,实现数据与视音频互动,业务之间关联性也比较强;

4)                数据内容需要重复发送。

根据以上的要求,对比5种传输机制的特点,可以看出,对象轮机制是最好的选择。

选择对象轮作为传输机制,也是满足系统先进性和前瞻性要求的。在DVB标准体系中,MHP定义了一套开展多媒体业务所需要的技术体系。该体系就采用了对象轮作为首选传输机制。

二、OC与DC的直观比较

首先,DC是基础层协议,面向应用层提供一个数据传输和控制协议;OC是应用层协议,应用层的灵活性高。他们之间的关系就像网络协议中的TCP/IP和Http的关系。

其次,从协议内容来看,DC是定义数据块传输,而OC则定义数据块的逻辑意义。所以OC中定义的是逻辑对象,比如Directory,File以及这些逻辑对象之间的关系,而这些对象最终要通过DC的数据块来传输。

第三,DC本身并不能传输任何东西,它的扩充版本EDC才可以。在中国,DC(EDC)定义出来后,只有2家实施,而且,EDC没能对接过,也就是没有经过实践验证过。

第四,从传输效率来讲,他们的传输效率差不多,只是OC复杂一些。年,我们搞了一个比较测试,结果如下:

                       DC(EDC)    OC

效率       96%~97%      93%~95.2%

我们可以看到,OC比DC(EDC)只低3个百分点。

实际上,随着机顶盒filter能力的不断提升,这个传输效率差异影响不大。

第五,目前国际主流的数据广播系统如Thales,Canal+,NDS,OpengTV,Alticast,Liberate等都是采用OC协议。

三、如何对OC与DC进行区别

由于OC是在DC的基础上,对数据进行了逻辑定义,实际上两者的传输并无本质性区别,因此从表面效果以及功能上,很难分别数据是由OC还是OC方式广播.

 

对播放的码流进行分析,OC和DC的区别,根本体现在DSM-CC中的BIOP Message数据结构上

OC:

在OC方式广播的码流中,BIOP Message由Dir Message和Fil Message组成,清晰的描述了各对象直接的逻辑关系

DC:

在DC方式广播的码流中,BIOP Message由Date Message(没有dir,fil之分)组成,不存在逻辑关系.

区别步骤:

a.      通过码流分析工具,查看PAT/PMT

b.      在PMT表中,查找到Ox数据的描述,找到对应的pid值

c.      根据在PMT中查找到的pid值,查找该pid值的packet包(通常的码流分析工具,会对此类pid的包进行归纳,否则需要收工查找)

d.      通过对DSM-CC数据结构的分析(一般情况下码流分析工具会代替我们完整这部分工作)

e.      分析0x数据中的DDB数据结构

f.      在DDB中,分析到DataBlock字段,就可以区分是OC数据广播还是DC数据广播.

g.      如果可以看到前四个字段为:0x50 即BIOP

h.      根据此图继续对数据结构进行分析:

i.      分析到objectKind data字段,就可以判断此BIOP的数据结构.

j.      如果对应的objectKind data字段值为上图中的0x00 (fil) 或者64697200 (dir) 则可以断定,为OC数据广播.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值