版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第二章
下一代網(wǎng)絡(luò)中采用的主要協(xié)議
學(xué)習(xí)要求掌握:會話啟動協(xié)議SIP、會話描述協(xié)議SDP、媒體網(wǎng)關(guān)控制協(xié)議H.248、與業(yè)務(wù)承載無關(guān)的呼叫控制協(xié)議BICC、信令傳輸協(xié)議SIGTRAN的協(xié)議棧結(jié)構(gòu)、協(xié)議的主要功能和典型的信令流程。了解:下一代網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議。下一代網(wǎng)絡(luò)中各節(jié)點(diǎn)之間使用的協(xié)議本章學(xué)習(xí)的協(xié)議本章主要內(nèi)容2.1下一代網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議2.2SIP協(xié)議和SDP協(xié)議2.3H.248協(xié)議2.4BICC協(xié)議2.5信令傳輸協(xié)議SIGTRAN2.1下一代網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議IP網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議棧1.IP協(xié)議IP協(xié)議負(fù)責(zé)IP網(wǎng)絡(luò)中各節(jié)點(diǎn)之間的連接,它將兩個終端系統(tǒng)經(jīng)過網(wǎng)絡(luò)中的節(jié)點(diǎn)用數(shù)據(jù)鏈路連接起來,實(shí)現(xiàn)兩個終端系統(tǒng)之間數(shù)據(jù)幀的透明傳輸。IP協(xié)議位于網(wǎng)絡(luò)層。網(wǎng)絡(luò)層的主要功能是尋址和路由選擇。它將數(shù)據(jù)包封裝成IP數(shù)據(jù)報(bào),并運(yùn)行必要的路由算法。在IP數(shù)據(jù)報(bào)的包頭中包含源主機(jī)IP地址和目的主機(jī)IP地址,IP網(wǎng)絡(luò)中的路由器利用目的主機(jī)IP地址來尋址選路,路由器每收到一個IP數(shù)據(jù)報(bào),就根據(jù)目的IP地址查詢路由表,找到匹配網(wǎng)絡(luò)號及下一跳路由器,完成數(shù)據(jù)轉(zhuǎn)發(fā)。IP網(wǎng)絡(luò)互聯(lián)協(xié)議IP網(wǎng)絡(luò)層協(xié)議包括:IP、ARP、ICMP、IGMP。IP協(xié)議的特征IP協(xié)議是無連接的IP協(xié)議的特征IP協(xié)議的數(shù)據(jù)報(bào)傳送服務(wù)是不可靠的不能保證IP數(shù)據(jù)報(bào)能成功地到達(dá)目的地。省略了復(fù)雜的可靠性傳輸機(jī)制,所以IP協(xié)議能盡量高效率地進(jìn)行傳送,減輕了網(wǎng)關(guān)的負(fù)擔(dān),提高了網(wǎng)關(guān)的吞吐率。有可靠性方面的要求,必須使用上層的協(xié)議(如TCP)或自己編寫軟件去完成。IP數(shù)據(jù)包以太網(wǎng)禎IP互聯(lián)網(wǎng)的工作機(jī)理
IP協(xié)議規(guī)定了IP地址分為A-E五類
地址分類
2.用戶數(shù)據(jù)報(bào)協(xié)議(UDP)用戶數(shù)據(jù)報(bào)協(xié)議(UDP)建立在IP協(xié)議之上,提供無連接的數(shù)據(jù)包傳輸。相對于IP協(xié)議,它唯一增加的能力是提供協(xié)議端口號碼以保證進(jìn)程通信。UDP的優(yōu)點(diǎn)在于高效性。UDP數(shù)據(jù)包的包頭中包含目的端口號和源端口號。目的端口號用來標(biāo)識目的主機(jī)中的接收進(jìn)程,源端口號用來標(biāo)識發(fā)送主機(jī)中的進(jìn)程。在IP網(wǎng)絡(luò)中傳送媒體信息的端口號碼都是動態(tài)分配的,所以在下一代網(wǎng)絡(luò)中傳送多媒體信息前必須通過信令協(xié)議將接收端分配的接收媒體信息的端口號碼通知對端主機(jī)。傳輸層為相互通信的應(yīng)用進(jìn)程提供了邏輯通信54321傳輸層提供應(yīng)用進(jìn)程間的邏輯通信應(yīng)用進(jìn)程應(yīng)用進(jìn)程IP層AP1AP2AP4端口端口54321AP3應(yīng)用進(jìn)程之間的通信兩個主機(jī)進(jìn)行通信實(shí)際上就是兩個主機(jī)中的應(yīng)用進(jìn)程互相通信。應(yīng)用進(jìn)程之間的通信又稱為端到端的通信?!皞鬏攲犹峁?yīng)用進(jìn)程間的邏輯通信”?!斑壿嬐ㄐ拧敝福簜鬏攲又g的通信好像是沿水平方向傳送數(shù)據(jù)。但事實(shí)上這兩個傳輸層之間并沒有一條水平方向的物理連接。傳輸層協(xié)議和網(wǎng)絡(luò)層協(xié)議的主要區(qū)別應(yīng)用進(jìn)程…應(yīng)用進(jìn)程…IP協(xié)議的作用范圍(提供主機(jī)之間的邏輯通信)TCP和UDP協(xié)議的作用范圍(提供進(jìn)程之間的邏輯通信)因特網(wǎng)傳輸層與上下層之間的關(guān)系傳輸實(shí)體傳輸實(shí)體傳輸協(xié)議傳輸層層接口傳輸服務(wù)用戶(應(yīng)用層實(shí)體)傳輸服務(wù)用戶(應(yīng)用層實(shí)體)層接口網(wǎng)絡(luò)層(或網(wǎng)際層)應(yīng)用層主機(jī)A主機(jī)B傳輸層服務(wù)訪問點(diǎn)TSAP網(wǎng)絡(luò)層服務(wù)訪問點(diǎn)NSAP傳輸層中的TCP和UDP協(xié)議UDP和TCP都使用IP傳輸。硬件應(yīng)用層TCPUDPIP操作系統(tǒng)外部軟件操作系統(tǒng)內(nèi)部軟件用IP地址用物理地址傳輸層向上提供可靠的和不可靠的邏輯通信信道
?應(yīng)用層傳輸層發(fā)送進(jìn)程接收進(jìn)程接收進(jìn)程數(shù)據(jù)數(shù)據(jù)全雙工可靠信道數(shù)據(jù)數(shù)據(jù)使用TCP協(xié)議使用UDP協(xié)議不可靠信道發(fā)送進(jìn)程傳輸控制協(xié)議TCP是面向連接的協(xié)議提供高可靠性服務(wù)用于一次傳輸要交換大量報(bào)文的情形。TCP報(bào)文段是在傳輸層抽象的端到端邏輯信道中傳送。但這樣的信道卻不知道究竟經(jīng)過了哪些路由器,路由器也不知道上面的傳輸層是否建立了TCP連接。用戶數(shù)據(jù)報(bào)協(xié)議UDP是無連接的;其可靠性由應(yīng)用程序提供;提供高效率服務(wù);用于一次傳輸交換少量報(bào)文的情形。UDP與IP有很大區(qū)別:IP數(shù)據(jù)報(bào)要經(jīng)過互連網(wǎng)中許多路由器的存儲轉(zhuǎn)發(fā),但UDP是在傳輸層的端到端抽象的邏輯信道中傳送的。3.RTP協(xié)議為解決實(shí)時業(yè)務(wù)順序傳送和提供時戳等一系列問題,IETF提出了實(shí)時傳輸協(xié)議(RTP)。RTP協(xié)議實(shí)際上包含兩個相關(guān)的協(xié)議:RTP協(xié)議和RTCP協(xié)議。RTP協(xié)議用于傳送實(shí)時數(shù)據(jù),如語音和圖像數(shù)據(jù)。RTCP協(xié)議用來傳送監(jiān)視實(shí)時數(shù)據(jù)傳送質(zhì)量的統(tǒng)計(jì)數(shù)據(jù),同時可以在會議業(yè)務(wù)中傳送與會者的信息。RTP和UDP一同完成傳輸層的功能。一般用偶數(shù)的UDP端口來傳送RTP數(shù)據(jù)包,用比RTP端口號大1的奇數(shù)端口號來傳送相應(yīng)的RTCP控制包。RTP協(xié)議背景及概述RTP全名:Real-timeTransportProtocol(實(shí)時傳輸協(xié)議)。它是IETF提出的一個標(biāo)準(zhǔn),對應(yīng)的RFC文檔為RFC3550。RFC3550定義了RTP,也定義了配套的實(shí)時傳輸控制協(xié)議RTCP(Real-timeTransportControlProtocol)。RTP用來為IP網(wǎng)上的語音、圖像、傳真等多種需要實(shí)時傳輸?shù)亩嗝襟w數(shù)據(jù)提供端到端的實(shí)時傳輸服務(wù)。RTP為Internet上端到端的實(shí)時傳輸提供時間信息和流同步,但并不保證服務(wù)質(zhì)量,服務(wù)質(zhì)量由RTCP來提供。RTP協(xié)議背景及概述RTP協(xié)議原理:較簡單,負(fù)責(zé)對流媒體數(shù)據(jù)進(jìn)行封包并實(shí)現(xiàn)媒體流的實(shí)時傳輸,即它按照RPT數(shù)據(jù)包格式來封裝流媒體數(shù)據(jù),并利用與它綁定的協(xié)議進(jìn)行數(shù)據(jù)包的傳輸。RTCP原理:向會話中的所有成員周期性地發(fā)送控制包來實(shí)現(xiàn)的,應(yīng)用程序通過接收這些控制數(shù)據(jù)包,從中獲取會話參與者的相關(guān)資料,以及網(wǎng)絡(luò)狀況、分組丟失概率等反饋信息,從而能夠?qū)Ψ?wù)質(zhì)量進(jìn)行控制或者對網(wǎng)絡(luò)狀況進(jìn)行診斷。RTP協(xié)議背景及概述RTP在端口號1025到65535之間選擇一個未使用的偶數(shù)UDP端口號,而在同一次會話中的RTCP則使用下一個基數(shù)UDP端口號。默認(rèn)端口號:
RTP:5004
RTCP:5005RTP協(xié)議背景及概述
從下圖可看出RTP被劃分在傳輸層,它建立在UDP上。同UDP協(xié)議一樣,為了實(shí)現(xiàn)其實(shí)時傳輸功能,RTP也有固定的封裝形式。RTP用來為端到端的實(shí)時傳輸提供時間信息和流同步,但并不保證服務(wù)質(zhì)量。服務(wù)質(zhì)量由RTCP來提供。
圖1網(wǎng)絡(luò)層次關(guān)系RTP/RTCP工作原理RTP協(xié)議背景及概述因特網(wǎng)ACB發(fā)送端接收端接收端RTPRTCPRTCPRTCP如果網(wǎng)絡(luò)情況好,可以減少語音的延遲時間,也可以增大視頻的發(fā)送幀率或質(zhì)量。若網(wǎng)絡(luò)狀況不好,可以增大語音延遲時間以保證語音連續(xù),也可減少視頻的發(fā)送幀率或質(zhì)量,以減少網(wǎng)絡(luò)的阻塞。RTP協(xié)議封裝壓縮編碼送入運(yùn)輸層從開發(fā)者的角度看,RTP應(yīng)當(dāng)是應(yīng)用層的一部分。RTP實(shí)現(xiàn)者在發(fā)送RTP數(shù)據(jù)時,需先將數(shù)據(jù)封裝成RTP包,而在接收到RTP數(shù)據(jù)包,需要將數(shù)據(jù)從RTP包中提取出來。下圖為RTP頭部格式RTP協(xié)議封裝版本號填充位(1bit)若p=1則在該報(bào)文的尾部填充一個或多個額外的八位組,它們不是有效載荷的一部分。填充可能用于某些具有固定長度的加密算法或者用在底層數(shù)據(jù)單元中傳輸多個RTP包擴(kuò)展(X):1個比特,置“1”表示RTP報(bào)頭后緊隨一個擴(kuò)展報(bào)頭CSRC計(jì)數(shù)(CC):4比特CSRC計(jì)數(shù)包含了跟在固定頭后面CSRC識別符的數(shù)目標(biāo)記(M):1個比特,其具體解釋由應(yīng)用文檔來定義。例如,對于視頻流,它表示一幀的結(jié)束,而對于音頻,則表示一次談話的開始7個比特,它指示在用戶數(shù)據(jù)字段中承載數(shù)據(jù)的載荷類別序列號16比特每發(fā)送一個RTP數(shù)據(jù)包,序列號加一,接收機(jī)可以據(jù)此檢測包損和重建包序列.序列號的初始值是隨機(jī)的(不可預(yù)測),以使即便在源本身不加密時(有時包要通過翻譯器,它會這樣做),對加密算法泛知的普通文本攻擊也會更加困難有效載荷類型:7位,指出后面的RTP數(shù)據(jù)屬于何種格式的應(yīng)用。應(yīng)用層可根據(jù)次類型進(jìn)行處理。音頻:μ律PCM(0),GMS(3) A律PCM(8),G.722(9),G728(1)視頻:活動JPEG(26)、H.261(31)、
MPEG1(32)、MPEG2(33)等
RTCP的主要功能功能1功能2功能3功能4提供數(shù)據(jù)傳輸質(zhì)量的反饋為每個RTP源傳輸一個固定的識別符CNAME知曉成員數(shù)目,控制包的發(fā)送速率傳輸最小連接控制信息,如參加者標(biāo)識4.語音編碼PCM(G.711編碼)比特率為64kb/s,在傳統(tǒng)電話中得到廣泛使用。G.729編碼比特率為8kbit/sG.723.1編碼為雙速率話音編碼標(biāo)準(zhǔn):5.3kbit/s和6.3kbit/s是PSTN上可視電話標(biāo)準(zhǔn)系列中的話音編碼標(biāo)準(zhǔn)自適應(yīng)多速率AMR編碼支持8種速率:12.2Kbit/s,10.2Kbit/s,7.95Kbit/s,7.40Kbit/s,6.70Kbit/s,5.90Kbit/s,5.15Kbit/s和4.75Kbit/s在移動通信網(wǎng)中采用(5)RPE-LTP:長時預(yù)測的規(guī)則脈沖激勵的線性預(yù)測Regular-PulseExcitedLPCwithaLong-TermPredictor
(1)ADPCM:自適應(yīng)差分脈沖編碼adaptivedifferencepulsecodemodulation
(2)CELP:碼本激勵線性預(yù)測(codeexcitedlinearprediction)
(3)ACELP:代數(shù)碼本激勵線性預(yù)測Algebraic-Code-ExcitedLinear-Prediction
(4)CS-ACELP:共軛結(jié)構(gòu)的代數(shù)碼本激勵線性預(yù)測ConjugateStructureAlgebraic-Code-ExcitedLinear-Prediction5.多媒體數(shù)據(jù)在IP網(wǎng)絡(luò)中傳送時所占帶寬的計(jì)算多媒體編碼數(shù)據(jù)在IP網(wǎng)絡(luò)中傳送時的封裝結(jié)構(gòu)多媒體編碼數(shù)據(jù)在IP網(wǎng)絡(luò)中傳送時所占的帶寬不僅包含多媒體編碼所占的帶寬,還包含RTP頭部、UDP頭部、IP頭部和數(shù)據(jù)鏈路層頭部所占的帶寬例:在不考慮靜音壓縮和數(shù)據(jù)鏈路層頭部所占的帶寬的情況下,G.729編碼數(shù)據(jù)每20ms傳送一次,則每秒需傳送50個語音包,每個語音包都包含12字節(jié)的RTP頭部、8字節(jié)的UDP頭部和20字節(jié)的IP頭部,則每1路G.729話音所占的帶寬為(20+8+12)*8*50+8000=24000bit/s=24kbit/s如果考慮Ethernet頭部所占帶寬,Ethernet頭部為304bit(38byte)。則每1路G.729話音所占的帶寬為(20+8+12+38)*8*50+8000=39200bit/s=39.2kbit/s如果考慮到靜音壓縮的因素,所占帶寬可減少一部分。從以上計(jì)算可看出,各級報(bào)頭所占的帶寬的開銷遠(yuǎn)大于話音編碼本身所占的帶寬。第二章2.1下一代網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議2.2SIP協(xié)議和SDP協(xié)議2.3H.248協(xié)議2.4BICC協(xié)議2.5信令傳輸協(xié)議SIGTRAN2.2SIP協(xié)議和SDP協(xié)議SIP(SessionInitiationProtocal)稱為會話啟動協(xié)議,是由Internet工程任務(wù)組IETF于1999年提出的一個在基于IP網(wǎng)絡(luò)中,特別是在Internet這樣一種結(jié)構(gòu)的網(wǎng)絡(luò)環(huán)境中,實(shí)現(xiàn)多媒體實(shí)時通訊應(yīng)用的一種信令協(xié)議。SIP協(xié)議的主要功能是:用戶定位:確定用于通信的終端系統(tǒng)的位置;用戶能力:確定通信媒體和媒體的使用參數(shù);用戶可達(dá)性:確定被叫加入通信的意愿;呼叫建立:建立主叫和被叫的呼叫參數(shù);呼叫處理:包括呼叫轉(zhuǎn)移和呼叫終止。SIP協(xié)議主要應(yīng)用于軟交換設(shè)備與應(yīng)用服務(wù)器間、不同的軟交換設(shè)備之間、SIP智能終端與SIP服務(wù)器之間、不同的SIP服務(wù)器之間。主要特點(diǎn)是應(yīng)用層的控制協(xié)議,可以建立,修改和結(jié)束多媒體會話。獨(dú)立于TCP或者UDP,使用自己應(yīng)用層協(xié)議保證消息的可靠傳送。消息體采用文本方式以客戶-服務(wù)器方式建立會話靈活的尋址方式SIP沒有媒體協(xié)商功能,往往需要集成SDP協(xié)議2.2.1SIP協(xié)議的網(wǎng)絡(luò)模型SIP協(xié)議的網(wǎng)絡(luò)模型結(jié)構(gòu)中有兩類基本的網(wǎng)絡(luò)實(shí)體:SIP用戶代理和SIP網(wǎng)絡(luò)服務(wù)器。用戶代理是駐存在終端系統(tǒng)中的功能塊,而SIP服務(wù)器是處理與多個呼叫相關(guān)聯(lián)信令的網(wǎng)絡(luò)設(shè)備。
功能實(shí)體(1)UserAgent(呼叫代理)
是SIP網(wǎng)絡(luò)的終端,直接和用戶發(fā)生交互作用的功能實(shí)體,能代理用戶的所有請求或響應(yīng)。具體的分為UserAgentClient和UserAgentServer。UAC是客戶端,表示主叫;UAS是服務(wù)端,表示被叫。REGISTRARSERVER(注冊服務(wù)器) 接受客戶端的注冊請求,將用戶的地址信息寫入數(shù)據(jù)庫,并返回注冊狀態(tài)。功能實(shí)體(2)
REDIRECTSERVER(重定向服務(wù)器)
接受SIP的請求,映射請求的原地址成零個或者多個IP地址,并且返回給客戶端。由客戶端重新發(fā)起請求。LOCATIONSERVER(定位服務(wù)器)
管理若干數(shù)據(jù)庫,接受由RedirectServer或者ProxyServer的路由查詢。2023/2/1SIP網(wǎng)絡(luò)成員用戶代理(UA)即用戶終端
UAC(用戶代理客戶端)UAS(用戶代理服務(wù)器)網(wǎng)絡(luò)服務(wù)器:代理服務(wù)器重定向服務(wù)器注冊服務(wù)器定位服務(wù)器呼叫代理UserAgent(呼叫代理)
是SIP網(wǎng)絡(luò)的終端,直接和用戶發(fā)生交互作用的功能實(shí)體,能代理用戶的所有請求或響應(yīng)。具體的分為UserAgentClient和UserAgentServer。UAC是客戶端,表示主叫;UAS是服務(wù)端,表示被叫。定位服務(wù)器LOCATIONSERVER(定位服務(wù)器)
管理若干數(shù)據(jù)庫,接受由RedirectServer或者ProxyServer的路由查詢。代理服務(wù)器ProxyServer(代理服務(wù)器)代表其他客戶機(jī)發(fā)起請求,既充當(dāng)服務(wù)器又充當(dāng)客戶機(jī)的中間程序。完成SIP消息的轉(zhuǎn)接和轉(zhuǎn)發(fā)功能,可以修改SIP消息內(nèi)容。具體功能有:呼叫認(rèn)證、狀態(tài)管理、路由選擇、失敗重傳B2BUA:是一種背靠背的用戶代理。先終止一個呼叫,然后重新發(fā)起一個呼叫。B2BUA既具備用戶代理功能,又具有代理服務(wù)器的特性。UACUAC代理服務(wù)器多支代理請求請求請求響應(yīng)響應(yīng)響應(yīng)2023/2/1代理服務(wù)器類型無狀態(tài)的代理服務(wù)器一旦將消息轉(zhuǎn)發(fā)后就丟棄其狀態(tài)信息.有狀態(tài)的代理服務(wù)器會紀(jì)錄經(jīng)其轉(zhuǎn)發(fā)的呼叫的狀態(tài)信息.2023/2/1重定向服務(wù)器
重定向服務(wù)器:發(fā)送重定向響應(yīng)(Response)給客戶端.在這個響應(yīng)里包含有重定向到新的服務(wù)器的地址。
通過響應(yīng)告訴請求的發(fā)起方下一跳服務(wù)器的地址,然后由請求發(fā)起方根據(jù)此地址向下一跳服務(wù)器重新發(fā)送請求。一個重定向服務(wù)器是一個SIP代理服務(wù)器或者SIP-registrar來對一個INVITE消息回復(fù)3XX響應(yīng)的實(shí)體。這個回復(fù)帶有Contact頭域,提供應(yīng)該去聯(lián)絡(luò)的設(shè)備的地址。重定向服務(wù)器UACUAC請求請求響應(yīng)響應(yīng)2023/2/1重定向服務(wù)器與代理服務(wù)器的區(qū)別重定向服務(wù)器的目的是提供可供選擇的地址列表供用戶定位SIPUA,代理服務(wù)器則是代替用戶繼續(xù)后面的定位嘗試重定向服務(wù)器只提供地址解析服務(wù),類似于DNS重定向服務(wù)器不主動發(fā)送SIP請求重定向服務(wù)器不需要維持事務(wù)狀態(tài)(你問一個問題,它回答一個,之后什么都不記得了)2023/2/1UACUAC請求請求響應(yīng)響應(yīng)注冊服務(wù)器注冊服務(wù)器注冊服務(wù)器接受終端的Register請求,紀(jì)錄終端的SIP地址(SIPURL)和IP地址,并對定位服務(wù)器進(jìn)行添加、修改、查詢等操作。注冊服務(wù)器通常與代理服務(wù)器或重定向服務(wù)器和代理服務(wù)器在同一個物理實(shí)體里.用戶終端在啟動后都需要進(jìn)行注冊,用于紀(jì)錄當(dāng)前的位置信息.這種基于注冊服務(wù)器的轉(zhuǎn)發(fā)特性是實(shí)現(xiàn)號碼轉(zhuǎn)移服務(wù)的基礎(chǔ)。功能:接收用戶的注冊請求記錄用戶的SIP地址和IP地址的綁定關(guān)系提供注冊認(rèn)證功能,是實(shí)現(xiàn)用戶移動性的基礎(chǔ)2.2.2基于SIP的多媒體通信的協(xié)議棧結(jié)構(gòu)2.2.3SIP尋址和SIP通用資源定位器?
SIP協(xié)議使用SIP的通用資源定位器(URL)來標(biāo)識用戶,
并根據(jù)該URL進(jìn)行尋址。SIP
URL實(shí)際上就是應(yīng)用層
地址。?
SIP的通用資源定位器采用的URL格式為:
“用戶名+主機(jī)名”:user@host格式。
–用戶部分(User)是用戶名字或電話號碼;
–主機(jī)部分(Host)可以是DNS域名或IP地址。
–例如:SIP:info@
SIP:62281234@?
SIP系統(tǒng)中,用戶的地址分為兩種:
–注冊賬號(注冊地址)
–當(dāng)前地址定位SIP服務(wù)器當(dāng)SIP客戶機(jī)想要發(fā)送一個請求時,客戶機(jī)可以通過已經(jīng)配置的本地SIP代理服務(wù)器進(jìn)行代理呼叫,也可以將請求發(fā)送給Request-URL所對應(yīng)的IP地址及其端口。在通過本地SIP代理服務(wù)器進(jìn)行代理呼叫時,SIP客戶機(jī)將所有的SIP請求(不管具體的RequestURL如何)一律提交給本地SIP代理服務(wù)器,由它進(jìn)行代理并最終完成該請求。在后一種情況下,客戶機(jī)需要根據(jù)Request-URL的主機(jī)部分確定下一站服務(wù)器IP地址及用于服務(wù)器傳輸連接的傳輸協(xié)議和端口號。2.2.4SIP消息
(1)SIP消息的一般格式響應(yīng)的SIP版本SP狀態(tài)碼SP原因短語CRLF請求的方法SP請求的SIP-URLSPSIP版本CRLF
General-header|Request-header|Response-header|Entity-header消息體(SDP原碼,加密的SDP,…)起始行Start-Line消息頭域Message-line
空行CRLF
消息體Message-body
起始行又可分為請求行和狀態(tài)行兩種格式。請求行規(guī)定了所提交請求的類型。狀態(tài)行則指出某個請求是成功還是失敗。如果表示請求失敗,狀態(tài)行則指出失敗類型或失敗原因。消息頭部提供了關(guān)于請求或應(yīng)答的參數(shù),分四類通用頭部:描述消息基本屬性。請求頭部:傳遞有關(guān)請求的附加信息,對請求進(jìn)行補(bǔ)充說明。應(yīng)答頭部:傳遞有關(guān)應(yīng)答的附加信息,對應(yīng)答進(jìn)行補(bǔ)充說明。實(shí)體頭部:描述消息體內(nèi)容的長度、格式和編碼類型等屬性。消息體描述將要建立的會話的類型,包括所交換的媒體的描述。消息體的結(jié)構(gòu)或內(nèi)容使用會話描述協(xié)議SDP來描述。2023/2/1INVITEsip:niulang@SIP/2.0Via:SIP/2.0/UDPFrom:Zhinv<sip:zhinv@>To:NiuLang<sip:niulang@>Call-ID:1234560707@Cseq:1INVITESubject:MeetingonceyearContent-Type:application/sdpContent-Length:345請求行通用頭字段實(shí)體頭字段請求(Request)消息中的消息頭實(shí)例2023/2/1響應(yīng)(Response)消息中的消息頭實(shí)例SIP/2.0200OKVIA:SIP/2.0/UDPVia:SIP/2.0/UDPFrom:Zhinv<sip:zhinv@>To:NiuLang<sip:niulang@>Call-ID:1234560707@Cseq:1INVITEContent-Type:application/sdpContent-Length:256請求行通用頭字段實(shí)體頭字段Startline(起始行詳細(xì)描述)起始行Start-Line=request-line|status-line
request-line=MethodSPRequest-URISPSIP-VersionCRLFINVITEsip:SS@SunTSIP2.0status-line=SIP-VersionSPstatus-codeSPphaseCRLFSIP2.0200OK(2)SIP請求消息的請求行格式request-line=methodSPRequest-URLSPSIP-Version
CRLFSIP版本號,現(xiàn)設(shè)定為SIP/2.0SIP請求消息要發(fā)送到的當(dāng)前目的地址方法符號(方法)用來說明客戶機(jī)請求服務(wù)器執(zhí)行的操作的類型:邀請(INVITE):邀請用戶參加一個會話;證實(shí)(ACK):已經(jīng)接收到最終應(yīng)答;詢問(OPTIONS):詢問服務(wù)器的性能;再見(BYE):終止一個會話;取消(CANCEL):終止一個等待處理或正在處理的請求;登記(REGISTER):用戶代理客戶端登錄并且把地址注冊到SIP服務(wù)器?;剀嚀Q行符空格例如:INVITEsip:john@SIP/2.0當(dāng)服務(wù)器接收到一個請求消息并執(zhí)行后,將向發(fā)送這個請求消息的客戶端返回一個或多個響應(yīng)消息。
Status-Line=SIP-VersionSPStatus-CodeSPReason-PhraseCRLF(3)SIP應(yīng)答消息的狀態(tài)行格式原因說明,用文本形式對結(jié)果進(jìn)行描述表示應(yīng)答結(jié)果的3位十進(jìn)制數(shù)字的狀態(tài)碼:1XX:通知。2XX:成功。3XX:重定向。4XX:請求失敗。5XX:服務(wù)器錯誤。
6XX:全局性錯誤。SIP版本號,現(xiàn)設(shè)定為SIP/2.0例如:SIP/2.0200OK(4)SIP消息頭部From字段:表示SIP請求消息的發(fā)送者的注冊賬號。From:顯示名(SIP-URI);tag=xxxx例如:From:<sip:a.g.bell@>To字段:指明請求消息的邏輯接收者或者是用戶或資源的注冊帳號。To:顯示名(SIP-URL);tag=xxxx例如:To:Watson<sip:watson@>Call-ID字段:用以唯一標(biāo)識一個特定的邀請或標(biāo)識某一客戶的所有登記。UA發(fā)送的所有請求和響應(yīng)消息都必須有同樣的Call-ID。Call-ID:本地標(biāo)識@主機(jī)例如:Call-IDworches.Cseq字段:用于標(biāo)識事務(wù)并對事務(wù)進(jìn)行排序。每個請求都有一個命令序號Cseq,由無符號的序列號和方法名組成。例如:1INVITEVia字段:用于定義SIP事務(wù)的下層(傳輸層)傳輸協(xié)議,并標(biāo)識響應(yīng)消息將要被發(fā)送的位置。用以指示請求歷經(jīng)的路徑,防止請求消息傳送產(chǎn)生環(huán)路,并確保應(yīng)答和請求消息選擇同樣的路徑。例如:Via:SIP/2.0/UDP00:5060;branch=z9hG4bK1063644978Contact字段:指定一個SIPURI,后續(xù)請求可以用它來聯(lián)系到當(dāng)前UA。
例如:Contact:Sip:watson@Max-Forwards字段:限定一個請求消息在到達(dá)目的地之前允許經(jīng)過的最大跳數(shù)。例如:Max-Forwards:70實(shí)體頭部字段由Content-Type(內(nèi)容類型)、Content-Length(內(nèi)容長度)、Content-Language(消息體的接受者的原始語言)、Content-Encoding(編解碼方式)組成。Content-Type字段:指出消息體的類型當(dāng)消息體的類型為SDP時,Content-Type頭部字段為:“Content-Type:application/sdp”。當(dāng)消息體的類型為ISUP時,Content-Type頭部字段為:“Content-Type:application/ISUP”。5.會話描述協(xié)議SDPSDP包含了與會話整體相關(guān)的通用信息和一個或多個媒體流相關(guān)的參數(shù)說明。SDP是基于文本的協(xié)議,常被封裝在SIP、H.248協(xié)議中傳送。SDP的語法和結(jié)構(gòu)
會話級參數(shù)必須放在前面然后是媒體級參數(shù)v=0o=bell536557652353687637INIP4c=INIP4m=audio3456RTP/AVP0345SDP常用字段會話源(o)格式:o=(用戶名)(會話標(biāo)識)(版本)(網(wǎng)絡(luò)類型)(地址類型)(地址)例如:o=bell53655723536637INIP4用戶名:會話起始者在某個主機(jī)上的登錄標(biāo)識。會話ID:這個會話的唯一ID號,由會話起始者的主機(jī)生成的。版本:這個特定會話的版本號。網(wǎng)絡(luò)類型:表示網(wǎng)絡(luò)類型,字符串“IN”表示“Internet"。地址類型:表示網(wǎng)絡(luò)中的地址類型,SDP定義了IP4和IP6兩個類型。地址:生成會話的機(jī)器的網(wǎng)絡(luò)地址(完整的域名/實(shí)際的IP地址).連接信息(c)格式:c=(網(wǎng)絡(luò)類型)(地址類型)(連接地址)
例如:c=INIP4網(wǎng)絡(luò)類型:表示接收媒體數(shù)據(jù)的網(wǎng)絡(luò)和地址。連接地址:是接收數(shù)據(jù)的地址(IP地址或完整域名)。每個媒體描述必須包含一個“c=”字段,或在會話級描述中包含一個公共的“c=”字段。媒體描述(m)
格式:m={媒體}{端口}(傳輸協(xié)議){格式列表}
例如:m=audio45678RTP/AVP0
(m=)的出現(xiàn)標(biāo)志著會話中又一個媒體流參數(shù)的開始。媒體類型:音頻、視頻、應(yīng)用程序、數(shù)據(jù)或控制。端口:指明接收媒體的端口號。傳輸協(xié)議:和“c=”行中的地址類型有關(guān)。對于IP4來說,大多數(shù)媒體流都在RTP/UDP上傳送。復(fù)習(xí):SIP協(xié)議消息的分類SIP消息采用文本方式編碼,分為兩類:請求消息和響應(yīng)消息。請求消息:客戶端為了激活按特定操作而發(fā)給服務(wù)器的SIP消息。響應(yīng)消息:用于對請求消息進(jìn)行響應(yīng),指示呼叫的成功或失敗狀態(tài)。請求消息和響應(yīng)消息都包括SIP頭字段和SIP消息字段。請求消息響應(yīng)消息起始行消息頭SIP請求消息結(jié)構(gòu)消息頭消息體SIP請求消息結(jié)構(gòu)(續(xù))起始行消息頭響應(yīng)格式響應(yīng)格式(續(xù))消息頭消息體??????????????????
SIP消息示例Invite
sip:bob@
SIP/2.0Via:
SIP/2.0/UDP
:5060To:
sip:bob@From:
sip:tom@
;tag=2089095865Call-ID:
1039412186@CSeq:
1
InviteMax-Forwards:70Content-Type:
application/sdpContent-Length:
271Contact:
<sip:tom@
:5060;transport=udp>v=0o=tom
139089745962
IN
IP4
s=nc=IN
IP4
t=0
0m=audio
50000
RTP/AVP
8a=rtpmap:8
PCMA/8000a=ptime:
10請求行
頭部
消息體案例分析最簡單的呼叫經(jīng)過兩個Proxy的呼叫呼叫轉(zhuǎn)移INVITEjohn@1c=INIP40m=audio49170RTP/AVP03200OKc=INIP41m=audio12345RTP/AVP3John’sterminalringsACK1JohnMaryPort12345TheresponseindicatesthatJohn’sterminalcanreceiveGSMdata,onport123450例子一:最簡單的呼叫180RingGSMStream200OKBYE例子二:經(jīng)過兩個Proxy的呼叫例子三:遇忙轉(zhuǎn)移UserAProxyUserB1INVITEINVITE100Trying468BusyACKINVITE180Ringing180Ringing200OK200OKACKACKBothwayRTPvoiceBYEBYE200OK200OK2023/2/1標(biāo)準(zhǔn)的SIP呼叫流程2023/2/1A想同B聊天B辦公室的電話響了B拿起電話送一個確認(rèn)消息給BB要結(jié)束會話INVITE(1)非終結(jié)響應(yīng)(2)BYE(5)200ok(3)ACK(4)聊天中200ok(6)userA@userB@SIP會話流程2023/2/1userA@userB@請求響應(yīng)SIP邀請2023/2/1INVITEsip:UserB@SIP/2.0Via:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345600@CSeq:1INVITEContact:DriesBoone<sip:UserA@>Content-Type:application/sdpContent-Length:147v=0o=UserA28908445262890844526INIP4s=SessionSDPc=INIP403
t=00m=audio49172RTP/AVP0
a=rtpmap:0PCMU/8000
(1)userAUserB主叫A向被叫B發(fā)起邀請2023/2/1SIP/2.0100TryingVia:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345601@CSeq:1INVITEContent-Length:0
(2)userBUserA被叫空閑,被叫振鈴2023/2/1SIP/2.0200OKVia:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345601@Cseq:1INVITEContact:LisaMercier<sip:UserB@>Content-Type:application/sdpContent-Length:v=0
o=UserB28908445272890844527INIP4s=SessionSDPc=INIP413
t=00m=audio3456RTP/AVP0a=rtpmap:0PCMU/8000(3)userBUserA被叫摘機(jī)應(yīng)答2023/2/1ACKsip:UserB@SIP/2.0Via:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345601@CSeq:1ACKContent-Length:0
(4)userAUserB主叫確認(rèn)收到被叫摘機(jī)消息2023/2/1BYEsip:UserA@SIP/2.0Via:SIP/2.0/UDP:5060From:LisaMercier<sip:UserB@>To:DriesBoone<sip:UserA@>Call-ID:12345601@CSeq:1BYEContent-Length:0
(5)userBUserA被叫B掛機(jī)結(jié)束會話2023/2/1
SIP/2.0200OKVia:SIP/2.0/UDP:5060From:LisaMercier<sip:UserB@>To:DriesBoone<sip:UserA@>Call-ID:12345601@CSeq:1BYEContent-Length:0
(6)userAUserB主叫A確認(rèn)收到被叫掛機(jī)消息2023/2/1代理服務(wù)器模式的SIPCallINVITE(1)聊天中userB@(2)客戶機(jī)B在哪里呢?定位服務(wù)器(3)userB@(4)100Trying正在處理請求(5)InviteuserB@(6)200ok(7)200ok(8)ACK(9)ACKB接受呼叫A想同B聯(lián)系userAuserA@SIPserver@(ProxyServer)userBuserB@2023/2/1INVITEsip:SIP/2.0Via:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345600@CSeq:1INVITEContact:DriesBoone<sip:UserA@>Content-Type:application/sdpContent-Length:147v=0o=UserA28908445262890844526INIP4s=SessionSDPc=INIP403t=00m=audio49172RTP/AVP0a=rtpmap:0PCMU/8000
消息體(1)userAProxyserver用戶A通過代理服務(wù)器向用戶B發(fā)起呼叫2023/2/1
SIP/2.0100TryingVia:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345600@CSeq:1INVITEContent-Length:0(4)ProxyserveruserA代理服務(wù)器通過查詢位置服務(wù)器,得到被叫B的位置信息,通知用戶A呼叫進(jìn)行中2023/2/1INVITEsip:UserB@SIP/2.0Via:SIP/2.0/UDP:5060;branch=2d4790.1Via:SIP/2.0/UDP:5060Record-Route:<sip:UserB@;maddr=>,From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>Call-ID:12345600@CSeq:1INVITEContact:DriesBoone<sip:UserA@>Content-Type:application/sdpContent-Length:147v=0o=UserA28908445262890844526INIP4s=SessionSDPc=INIP403t=00m=audio49172RTP/AVP0a=rtpmap:0PCMU/8000
(5)ProxyserveruserB代理服務(wù)器向用戶B發(fā)起會話邀請2023/2/1
SIP/2.0200OKVia:SIP/2.0/UDP:5060;branch=2d4790.1Via:SIP/2.0/UDP:5060Record-Route:<sip:UserB@;maddr=>,From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>;tag=314159Call-ID:12345600@CSeq:1INVITEContact:LisaMercier<sip:UserB@>Content-Type:application/sdpContent-Length:147v=0o=UserB28908445272890844527INIP4s=SessionSDPc=INIP413t=00m=audio3456RTP/AVP0a=rtpmap:0PCMU/8000
(6)userBProxyserver用戶B應(yīng)答會話邀請2023/2/1
SIP/2.0200OKVia:SIP/2.0/UDP:5060Record-Route:<sip:UserB@;maddr=>,From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>;tag=314159Call-ID:12345600@CSeq:1INVITEContact:LisaMercier<sip:UserB@>
Content-Type:application/sdpContent-Length:147v=0o=UserB28908445272890844527INIP4s=SessionSDPc=INIP413t=00m=audio3456RTP/AVP0a=rtpmap:0PCMU/8000
(7)Proxyserver
userA代理服務(wù)器轉(zhuǎn)發(fā)應(yīng)答消息2023/2/1ACKsip:UserB@SIP/2.0Via:SIP/2.0/UDP:5060Route:<sip:UserB@;maddr=>,<sip:UserB@>From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>;tag=314159Call-ID:12345600@CSeq:1ACKContent-Length:0
(8)userA
Proxyserver用戶A確認(rèn)收到用戶B的應(yīng)答信號2023/2/1
ACKsip:UserB@SIP/2.0Via:SIP/2.0/UDP:5060;branch=2d4790.1Via:SIP/2.0/UDP:5060From:DriesBoone<sip:UserA@>To:LisaMercier<sip:UserB@>;tag=314159Call-ID:12345600@CSeq:1ACKContent-Length:0(9)ProxyserveruserB代理服務(wù)器轉(zhuǎn)發(fā)用戶A的確認(rèn)消息給用戶B,會話雙方開始通信6.SIP-T和SIP-I都是對SIP進(jìn)行擴(kuò)展,以便在SIP消息中能夠正確地傳送ISUP消息,從而實(shí)現(xiàn)軟交換網(wǎng)絡(luò)與PSTN互通。SIP-T由IETF定義,含義“SIPforTelephones”,SIP-T可以把ISUP消息封裝在SIP消息的消息體中傳送。SIP-I由ITU-T定義,明確說明了SIP和ISUP消息的參數(shù)映射,對下一代網(wǎng)絡(luò)與電信網(wǎng)補(bǔ)充業(yè)務(wù)的互通進(jìn)行了明確的定義,增強(qiáng)了SIP-T協(xié)議的可操作性。7.SIP擴(kuò)展方法簡介PRACK方法:用來對需要保證可靠傳送的臨時響應(yīng)予以證實(shí)。INFO方法:將被用于沿著SIP信令通路傳送呼叫中的應(yīng)用層消息。UPDATE方法:呼叫方在對話建立之后,可以發(fā)送一個包含SDP協(xié)商的UPDATE消息來修改會話參數(shù)。REFER方法:將消息接收者轉(zhuǎn)移到另外的資源上去。MESSAGE方法:用于發(fā)送即時消息。SUBSCRIBE方法:用于請求得到遠(yuǎn)端實(shí)體的當(dāng)前狀態(tài)和狀態(tài)更新。NOTIFY方法:用于通知SIP實(shí)體先前由SUBSCRIBE請求的事件已經(jīng)發(fā)生。8.SIP在華為軟交換SoftX3000上的應(yīng)用網(wǎng)絡(luò)結(jié)構(gòu)IP地址:21電話號碼:8882100注冊帳號:8882100@1IP地址:21電話號碼:8882101注冊帳號:8882101@1呼叫流程(1)(2)(3)(4)(5)(6)(7)(8)(9)(11)(10)(12)(13)(14)(15)(17)(16)(18)第二章2.1下一代網(wǎng)絡(luò)中傳輸媒體信息的協(xié)議2.2SIP協(xié)議和SDP協(xié)議2.3H.248協(xié)議2.4BICC協(xié)議2.5信令傳輸協(xié)議SIGTRAN2023/2/1101協(xié)議簡介-應(yīng)用場景H.248協(xié)議在軟交換網(wǎng)絡(luò)中的位置:軟交換設(shè)備IAD綜合接入網(wǎng)關(guān)媒體服務(wù)器H.248智能終端……H.248H.248控制層接入層2023/2/1102協(xié)議簡介-基本定義H.248是一種媒體網(wǎng)關(guān)控制協(xié)議,是軟交換網(wǎng)絡(luò)中控制層的軟交換設(shè)備(媒體網(wǎng)管控制器MGC)和接入層中各種媒體網(wǎng)關(guān)(MG)的標(biāo)準(zhǔn)接口協(xié)議;H.248協(xié)議消息編碼采用二進(jìn)制或文本方式(由于文本方式具有很強(qiáng)的可讀性,目前工程上都采用的是文本方式);H.248協(xié)議底層傳輸機(jī)制采用UDP/TCP/SCTP,也可以基于ATM傳輸(由于H.248協(xié)議對網(wǎng)絡(luò)延時和丟包不太敏感,目前工程上都是基于UDP的方式);H.248協(xié)議是一種主從協(xié)議,在MGC與MG的交互中,MGC控制呼叫建立的過程,MG只是被動的接收MGC下發(fā)的各種指令,然后完成相應(yīng)的動作。H.248提出了網(wǎng)關(guān)的連接模型概念,對媒體網(wǎng)關(guān)內(nèi)部對象進(jìn)行抽象和描述。2023/2/1103協(xié)議簡介-VOIP會話建立VOIP會話模型:MG(A)MG(B)用戶A用戶BMGCVOIP會話建立的思想:MGC通過NGN協(xié)議信令控制MG(A)和MG(B)建立一條從用戶A到用戶B之間的雙向通道,使得用戶A和用戶B之間實(shí)現(xiàn)正常通話。2023/2/1104協(xié)議簡介-會話建立的關(guān)鍵步驟MG(A)MG(B)用戶A用戶BIP通道(1)IP通道(2)MGC建立用于收發(fā)語音數(shù)據(jù)流的IP通道(1)、(2)分別將用戶A、B和IP通道(1)、(2)相連修改IP通道(1)、(2)的遠(yuǎn)端地址,建立連接會話建立過程的關(guān)鍵步驟:2023/2/1105協(xié)議簡介-會話建立的信令控制(一)IP通道(1)IP通道(2)MG(A)MG(B)用戶A用戶BMGCH.248協(xié)議引入了相應(yīng)的概念用來控制會話的建立:終結(jié)點(diǎn):終結(jié)點(diǎn)是MG中的邏輯實(shí)體,能發(fā)送和接收一種或多種媒體流和控制流。用戶對應(yīng)的模擬線路以及IP通道在H.248協(xié)議中被映射為不同類型的終結(jié)點(diǎn),不同類型的終結(jié)點(diǎn)支持不同的屬性集;關(guān)聯(lián):關(guān)聯(lián)是一些終結(jié)點(diǎn)間的聯(lián)系,它描述終結(jié)點(diǎn)之間的拓?fù)潢P(guān)系。用戶對應(yīng)的模擬線路和IP通道之間的關(guān)系被定義為關(guān)聯(lián);Line/1rtp/1Line/2rtp/2關(guān)聯(lián)1關(guān)聯(lián)22023/2/1106協(xié)議簡介-會話建立的信令控制(二)MG(A)MG(B)用戶A用戶BIP通道(1)IP通道(2)MGCLine/1rtp/1Line/2rtp/2關(guān)聯(lián)1關(guān)聯(lián)2建立臨時性終結(jié)點(diǎn)rtp/1、rtp/2MG(A)上建立關(guān)聯(lián)1,將line/1和rtp/1加入關(guān)聯(lián)1修改rtp/1、rtp/2的遠(yuǎn)端屬性參數(shù)H.248協(xié)議建立會話的關(guān)鍵步驟:1.網(wǎng)關(guān)的連接模型基本構(gòu)件:終端(Termination)和關(guān)聯(lián)域(Context)終端終端是MG上的一個邏輯實(shí)體,它可以發(fā)送和/或接收一個或者多個數(shù)據(jù)流。終端分為半永久性終端和臨時性終端兩種。物理終結(jié)點(diǎn)代表物理實(shí)體;臨時終結(jié)點(diǎn)代表臨時性的信息流,由H.248命令來創(chuàng)建和刪除。終端可支持信號,這些信號可以是MG產(chǎn)生的媒體流(如信號音和錄音通知),也可以是隨路信號。終端可對事件進(jìn)行檢測。終端可對數(shù)據(jù)進(jìn)行統(tǒng)計(jì)。每個終端有一個終端標(biāo)識(TerminationID),在創(chuàng)建時由網(wǎng)關(guān)分配,在網(wǎng)關(guān)內(nèi)全局唯一。關(guān)聯(lián)域代表一組終端之間的相互關(guān)系,實(shí)際上對應(yīng)為呼叫,在同一個關(guān)聯(lián)域中的終端之間可相互通信。關(guān)聯(lián)的屬性:
關(guān)聯(lián)標(biāo)識符:由媒體網(wǎng)關(guān)分配,關(guān)聯(lián)標(biāo)識符在媒體網(wǎng)關(guān)范圍內(nèi)全局唯一。拓?fù)洌好枋鲆粋€關(guān)聯(lián)中終端之間的媒體流方向。關(guān)聯(lián)的優(yōu)先級:告知MG在處理關(guān)聯(lián)時的先后次序。緊急呼叫的標(biāo)識符:當(dāng)使用緊急呼叫標(biāo)識符時,MG優(yōu)先處理此類呼叫。關(guān)聯(lián)域的創(chuàng)建、修改和刪除均由相應(yīng)的H.248命令完成。關(guān)聯(lián)的屬性Context的四個屬性
ContextID:32bits,在網(wǎng)關(guān)范圍內(nèi)唯一標(biāo)識一個關(guān)聯(lián)。
ContextID是由MG決定的,在MG的范圍內(nèi)是唯一的。
特殊關(guān)聯(lián)編碼對照表終端與關(guān)聯(lián)域第一個關(guān)聯(lián)是多點(diǎn)會議的例子,在一個關(guān)聯(lián)中可以支持3個或更多的終結(jié)點(diǎn)。第二個關(guān)聯(lián)中的終結(jié)點(diǎn)處于呼叫等待狀態(tài)第三個關(guān)聯(lián)是點(diǎn)對點(diǎn)通信的例子。關(guān)聯(lián)中只有兩個終結(jié)點(diǎn)。TerminationRTPStreamTerminationSCNBear.Ch.TerminationSCNBear.
Ch.TerminationRTPStreamTerminationRTPStreamTerminationSCNBear.Ch.TerminationSCNBear.
Ch.ContextContextContext123***2.H.248消息結(jié)構(gòu)H.248消息內(nèi)的事務(wù)交互是相互獨(dú)立的,多個事務(wù)被獨(dú)立處理。一個事務(wù)內(nèi)的若干動作必須順序執(zhí)行。動作是由一系列局限于一個關(guān)聯(lián)的命令組成。命令(Command)是H.248消息的主要內(nèi)容,實(shí)現(xiàn)對關(guān)聯(lián)和終端屬性的控制。命令的參數(shù)被組織成“描述符”(Descriptor)H.248協(xié)議的消息機(jī)制Message消息TransactionI事務(wù)TransactionIDnContextID1關(guān)聯(lián)ContextIDnCMD1命令CMDnDes-nDes-1描述符......H.248消息的一般格式H.248消息有文本編碼和二進(jìn)制編碼兩種格式。在文本格式時,一個消息以MEGACO帶一斜線開頭,隨后是一個協(xié)議版本號、一個消息ID、一個消息體。例如:
MEGACO/1[111.111.222.222]:34567Transaction=12345{Context=1111{ADD=A5555,
ADD=A6666}Context=${ADD=A7777}}Transaction=3456{…}消息ID一般是發(fā)送信息的實(shí)體的域名/IP地址及端口號。事務(wù)(一)MGC和MG之間的一組命令構(gòu)成事務(wù),事務(wù)由TransactionID進(jìn)行標(biāo)識。事務(wù)包含一個或多個動作,一個動作由一系列局限于一個關(guān)聯(lián)的命令組成。一個事務(wù)從“事務(wù)頭部”(TransHdr)開始。在TransHdr中包含TransactionID。TransactionID由事務(wù)的發(fā)送者指定,在發(fā)送者范圍內(nèi)是唯一的。TransHdr后面是該事務(wù)的若干動作,這些動作必須順序執(zhí)行。若某動作中的一個命令執(zhí)行失敗,該事務(wù)中以后的命令將終止執(zhí)行(Optional命令除外)。引入事務(wù)的一個重要功能是可以保證命令的順序執(zhí)行。當(dāng)命令標(biāo)記為“Optional”(可選命令),該命令可以越過一個命令執(zhí)行失敗而導(dǎo)致以后命令終止執(zhí)行的限制,即如果可選命令執(zhí)行不成功,其后的命令可以繼續(xù)執(zhí)行。事務(wù)(二)事務(wù)包括請求和響應(yīng)兩種類型,而響應(yīng)也有兩種:TransactionReply和TransactionPending。事務(wù)(三)TransactionReply是事務(wù)接收者對TransactionRequest的一種響應(yīng),表明接收者完成該TransactionRequest命令執(zhí)行,對每個事務(wù)都應(yīng)有一個Reply響應(yīng)。有兩種情況表明一個TransactionRequest執(zhí)行完成:TransactionRequest中的所有命令成功執(zhí)行完畢TransactionRequest中的一個非可選命令執(zhí)行失敗。TransactionReply結(jié)構(gòu)如下:事務(wù)(四)TransactionPending由接收者發(fā)送,指示事務(wù)正在處理,但仍然沒有完成。當(dāng)命令處理時間較長時,可以防止發(fā)送者重發(fā)事務(wù)請求。TransactionPending結(jié)構(gòu)如下:可見,事務(wù)表現(xiàn)為TransactionRequest,對TransactionRequest
接收者必須響應(yīng)一個TransactionReply,在此之前可能由許多
TransactionPending響應(yīng)。動作動作是由一系列局限于一個關(guān)聯(lián)的命令組成。動作與關(guān)聯(lián)(Context)是密切相關(guān)的,動作由ContextID進(jìn)行標(biāo)識。在一個動作內(nèi),命令需要順序執(zhí)行。一個動作從關(guān)聯(lián)頭部(CtxHdr)開始,在CtxHdr包含ContextID,用于標(biāo)識該動作對應(yīng)的關(guān)聯(lián)。ContextID由MG指定,在MG范圍內(nèi)是唯一的。MGC必須在以后的與此關(guān)聯(lián)相關(guān)的事務(wù)中使用ContextID。在CtxHdr后面是若干命令,這些命令都與ContextID標(biāo)識的關(guān)聯(lián)相關(guān)。命令(一)命令(Command)
:是H.248消息的主要內(nèi)容,實(shí)現(xiàn)對關(guān)聯(lián)和終端屬性的控制,包括指定終端報(bào)告檢測到的事件,通知終端使用什么信號和動作,以及指定關(guān)聯(lián)的拓?fù)浣Y(jié)構(gòu)等。命令由命令頭部(CMDHdr)與命令參數(shù)構(gòu)成,在H.248協(xié)議中,命令參數(shù)被組織成“描述符”(Descriptor)。H.248協(xié)議定義了八個命令,其中“Notify”是由MG發(fā)給MGC,“ServiceChange”可由MG或MGC發(fā)送,其它命令都是由MGC發(fā)給MG。2023/2/1Modify:修改終結(jié)點(diǎn)或關(guān)聯(lián)的特性;Add:向一個關(guān)聯(lián)中添加一個終結(jié)點(diǎn),當(dāng)向一個關(guān)聯(lián)添加第一個終結(jié)點(diǎn)時,接收命令的一方就會創(chuàng)建一個新的關(guān)聯(lián);Subtract:從一個關(guān)聯(lián)中將一個終結(jié)點(diǎn)刪除,當(dāng)被刪除的終結(jié)點(diǎn)是該關(guān)聯(lián)中的最后一個終結(jié)點(diǎn)時,關(guān)聯(lián)也會被刪除;Move:將一個終結(jié)點(diǎn)從一個關(guān)聯(lián)移到另一個關(guān)聯(lián)中;Notify:MG使用該命令向MGC報(bào)告MG中檢測到的事件;AuditValue:獲取終結(jié)點(diǎn)或者關(guān)聯(lián)的當(dāng)前特性值和統(tǒng)計(jì)信息等;Auditcapabilities:獲取終結(jié)點(diǎn)或者關(guān)聯(lián)所支持的所有特性和其他信息;ServiceChange:MG使用該命令向MGC注冊,MGC也可以使用該命令強(qiáng)制MG上的終結(jié)點(diǎn)退出/進(jìn)入服務(wù);命令(二)2023/2/1122命令-Add(一)用途(MGC->MG):向一個已經(jīng)存在的關(guān)聯(lián)中增加已經(jīng)存在的終結(jié)點(diǎn)創(chuàng)建一個新的關(guān)聯(lián),并向創(chuàng)建的新關(guān)聯(lián)中添加已經(jīng)存在的終結(jié)點(diǎn);關(guān)聯(lián)1A0!/1[]:2944Transaction=10{Context=1{Add=RTP/0}}關(guān)聯(lián)1A0RTP/0!/1[]:2944Transaction=10{Context=${Add=RTP/1}}MG創(chuàng)建一個新的關(guān)聯(lián),并為該關(guān)聯(lián)分配一個關(guān)聯(lián)ID如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 固體飲料行業(yè)市場機(jī)會考核試卷
- 2024年企業(yè)經(jīng)營管理與咨詢服務(wù)合同
- 2024年云計(jì)算服務(wù)合同:SSL協(xié)議的安全實(shí)施
- 家用紡織品的信息化與智能化生產(chǎn)考核試卷
- 城市更新項(xiàng)目瓷磚供應(yīng)方案
- 2024年會員卡權(quán)益轉(zhuǎn)讓合同
- 2024年雙方終止合作銷售合同協(xié)議書
- 勞務(wù)檢測合同模板
- 發(fā)票技術(shù)協(xié)議合同模板
- 新材料新技術(shù)引領(lǐng)經(jīng)濟(jì)發(fā)展和社會進(jìn)步的利器考核試卷
- 人教版2024新版七年級上冊數(shù)學(xué)期中模擬測試卷(含答案解析)
- 電梯日管控、周排查、月調(diào)度內(nèi)容表格
- 提升桿式軌道球閥制造工藝及技術(shù)特點(diǎn)
- 蘇教版二年級(上)數(shù)學(xué)全冊集體備課
- 鋸齒形螺紋的壓型和基本尺寸
- 葛洲壩、三峽畢業(yè)實(shí)習(xí)
- 浙江大學(xué)top期刊850種
- 熱風(fēng)爐設(shè)計(jì)說明書.doc
- 強(qiáng)制性運(yùn)動療法講解
- 電力系統(tǒng)的故障類型及原因分析
- 產(chǎn)品總監(jiān)績效考核表
評論
0/150
提交評論