楊 勇 賈 霞 董振江
摘要:電信業(yè)務能力的開放是電信技術(shù)發(fā)展過程中長期研究的熱門課題之一,電信業(yè)務能力的開放技術(shù)在不斷的發(fā)展,相應的標準也在不斷的提出或更新。在這些標準規(guī)范之中,JCP和Parlay系列規(guī)范是兩大主流的國際規(guī)范,分別提供了不同層次的、面向不同用戶對象的業(yè)務能力開放技術(shù)標準。其中,JCP針對JAVA應用開發(fā)人員制定了JSR21、JSR32、JSR116和JSR289等系列規(guī)范,而Parlay則提出了Parlay和Parlay X等規(guī)范,規(guī)范的版本也在不斷地更新之中。各種不同的能力開發(fā)技術(shù)實現(xiàn)方法不同,各有各的優(yōu)勢和生命力。隨著業(yè)務開發(fā)的群體不斷壯大和融合業(yè)務開發(fā)的要求越來越明顯,提供一種快速、高效和簡易的業(yè)務能力開放技術(shù)就成為業(yè)務能力開放技術(shù)研究的重點。
關(guān)鍵詞:電信業(yè)務能力;開放技術(shù);JCP
Abstract: The open technique of telecommunication service capability is one of the most interesting subjects in the research of telecommunication technique, and the correspondent standards are also proposed or updated continuously. Among the standard group, JCP and Parlay are the two active international standards groups, which propose different kinds of technique standards for different users in different levels, such as JSR21, JSR32, JSR116 and JSR289 in JCP, and Parlay/Parlay X with different version in Parlay group. Each of these standards is realized in different technique, and each one has its own advantage and lifecycle. With the application developer and the need for the convergent applications becoming more and more obvious, it is more important to provide a kind of fast, efficient and easy service capability open technique.
Key words:telecommunication service capability; open technique; JCP
電信業(yè)務能力的開放是電信技術(shù)發(fā)展過程中長期研究的熱門課題之一[1-7],其主要目的就在于將電信能力開放出來,使得電信業(yè)務開發(fā)變得更為容易和高效,豐富電信增值業(yè)務,促進電信行業(yè)的發(fā)展和繁榮。
最早的電信業(yè)務能力開放技術(shù)要追溯到傳統(tǒng)的智能網(wǎng)和基于用戶交換機(PBX)的計算機電話集成(CTI)技術(shù)[8],它為第三方監(jiān)控和控制電話呼叫提供了技術(shù)支持。智能網(wǎng)[9]技術(shù)實現(xiàn)了業(yè)務和呼叫控制的分離,它將業(yè)務控制從交換機中分離出來,同時,提供了一種高效的、圖形化的業(yè)務生成環(huán)境(SCE);隨著業(yè)務能力開放的日益增長的需要和Java技術(shù)的發(fā)展,業(yè)務能力開放技術(shù)規(guī)范也在以更快的速度在不斷地發(fā)展和完善。
關(guān)于業(yè)務能力開放技術(shù)的標準規(guī)范主要包括了兩大組織,JCP和Parlay/OSA,其中,JCP是由SUN公司于1995年發(fā)起成立的一個開放的國際組織,主要由Java開發(fā)者以及被授權(quán)者組成,職能是發(fā)展和更新Java技術(shù)規(guī)范、參考實現(xiàn)和技術(shù)兼容包。目前JCP有1 200多個成員加入,由數(shù)百名來自世界各地Java代表成員一同監(jiān)督Java發(fā)展的正式程序。Parlay/OSA組織成立于1999年,它是一個由65家通信和IT領(lǐng)域的公司共同參與的非盈利性組織,致力于定義一個讓IT開發(fā)人員快速創(chuàng)建電信業(yè)務的應用程序接口(API)。這些接口覆蓋了各種電信網(wǎng)的功能如呼叫控制、短消息服務/多媒體短消息服務(SMS/MMS)、定位、計費、在席和可用性管理以及策略管理等等。
下面,首先從傳統(tǒng)的智能網(wǎng)技術(shù)入手,來分析并介紹一下業(yè)務開發(fā)和業(yè)務能力開放的不同模式以及標準規(guī)范。
1 CTI技術(shù)
最早的CTI技術(shù)有兩大技術(shù)規(guī)范,其一是電話應用程序接口(TAPI),它是微軟和英特爾推出的產(chǎn)品,其1.0版本最初在1993年發(fā)布,提供一組用于編程的應用程序接口(API)函數(shù),支持Windows平臺上的CTI應用。它的優(yōu)點是能在基于Windows的應用系統(tǒng)和電話系統(tǒng)之間建立連接;其二是電話服務應用程序接口(TSAPI),它是由Novell和AT&T共同創(chuàng)造的。正因為有AT&T的參與,TSAPI可以與現(xiàn)有的電話交換機很好地兼容?;贑TI技術(shù)的呼叫中心業(yè)務,作為PBX交換機的功能補充,也得到了廣泛的發(fā)展和應用,特別地,伴隨著VoIP技術(shù)的發(fā)展,集成CTI技術(shù)的下一代呼叫中心業(yè)務目前得到了大規(guī)模的應用。
2 智能網(wǎng)技術(shù)
智能網(wǎng)的目標不僅在于今天能向用戶提出諸多的業(yè)務,而且著眼于今后也能方便、快速、經(jīng)濟地向用戶提供新的業(yè)務。因此,智能網(wǎng)為了向用戶提供新的業(yè)務而采用了一種新的方法,即建立集中的業(yè)務控制點和數(shù)據(jù)庫,進而進一步建立起集中的業(yè)務管理系統(tǒng)和業(yè)務生成環(huán)境來達到上述目的。
智能網(wǎng)定義了一個完整的業(yè)務總體架構(gòu),包括業(yè)務交換點(SSP)、業(yè)務控制點(SCP)、業(yè)務管理點(SMP)、業(yè)務數(shù)據(jù)點(SDP)和SCE等,它是一個用于產(chǎn)生和提供電信業(yè)務的體系結(jié)構(gòu),能快速、方便、靈活、經(jīng)濟、有效地生成和實現(xiàn)各種新業(yè)務的體系。這個體系的目標是為所有的網(wǎng)絡(luò)服務,即它不僅可以為現(xiàn)有的公共交換電話網(wǎng)絡(luò)(PSTN)、分組交換公共數(shù)據(jù)網(wǎng)(PSPDN)以及窄帶綜合業(yè)務數(shù)字網(wǎng)(N-ISDN)服務,還可以為寬帶綜合業(yè)務數(shù)字網(wǎng)(B-ISDN)、公共陸地移動電話網(wǎng)(PLMN)和Internet服務。
作為一個生成和提供新業(yè)務的體系,它的特征是:
●有效地使用網(wǎng)絡(luò)資源;
●網(wǎng)絡(luò)功能的模塊化;
●重復使用標準的網(wǎng)路功能生成和實施新的業(yè)務;
●網(wǎng)路功能靈活地分配在不同的物理實體中;
●通過獨立于業(yè)務的接口,網(wǎng)路功能之間實現(xiàn)標準通信;
●有效的使用信息處理技術(shù);
●業(yè)務用戶可以控制由用戶所規(guī)定的業(yè)務屬性;
●業(yè)務使用者可以控制由使用者所規(guī)定的業(yè)務屬性;
●標準化的業(yè)務邏輯管理。
智能網(wǎng)的目標,是利用獨立于業(yè)務的功能塊、功能實體的標準通信,有效地利用已有的資源,快速、簡便、靈活地提供各種新的補充業(yè)務。智能網(wǎng)的目標是逐步完成的,目前正在建設(shè)的智能網(wǎng)是能力級1(CS-1),CS-1主要限于向PSTN、N-ISDN和在一個網(wǎng)的網(wǎng)內(nèi)提供各種智能網(wǎng)業(yè)務。但是隨著網(wǎng)路發(fā)展以及實際網(wǎng)路運行的復雜性,用戶還有業(yè)務管理和業(yè)務生成等方面的要求,因此在CS-2增加了網(wǎng)間互通業(yè)務、呼叫方處理業(yè)務(如呼叫轉(zhuǎn)移、呼叫等待等等)、終端移動性業(yè)務、業(yè)務管理業(yè)務、業(yè)務生成業(yè)務等。
目前CS-1和CS-2方面的建議已經(jīng)標準化,國際電信聯(lián)盟遠程通信標準化組(ITU-T)現(xiàn)正著手CS-3方面的研究。除了對CS-3進行研究外,還在研究智能網(wǎng)長期架構(gòu)(LTA)。LTA的研究是為適應當前技術(shù)的快速進步,用戶對業(yè)務需求的快速增長,各種業(yè)務間的互連以及由于通信市場引入競爭機制而提出的,目的在于提出一種靈活地、適應新技術(shù)發(fā)展的、又能滿足各種可能的業(yè)務需求的新型通信網(wǎng)控制和管理機制。
因此,智能網(wǎng)的發(fā)展是以業(yè)務發(fā)展為前提,并且將逐步擴展到移動通信和寬帶通信領(lǐng)域,還要與電信管理網(wǎng)結(jié)合起來,提供一種更靈活、適應最新技術(shù)發(fā)展的通信系統(tǒng)。
智能網(wǎng)近期的發(fā)展是使用綜合智能網(wǎng)系統(tǒng),同一個智能網(wǎng)可以接入GSM、CDMA、PSTN、Parlay、HTTP等不同的協(xié)議,業(yè)務邏輯處理與網(wǎng)絡(luò)類型無關(guān)。
早在1994年,鑒于對國際智能網(wǎng)業(yè)務的迫切需求,我國首先建設(shè)了國際智能網(wǎng),提供300、800及VPN三種電話業(yè)務。從1995年起,開始建設(shè)國內(nèi)智能網(wǎng),它與國際智能網(wǎng)是分別進行建設(shè)和使用的,各自提供不同的業(yè)務,擁有各自的用戶。兩個智能網(wǎng)間是不互通的。
智能網(wǎng)技術(shù)的出現(xiàn),使得呼叫控制與業(yè)務相分離,極大促進了業(yè)務的發(fā)展。然而,在傳統(tǒng)的智能網(wǎng)體系中,SCE是與業(yè)務執(zhí)行點SCP緊密捆綁在一起的,沒有形成統(tǒng)一的標準,也不具備開放性。通常情況下,只有電信設(shè)備商自己的開發(fā)人員利用自己的SCE來開發(fā)智能業(yè)務。
3 JCP相關(guān)規(guī)范
隨著Java技術(shù)的迅速發(fā)展,Java開發(fā)人員和許多組織都投入研究基于Java技術(shù)的電信業(yè)務能力開放技術(shù),相關(guān)的技術(shù)規(guī)范也在快速的制定或更新之中。
JCP是一個基于Java的開發(fā)組織,專門制定一些Java的技術(shù)規(guī)范。最早基于Java的CTI技術(shù)標準是Java電話應用程序接口(JTAPI)是由Intel、Lucent、Nortel Networks、Novell以及Sun微系統(tǒng)等公司組成的工作組在1996年共同開發(fā)出來的。JTAPI是一種為電腦電話應用程序而設(shè)的基于Java的應用編程接口,它由一組語言包組成,核心包為簡單的電話過程提供了一個基本的框架,例如:打電話、接電話、還有掛電話等,而其它的擴展包提供了附加的電話特性。JTAPI在不同的電腦平臺下可以共同使用,它與TAPI相類似,二者之間的關(guān)系就類似于開放數(shù)據(jù)庫連接(ODBC)和Jave數(shù)據(jù)庫連接(JDBC)的關(guān)系。
JCP組織在發(fā)展過程中,不斷完善了基于Java的技術(shù)規(guī)范并定義為JCP的標準,陸續(xù)發(fā)布了多個電信業(yè)務能力開放的Java規(guī)范[10-11]。下面,我們對這些Java規(guī)范做一個較為詳細的介紹。
3.1 JSR21規(guī)范
JSR21規(guī)范[12]全稱是“JAIN Java Call Control Application Programming
Interface”,它是一組用于在融合的PSTN、分組交換和無線環(huán)境下創(chuàng)建、監(jiān)控、控制、操作和拆除通訊會話的Java接口。它為第三方應用提供了使用包括核心網(wǎng)和外圍設(shè)備在內(nèi)的網(wǎng)絡(luò)元素的能力。Java呼叫控制(JCC)允許應用在會話建立過程中被觸發(fā)或調(diào)用,本質(zhì)上類似于智能網(wǎng)(IN)或高級智能網(wǎng)(AIN)中業(yè)務被調(diào)用的模式。因而JCC允許編程人員開發(fā)應用,同時這些應用可以在支持這些API的任意平臺上運行。這就使得業(yè)務提供商可以通過自己開發(fā)或購買第三方開發(fā)的業(yè)務的方式來快速高效的提供業(yè)務給終端用戶。JCC規(guī)范中所定義的API是從JTAPI繼承下來的。
JCC API并不是用于將電信網(wǎng)絡(luò)信令架構(gòu)開放給公眾,它只是將網(wǎng)絡(luò)能力進行封裝,使得電信能力采用可見對象技術(shù)以一種安全、可管理和可計費的方式被表述和使用。這種方式允許獨立的業(yè)務開發(fā)者來開發(fā)電信業(yè)務,不會對網(wǎng)絡(luò)安全和可靠性帶來不利影響。JCC API由一些相關(guān)的互相交互的對象的集合所定義,這些對象?;艘粋€會話中所涉及的不同的物理和邏輯元素或相關(guān)功能。應用通過面向?qū)ο蟮倪^程圖與各個對象交互。JCC API不僅僅可以控制語音呼叫,而且還可以控制數(shù)據(jù)和多媒體會話。
JCC API從結(jié)構(gòu)上可以分為3類:
●基本的呼叫控制,這個Java軟件包包括了發(fā)起和應答呼叫的基本工具。
●核心的呼叫控制,這個Java軟件包包括監(jiān)視、發(fā)起、應答、處理和操縱呼叫的工具,同時還提供了在呼叫過程中調(diào)用其它應用并返回結(jié)果的一些工具,可以滿足絕大部分基本呼叫和增值業(yè)務實現(xiàn)的需要。
●擴展的呼叫控制,該Java軟件包還提供了一些擴展的細粒度的呼叫控制功能。特別地,與JCC不同,JCAT能夠支持所有通用的AIN應用以及與其它的語音/數(shù)據(jù)和下一代業(yè)務的集成。
基于以上的軟件包開發(fā)的應用可以執(zhí)行在交換機平臺自身上,也可以以協(xié)作式、分布式的方式橫跨多個平臺。
JCC API只提供Java API接口定義,接口的實現(xiàn)需要設(shè)備商自已去做。這組API屏蔽了網(wǎng)絡(luò)傳輸層,適用于PSTN、IP網(wǎng)或無線網(wǎng)等任何網(wǎng)絡(luò)類型,同時也不關(guān)心底層的通訊協(xié)議或信令,可以是媒體網(wǎng)關(guān)控制協(xié)議(MGCP) [13]、會話初始協(xié)議(SIP) [14]、或七號信令等任意信令方式。對于應用開發(fā)人員來講,這些網(wǎng)絡(luò)基礎(chǔ)知識他都無需關(guān)心。
從以上的簡要介紹可以看到,JSR21規(guī)范的主要目的是,滿足第三方Java開發(fā)人員開發(fā)呼叫業(yè)務。但是,該規(guī)范中定義的API接口是一種面向底層的呼叫控制信令的操作接口,對于應用的開發(fā)人員而言,需要具備通訊的基礎(chǔ)知識。此外,由于SIP協(xié)議的擴展性非常強,利用JCC API開發(fā)基于SIP協(xié)議的應用時,應用的功能往往會受到API的擴展性的限制。
3.2 JSR32
JSR32規(guī)范[15]的全稱是“JAIN SIP API Specification”,它是JCP組織定義并開發(fā)的一套用于開發(fā)SIP應用的接口規(guī)范,為開發(fā)人員提供了一個與RFC3261規(guī)范兼容的基于Java語言的標準的SIP服務接口。
JSR32規(guī)范支持SIP基本規(guī)范RFC3261以及下述擴展規(guī)范:
●RFC2976:INFO方法
●RFC3262:可靠的SIP響應;
●RFC3265:事件通知框架;
●RFC3311:UPDATE方法;
●RFC3326:Reason頭部;
●RFC3428:Message方法;
●RFC3515:REFER方法和即時消息的定義;
●RFC3581:通過共享的多播地址分發(fā)可靠的命名服務器;
●RFC3903:PUBLISH方法;
JSR32規(guī)范標準化了SIP協(xié)議定義的普通交易模型,提供從交易接口接入對話的功能。該架構(gòu)用于J2SE環(huán)境下的應用開發(fā),是一個基于事件的偵聽/提供模型,定義了很多工廠類,用于創(chuàng)建請求消息和響應消息的SIP頭。它為每個支持的頭定義了通用接口,可添加到Request消息和Response消息中。SIP消息通過一個事務被傳到偵聽/提供模塊用于監(jiān)聽到來的事件,包括請求的響應或者新的請求。此外,JAIN SIP被設(shè)計為可擴展的,定義了通用的擴展頭接口,以便應用處理規(guī)范中不支持的SIP頭域。
需要注意的是,對SIP消息重發(fā)的缺省處理是取決于應用類型,所有的重發(fā)都是由用戶代理(UA)中的協(xié)議棧來處理的。
由于JAIN SIP API是對SIP標準的完整定義,任何基于SIP的程序可將JAIN SIP API用作Java標準接口,成為經(jīng)JAIN SIP認證的棧。這意味著應用服務器、SIP電話、網(wǎng)關(guān)及網(wǎng)關(guān)控制器、SIP服務器、基于SIP的業(yè)務、SIP計費解決方案、開發(fā)者工具包、SIP測試工具、SIP用戶代理以及SIP網(wǎng)絡(luò)管理,均可利用JAIN SIP API實現(xiàn)在SIP棧實施中的通用性。典型的SIP網(wǎng)絡(luò)中,JAIN SIP接口應用于代理服務器、媒體網(wǎng)關(guān)和客戶端。JAIN SIP API涵蓋了比用戶代理或客戶端軟件所需更多的內(nèi)容。
JAIN SIP API提供的基本類可以分為4個軟件包,分別是:
●javax.sip:該程序包包含的是,從應用開發(fā)人員和協(xié)議棧提供商的角度所提供的基礎(chǔ)架構(gòu)的主要接口。
●javax.sip.address:該程序包包含用以表示SIP協(xié)議中的地址組件的接口。
●javax.sip.header:該程序包包含本規(guī)范所支持的SIP頭域表示和獲取接口。
●javax.sip.message:該程序包包含用以表示SIP消息體的接口。
JSR32規(guī)范同JSR21規(guī)范相比,它是一種專門針對下一代網(wǎng)絡(luò)(NGN)或IP多媒體子系統(tǒng)(IMS)等SIP協(xié)議網(wǎng)絡(luò),同時,它為應用開發(fā)人員提供了一個Java的SIP協(xié)議棧及相應接口,這個接口是協(xié)議層的接口;而JSR21規(guī)范它是一種功能操作級別的接口,比JSR32規(guī)范的層次要高得多。JSR32提供的接口,允許開發(fā)人員獲取或操作包括SIP頭域中的各個字段和SIP消息體在內(nèi)的所有的SIP消息內(nèi)容,應用開發(fā)人員必須具備專業(yè)性的SIP協(xié)議知識,才能開發(fā)SIP應用。
3.3 JSR116
JSR116規(guī)范的全稱是[16]“SIP Servlet Specification v1.0”,它是JCP組織定義并開發(fā)的一套基于SIP容器的SIP應用開發(fā)規(guī)范。
SIP Servlet是一個基于Java的應用組件,它由SIP容器管理,同時實現(xiàn)SIP信令的處理。和其它的基于Java的組件一樣,Servlet是與平臺無關(guān)的Java類,可以動態(tài)加載在基于Java的SIP應用服務器中來運行。容器是提供Servlet功能的服務器擴展,借助于Servlet容器,Servlet通過請求和響應消息之間的交換來實現(xiàn)與客戶端的交互。SIP Servlet容器是應用服務器的一部分,它為網(wǎng)絡(luò)層業(yè)務提供請求和響應消息的接收和發(fā)送,它決定了接收到的SIP消息觸發(fā)哪個應用,同時,以什么順序來觸發(fā)。SIP Servlet容器同時包含Servlet的生命周期管理功能,它還負責網(wǎng)絡(luò)偵聽點的管理,SIP規(guī)范要求所有的SIP網(wǎng)元應該支持用戶數(shù)據(jù)報協(xié)議(UDP)和傳輸控制協(xié)議(TCP),可選支持安全傳輸層(TLS)和流控制傳輸協(xié)議(SCTP)等。SIP Servlet主要用于開發(fā)基于SIP協(xié)議的應用,目前,基于SIP的應用主要包括呼叫類的應用、即時消息、在線和由SIP Message方法衍生出來的SIP短消息等。用于開發(fā)SIP應用的接口規(guī)范,為開發(fā)人員提供了一個與RFC3261規(guī)范兼容的基于Java語言的標準的SIP服務接口。
在JSR116規(guī)范中,SIP Servlet容器的作用主要包括:
●應用管理
一個SIP應用的Servlet上下文可以包含多個SIP Servlets一旦部署之后,Servlet上下文的生命周期由Servlet 來維護。盡管Servlet 上下文可以隨著服務器的起停而起停,但是系統(tǒng)管理員也可以顯式地啟動/停止/重載Servlet 上下文。
●SIP消息處理
SIP Servlet容器提供的SIP消息功能包括:分析接收到的SIP消息、將分析后的SIP消息轉(zhuǎn)發(fā)給相應的SIP Servlet、發(fā)送SIP Servlet產(chǎn)生的消息給相應的UA、自動生成SIP響應,如 "100 Trying"、自動管理SIP頭部字段。SIP Servlet 處理的SIP消息都被表示為SipServletRequest 或SipServletResponse對象,接收到的SIP消息首先分析器分析之后,再翻譯成這些對象,然后發(fā)送給SIP Servlet 容器。
●工具功能
SIP Servlet 定義了下述的工具:SIP會話和應用會話、SIP工場和代理。
JSR116規(guī)范是一種針對SIP協(xié)議,并提供容器式SIP應用管理的SIP應用開發(fā)工具。從接口的封裝程度上講,它是一種介于JSR21和JSR32之間的接口規(guī)范,不僅提供了方法級的操作接口,而且提供了協(xié)議層的數(shù)據(jù)操作接口。從應用開發(fā)的角度講,靈活性和易用性都不錯。JSR116是SIP容器產(chǎn)品的1.0規(guī)范版本,目前1.1版本規(guī)范JSR289也已經(jīng)發(fā)布,同JSR116相比,大的框架上沒有變化,僅僅對部分接口定義做了改進。最新的SIP Servlet規(guī)范是1.1版本,參見JSR289[17]。
此外,由于SIP Servlet規(guī)范僅僅定義了基于SIP Servlet所提供的接口來開發(fā)SIP應用,但是,我們知道,大多數(shù)電信應用都會涉及到放音、收號和會議等基本電信功能,而包括JSR116和JSR289在內(nèi)的SIP Servlet規(guī)范,都沒有定義與此相關(guān)的功能接口,因而2007年JCP組織發(fā)布了JSR309規(guī)范[18]——“Java MediaServer Control”,該規(guī)范定義了與媒體服務器控制相關(guān)的功能接口來配合基于Java的SIP應用開發(fā)。除以上規(guī)范之外,JCP還定義了一個關(guān)于業(yè)務執(zhí)行環(huán)境的JAVA規(guī)范,JAIN SLEE V1.0。JAIN SLEE是JAIN API集合中的一個組成部分,它處于JAIN的核心地位,是應用的邏輯執(zhí)行環(huán)境,具體參見JSR22[19],在此不在贅述。
4 Parlay相關(guān)規(guī)范
Parlay組織成立于1999年,它是一個由65家通信和IT領(lǐng)域的公司共同參與的非盈利性組織,致力于定義Parlay APIs為一組開放的、獨立于技術(shù)的、可擴展的API,以便于第三方業(yè)務開發(fā)商、獨立軟件提供商能通過Parlay API來開發(fā)業(yè)務。到目前為止已經(jīng)發(fā)布了多個版本的Parlay規(guī)范。Parlay組織的公司成員包括阿爾卡特、英國電信、愛立信、富士通、惠普、IBM、Incomit、朗訊、NTT、西門子、SUN、Telcordia科技、意大利電信、Teltier和其他50個北美、歐洲及亞洲的公司。OSA在3GPP和3GPP2的移動業(yè)務體協(xié)結(jié)構(gòu)中被引用,而Parlay就是OSA中的API部分。
Parlay API[20]的定義采用接口描述語言(IDL)來描述,API的實現(xiàn)采用分布式的Corba中間件技術(shù)。
Parlay組織研究開放的接口部分,并不關(guān)心任何基礎(chǔ)電信網(wǎng)絡(luò)結(jié)構(gòu)和技術(shù),該接口介于業(yè)務提供網(wǎng)絡(luò)部分和核心網(wǎng)絡(luò)部分之間。當Parlay組織正著手研究Parlay2標準時,3GPP和ETSI也開始研究基于第三代網(wǎng)絡(luò)的應用服務開發(fā)API接口。由于在研究領(lǐng)域上有很大的重疊性,3GPP和ETSI很快就發(fā)現(xiàn)Parlay可以應用在他們關(guān)于第三代網(wǎng)絡(luò)的API接口上。因而,Parlay被引入了3GPP/ETSI標準框架中并命名為OSA,3GPP/ETSI對Parlay標準進行了進一步的補充。
現(xiàn)在3GPP已經(jīng)發(fā)布了Release 5版本的API標準,ETSI和Parlay Group也發(fā)布了相應的版本,最高版本已經(jīng)發(fā)展到Parlay6.0。
在Parlay API的版本發(fā)展到Parlay 4.0時,Parlay組織發(fā)現(xiàn),Parlay規(guī)范在IT研發(fā)人員看來,還是相當?shù)凝嬰s,對于IT研發(fā)人員而言,采用Parlay協(xié)議規(guī)范研發(fā)基于電信網(wǎng)絡(luò)的應用還是有相當?shù)碾y度?;诖?,3GPP提出了Parlay X規(guī)范[21]。Parlay X協(xié)議在原有Parlay API協(xié)議的基礎(chǔ)上,對API進行了進一步的抽象,并使用基于Web業(yè)務的WSDL語言對API進行描述,從而提供了IT研發(fā)人員一個更為清楚、簡潔、抽象、易于理解的電信業(yè)務研發(fā)接口。這樣IT研發(fā)人員無需掌控電信網(wǎng)絡(luò)專業(yè)知識,即能夠根據(jù)Parlay X協(xié)議接口研發(fā)、應用下一代網(wǎng)絡(luò)業(yè)務。從而促進下一代網(wǎng)絡(luò)業(yè)務的發(fā)展。
在Parlay4.1規(guī)范發(fā)展為ParlayX規(guī)范之后,后來逐漸出現(xiàn)了兩個分支,原來的Parlay規(guī)范急需發(fā)展下去,直到現(xiàn)在的6.0規(guī)范,而ParlayX規(guī)范也不斷發(fā)展,逐漸推出了2.0、2.1、2.2等,直到現(xiàn)在的ParlayX3.0規(guī)范。
下面,我們對Parlay組織定義的相關(guān)規(guī)范分別做一簡單介紹。
4.1 Parlay規(guī)范
Parlay規(guī)范定義了多組業(yè)務能力特征(SCF),每組SCF對應有一組業(yè)務能力開放的接口API。
Parlay/OSA的邏輯結(jié)構(gòu)中主要包括以下幾個部分,如圖1所示。Parlay 應用、Parlay/OSA框架、業(yè)務能力特征服務器(SCS)和核心網(wǎng)。其中,框架和業(yè)務能力服務器合稱為Parlay網(wǎng)關(guān)。各部分的功能如下:
框架:負責應用的鑒權(quán)計入、業(yè)務能力的注冊和發(fā)現(xiàn)以及完整性管理等功能;
SCS:負責業(yè)務能力開放接口API的實現(xiàn);
Parlay 應用:它是基于Parlay GW開發(fā)的電信應用。
以Parlay4.0規(guī)范為例,共定義了11個SCF:呼叫控制、用戶交互、移動管理、終端能力、數(shù)據(jù)會話控制、普通消息、連通性管理、賬戶管理、計費、策略管理和呈現(xiàn)和可用性管理。
3G網(wǎng)絡(luò)的開放結(jié)構(gòu)為Parlay GW控制網(wǎng)絡(luò)資源提供了必要條件。在3G IMS網(wǎng)絡(luò)中,CSCF設(shè)備是網(wǎng)絡(luò)的中心。它獨立于底層承載協(xié)議,完成呼叫控制、媒體網(wǎng)關(guān)接入控制、資源分配、協(xié)議處理、路由等,可以向用戶提供現(xiàn)有網(wǎng)絡(luò)能夠提供的業(yè)務?;赑arlay GW開發(fā)的應用提供業(yè)務邏輯的駐留和執(zhí)行環(huán)境;由Parlay GW提供的API為第三方的業(yè)務開發(fā)提供開發(fā)平臺。Parlay GW是業(yè)務提供面中的主體,也是業(yè)務提供和開發(fā)的核心,它幫助業(yè)務平面利用下層網(wǎng)絡(luò)的各種資源提供豐富的業(yè)務。這種架構(gòu)將業(yè)務與呼叫控制分離、呼叫控制與承載分離來實現(xiàn)相對獨立的業(yè)務功能,使得上層業(yè)務與底層網(wǎng)絡(luò)無關(guān),從而可以靈活、有效地實現(xiàn)業(yè)務提供。
4.2 Parlay X規(guī)范
Parlay X規(guī)范是在Parlay規(guī)范基礎(chǔ)之上發(fā)展起來的。盡管Parlay規(guī)范定義了多組API將電信業(yè)務能力開放給第三方,但是,對于IT開發(fā)人員而言,這些API的使用仍然過于復雜,而且,由于采用了Corba中間件產(chǎn)品,使得API的開放性受到了一定的影響?;谝陨显?,Parlay組織對Parlay API進行了進一步的簡化,將API以Web服務的方式開放給第三方,形成了Parlay X規(guī)范。第一個規(guī)范Parlay X1.0于2003年4月正式發(fā)布,最新的規(guī)范版本是Parlay X3.0。
以Parlay X2.0規(guī)范為例,其中定義了多組業(yè)務能力,包括:第三方呼叫、呼叫通知、短消息、多媒體短消息、語音呼叫、終端狀態(tài)、終端位置、賬戶管理、呼叫處理、支付、多媒體會議、地址列表管理和呈現(xiàn)。
Parlay X對原來的Parlay API經(jīng)過高度的抽象和封裝,定義了一組功能強大,但又簡單、抽象和極富想象力的電信能力API,以便于通信開發(fā)人員和IT開發(fā)人員都能快速地理解和掌握,并在此基礎(chǔ)上開發(fā)出具有創(chuàng)新意義的電信應用軟件。
Parlay X采用Web業(yè)務的方式,Web業(yè)務技術(shù)的開放性使得Parlay X的開放性更為IT開發(fā)人員所接受和認可?;赑arlay X API開發(fā)的應用與實現(xiàn)Parlay X Web業(yè)務的服務器(也稱做Parlay X網(wǎng)關(guān))之間的交互方式采用基于可擴展標記語言(XML)的消息交換來實現(xiàn);消息交換由應用發(fā)起,并且遵循同步的“請求/響應”模型。
當然,Parlay X Web業(yè)務服務器到應用的“響應”是可選的,根據(jù)實際的應用需求而定。然而,對于應用服務器作為被動方的消息通知類型的業(yè)務,就需要定義異步消息,這樣才能實現(xiàn)消息從Parlay X網(wǎng)關(guān)到應用的消息傳遞。
Parlay X API的封裝程度遠遠比Parlay API高,例如,在Parlay API中,應用側(cè)發(fā)起一個呼叫至少需要3次API調(diào)用(不包括接入和業(yè)務能力的獲取等前期大量的API調(diào)用),createCall→routeReq(A)→routeReq(B);而在ParlayX中,僅需要“makeACall”這一次API調(diào)用即可。這種較高的封裝程度大大簡化了開發(fā)人員的開發(fā)難度。然而從另一方面講,業(yè)務開發(fā)的靈活性也受到了一定限制,所以,對呼叫的持續(xù)控制不足,用戶交互能力的薄弱、缺少用戶鑒權(quán)手段等成為Parlay X被人所詬病的一些缺點,目前,相關(guān)組織正在對它不斷地改進。
5 各種業(yè)務能力開放技術(shù)的比較
綜合前面的介紹,我們可以把業(yè)務能力開放技術(shù)或者業(yè)務開發(fā)模式做一個比較全面的比較和分析。
首先,我們來看JCP系列規(guī)范。JSR21和JSR32規(guī)范用于開發(fā)單獨的應用,而JSR116規(guī)范引入了容器的概念,可以承載多個應用的運行,如圖2所示。
同時,JSR116所提出的容器的概念可以和HTTP容器想結(jié)合,開發(fā)一些基于Web的融合SIP應用。此外,JSR32規(guī)范和JSR116規(guī)范相比的另一個差別是,JSR32所定義的JAIN SIP規(guī)范是面向J2SE應用的,而JSR116所定義的SIP Servlet規(guī)范則是面向J2EE應用的。
其次,我們來看基于JCP系列規(guī)范開發(fā)的應用與基于Parlay規(guī)范開發(fā)的應用的運行模式。從應用的部署和運行模式的角度來看,Parlay/Parlay X是基于分布式技術(shù)來實現(xiàn)的,所以應用的運行也是一種分布式的模式。而基于JCC、JAIN SIP和SIP Servlet規(guī)范開發(fā)的應用,API的實現(xiàn)和應用由同一個Java虛擬機來執(zhí)行,物理上是捆綁在一起的。
二者的差別如圖3所示。
從圖3也可以看出,基于JSR系列規(guī)范的應用在部署時,是直接和核心網(wǎng)網(wǎng)元對接的,二者之間的接口是標準的SS7或SIP;而基于Parlay/Parlay X規(guī)范開發(fā)的應用,在部署的時候,是以IIOP/SOAP協(xié)議與Parlay/Parlay X網(wǎng)關(guān)對接,再由Parlay/Parlay X網(wǎng)關(guān)轉(zhuǎn)換為標準的SS7或SIP協(xié)議。
相比而言,分布式的部署方式肯定要優(yōu)于集成的應用模式。但是,分布式部署方式的缺點在于,開發(fā)人員除了熟悉基本的呼叫信令知識之外,還需要掌握Corba或Web服務等技術(shù),在一定程度上提高了對開發(fā)人員的要求。
同時,JCP系列規(guī)范(JCC、JAIN SIP和SIP Servlet)僅僅定義的只是應用功能開發(fā)的接口,不涉及應用的鑒權(quán)接入和訪問控制等功能,所以它只能適用于一些可信域內(nèi)的應用開發(fā),而Parlay規(guī)范,不僅提供基本的呼叫能力,而且還提供了從應用鑒權(quán)接入、訪問控制、生命周期管理等一個完整的應用開發(fā)、運行和管理的體系。特別地,Parlay X通過SOAP頭的擴展,也具備了業(yè)務接入和控制方面的一些基本功能。當然,任何事物都是具有兩面性的,簡單易用與靈活性之間通常是一種互斥的關(guān)系。
再次,從技術(shù)實現(xiàn)的角度講,JSR系列標準定義的是Java語言的API實現(xiàn),它繼承了Java語言跨平臺的特征;而Parlay API的實現(xiàn)是基于Corba中間件技術(shù)的,它是一種跨平臺的技術(shù),與操作系統(tǒng)和編程語言無關(guān),即應用和服務可以運行不同的操作系統(tǒng)上,還可以以不同的編程語言來實現(xiàn)API的功能和調(diào)用。
Parlay X基于Web服務技術(shù)實現(xiàn),具有更為優(yōu)秀的開放性,可以用不同的編程語言來實現(xiàn)。對應用開發(fā)人員而言,跨平臺的、與語言無關(guān)的接口技術(shù)肯定更受人歡迎。
當然,對于各種不同的業(yè)務能力開放技術(shù),不能簡單的說孰優(yōu)孰劣,每一種技術(shù)都有自己的優(yōu)勢,對于不同層次的業(yè)務開發(fā)人員,面對不同的業(yè)務需求,可以選用適合自己的技術(shù)來開發(fā)電信應用。
此外,我們再從API的封裝程度的角度對各個規(guī)范進行比較,如圖4所示。從較高的層次上講,可以將接口封裝分為兩類:操作級的API封裝和協(xié)議層的API封裝。其中,JCC和Parlay/Parlay X提供的是操作級的API,API的封裝程度比較高,API的實現(xiàn)與具體的協(xié)議無關(guān);而JAIN SIP和SIP Servlet提供的是協(xié)議層的API,它們提供了針對SIP協(xié)議的API封裝,從某種程度上講,相當于提供了一個Java版本的SIP協(xié)議棧,相比之下,SIP Servlet提供的API比JAIN SIP規(guī)范中的API更為高級一些。對應用開發(fā)人員而言,封裝程度較高的接口技術(shù)更容易用來開發(fā)應用。
最后,從生命力的角度對各個規(guī)范做一比較,如圖5所示。JCP和Parlay兩個不同的組織所制定的規(guī)范一直還在發(fā)展之中,從目前的情況看,JCC和JAIN SIP規(guī)范,目前支持或積極響應的設(shè)備商并不多;而SIP Servlet產(chǎn)品,目前已經(jīng)有多個廠商明確支持;支持Parlay/Parlay X的廠商比較多,其中,愛立信的Parlay GW產(chǎn)品應用最為廣泛。各個廠商對Parlay X的支持就更為普遍了。
所以,從總體上講,各個廠商對Parlay/Parlay X的支持要好于對JCP規(guī)范的支持。當然,JCP組織不僅在業(yè)務能力開放方面進行了研究,在業(yè)務執(zhí)行環(huán)境方面也做了深入的研究工作,制定了JAIN SLEE等規(guī)范,該規(guī)范的制定,從另一方面又極大地促進了JCC、JAIN SIP等規(guī)范的發(fā)展和推廣,后面我們會對JAIN SLEE規(guī)范做專門的介紹。
6 結(jié)束語
從電信領(lǐng)域的發(fā)展趨勢來看,總的趨勢可以歸納為:從封閉走向開放,從開放走向融合。最初的電信網(wǎng)作為一個封閉的體系,到不斷地開放業(yè)務能力,不斷地融入并開放新的業(yè)務能力,到現(xiàn)在電信域和IT域開始走向融合,整個過程將使得電信網(wǎng)成為一個開放的、可聚合的和可持續(xù)擴展的基礎(chǔ)網(wǎng)絡(luò)體系。
從電信的業(yè)務能力開放技術(shù),特別是接口技術(shù)的實現(xiàn)上,不同的接口提供了不同的實現(xiàn)技術(shù),前面已經(jīng)說過,從接口的封裝程度上講,封裝程度越高,基于接口的應用實現(xiàn)越容易;封裝程度越低,接口功能越靈活,基于接口的應用實現(xiàn)也越復雜。因而,對于不同的技術(shù),我們并不能簡單地說孰優(yōu)孰劣,而是要針對不同的需求和不同層次的應用開發(fā)人員,提供適合他們需要的業(yè)務接口開放,實現(xiàn)不同層次不同粒度的能力開放。
隨著業(yè)務能力的逐步開放,業(yè)務開發(fā)的周期不斷縮短,業(yè)務開發(fā)的群體不斷壯大,業(yè)務之間的耦合關(guān)系和交互作用越來越復雜,如何實現(xiàn)業(yè)務和業(yè)務、業(yè)務能力和業(yè)務能力、業(yè)務和業(yè)務能力之間的有序監(jiān)控和管理就成為下一代基于分布式開放ICT融合環(huán)境的業(yè)務生成環(huán)境和執(zhí)行環(huán)境的研究重點。
7 參考文獻
[1] 張云勇,劉韻潔,張智江,等. 下一代網(wǎng)絡(luò)業(yè)務開放的相關(guān)問題[J]. 電信科學,2004,20(1):41-46 .
[2] 強磊,陳卉. NGN的統(tǒng)一業(yè)務開放平臺與增值業(yè)務的創(chuàng)新[J]. 中國數(shù)據(jù)通信,2004,6(5):71-74.
[3] 劉韻潔.下一代網(wǎng)絡(luò)的發(fā)展趨勢—融合與開放[J].電信科學,2005,21(2):5-10.
[4] FALCARIN P, LICCIARDI C A. Analysis of NGN service creation technologies[J]. IEC Annual Review of Communications, 2003,56(6):100-110.
[5] LICCIARDI C A, FALCARIN P. Next generation networks: The services offering standpoint[R].Eurescom Project P1109. 2002.
[6] LAGO P, LICCIARDI C A, CANAL G, et al. An architecture for IN-Internet hybrid services[J]. Computer Networks Journal, 2001, 35(5):537-549.
[7] BOETSELAARS L, et al. CD-ROM: Enabling technologies for IN-Internet integration[R]. Eurescom Project P909 Deliverable 4. 2001.
[8] 葉飛,傅海陽. CTI技術(shù)及其在現(xiàn)代通信中的應用[J].電子工程師, 2001,27(6): 36-38, 41.
[9] 張雪麗. 智能網(wǎng)標準概況[J].電信工程技術(shù)與標準化, 2004(1):34-38.
[10] JAIN. A set of JavaTM APIs for integrated networks[R]. Telcordia Technologies Inc. 1999.
[11] The JAIN APIs: Integrated network APIs for the Java platform[R/OL]. White Paper. 2000.[2008-12-11]. http://java.sun.com/products/jain.
[12] JSR21-JAIN Java call control (JCC) applicaiton programming interafce (API), Version 1.0[S]. JCP. 2001.
[13] ARANGO M, DUGAN A, HUITEMA C, et al. Media gateway control protocol (MGCP), Version 1.0[R]. RFC 2705.1999.
[14] ROSENBERG J, SCHULZRINNE H, CAMARILLO G, et al. SIP: Session initiation protocol[S]. RFC 3261. 2002.
[15] JSR32-JSIP API specification v1.2, Final release [S]. JCP. 2006.
[16] JSR116- SIP servlet API, Version 1.0 [S]. JCP. 2003.
[17] JSR289-SIP servlet specification v1.1, Final release [S]. JCP. 2008.
[18] JSR309-Java media server control [S]. JCP. 2008.
[19] JSR22-JAIN SLEE 1.0 specification, Final release [S]. JCP. 2004.
[20] ETSI ES 201 915-1 V1.1.1. Open service access; Application programming interface. Part 1-Part 12[S]. 2001.
[21] Parlay APIs 4.0: ParlayX Webservices[R]. White Paper. Parlay Group, 2002.
收稿日期:2008-12-11
楊勇,畢業(yè)于東南大學,現(xiàn)工作于入中興通訊股份有限公司。研究方向包括多媒體圖像、視頻處理技術(shù)、增值業(yè)務平臺等,先后從事智能網(wǎng)以及Parlay/ParlayX網(wǎng)關(guān)的研發(fā)工作。已發(fā)表論文多篇。學?,F(xiàn)任中興通訊股份有限公司高級工程師,主要從事UMTS、LTE等無線通信系統(tǒng)的前沿技術(shù)研究工作。已發(fā)表論文5篇,提交專利2篇。
賈霞,碩士畢業(yè)于大連理工大學,現(xiàn)工作于中興通訊股份有限公司,負責下一代業(yè)務網(wǎng)絡(luò)預研。先后從事固定智能網(wǎng)業(yè)務、寬帶業(yè)務、IMS業(yè)務等開發(fā)和設(shè)計工作,研究方向為業(yè)務網(wǎng)絡(luò),SDP、SOA、業(yè)務引擎、移動互聯(lián)網(wǎng)。已發(fā)表過業(yè)務網(wǎng)絡(luò)演進相關(guān)文章多篇。
董振江,碩士畢業(yè)于哈爾濱工業(yè)大學,現(xiàn)工作于中興通訊股份有限公司。先后從事交換機和智能網(wǎng)等開發(fā)、設(shè)計和規(guī)劃等工作,研究方向為SDP、P2P、業(yè)務引擎、3G業(yè)務和ICT等。參與和負責過多項國家發(fā)改委的技術(shù)課題,已發(fā)表過多篇增值業(yè)務相關(guān)文章。