版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CORBA在数字电视城域VOD城间件技术的系统中的应用
摘要文章介绍了公用对象请求代理(CORBA)的体系结构及其工作原理,提出了数字电视城域VOD系统的软件体系结构,讨论了CORBA在数字电视城域VOD系统中的应用。关键词VOD;CORBA;idl
1引言数字电视城域VOD系统,利用现有HFC单向网络,把数字电视传输技术和互联网络技术结合起来,用数字电视信道作为下传通道,用互联网络、电话、短信等手段作为上传通道,改变了用户只能被迫接受的现状,用户可以通过自己的终端(如装有机顶盒的电视机,联网的计算机等)随时点播自己想看的节目,访问自己需要的信息。因为要处理大量的用户点播请求、视频节目分发推送等事务,用一台计算机来架设整套VOD系统是远远不够的。因此,本系统采用分布式系统架构,由通过VPN(VirtualPrivateNetwork虚拟专用网络)连接的接入系统、管理站、呼叫中心以及小区点播服务中心的多台计算机协同工作,从而全面满足用户的点播要求。这样一个大规模系统中,实现各个模块之间的通信和异构数据资源的共享,是VOD系统需要解决的主要问题。公用对象请求代理体系结构(CORBA,CommonObjectRequestBrokerArchitecture)是由对象管理组织(OMG,ObjectManagementGroup)定义的面向对象的通用体系结构,它作为一种新兴的面向对象分布式计算技术,为解决分布式处理环境中系统互连提供了新的解决方案。由于CORBA支持不同程序设计语言,不同操作系统之间互操作性,使得借助于CORBA技术能够有效地实现各个模块之间的通信。CORBA可以在多个服务器之间实现负载均衡,保证了系统的高效性。此外,CORBA提供了较好的容错机制,使得系统拥有很高的稳定性。在数字电视城域点播系统中我们选择CORBA分布式对象技术作为建立服务应用框架和软件构件的核心技术。本文将结合CORBA的体系结构及其工作原理对其在数字电视城域VOD城间件技术的系统中的应用加以探讨。
2CORBAR的体系结构及其工作原理
CORBAR的体系结构CORBA是由OMG为了适应当今快速增长的软硬件的协同工作能力的要求而制定的一种标准的面向对象应用程序体系规范。CORBA体系结构与规范是建立在OMG对象模型基础之上,主要由三个关键的部分组成:作为分布式对象通信基础设施的对象请求代理的体系结构、接口定义语言IDL、保证可互操作性的标准ORB的通信协议GIOP/IIOP。CORBA体系结构如图1所示:图1CORBAR的体系结构其中:GIOP:GIOP是描述不同的ORB之间如何进行互操作的协议。IIOP是TCP/IP之上的ORB互操作协议。IIOP是GIOP到TCP/IP协议的映射,它定义了用于Internet的一种标准互操作协议,它利用的传输层协议就是Internet所采用的TCP协议。ORB:对象请求代理程序是组成CORBA的基础,即通常我们所说的“软件总线”。通过它,对象可以向本地或远端的其它对象发出请求或接收响应,实现了对象在分布式环境和独立于对象实现的平台之间的交互。ORB接口:提供一组标准的API来完成客户端和服务器端共同需要的功能。动态调用接口:支持客户端的调用请求。利用DII,客户方应用可以在运行时动态地向任何对象发出请求,而不像静态调用那样,必须在编译时就知道特定的目标对象的接口信息。存根:为客户提供了一种机制,使客户能够不关心ORB的存在,而把请求交给存根,存根负责对请求参数的封装和发送,以及返回结果的接收和解封装。静态框架:把对象实现与ORB连接起来,将请求参数解封装,识别客户所请求的服务,向上调用对象实现,并把执行结果封装,然后返回给服务方。动态框架接口:接受远端对象的调用请求。在服务器端,既可以使用静态框架,又可以使用DSI来接受远端对象的调用请求,还可以两者都使用。对象适配器:提供执行对象可以访问ORB服务的基本接口,其作用是产生解析对象的引用、安全交互、登记和执行等。接口库和实现库:其中接口库用来存储、发布、管理相关对象接口定义的集合。实现库包含了允许ORB查找和调用对象实现的相关信息,它是ORB进行对象匹配的场所。接口库和实现库是ORB的辅助部件。
CORBA工作原理IDL编译器将对象的IDL文件编译成客户端的存根文件和服务器端(对象实现)的框架文件(Skeleton)。由图1可见,底层使用的传送层机制使用的TCP/IP通信协议。CORBA封包的传送和沟通是使用得所谓的GIOP或者IIOP协议。在CORBA客户端,Stub要通过安装在客户端的ORB软件来处理接口调用,ORB又通过SmartAgent所提供的目录服务来动态地定位一个可用的服务器,该服务器才真正实现了接口。ORB提供一个发送操作调用的接口,把客户发出的请求传递给目标对象;Stub为客户端提供了静态调用方式,它负责把客户端的请求进行编码,通过ORB发送到对象实现端,并把返回的应答解码后传给客户端。在CORBA服务器端,ORB通过对象适配器把客户的接口调用传给框架文件。框架文件为对象实现提供了静态实现方式,它负责把客户端经ORB发送来的请求解码,定位对象方法并执行,然后把结果编码后作为应答经ORB返送给客户端。
3CORBA在数字电视城域点播系统中的应用
基于CORBA的数字电视城域VOD系统的体系结构数字电视VOD系统是一套覆盖全城的可扩展分布式系统,它兼容支持各种数字电视机顶盒产品,能与通用数字电视平台互连,全面支持各种节目来源,全面支持城域VOD点播的各种相关业务。通过建立方便快捷的接入通道,系统支持各种方式的用户点播业务,能为用户提供方便快捷、稳定流畅的高品质VOD服务。此外,系统还具有完善的用户管理和节目管理功能,全面支持用户相关的各种业务、节目相关的各种业务,全面支持系统设备监控和管理。基于以上数字电视城域点播系统的基本功能和CORBA技术在本系统的应用,系统目前的软件设计架构是以C/S结构为基础,其体系模型如图2所示:图2数字电视城域VOD系统软件体系结构图
CORBA服务器端:即呼叫控制中心,它是系统呼叫处理的中枢。呼叫控制中心向上连接系统数据库和点播小区服务器,向下连接用户接入服务器和各种管理站。其处理内容包括用户呼叫和节目、用户、运营、系统等业务。并提供了所有与数据库交互的处理接口。控制中心的软件实现均是以呼叫中心为基础向外拓展。呼叫控制中心具备可伸缩性,通过集群技术架设多台呼叫中心服务器便可满足其性能要求。CORBA客户端:客户端可分为以下模块:视频服务器系统:主要功能是接收播控子系统的节目点播安排,复用并通过硬件发送节目流,提供接口给节目分发服务器负责本地节目库的更新和维护。用户接入服务器:负责用户与点播系统的交互。它接收用户呼叫,并将呼叫转给点播呼叫中心,点播操作结束后,再将相应的操作结果反馈给用户。目前用户接入服务器提供电话接入与短信接入两种工作模式。数据库服务器端:Sqlserver2000,主要存储系统数据、节目数据、用户数据等。管理工作站:包括节目管理、用户管理、运营管理、系统管理。其中系统管理主要负责数据库的备份、制定点播节目单生成规则、视频服务器的扩容等。
CORBA在数字电视VOD系统中的应用在数字电视VOD系统中,服务器和各个客户端的应用之间需要协同工作,这就需要选择的软件体系结构具有较高的异构性。作为一种开放式的、独立于厂商、用于网络上计算机应用的底层结构,CORBA能让系统实现较好的异构性。任何厂家、计算机、操作系统、编程语言及网络环境下的CORBA应用均使用IIOP标准协议,能给系统提供可靠的、标准的底层结构体系。系统客户端及服务器端的应用程序可以构建、运行在不同平台上的、用不同编程语言实现。CORBA还能解决系统的负载问题,可以在多个服务器之间实现负载均衡,大大增强了分布式系统的高效性。此外,CORBA还为系统提供了较好的容错机制,能使每一个对象同时在两个或多个服务器上运行,当其中的一个出现故障时,系统能自动切换到另一个服务器。下面介绍CORBA的自身特点在数字电视VOD系统的应用。利用CORBA实现数字电视VOD系统内部通信根据系统功能的要求数字电视城域VOD系统体系结构如图2所示,由于呼叫控制中心是整个VOD系统的呼叫处理中枢,因此,我们将呼叫控制中心作为CORBA系统的服务器,其他模块作为CORBA系统的客户端。客户端模块通过CORBA接口实现与呼叫中心的数据交互,即实现VOD系统中其它模块之间的通信。下面给出一个运用CORBA实现客户端和服务器通信的实例。图3是管理工作站中的系统管理中点播节目单生成方法的接口。图3接口VodListCreateMenthodManager示意图VodListCreateMenthodManager所对应的IDL接口如下所示:moduleCallCenter{structTVodListCreateMethodStruct{/*生成方法ID号*/longCreateMethodID;/*生成方法名称*/stringCreateMethodName;/*生成方法规则*/stringCreateMethodRule;};interfaceVodListCreateMenthodManager{CallCenter::HResultVodListCreateMethod_AddNew(inCallCenter::TVodListCreateMethodStructValCreateMethod,//规则的信息outlongRetCreateMethodID//返回的点播生//成规则ID号);};};在设计服务器端和各个客户端共享的IDL接口时,采用了建模工具RationalROSE2003规划IDL接口并实现了从UML到IDL的映射工作。如图3,在接口VodListCreateMenthodManager中,定义了增加一条点播节目单生成方法VodListCreateMethod_AddNew,点播节目单生成方法的结构包括了生成方法ID号、生成方法名称、节目单的生成方法规则,这些信息被按值封装在TVodListCreateMethodStruct结构中。系统管理模块把VodListCreateMethod_AddNew方法传Stub,Stub又把调用信息打包,经过编码后由ORB传递给呼叫中心。呼叫中心端的框架文件把包打开并解码,在程序代码中实现该接口,把结果编码后,以long的形式作为应答经ORB返送给系统管理模块。利用CORBA实现系统的高可靠性通常系统的高可靠性,可通过设备的冗余来实现。在CORBA环境中,通过高可靠性服务实现服务方冗余,使客户与服务方的关系变为1:N的关系。因此可以运行多个呼叫中心,当呼叫中心的某一个出现故障,系统可快速定位,并将整个服务方进行迁移到备用的呼叫中心,继续完成客户端的请求。如果多个服务器的硬件配置相同,服务器会拥有很高的稳定性。利用CORBA实现系统的负载均衡SmartAgent提供了动态的分布式目录服务,用来定位一个实现特定对象的可用的服务器。对于客户和服务器来说,SmartAgent是完全透明的,客户和服务器都不需要知道SmartAgent的具体位置。如果所选择的呼叫中心无效,SmartAgent会自动选择另一个呼叫中心。如果有多个呼叫中心可供选择,SmartAgent会基于负载平衡选择其中一个。
4结束语综上所述,基于CORBA的数字电视城域点播系统有如下特点:支持跨平台和语言无关的特性,能够满足多平台、多语言的复杂分布式计算环境的要求;具有良好的可扩展性和灵活性,不仅有利于满足用户的新需求,而且有利于运营商自身推广新业务和改
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二四年度小程序与在线教育平台合作开发合同3篇
- 2025房屋租赁合同以及注意事项
- 二零二四年度医药产品研发与临床试验合同
- 2025版平方家具买卖合同范本(含运输安装)3篇
- 二零二五版木屑生物质发电项目投资合同4篇
- 二零二五版花卉品种研发与推广合作协议3篇
- 二零二五年度绿色建筑项目合同标的咨询协议4篇
- 个人库房买卖合同书
- 二零二五年纸箱租赁与销售合同范本2篇
- 2025年度船舶安全监控系统升级合同4篇
- 《色彩基础》课程标准
- 人力资源 -人效评估指导手册
- 大疆80分钟在线测评题
- 2023年成都市青白江区村(社区)“两委”后备人才考试真题
- 2024中考复习必背初中英语单词词汇表(苏教译林版)
- 《现代根管治疗术》课件
- 肩袖损伤的护理查房课件
- 2023届北京市顺义区高三二模数学试卷
- 公司差旅费报销单
- 2021年上海市杨浦区初三一模语文试卷及参考答案(精校word打印版)
- 八年级上册英语完形填空、阅读理解100题含参考答案
评论
0/150
提交评论