天天看點

《VoIP技術構架(第2版·修訂版)》一1.5 分組電話網絡的驅動力

本節書摘來自異步社群《voip技術構架(第2版·修訂版)》一書中的第1章,第1.5節,作者【美】jonathan davidson , james peters , manoj bhatia , satish kalidindi,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

voip技術構架(第2版·修訂版)

在上一節裡我們讨論了pstn内競争的政策驅動力。這一節裡我們将主要講述為什麼營運商會選擇開發分組交換電話網絡來替代傳統的電路交換網絡。

d/v/v的內建并不僅僅改變架構。d/v/v的內建不僅使許多新的功能可以快速地開發,而且使成千上萬的獨立軟體開發商(independent software vendor,isv)都可以進行開發。d/v/v的內建就像由大型機開發向客戶/伺服器方式轉變一樣。隻有有限的開發商可以為大型機開發應用,而在分布式系統上,大量的開發商都可以開發應用。

圖1-12列出了電路交換模型是怎樣被劃分成為新模型的。在新模型中,它被劃分成了有開放式标準的3層。一個分組交換架構将承載真實的語音(媒體),呼叫控制層從媒體層分離出來,開放的應用程式設計接口(application programming interface,api)使新的服務可以由獨立軟體開發商(isv)開發。

《VoIP技術構架(第2版·修訂版)》一1.5 分組電話網絡的驅動力

圖1-12簡單對比了兩者的差別。為了進一步讨論這些變化,我們需要更深地了解3層結構的每一層。

在新的模型中,分組交換架構代替了電路交換架構。這個架構最可能采用ip,雖然下層使用atm上層使用ip也是可行的。ip對分組架構如此有吸引力主要是因為它無處不在的特性和它已經是應用接口的既成事實。這就意味着人們無需了解ip上運作的軟體應用。ip隻是将資料從一端傳到另一端,而對傳輸什麼沒有興趣。

實時傳輸協定(real-time transport protocol,rtp)被用來在使用者資料報協定(user datagram protocol,udp)/ip分組頭上提供時間戳(timestamping)。在udp和ip上運作的rtp通常被記作rtp/udp/ ip。rtp目前是在ip網絡上承載實時流量的基石(比如微軟的網絡會議就是使用rtp承載音頻和視訊通信)。到目前為止,所有的voip信令協定都是采用rtp/udp/ip作為他們的語音流量的傳輸機制。rtp資料包流通常被稱作rtp流(rtp streams)。這個術語被用來描述音頻路徑。

在ip網絡中,分組丢失是很常見的事情。實際上,tcp/ip協定就是通過分組丢失來控制資料傳輸的。在tcp/ip中,如果分組丢失的話,就重新傳送。而在大多數實時的應用中,因為資訊的時間性問題,重傳還不如丢棄。

注釋:

當為擁擠(congested)ip網絡提供優先級時,ip網絡必須知道傳輸的是什麼應用。

itu-t 建議在一個方向的延時不要超過150ms。在思科的voip網絡中,單向延遲大約是120ms(目前,在兩個使用g.729的思科網關上120ms的延時為65ms到85ms)。如果接收方要求一個包必須重傳,那麼延時會太大而造成通話的間隙。

rtp流也通常被稱為媒體流(media stream)。這樣,您就可以使用ip與udp和rtp一起代替64kbit/s的傳統語音電路。

rtp有一個域表明包被傳送的實際時間(與整個rtp流有關)。這個資訊被稱為rtp時間戳(rtp timestamps),裝置使用這個資訊來決定中止/接收音頻流。接收裝置通過rtp時間戳來決定一個包應當到達的時間,包是否是有序到達和在應當到達時包是否到達。所有這些資訊幫助接收裝置調整自己的設定以對應潛在的網絡問題,如時延、抖動和分組丢失。

抖動(jitter)是指包到達間隔時間的不同,或者實際接收到包的時間與預期要接收到包的時間之間的差異。

ip的一個主要優點是合理建設的ip網絡是可以自愈的(self-healing)。這就意味着當使用動态路由協定和有多個可能的目的地存在時,資料可以根據最佳路由傳送。這也就意味着您的聲音(在ip中已被分組)有可能通過多條線路傳送到一個目的地。目前,您無法在兩個目的地之間指定一條路徑。每個分組都在發送者和接收者之間選擇最佳路徑。

因為包交換層(packet layer)基于開放的标準使大量的廠商可以共同提供解決方案,這些開放的标準也增加了本層的競争。itu-t,網際網路工程任務組(internet engineering task force,ietf),歐洲電信标準組織(european telecommunication standards institute,etsi),與電子工業協會-電信工業聯合會(eia-tia)是一些标準化組織。

而擁有一個基于标準的分組交換架構的主要因素是在呼叫控制層有開放的标準。在圖1-12中,這些開放的标準由sip、h.323、sgcp、mgcp、megaco等協定提供。這些協定擁有開放的定義接口且已經被廣泛地部署在分組交換架構中。呼叫控制協定的一個工作就是告訴rtp流在哪裡開始又在哪裡結束。呼叫控制是通過ip位址和電話編碼計劃的轉換來完成這項任務。

簡單來說,呼叫控制就是為一個呼叫選擇路由來促成呼叫的過程。在當今的pstn網絡上,這些決定由業務控制點(service control point,scp)決定,由ss7承載。第7章讨論了不同voip協定的工作方式以及是怎樣解決不同的網絡設計問題的。

在新模型中将承載(rtp流)從呼叫控制層中分離出來,并且将呼叫控制層從業務中分離出來。在新模型中使用的是基于标準的協定,确認這一點很有必要。資料組網因為在一個網絡中可以同時存在多種協定而顯得很獨特。您可以根據具體的網絡需求來使用這些協定。

比如有許多不同的ip路由協定,而且每一種都為特定的網絡設計。這些協定包括路由資訊協定(router information protocol,rip)、内部網關路由協定(interior gateway routing protocol,igrp)、增強的内部網關路由協定(enhanced interior gateway routing protocol,eigrp)、中間系統對中間系統(intermediary system to intermediary system,is-is)協定、開放最短路徑優先(open shortest path first,ospf)協定和外部邊界網關協定(border gateway protocol,bgp)。每種協定都解決一個類似的問題——路由資訊的更新。每種路由問題都有些不同,是以需要不同的工具解決。在這種情況下,這些工具就是解決每個問題的路由協定。

對于voip的呼叫控制協定也是一樣的。他們都解決一個類似的問題——電話号碼到ip位址的轉換。但因為目的的細微差異,他們可能都被使用。

許多voip呼叫控制協定正在被開發。最值得一提的是sip,它将繼續掀起ip通信的風暴。在最近幾年裡,基于sip的架構為端點提供了更多的智能并且在提供voip服務上得到了充分的發展。它們帶來了網絡上的一系列變化,通過使用會話控制器(session controller)與使用h.323、mgcp和h.248/megaco協定的軟交換(softswitch)來集中呼叫控制。每種協定都是為了解決某個特定的問題和為特定的目的服務而開發的。簡單地說,那就是許多協定都将被使用。我們将擁有一個解決不同網絡拓撲需求的混合型網絡。

到寫這本書為止,主要的voip呼叫控制協定有sip、h.323、mgcp與h.248/ megaco。另一種非常流行的網絡電話的拓展是點對點(peer to peer,p2p)ip電話。skype采用這種模型,但還沒有形成标準。目前的标準協定有如下幾種。

mgcp來源于sgcp和1998年開始開發的ipdc,通過在集中平台(或網關控制器)上添加智能呼叫控制以減少末端(網關)的費用。第13章将詳細論述這些協定。

itu的 h.248,也稱作megaco協定,是一個有關媒體網關控制的國際标準。它是由itu 與ietf聯合推出的。它主要被用來在網關上将呼叫控制邏輯從媒體處理邏輯中分離出來。用于負責呼叫控制功能的裝置稱為媒體網關控制器(media gateway controller,mgc),而用來負責媒體流量的裝置稱為媒體網關(media gateway)。

sip是一種基于媒體的協定。它可以使末端裝置(端點或網關)更智能,而且使很多增強業務可以在呼叫控制層完成。第12章覆寫了sip的詳細資訊。

點對點voip才剛剛起步,已被積極地推薦為voip技術的另一種選擇。p2p組網利用位于網際網路邊緣的功能相對強大的計算機(個人計算機),使這些計算機不單單完成用戶端任務。除了收發e-mail和浏覽網頁外,現代pc足夠強大的架構還可以完成音頻/視訊會議的任務。對于許多類型的應用來講,現代pc可以同時充當用戶端和伺服器端(一個對等體)。微軟和skype是在p2p網絡上測試部署voip的兩個主要廠商。

為了簡單說明這些呼叫控制協定的差別,讓我們來看一下他們是怎樣與端點通信的。

1.h.323

h.323是itu-t定義多媒體資訊如何在分組交換網絡上承載的建議書。h.323使用一些已有的标準(如q.931)來實作這個目标。h.323是一個相當複雜的協定,它不是為了簡化應用開發而建立的,而是為了在“不可靠的”的資料網絡傳輸多媒體應用而建立的。語音隻是h.323中的一個應用。在這個領域的大部分的初始工作都集中在多媒體應用上,視訊和資料共享這個協定的一大部分内容。

為了使應用适用h.323,需要做大量的工作。比如完成一個呼叫需要另一個規範(h.450.2)。而sgcp與mgcp隻需要給網關或終端裝置一個簡單的指令modify connection(mdcx),就可以完成呼叫。這個簡單例子也說明了構造協定的不同方式:一種是為完成簡單應用(mgcp);另一種是為了更複雜的應用,但又有它的局限性(h.323)。

為了更進一步地示範h.323的複雜性,圖1-13列出了一個在兩個h.323終端裝置之間通話。

《VoIP技術構架(第2版·修訂版)》一1.5 分組電話網絡的驅動力

圖1-13示範了最基本的h.323通話流程。在大多數情況下,因為網守的參與,可能會需要更多的步驟。

讓我們一步一步地來看這個通話流程,以更好地解釋圖1-13。

1.終端裝置a通過tcp端口1720向終端裝置b發送一個建立(setup)消息。

2.終端裝置b發送一個信号(alerting)消息和一個開始h.245協商的端口号來響應建立消息。

3.h.245協商包含編碼類型(g.729和g.723.1),rtp流的端口号以及終端裝置所擁有的其他功能。

4.udp流的邏輯信道被協商、打開和确認。

5.語音在rtp流上承載。

6.在兩個終端裝置上均采用實時傳輸控制協定傳輸rtp流。

這個呼叫流程基于h.323 v1。h.323 v2可以使h.245協商在h.225建立消息中完成。這被稱作快速啟動(fast-start),它減少了建立h.323呼叫所需要的來回協商數,但它并沒有簡化協定。有關h.323的更多分析見第11章。

2.mgcp(由sgcp與ipdc發展而來)

sgcp與mgcp為了使一個中心裝置,被稱為媒體網關控制器(media gateway controller,mgc)或軟交換機(softswitch)來控制終端裝置或媒體網關(media gateway,mg)而設計的。您可以通過mgc的标準的api來開發應用以提供附加功能(像呼叫等待和class功能)及應用。

思科在這個技術上有兩個知名裝置:cisco pgw2200 與cisco bts10200。cisco pgw2200是一個呼叫代理,它包含思科媒體網關控制器(media gateway controller,mgc)軟體、思科信令鍊路終端(signaling link terminals,slt)、cisco pgw2200元件ip互聯的區域網路交換機等。在這個情景下,整個ip網絡就像一個大的虛拟交換機,而pgw控制了所有的媒體網關(mg)。

圖1-14展示了一個運作mgcp虛拟交換機的典型網絡設計。

《VoIP技術構架(第2版·修訂版)》一1.5 分組電話網絡的驅動力

圖1-14也展示了已有的pstn和企業網絡是怎樣通過連接配接到網關或終端裝置來通路新的分組網絡的。這個分組網關從呼叫代理(call agent,pgw2200)處得到訓示。呼叫代理連接配接到ss7網絡和智能網可以通知網關或終端裝置怎樣和什麼時候建立呼叫。

要想更深地了解圖1-14,我們還需要讨論其他元件。現有的pstn/ss7網絡是連接配接到交換傳輸點(switching transfer point,stp)上的,而stp也連接配接到mgc與呼叫代理上。這個連接配接是信令(ss7)鍊路的終點,稱作信令鍊路終端(signaling link terminal,slt)。slt為pgw提供ss7接口,進而形成一個任何mgc提供ss7接口的mgc一個完整的元件。

pstn/ss7網絡也連接配接到一個mg上,這條鍊路是一條沒有信号的中繼線,也稱作機間中繼線(inter-machine trunk)或 imt. 64kbit/s的語音中繼線在mg處被轉換為分組而運作在ip網上。

mgc與呼叫代理(在我們這裡就是pgw200)也是互相通信的。然而還沒有标準化組織為其制訂通用協定。在目前的行業情況下,sip的各種版本或在ip上的ISDN使用者部分(isdn user part,isup)(在ip上營運的ss7的一部分)是目前的主流協定。mgc有一個到智能網的連接配接(我們在本章的前一部分已經讨論過)來提供class業務。mgc接收來自ss7網絡的信号,告訴mg什麼時候和哪個mg建立ip連接配接。

pgw2200在這種情況下是一個典型的mgc,通過稱作e-isup的isup的擴充來與其他pgw通信。它同樣從b信道中分離出d信道,然後将d信道通過ip傳送給mgc。這個機制稱為信令回程(signaling backhaul),它是通過由sigtran開發的一系列協定完成的。sigtran (信令傳輸,signaling transport)是ietf标準化組織中的一個工作小組。這些協定闡明了在ip網絡上傳輸pstn信令的功能和性能要求。sigtran協助區分什麼信令協定怎樣在ip點與點之間進行傳輸、轉換和/或終結。這些點包括信令網關(signaling gateway,sg)、媒體網關控制器(media gateway controller,mgc)、信令端點(signaling end point,sep)和基于ip的資料庫或者業務控制點(service control point,ip-scp)。

sip

sip在rfc 3261被很好的解釋:sip是一個應用層控制(信令)協定,用于建立、修改和終止一個或多個參與者的會話。然而,ietf委員會開發了許多附加的rfc,為核心rfc提供新的功能,使sip成為一個在voip中的會話控制協定,同時也是分組多媒體(packetcable multimedia,pcmm)和無線及基于集團電話的網絡的會話控制協定。

sip邀請被用來建立會話,承載允許所有參與者同意一組相容的媒體類型的會話描述。sip使用代理伺服器來幫助路由請求到使用者目前所在的位置、認證和授權使用者,實施提供商的呼叫選路政策以及為使用者提供相關功能。sip也提供注冊功能,以允許使用者上傳他們現在的位置供代理伺服器使用。sip可以運作在多種傳輸協定之上。

盡管大多數的廠商及使用者都傾向于在一個混合的模型中将sip與h.323或mgcp聯合使用以允許網絡中的其他各點對等來部署增強業務,但目前有多種sip實施正在運作中。

更詳細的sip資訊請參見第12章。

h.248/megaco

媒體網關控制協定(media gateway control protocol,megaco)是ietf與itu-t研究組16聯合工作的結果。此協定的定義參見itu-t建議書h.248。

mgcp/megaco打破了h.323的網守模型,将信令協定從網關中移出,并添加到媒體網關控制器(media gateway controller,mgc)或軟交換機(softswitch)中。mgc或軟交換機控制多個“媒體網關(media gateway)”,也就是将h.323架構分解到與ss7相對等的部分,進而使信令智能化。

在mgcp/megaco架構中,這些智能部分沒有與媒體捆綁在一起。這是一個主從協定,其中主裝置享有完全控制權,而從裝置隻是執行指令。主裝置是媒體網關控制器或軟交換機(或呼叫代理),從裝置是媒體網關(這可能是voip網關、數字使用者線接入複用裝置[digital subscriber line access multiplexer,dslam]、多協定标記交換[multiprotocol label switching,mpls]路由器、ip電話等)。這與sip以及如skype的其他模型的對等的特性正好相反,在那些模型中,一個用戶端可以同另一個用戶端直接建立會話。

megaco訓示媒體網關将從外面分組網絡上來的流量連接配接到一個分組網上去,如rtp的包流。軟交換機下達如發送接收來自其他位址的媒體,産生音調、修改配置等指令。然而,整個體系結構要求sip作為媒體網關控制器(mgc)之間的通信協定。megaco主要有以下幾部分構成:

信令網關 (signaling gateway,sg);

媒體網關控制(media gateway control,mgc);

媒體網關(media gateway,mg)。

在任何網絡協定中,最有趣的層是應用層。沒有好的應用,網絡架構的建設也就失去了意義。當轉移到一個新的架構上去時,沒有必要把老架構上的所有功能都轉移過去。隻要轉移使用者需要的功能或應用就可以了。

當建設一個擁有分組包層到呼叫控制層的開放接口,呼叫控制層到應用層的開放接口的網絡時,裝置提供商不再必須開發應用。他們隻需書寫标準的應用程式接口(api),開放整個新的架構就可以了。當一個新的分組架建構設完成後,許多新的應用都可以開發。

已有的應用,如企業網絡的呼叫中心、标準的pstn應用如呼叫等待和呼叫轉移,都必須在最終使用者沒有意識到的情況下轉移到新的架構上面來。當這些已有的應用轉移過來後,成千上萬的新的增強應用就可以定義開發了。這些應用包括(但不局限于)網際網路呼叫等待(internet call waiting)、一鍵通(push to talk)、發現—跟蹤(find me-follow me)以及統一消息(unified messaging)等。這些應用将在第6章中詳細讨論。

繼續閱讀