在融合的下一代网络上高效、灵活地开发和部署各种丰富多彩的电信业务,从而实现提高网络使用率、增加收益的目标,是下一代网络的关键环节。 下一代网络的发展要求呼叫与承载相分离、呼叫控制与业务相分离,使业务真正独立于网络,业务开发者不必关心与业务承载相关的底层网络知识以及具体的通信协议,快速、灵活地生成个性化的电信业务。 从业务开发方法的角度看,业务提供方式可以分成两种方法,一种是基于协议的开发方法,另一种是基于开放API的提供方式。通过协议开发业务的主要特点是开发的业务与特定的网络和协议有关,即应用与具体的协议和网络相联系,所开发的业务互通性不好,同时业务也不具可移植性。 采用基于开放API开发方法的主要特点是: 互通性好,能够保证系统和应用间的互通。由于采用了标准的API,应用可以移植到不同的系统平台上。 具有可编程性,API是面向编程的,而协议并非如此。通过API,程序员就能把主要精力放在业务逻辑设计上,不必过分关注底层的协议,为采用面向对象构件等开发技术奠定了基础。 可扩展性好,定义API的形式化语言支持扩展和向后兼容,使得采用API的开发方法具有很好的扩展性。 定义API和实现基于API的应用时间短。由于API主要强调接口能力,并不关心底层的协议或专用接口,这样缩短了接口定义和规范制定时间。 支持第三方业务开发。由于标准的API将重点放在功能上,而不是底层的协议细节,使得第三方业务开发商或独立软件供应商(ISV)更容易参与竞争开发新业务,为用户提供更多的个性化业务。 1.基于ParlayAPI的下一代网络业务生成技术 (1)ParlayAPI结构特征 ParlayAPI是一组开放的、与具体技术和网络无关的、可扩展的API,它采用了面向对象的方法,使用UML语言进行描述。ParlayAPI位于现有网络之上,现有网络的网络单元通过Parlay网关与应用服务器进行交互,Par1ay网关与现有网络的网络单元之间的协议采用各个网络的现有协议。Parlay/OSA网关包括多个业务能力服务器(SCS),每个业务能力服务器对应一个或多个业务能力特征(SCF),此业务能力特征是对网络所提供的功能的抽象,负责为高层应用提供访问网络资源和信息的能力。第三方业务开发商、独立软件供应商能通过此开放的标准接口,利用现有网络的能力来开发业务。 ParlayAPI包括两种基本的接口:业务接口(ServiceInterface)和框架接口(FrameworkInterface)。业务接口提供访问底层网络的功能,定义具体业务的功能实现,其主要功能包括:呼叫管理、消息管理、用户交互、通用应用程序接口。框架接口提供保证业务接口开放、安全、管理所必需的支持能力。它包括应用服务器与框架之间的接口、网络业务能力服务器(SCS)与框架之间的接口、企业经营者与框架之间的接口。 (2)业务生成环境的设计 业务生成环境以应用服务器提供的各种开放API为基础,通过友好的图形化界面,提供完备的业务开发环境、业务逻辑冲突检测环境和仿真测试环境。传统的智能网业务设计使用SIB(业务独立构件)来定义整体业务逻辑和业务数据,它存在一些缺点: 不同开发商的SIB差别较大,而且和智能网平台紧密相关,从而使业务的开发始终受制于智能网平台的实现方式; 基于BCSM(基本呼叫状态模型),不容易扩展到其他的业务。 基于Parlay的模型,使用面向对象的方式定义独立于网络技术的可编程接口,使得开发应用业务和具体网络无关。而这种API和业务元素相关,可以提高不同平台间应用的兼容性,易于开发多种业务,并能综合多种电信业务。 与传统智能网SCE中用SIB描述业务不同,NGN的SCE用XML来描述业务。目前有很多描述业务的标识语言(MarkupLanguage),如JAJN的SCML(ServiceCreation Markup Language)、IETF的CPL(Call Process Language)、W3C的Voice XML等。CPL是通过XML的DTD(Data Type Definitions)来定义的,它不能描述复杂的业务,如CPL不能描述多方呼叫;CPL只能由呼叫事件激活而不能由与呼叫无关的事件激活,因此CPL不能描述叫醒服务等业务;而SCML则通过XML的Schemas来定义,它能利用Schemas的继承机制去定义扩展数据类型,这一点对丰富呼叫控制的功能很重要。SCML比CPL更接近于呼叫控制的架构和API的定义,因而能描述更为复杂、丰富的业务。 (3)ParlayAPI的扩展安全能力 下一代网络是一个业务驱动的网络,业务将成为网络运营中的主体.在保证网络安全,信息安全的同时,提供在网络中运行业务的安全性将是NGN安全机制建设中的一个重要组成部分。关于安全业务接口设计的研究在1995年就开始引起人们的注意,当时对这种接口的需求主要来自于编写网络通信的程序员,他们需要一种和具体的安全机制无关的安全开发接口来方便编写有安全保障的网络程序.其中最具有代表性的就是GSS-API。 在安全业务接口的设计中,我们应注意以下几点:新的安全业务接口应该在借鉴GSS-API成熟概念的基础上,针对GSS-API中不适应NGN的缺点进行改进;在接口模型的设计中采用以网络为中心的模型,在接口的使用方式上应该和Parlay的业务开发模式保持一致,使NGSS-API成为Parlay业务接口的一部分;在接口的内容上要尽量屏蔽底层安全机制的细节,做到实现与具体机制无关,编程与具体语言无关,这样在降低业务开发者的开发难度的同时,还可以增强业务的可移植性和通用性;接口的设计还应该根据用户的不同的需求提供不同粒度的安全业务开发接口,这种区分对于方便开发和提高程序质量很有好处;在使用过程中,不但可以单独利用GSS-API提供安全业务,而且还应该可以和Parlay的其它网络业务接口配合开发出更加复杂、更加安全的业务。 概括说来,最终的安全设计目标就是将安全业务接口设计成为一个高效、易扩展、易配置的与底层机制无关,并且可以和Parlay现有网络业务接口无缝融合的适合在下一代网络中运行的安全业务开发接口。 2.基于构件的下一代网络业务生成技术 如前所述,基于开放式API(如ParlayAPI)的新一代业务支撑环境大大促进了高效的业务开发,并提供了一个功能强大的业务开发、运行和管理的支撑平台。其中,业务运行在业务逻辑执行环境(SLEE)上,业务生成环境(SCE)针对复杂的开放式API接口进行了多个层次的抽象,以满足不同层次的业务开发人员高效开发业务的需要,构件是其中很重要的一个层次。 基于构件的业务开发过程中,开发者首先选取需要的构件,将这些构件按业务逻辑进行联接,并配置构件的数据(即业务支撑数据)即可,无需编写代码,开发者也可以扩展构件功能或编写新构件来支持更加复杂或特殊的业务能力(SCE提供自定义构件的功能)。整个开发过程都在SCE提供的集成开发环境下以图形化的方式来完成,包括编写、验证、调试等步骤。业务开发过程的输出是一个业务描述文件,它描述了业务使用的构件、构件之间的联接关系和配置数据。业务部署时,业务生成环境侧需要一个业务组装器将业务构件和业务框架按照业务描述文件“粘合”为一个业务即可。 为了提高业务构件的性能和重用性,构件应尽可能简单,不保存任何呼叫实例数据,每个构件仅完成单一功能(如放音),各个构件之间完全独立。实际上,智能网业务开发中的SIB(独立于业务的积木式组件)就是一种成功的业务构件,对于下一代网络业务的构件是很好的借鉴,可编程的开放式API使得业务开发人员可以像使用普通API那样,使用这些开放式API编写电信业务。显然,小粒度的构件最能发挥开放式API灵活的优势,另外,用户需要更加个性化的业务,这恰恰是SIB的弱点所在。可见,为了兼顾通用性与灵活性,必须针对下一代网络的业务构件开发更好的结构。 下一代网络(NGN)的主要特点就是开放性,实现了业务与呼叫以及承载与控制的分离,同时,NGN还是一个业务驱动网络,将业务提升到一独立层面上,以适应NGN以业务为中心的特征。因而,在NGN业务开发过程中也引入各种新的技术,其中最具代表性的业务模式是基于API的业务开发方式,向第三方开放API接口,以便第三方开发的各种业务能快速地加载到NGN网络中,进而推动NGN网络的发展。 在基于API的业务开发方式中,目前存在着多种API技术,如JTAPI、SIPAPI、JAIN、ParlayAPI等,NGN中以ParlayAPI最具代表性,利用Parlay API可屏蔽底层网络细节,第三方业务开发商直接利用提供的API接口即可完成各种增值业务的开发。为了提高业务开放的效率,人们又进一步提出了利用构件来实现NGN业务的开发,业务开发人员只需将部分提供的构件按业务逻辑进行联接,并配置构件的数据(即业务支撑数据)即可,无需编写代码,进一步降低了业务开发的难度和业务开发周期。综上所述,为适应NGN的开放性要求和业务为中心的特征,下一代网络业务的开发将会越来越开放、简单,NGN的业务开发技术将朝着提高业务开发效率、缩短业务生成周期、方便第三方业务的快速引入等方向发展。 王恒哲:贵州移动通信有限责任公司计划部高级工程师,主要从事贵州省省际、省内干线传输建设管理工作。2002年获中国移动通信集团公司“有突出贡献专业技术人才”二等奖。 作者:王恒哲 万晓榆