一、TRIP產(chǎn)生的背景
建立在Internet上的各種通訊已經(jīng)成為當(dāng)今社會(huì)信息化發(fā)展的主要通訊方式,特別是IP電話漸漸將成為語音通訊的主流產(chǎn)品,IP電話用戶的不斷增加和IP網(wǎng)絡(luò)的膨脹式的擴(kuò)大,帶動(dòng)著越來越多的不同廠商、不同功能IP電話通訊網(wǎng)關(guān)(Gateway)的共存和使用,隨著其數(shù)量和使用率的提增,它們的工作機(jī)制和人們對(duì)其的管理也越來越復(fù)雜,其中最困難的問題就是IP電話的網(wǎng)關(guān)定位問題,也就是一個(gè)呼叫設(shè)備對(duì)另一個(gè)IP終端電話進(jìn)行呼叫時(shí)的網(wǎng)關(guān)選擇、網(wǎng)關(guān)發(fā)現(xiàn)和網(wǎng)關(guān)路由問題等等。
在對(duì)網(wǎng)關(guān)的選擇過程中,往往要受到可選網(wǎng)關(guān)數(shù)量、不同運(yùn)應(yīng)商之間的運(yùn)營(yíng)策略、終端用戶的需求、網(wǎng)關(guān)容量和網(wǎng)關(guān)之間協(xié)議屬性的兼容性等等方面因素的制約,因此為了全球的互通,IP電話網(wǎng)絡(luò)不可能建立在一個(gè)全球性“網(wǎng)關(guān)目錄”(Directory of Gateways)之上,即使建立了這個(gè)“網(wǎng)關(guān)目錄”,其信息的動(dòng)態(tài)、實(shí)時(shí)更新和維護(hù)也不是一件容易的事情。
為此,一種分布式的建立在不同國(guó)家、不同地域、不同運(yùn)應(yīng)商、不同網(wǎng)絡(luò)上的路由信息和這些信息可以相互廣播、自動(dòng)同步、友好共享(基于策略)的IP電話路由信息操作機(jī)制的建立就很有必要,于是TRIP協(xié)議便應(yīng)運(yùn)而生,TRIP協(xié)議就是這種機(jī)制的協(xié)調(diào)和管理規(guī)則的集合,它允許每個(gè)網(wǎng)關(guān)資源的管理者根據(jù)不同的策略建立自己的本地可用網(wǎng)關(guān)數(shù)據(jù)庫,然后按照不同的策略進(jìn)行數(shù)據(jù)庫之間不同網(wǎng)關(guān)信息的聚合、廣播、交換和共享——首先使這些信息在本地對(duì)自己可用,然后再把這些信息按照一定策略傳播給、同步給其它供應(yīng)商,這些數(shù)據(jù)庫中的網(wǎng)關(guān)信息供信令服務(wù)器、軟交換設(shè)備和其它用戶直接查詢使用。
在下一代網(wǎng)絡(luò)技術(shù)(NGN)已經(jīng)到來的今天,TRIP協(xié)議已經(jīng)被國(guó)內(nèi)外通訊廠商普遍認(rèn)同的一種必不可少的路由協(xié)議。
二、協(xié)議描述
準(zhǔn)確地說Trip(Telephony Routing over IP)并不是一個(gè)協(xié)議,而是本文要描述的被收集、被聚合、被廣播和被管理的內(nèi)容——IP電話路由,為了直觀地理解其被操作的過程和這些過程中所遵循的規(guī)則,人們也就把它稱為TRIP協(xié)議。
2.1 TRIP的功能和要解決的問題
在介紹TRIP的功能前,先介紹TRIP中用到的幾個(gè)專業(yè)術(shù)語,這些術(shù)語所對(duì)應(yīng)實(shí)體的功能分別在后面有詳細(xì)描述。
網(wǎng) 關(guān)(Gateway): 連接電路交換網(wǎng)絡(luò)和IP網(wǎng)絡(luò)的一種設(shè)備,其能發(fā)起和結(jié)束IP電話信令協(xié)議和電話網(wǎng)絡(luò)信令協(xié)議。
區(qū)域服務(wù)器(Location Server --LS)): 一個(gè)具有IP連接性的邏輯設(shè)備,它可以知道那些網(wǎng)關(guān)可用于結(jié)束對(duì)GSTN的呼叫,它是參與TRIP功能的主要功能實(shí)體,也是端用戶完成與電話網(wǎng)絡(luò)呼叫的聯(lián)系點(diǎn),它也負(fù)責(zé)向其它LS傳播網(wǎng)關(guān)信息。
Internet電話管理域(Internet Telephony Administrative Domain --99vAD)): 單個(gè)管理機(jī)構(gòu)控制下的資源集合(包括網(wǎng)關(guān)、區(qū)域服務(wù)器)。
提供者(Provider): Internet電話管理域(99vAD)的管理員。
區(qū)域服務(wù)器策略(Location Server Policy): 區(qū)域服務(wù)器處理通過TRIP發(fā)送和接收信息的一系列規(guī)則集合,包括聚集、傳播、產(chǎn)生和接收所有網(wǎng)關(guān)信息的規(guī)則。
電話路由信息庫(Telephony Routing Information Base--TRIB): LS建立的網(wǎng)關(guān)數(shù)據(jù)庫,用于保存TRIP的參與結(jié)果。
2.1.1 TRIP的功能
TRIP協(xié)議是不同管理域之間進(jìn)行IP電話網(wǎng)關(guān)路由信息交換的一個(gè)專用協(xié)議,它是獨(dú)立于任何信令協(xié)議的一種協(xié)議,其主要的功能如下:
建立和維護(hù)路由信息提供者之間的對(duì)等關(guān)系。
交換和同步提供者之間的電話網(wǎng)關(guān)路由信息。
防止穩(wěn)定路由的循環(huán)。
以及時(shí)的和可擴(kuò)展的方式廣播已知的網(wǎng)關(guān)路由信息。
定義和描述電路網(wǎng)關(guān)路由數(shù)據(jù)的語法、語義和路由信息傳送的規(guī)則。
2.1.2 TRIP要解決的問題
TRIP協(xié)議,其解決的主要問題就是IP電話的網(wǎng)關(guān)路由問題,從一個(gè)較高的角度來看,就是解決映射問題———給定一個(gè)電話號(hào)碼映射出一個(gè)電話網(wǎng)關(guān)的IP地址,也可以簡(jiǎn)單的稱為“電話號(hào)碼到IP地址轉(zhuǎn)換問題”。通常,我們遇到電話號(hào)碼與IP地址轉(zhuǎn)換的情況很多,只有“給定一個(gè)電路交換網(wǎng)絡(luò)的用戶電話號(hào)碼,判斷能夠完成對(duì)其進(jìn)行呼叫的網(wǎng)關(guān)的IP地址”是TRIP協(xié)議要解決的問題,只有它才真正的涉及到一個(gè)呼叫設(shè)備和另一個(gè)應(yīng)答設(shè)備之間的信令信息在IP網(wǎng)絡(luò)上傳輸時(shí)必須進(jìn)行IP網(wǎng)關(guān)路由的層層選擇,因此TRIP協(xié)議解決的是電話號(hào)碼與IP地址轉(zhuǎn)換的問題,但是并不是所有IP與地址轉(zhuǎn)換的問題它都解決。
2.2 TRIP與目前IP電話路由協(xié)議的區(qū)別
TRIP可歸類為一種域間路由協(xié)議,目前用到的域間路由協(xié)議很多,如BGP-4、OSPF、SCSP等,由于TRIP出現(xiàn)較晚,因此其吸取了這些“先輩”的很多優(yōu)點(diǎn),如它具有與BGP-4類似的格式與屬性,使用了BGP的域間傳輸機(jī)制、對(duì)等通信、有限狀態(tài)機(jī)制等特性,同時(shí),TRIP又象OSPF、、SCSP協(xié)議一樣具有一些增強(qiáng)的連接狀態(tài)特性,如域內(nèi)溢出機(jī)制(Intra-domain flooding mechanism)等等。
但是它與這些已經(jīng)存在的域間路由協(xié)議有很大的區(qū)別,由于BGP-4協(xié)議目前使用較廣,因此在此只對(duì)TRIP協(xié)議和BGP-4兩種域間管理協(xié)議進(jìn)行比較:
TRIP運(yùn)行在應(yīng)用層,而不象BGP-4運(yùn)行在網(wǎng)絡(luò)層。
TRIP運(yùn)行和存在于許多中間網(wǎng)絡(luò)和IP服務(wù)提供者的服務(wù)器(即LS)之間,而BGP-4則在鄰近的路由器之間。
TRIP的對(duì)等體之間交換的信息描述了到應(yīng)用層網(wǎng)關(guān)設(shè)備的路由信息,而BGP-4描述的卻是IP路由信息。
TRIP假定存在底層的IP傳輸網(wǎng)絡(luò),這意味著交換TRIP路由信息的服務(wù)器不需要轉(zhuǎn)發(fā)信息路由的信令消息。而在BGP-4中卻非如此,對(duì)等體(路由器)必須作為IP包的轉(zhuǎn)發(fā)點(diǎn)(或?yàn)橐粋€(gè)相鄰前轉(zhuǎn)點(diǎn))。
TRIP的目的不是建立跨99vAD的全球性連接,它對(duì)很多通過TRIP互通的相對(duì)獨(dú)立區(qū)域(如平行關(guān)系的省、市、縣級(jí)電訊網(wǎng)絡(luò))尤其合適,每個(gè)區(qū)域在管理關(guān)系上都是相對(duì)封閉的一個(gè)集合,而且每個(gè)區(qū)域都可以與全球的GSTN有完全的互通。這同BGP-4形成了鮮明對(duì)比,BGP的目標(biāo)是通過Internet對(duì)全球進(jìn)行互連互通,如果由于BGP-4斷連,一個(gè)AS就會(huì)從其他中分離出來,則它們之間就沒有任何IP網(wǎng)絡(luò)連接了。
由于TRIP位于應(yīng)用層,而不是網(wǎng)絡(luò)層,因此TRIP描述的網(wǎng)關(guān)路由信息要比BGP-4所描述的IP路由信息要復(fù)雜得多,而且這些信息的描述參數(shù)也多的多。
BGP-4交換的是代表IP命名空間部分的前綴,而TRIP交換的是電話號(hào)碼區(qū)間,這個(gè)區(qū)間表示的是GSTN號(hào)碼空間的一部分,因此兩種命名空間的組織和層次均不相同。
以上的區(qū)別說明TRIP與BGP-4之間真是“青出于藍(lán)而勝于藍(lán)”,在功能上二者雖有相近之處,但二者在功能定位和存在的先進(jìn)性方面已是不可同日而語了。
三、TRIP的實(shí)現(xiàn)
1. TRIB的構(gòu)成
TRIP協(xié)議交換的路由信息由外部路由(External routes)、內(nèi)部路由(Internal routes)和本地路由(Local routes)三種類型組成,為了直觀的描述TRIB的構(gòu)成關(guān)系,TRIP協(xié)議從路由選擇的角度把LS中的TRIB分成以下四個(gè)構(gòu)成部分,這四個(gè)部分實(shí)際上是由以上三種類型的路由內(nèi)容構(gòu)成:
Adj-T
RIBs-In:稱為臨近可選TRIB,其內(nèi)容是從UPDATE消息中獲取的域內(nèi)、域外LS上的路由信息,這些路由信息是當(dāng)前路由選擇中的可以使用的輸入路由信息,
Ext-TRIB:稱為外部TRIB,其內(nèi)容是LS根據(jù)一定的路由選擇運(yùn)算法則,從外部路由(存儲(chǔ)在外部LS的Adj-TRIBs-In中)和本地路由(存儲(chǔ)在本地LS的Adj-TRIBs-In中),為一個(gè)給定目的地址選擇的最佳的路由,每個(gè)LS只有一個(gè)Ext-TRIB。
Loc-TRIB:稱為本地TRIB,其內(nèi)容是LS運(yùn)用其內(nèi)部策略從內(nèi)部LS的Adj-TRIBs-In和Ext-TRIB中選擇出來的TRIP路由信息。
Adj-TRIBs-Out:稱為臨近輸出TRIB,其內(nèi)容是LS準(zhǔn)備廣播給外部LS的路由信息,它的內(nèi)容將攜帶在UPDATE消息中對(duì)外廣播。
雖然TRIB由以上的四個(gè)部分構(gòu)成,但這并不意味也并不要求一個(gè)路由選擇過程的完成必須要保留這四個(gè)每一個(gè)的單獨(dú)備份,其選擇并不拘泥于協(xié)議的劃分,有些路由選擇過程可能要用到一個(gè)TRIB,有時(shí)可能要用到多個(gè),甚至在TRIP-MIB庫設(shè)計(jì)中大家并不一定能意識(shí)其的單獨(dú)存在,這根據(jù)具體需要而定。
關(guān)于TRIB標(biāo)準(zhǔn)定義的RFC至今還沒有出臺(tái),只有討論性的草案,因此TRIB內(nèi)容的具體表示只能暫時(shí)參考這些草案(draft-ietf-iptel-trip-mib-01.txt)。
2. 路由消息的格式
TRIP的消息必須建立在可靠傳輸協(xié)議的連接上,即只能是TCP/IP連接,且使用的TCP連接端口為6069,一個(gè)消息必須而且只能在全部接收結(jié)束后才能開始進(jìn)行處理,TRIP消息的最大長(zhǎng)度是4K(4096)個(gè)字節(jié),最短長(zhǎng)度是只包含消息頭部分的3個(gè)字節(jié),大于4K個(gè)字節(jié)和小于3個(gè)字節(jié)長(zhǎng)度的消息都屬于無效的TRIP消息。
2.1 消息頭格式
國(guó)家級(jí)的RS把聚合后的路由信息廣播、同步給國(guó)內(nèi)省級(jí)的主干RS群,省級(jí)主干RS群把本地的路由信息和國(guó)家級(jí)路由信息進(jìn)一步聚合后再一起向所轄片區(qū)的RS群進(jìn)行廣播、同步。一個(gè)用戶要進(jìn)行一次國(guó)際長(zhǎng)途呼叫,首先發(fā)起地的SoftSwitch向本地的片區(qū)RS請(qǐng)求路由信息,這樣本地的RS根據(jù)上級(jí)層層廣播的聚合路由信息就可以一次定位到應(yīng)答方所在的國(guó)家級(jí)RS。
ZTE的RS之間TRIP的應(yīng)用中,一個(gè)域中可以有多個(gè)RS(LS),有的RS專門向SoftSwitch提供路由服務(wù),有的專門進(jìn)行路由信息的對(duì)外廣播和接受、管理外部廣播、同步來的路由信息,這樣ZTE的RS就不僅可以為ZTE自己的產(chǎn)品提供路由服務(wù),也能對(duì)其它電訊供應(yīng)商的通訊產(chǎn)品提供路由服務(wù),只要這些通訊產(chǎn)品也支持標(biāo)準(zhǔn)的TRIP協(xié)議。
以上兩個(gè)廠家的產(chǎn)品都采用了TRIP協(xié)議,但是從使用中可以看出二者是有區(qū)別的:SS8 Signaling Switch中的LS存儲(chǔ)的是網(wǎng)關(guān)路由信息,LS提供的是網(wǎng)關(guān)路由的一次定位服務(wù),ZTE Softswitch中的LS(RS)存儲(chǔ)的是Softswitch路由信息,實(shí)現(xiàn)的是Softswitch路由的一次定位服務(wù),這對(duì)TRIP來說都是允許的,雖然二者的產(chǎn)品架構(gòu)不同,但其路由信息的聚合、廣播、同步等操作過程和數(shù)據(jù)格式都符合TRIP協(xié)議的要求。