版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目 錄第3章 協(xié)議. 3-13.1 概述. 3-13.1.1 基本概念. 3-13.1.2 相關(guān)術(shù)語(yǔ). 3-23.1.3 協(xié)議棧結(jié)構(gòu). 3-53.1.4 sip協(xié)議的應(yīng)用. 3-53.2 協(xié)議消息. 3-63.2.1 消息類型. 3-63.2.2 消息結(jié)構(gòu). 3-93.3 基本消息流程. 3-223.3.1 sip用戶注冊(cè)流程. 3-223.3.2 成功的sip用戶呼叫流程. 3-253.3.3 成功的sip中繼呼叫流程. 3-333.3.4 成功的sip-t中繼呼叫流程. 3-36第3章 sip協(xié)議3.1 概述3.1.1 基本概念會(huì)話啟動(dòng)協(xié)議sip(session initiation pr
2、otocol)是由ietf提出并主持研究的一個(gè)在ip網(wǎng)絡(luò)上進(jìn)行多媒體通信的應(yīng)用層控制協(xié)議,它被用來(lái)創(chuàng)建、修改、和終結(jié)一個(gè)或多個(gè)參加者參加的會(huì)話進(jìn)程。這些會(huì)話包括internet多媒體會(huì)議、internet電話、遠(yuǎn)程教育以及遠(yuǎn)程醫(yī)療等。即所有的因特網(wǎng)上交互式兩方或多方多媒體通信活動(dòng),統(tǒng)稱為多媒體會(huì)話。參加會(huì)話的成員可以通過組播方式、單播聯(lián)網(wǎng)方式或者兩者結(jié)合的方式進(jìn)行通信。sip協(xié)議是一個(gè)正在發(fā)展和不斷研究中的協(xié)議。一方面,它借鑒了其他internet標(biāo)準(zhǔn)和協(xié)議的設(shè)計(jì)思想,在風(fēng)格上遵循因特網(wǎng)一貫堅(jiān)持的簡(jiǎn)練、開放、兼容和可擴(kuò)展等原則,并充分注意到因特網(wǎng)開放而復(fù)雜的網(wǎng)絡(luò)環(huán)境下的安全問題。另一方面,它也
3、充分考慮了對(duì)傳統(tǒng)公共電話網(wǎng)的各種業(yè)務(wù),包括in業(yè)務(wù)和isdn業(yè)務(wù)的支持。利用帶有會(huì)話描述的sip邀請(qǐng)消息來(lái)創(chuàng)建會(huì)話,以使參加者能夠通過sip交互進(jìn)行媒體類型協(xié)商。它通過代理和重定向請(qǐng)求用戶當(dāng)前位置,以支持用戶的移動(dòng)性。用戶也可以登記它們的當(dāng)前位置。sip協(xié)議獨(dú)立于其他會(huì)議控制協(xié)議,它在設(shè)計(jì)上獨(dú)立于下面的傳輸層協(xié)議,因此可以靈活方便地?cái)U(kuò)展其他附加功能。sip作為一個(gè)應(yīng)用層的多媒體會(huì)話信令協(xié)議,可以被用來(lái)發(fā)起一個(gè)會(huì)話進(jìn)程、在會(huì)話中邀請(qǐng)其他參加者加入會(huì)議,會(huì)話本身可以通過基于組播協(xié)議的會(huì)話通告協(xié)議(sap)、電子郵件、網(wǎng)頁(yè)通告、以及輕量級(jí)號(hào)薄訪問協(xié)議(ldap)等方式預(yù)先通告各個(gè)可能的參加者。sip
4、協(xié)議支持別名映射、重定向服務(wù)、isdn和in業(yè)務(wù)。它支持個(gè)人移動(dòng)(personal mobility),即終端用戶能夠在任何地方、任何時(shí)間請(qǐng)求和獲得已訂購(gòu)的任何電信業(yè)務(wù)。總的來(lái)說,會(huì)話啟動(dòng)協(xié)議能夠支持下列五種多媒體通信的信令功能:l 用戶定位:確定參加通信的終端用戶的位置;l 用戶通信能力協(xié)商:確定通信的媒體類型和參數(shù);l 用戶意愿交互:確定被叫是否樂意參加某個(gè)通信;l 建立呼叫:包括向被叫“振鈴”,確定主叫和被叫的呼叫參數(shù);l 呼叫處理和控制:包括呼叫重定向、呼叫轉(zhuǎn)移、終止呼叫等等。sip協(xié)議可以通過mcu(multipoint control unit)、單播聯(lián)網(wǎng)方式、或組播方式創(chuàng)建多方會(huì)
5、話,支持pstn和因特網(wǎng)電話之間的網(wǎng)關(guān)功能。sip協(xié)議可以與其他用于建立呼叫的信令系統(tǒng)或協(xié)議結(jié)合使用,它在設(shè)計(jì)上充分考慮了對(duì)其他協(xié)議的可擴(kuò)展性。譬如,sip協(xié)議支持的主叫可以識(shí)別出h.323協(xié)議支持的被叫,通過h.245網(wǎng)關(guān)利用h.225.0協(xié)議向被叫發(fā)起并建立呼叫;另外,一個(gè)sip主叫可以識(shí)別出pstn上的被叫及其電話號(hào)碼,通過與pstn相連的網(wǎng)關(guān)向被叫發(fā)起并建立呼叫。sip協(xié)議不提供發(fā)言控制(floor control)、投票等會(huì)議控制功能,也不規(guī)定如何管理一個(gè)會(huì)議。但是sip協(xié)議可被用來(lái)引發(fā)這些會(huì)議控制協(xié)議。sip協(xié)議本身不具備資源預(yù)留功能,但可以向被邀請(qǐng)者們傳達(dá)這方面的信息。3.1.2
6、 相關(guān)術(shù)語(yǔ)1. 呼叫一個(gè)呼叫是由一個(gè)公共源端所邀請(qǐng)的在一個(gè)會(huì)議中的所有參加者組成,由一個(gè)全球唯一的call-id進(jìn)行標(biāo)識(shí)。例如:由同一個(gè)源邀請(qǐng)的一個(gè)會(huì)議的所有參加者構(gòu)成一個(gè)呼叫;點(diǎn)到點(diǎn)ip電話會(huì)話是一種最簡(jiǎn)單的會(huì)話,它映射為單一的sip呼叫。通常情況下,呼叫由主叫方創(chuàng)建,但是更一般說來(lái),呼叫可由并不參與媒體通信的第三方創(chuàng)建,此時(shí)會(huì)話的主叫方和會(huì)話的邀請(qǐng)方并不相同。對(duì)于多播會(huì)議來(lái)說,一個(gè)用戶可由不同的人邀請(qǐng)參加同一會(huì)議,則每一個(gè)邀請(qǐng)應(yīng)視作不同的呼叫。對(duì)于基于mcu的會(huì)議,每個(gè)參與者使用一個(gè)呼叫邀請(qǐng)自己加入mcu。2. 事務(wù)sip是一個(gè)客戶/服務(wù)器協(xié)議??蛻艉头?wù)器之間的操作從第1個(gè)請(qǐng)求至最終響應(yīng)
7、為止的所有消息構(gòu)成一個(gè)sip事務(wù)。一個(gè)正常的呼叫一般包含三個(gè)事務(wù)。其中,呼叫啟動(dòng)包含兩個(gè)操作請(qǐng)求:邀請(qǐng)(invite)和證實(shí)(ack),前者需要回送響應(yīng),后者只是證實(shí)已收到最終響應(yīng),不需要回送響應(yīng)。呼叫終結(jié)包含一個(gè)操作請(qǐng)求:再見(bye)。3. sip url為了能正確傳送協(xié)議消息,sip還需解決兩個(gè)重要的問題。一是尋址,即采用什么樣的地址形式標(biāo)識(shí)終端用戶;二是用戶定位(下面介紹)。sip沿用www技術(shù)解決這兩個(gè)問題。尋址采用sip url(uniform resource locators),按照rfc2396規(guī)定的uri導(dǎo)則定義其語(yǔ)法,特別是用戶名字段可以是電話號(hào)碼,以支持ip電話網(wǎng)關(guān)尋址
8、,實(shí)現(xiàn)ip電話和pstn的互通。sip url的一般結(jié)構(gòu)為:sip:用戶名:口令主機(jī):端口;傳送參數(shù);用戶參數(shù);方法參數(shù);生存期參數(shù);服務(wù)器地址參數(shù)?頭部名頭部值“sip”表示需采用sip協(xié)議和所指示的端系統(tǒng)通信?!坝脩裘笨梢杂扇我庾址M成,一般可取類似與e-mail用戶名形式,也可以是電話號(hào)碼(softx3000目前用戶名是電話號(hào)碼)。“主機(jī)”可為主機(jī)域名或ipv4地址?!岸丝凇敝甘菊?qǐng)求消息送往的端口號(hào),其缺省值為5060,即公開的sip端口號(hào)?!翱诹睢笨梢灾糜趕ip url中,但一般不建議這樣做,因?yàn)槠浒踩允怯袉栴}的?!皞魉蛥?shù)”指示采用tcp還是udp傳送,缺省值為udp?!坝脩魠?shù)
9、”,sip url的一個(gè)特定功能是允許主機(jī)類型為ip電話網(wǎng)關(guān),此時(shí),用戶名可以為一般的電話號(hào)碼。由于bnf語(yǔ)法表示無(wú)法區(qū)分電話號(hào)碼和一般的用戶名,因此,在域名后增加了“用戶參數(shù)”字段。該字段有兩個(gè)可選值:ip和電話,當(dāng)其設(shè)定為“電話”時(shí),表示用戶名為電話號(hào)碼,對(duì)應(yīng)的端系統(tǒng)為ip電話網(wǎng)關(guān)。“方法參數(shù)”指示所用的方法(操作)?!吧嫫趨?shù)”指示udp多播數(shù)據(jù)包的壽命,僅當(dāng)傳送參數(shù)為udp、服務(wù)器地址參數(shù)為多播地址時(shí)才能使用?!胺?wù)器地址參數(shù)”指示和該用戶通信的服務(wù)器的地址,它覆蓋“主機(jī)”字段中的地址,通常為多播地址?!皞魉蛥?shù)”、“生存期參數(shù)”、“服務(wù)器地址參數(shù)”和“方法參數(shù)”均屬于url參數(shù),只
10、能在重定向地址,即后面所說的contact字段中才能使用。下面給出若干個(gè)sip url的示例:sip; 5550020012; 55500200為用戶名,12為ip電話網(wǎng)關(guān)的ip地址。sip; 55500200:5061; user=phone;55500200為用戶名,為主機(jī)的ip地址,5061為主機(jī)端口號(hào)。用戶參數(shù)為“電話”,表示用戶名為電話號(hào)碼。sip: alice; method=register;alice為用戶名,為主機(jī)域名。方法參數(shù)為“登記”。4. 用戶定位用戶定位基于登記。sip用戶終端上電后即向登
11、記服務(wù)器(softx3000)登記,sip專門為此定義了一個(gè)“登記”(register)請(qǐng)求消息,并規(guī)定了登記操作過程。5. 定位服務(wù)(location service)sip重定位服務(wù)器或代理服務(wù)器用來(lái)獲得被叫位置的一種服務(wù),可由定位服務(wù)器提供,但sip協(xié)議不規(guī)定sip服務(wù)器如何請(qǐng)求定位服務(wù)。在華為u-sys解決方案中,softx3000兼任定位服務(wù)器的角色。6. 代理,代理服務(wù)器(proxy、proxy sever)作為一個(gè)邏輯網(wǎng)絡(luò)實(shí)體代表客戶端轉(zhuǎn)發(fā)請(qǐng)求或者響應(yīng),可以同時(shí)作為客戶端和服務(wù)器端。代理服務(wù)器有三種形態(tài):stateless、stateful和call stateful,其可以采用
12、分支、循環(huán)等方式向多個(gè)地址嘗試轉(zhuǎn)發(fā)請(qǐng)求。代理服務(wù)器的主要功能:路由、認(rèn)證鑒權(quán)、計(jì)費(fèi)監(jiān)控、呼叫控制、業(yè)務(wù)提供等。在華為u-sys解決方案中,softx3000兼任代理服務(wù)器的角色。7. 重定向服務(wù)器(redirect server)重定向服務(wù)器將請(qǐng)求中的目的地址映射為零個(gè)或多個(gè)新的地址,然后返回給客戶端,客戶端直接再次向這些新的地址發(fā)起請(qǐng)求。重定向服務(wù)器并不接收或者拒絕呼叫,主要完成路由功能,與注冊(cè)過程配合可以支持sip終端的移動(dòng)性。在華為u-sys解決方案中,softx3000兼任重定向服務(wù)器的角色。8. 注冊(cè)員(registrar)注冊(cè)員為接收注冊(cè)請(qǐng)求的服務(wù)器,通常與proxy或者redir
13、ect server共存。注冊(cè)員需要將注冊(cè)請(qǐng)求中的地址映射關(guān)系保存到數(shù)據(jù)庫(kù)中,供后續(xù)的相關(guān)呼叫過程使用,同時(shí)可以提供定位服務(wù)。在華為u-sys解決方案中,softx3000兼任注冊(cè)員的角色。9. 用戶助理(user agent)用來(lái)發(fā)起或者接收請(qǐng)求的邏輯實(shí)體稱為user agent。10. 用戶助理客戶(user agent client)發(fā)起請(qǐng)求的一方稱為uac(user agent client),舉例sip phone就是uac的一種實(shí)際形態(tài)。11. 用戶助理服務(wù)器(user agent server)接收請(qǐng)求的一方稱為uas(user agent server),舉例softx3000
14、就是uas的一種實(shí)際形態(tài)。注意:uac和uas的劃分是針對(duì)一個(gè)事務(wù)而言的。3.1.3 協(xié)議棧結(jié)構(gòu)sip協(xié)議棧結(jié)構(gòu)如圖3-1所示。圖3-1 sip協(xié)議棧sip協(xié)議是ietf多媒體數(shù)據(jù)和控制體系結(jié)構(gòu)的一部分,與其它協(xié)議相互合作,例如:rsvp(resource reservation protocol)用于預(yù)約網(wǎng)絡(luò)資源,rtp(real-time transmit protocol)用于傳輸實(shí)時(shí)數(shù)據(jù)并提供服務(wù)質(zhì)量(qos)反饋,rtsp(real-time stream protocol)用于控制實(shí)時(shí)媒體流的傳輸,sap(session announcement protocol)用于通過組播發(fā)布
15、多媒體會(huì)話,sdp(session description protocol)用于描述多媒體會(huì)話。但是sip協(xié)議的功能和實(shí)施并不依賴這些協(xié)議。傳輸層支持:sip協(xié)議承載在ip網(wǎng),網(wǎng)絡(luò)層協(xié)議為ip,傳輸層協(xié)議可用tcp或udp,推薦首選udp。3.1.4 sip協(xié)議的應(yīng)用softx3000通過sip/sip-t與其它軟交換系統(tǒng)互通,以及與其它sip域設(shè)備(如sip phone,sip softphone等)互通,sip協(xié)議在ngn中的典型應(yīng)用如圖3-2所示:圖3-2 sip在ngn中的典型應(yīng)用3.2 協(xié)議消息3.2.1 消息類型sip消息采用文本方式編碼,分為兩類:請(qǐng)求消息和響應(yīng)消息。1. 請(qǐng)求
16、消息用于客戶端為了激活按特定操作而發(fā)給服務(wù)器的sip消息,包括invite, ack,options,bye,cancel和register消息等,各消息功能如表3-1所示。表3-1 請(qǐng)求消息請(qǐng)求消息消息含義invite發(fā)起會(huì)話請(qǐng)求,邀請(qǐng)用戶加入一個(gè)會(huì)話,會(huì)話描述含于消息體中。對(duì)于兩方呼叫來(lái)說,主叫方在會(huì)話描述中指示其能夠接受的媒體類型及其參數(shù)。被叫方必需在成功響應(yīng)消息的消息體中指明其希望接受哪些媒體,還可以指示其行將發(fā)送的媒體。如果收到的是關(guān)于參加會(huì)議的邀請(qǐng),被叫方可以根據(jù)call-id或者會(huì)話描述中的標(biāo)識(shí)確定用戶已經(jīng)加入該會(huì)議,并返回成功響應(yīng)消息。ack證實(shí)已收到對(duì)于invite請(qǐng)求的最終
17、響應(yīng)。該消息僅和invite消息配套使用。bye結(jié)束會(huì)話cancel取消尚未完成的請(qǐng)求,對(duì)于已完成的請(qǐng)求(即已收到最終響應(yīng)的請(qǐng)求)則沒有影響register注冊(cè)options查詢服務(wù)器的能力2. 響應(yīng)消息用于對(duì)請(qǐng)求消息進(jìn)行響應(yīng),指示呼叫的成功或失敗狀態(tài)。不同類的響應(yīng)消息由狀態(tài)碼來(lái)區(qū)分。狀態(tài)碼包含三位整數(shù),狀態(tài)碼的第一位用于定義響應(yīng)類型,另外兩位用于進(jìn)一步對(duì)響應(yīng)進(jìn)行更加詳細(xì)的說明。各響應(yīng)消息分類和含義如表3-2所示。表3-2 響應(yīng)消息序號(hào)狀態(tài)碼消息功能1xx信息響應(yīng)(呼叫進(jìn)展響應(yīng))表示已經(jīng)接收到請(qǐng)求消息,正在對(duì)其進(jìn)行處理100試呼叫180振鈴181呼叫正在前轉(zhuǎn)182排隊(duì)2xx成功響應(yīng)表示請(qǐng)求已經(jīng)
18、被成功接受、處理200ok3xx重定向響應(yīng)表示需要采取進(jìn)一步動(dòng)作,以完成該請(qǐng)求300多重選擇301永久遷移302臨時(shí)遷移303見其它305使用代理380代換服務(wù)4xx客戶出錯(cuò)表示請(qǐng)求消息中包含語(yǔ)法錯(cuò)誤或者sip服務(wù)器不能完成對(duì)該請(qǐng)求消息的處理400錯(cuò)誤請(qǐng)求401無(wú)權(quán)402要求付款403禁止404沒有發(fā)現(xiàn)405不允許的方法406不接受407要求代理權(quán)408請(qǐng)求超時(shí)410消失413請(qǐng)求實(shí)體太大414請(qǐng)求uri太大415 不支持的媒體類型416不支持的uri方案420分機(jī)無(wú)人接聽421要求轉(zhuǎn)機(jī)423間隔太短480暫時(shí)無(wú)人接聽481呼叫腿/事務(wù)不存在482相環(huán)探測(cè)483跳頻太高484地址不完整485不
19、清楚486線路忙487終止請(qǐng)求488此處不接受491代處理請(qǐng)求493難以辨認(rèn)5xx服務(wù)器出錯(cuò)表示sip服務(wù)器故障不能完成對(duì)正確消息的處理500內(nèi)部服務(wù)器錯(cuò)誤501沒實(shí)現(xiàn)的502無(wú)效網(wǎng)關(guān)503不提供此服務(wù)504服務(wù)器超時(shí)505sip版本不支持513消息太長(zhǎng)6xx全局故障表示請(qǐng)求不能在任何sip服務(wù)器上實(shí)現(xiàn)600全忙603拒絕604都不存在606不接受請(qǐng)求消息和響應(yīng)消息都包括sip頭字段和sip消息字段。在sip消息中加入sdp消息正文部分。3.2.2 消息結(jié)構(gòu)1. 請(qǐng)求消息(1) 請(qǐng)求消息結(jié)構(gòu)如圖3-3所示是sip請(qǐng)求命令的格式,由起始行、消息頭和消息體組成。通過換行符區(qū)分消息頭中的每一條參數(shù)行
20、。對(duì)于不同的請(qǐng)求消息,有些參數(shù)可選。圖3-3 sip請(qǐng)求消息結(jié)構(gòu)(2) 請(qǐng)求消息參數(shù)下面僅對(duì)幾個(gè)常用的參數(shù)字段進(jìn)行說明。l call-id該字段用以唯一標(biāo)識(shí)一個(gè)特定的邀請(qǐng)或標(biāo)識(shí)某一客戶的所有登記。需要注意的是,一個(gè)多媒體會(huì)議可能會(huì)有多個(gè)呼叫,每個(gè)呼叫有其自己的call-id。例如,某用戶可數(shù)次邀請(qǐng)某人參加同一歷時(shí)很長(zhǎng)的會(huì)議。用戶也可能會(huì)收到數(shù)個(gè)參加同一會(huì)議或呼叫的邀請(qǐng),其call-id各不相同。用戶可以利用會(huì)話描述中的標(biāo)識(shí),例如sdp中的o(源)字段的會(huì)話標(biāo)識(shí)和版本號(hào)判定這些邀請(qǐng)的重復(fù)性。call-id的一般格式為:call-id:本地標(biāo)識(shí)主機(jī)其中,主機(jī)應(yīng)為全局定義域名和全局可選路ip地址,此
21、時(shí),本地標(biāo)識(shí)由在“主機(jī)”范圍內(nèi)唯一的uri字符組成。否則,本地標(biāo)識(shí)必須是全局唯一的值,以保證call-id的全局唯一性。call-id字符需區(qū)分大小寫。call-id示例:call-id: call-973636852-401其中,01為主機(jī)的ip地址,call-973636852-4為全局唯一的本地標(biāo)識(shí)。l from所有請(qǐng)求和響應(yīng)必須包含此字段,以指示請(qǐng)求的發(fā)起者。服務(wù)器將此字段從請(qǐng)求消息復(fù)制到響應(yīng)消息。該字段的一般格式為:from:顯示名;tag=xxxx其中,顯示名為用戶界面上顯示的字符,如果系統(tǒng)不予顯示,應(yīng)置顯示名為“匿名(anony
22、mous)”。顯示名為任選字段。tag稱為標(biāo)記,為16進(jìn)制數(shù)字串,中間可帶連字符“-”。當(dāng)兩個(gè)共享同一sip地址的用戶實(shí)例用相同的call-id發(fā)起呼叫邀請(qǐng)時(shí),就需用此標(biāo)記予以區(qū)分。標(biāo)記值必須全局唯一。用戶在整個(gè)呼叫期間應(yīng)保持相同的call-id和標(biāo)記值。from字段的示例:from: ;tag=1c17691l to該字段指明請(qǐng)求的接收者,其格式和from相同,僅第一個(gè)關(guān)鍵詞代之以to。所有請(qǐng)求和響應(yīng)消息必須包含此字段。字段中的標(biāo)記參數(shù)可用于區(qū)分由同一sip url標(biāo)識(shí)的不同的用戶實(shí)例。由于代理服務(wù)器可以并行分發(fā)多個(gè)請(qǐng)求,同一請(qǐng)求可能到達(dá)用戶的不同實(shí)例(如住宅電話等)。由于每個(gè)實(shí)例都可能響應(yīng)
23、,因此需用標(biāo)記來(lái)區(qū)分來(lái)自不同實(shí)例的響應(yīng)。需要注意的是,to字段中的標(biāo)記是由每個(gè)實(shí)例至于響應(yīng)消息中的。to字段的示例:to: to: ;tag=62beb3ca注意,在sip中,call-id、from和to三個(gè)字段標(biāo)識(shí)一個(gè)呼叫分支。在代理服務(wù)器并行分發(fā)請(qǐng)求時(shí),一個(gè)呼叫可能會(huì)有多個(gè)呼叫分支。l cseqcseq稱之為命令序號(hào)。客戶在每個(gè)請(qǐng)求中應(yīng)加入此字段,它由命令名稱和一個(gè)十進(jìn)制序號(hào)組成,該序號(hào)由請(qǐng)求客戶選定,在call-id范圍內(nèi)唯一確定。序號(hào)初值可為任意值,其后具有相同call-id值,但不同命令名稱、消息體的請(qǐng)求,其cseq序號(hào)應(yīng)加1。重發(fā)請(qǐng)求的序號(hào)保持不變。服務(wù)器將請(qǐng)求中的cseq值復(fù)制
24、到響應(yīng)消息中,用于將請(qǐng)求和其觸發(fā)的響應(yīng)相關(guān)聯(lián)。ack和cancel請(qǐng)求的cseq值(十進(jìn)制序號(hào))和對(duì)應(yīng)的invite請(qǐng)求相同,bye請(qǐng)求的cseq序號(hào)應(yīng)大于invite請(qǐng)求。服務(wù)器必須記憶相同call-id的invite請(qǐng)求的最高序號(hào),收到序號(hào)低于此值的invite請(qǐng)求應(yīng)在給出響應(yīng)后予以丟棄。由代理服務(wù)器并行分發(fā)的請(qǐng)求,其cseq值相同。嚴(yán)格來(lái)說,cseq對(duì)于任何可由bye或cancel請(qǐng)求取消的請(qǐng)求以及客戶可連續(xù)發(fā)送多個(gè)具有相同call-id請(qǐng)求的情況都是需要的,其作用是判定響應(yīng)和請(qǐng)求的對(duì)應(yīng)關(guān)系。cseq字段的示例:cseq: 1 invitel viavia字段用以指示請(qǐng)求歷經(jīng)的路徑。它可
25、以防止請(qǐng)求消息傳送產(chǎn)生環(huán)路,并確保響應(yīng)和請(qǐng)求消息選擇同樣的路徑,以保證通過防火墻或滿足其它特定的選路要求。發(fā)起請(qǐng)求的客戶必須將其自身的主機(jī)名或網(wǎng)絡(luò)地址插入請(qǐng)求的via字段,如果未采用缺省端口號(hào),還需插入此端口號(hào)。在請(qǐng)求前傳過程中,每個(gè)代理服務(wù)器必須將其自身地址作為一個(gè)新的via字段加在已有的via字段之前。如果代理服務(wù)器收到一個(gè)請(qǐng)求,發(fā)現(xiàn)其自身地址位于via頭部中,則必須回送響應(yīng)“檢測(cè)到環(huán)路”。當(dāng)請(qǐng)求消息通過網(wǎng)絡(luò)地址翻譯點(diǎn)(如防火墻)時(shí),請(qǐng)求的源地址和端口號(hào)可能被改變,此時(shí)via字段就不能成為響應(yīng)消息選路的依據(jù)。為了防止這一點(diǎn),代理服務(wù)器應(yīng)校驗(yàn)頂端via字段,如果發(fā)現(xiàn)其值和代理服務(wù)器檢測(cè)到的前
26、站地址不符,則應(yīng)在該via字段中加入“receive”參數(shù),如此修改后的字段稱為“接收方標(biāo)記via頭部字段”。例如:via:sip/2.0/udp softx3000.bell-:5060via:sip/2.0/udp :5060;received=0由點(diǎn)發(fā)出的請(qǐng)求消息路徑外部地址為0的網(wǎng)絡(luò)地址翻譯點(diǎn)后,到達(dá)代理服務(wù)器softx3000.bell-。后者注意到前站發(fā)送地址和via字段地址不符,就把實(shí)際發(fā)送地址作為接收方標(biāo)記加在頂端via字段的末尾,然后再將代理自己的地址作為新加的via字段置于最上面。若代理服務(wù)器向
27、多播地址發(fā)送請(qǐng)求,則必須在其via頭部字段中加入“多播地址(maddr)”參數(shù),此參數(shù)指明該多播地址。代理服務(wù)器或uac收到via頭部字段時(shí)的處理規(guī)則是:規(guī)則1:第1個(gè)via頭部字段應(yīng)該指示本代理服務(wù)器或uac。如果不是,丟棄該消息,否則,刪除該via字段。規(guī)則2:如果沒有第2個(gè)via頭部字段,則該響應(yīng)已經(jīng)到達(dá)目的地。否則,繼續(xù)做如下處理。規(guī)則3:如果第2個(gè)via頭部字段包含“maddr”參數(shù),則按該參數(shù)指示的多播地址發(fā)送響應(yīng),端口號(hào)由“發(fā)送方”參數(shù)指明,如未指明,就使用端口號(hào)5060。響應(yīng)的生存期應(yīng)置為“生存期(ttl)”參數(shù)指定的值,如未指明,則置為1。規(guī)則4:如果第2個(gè)via字段不包含“
28、maddr”參數(shù),但有一個(gè)接收方標(biāo)記字段,則應(yīng)將該響應(yīng)發(fā)往“received”參數(shù)指示的地址。規(guī)則5:如果既無(wú)“maddr”參數(shù)又無(wú)標(biāo)記,就按發(fā)送方參數(shù)指示的地址發(fā)送響應(yīng)。via字段的一般格式為:via:發(fā)送協(xié)議 發(fā)送方;隱藏參數(shù);生存期參數(shù);多播地址參數(shù);接收方標(biāo)記,分支參數(shù)其中,發(fā)送協(xié)議的格式為:協(xié)議名/協(xié)議版本/傳送層,協(xié)議名和傳送層的缺省值分別為sip和udp。發(fā)送方為通常的發(fā)送方主機(jī)和端口號(hào)。隱藏參數(shù)就是關(guān)鍵詞hidden,如有此參數(shù),表示該字段已由上游代理予以加密,以提供隱私服務(wù)。多播地址參數(shù)和接收方標(biāo)記的意義如前所述。生存期參數(shù)與多播地址參數(shù)配用。分支參數(shù)用于代理服務(wù)器并行分發(fā)請(qǐng)
29、求時(shí)標(biāo)記各個(gè)分支,當(dāng)響應(yīng)到達(dá)時(shí),代理可判定是哪一分支的響應(yīng)。via字段的示例:via:sip/2.0/udp16:5061;ttl=16;maddr=0;branch=z9hg4bkbc427dad6l contact該字段用于invite、ack和register請(qǐng)求以及成功響應(yīng)、呼叫進(jìn)展響應(yīng)和重定向響應(yīng)消息,其作用是給出其后和用戶直接通信的地址。invite和ack請(qǐng)求中的contact字段指示該請(qǐng)求發(fā)出的位置。它使被叫可以直接將請(qǐng)求(如bye請(qǐng)求)發(fā)往該地址,而不必借助via字段經(jīng)由一系列代理服務(wù)器返回。對(duì)invite請(qǐng)求的成功響應(yīng)消息可包含
30、contact字段,它使其后sip請(qǐng)求(如ack請(qǐng)求)可直接發(fā)往該字段給定的地址。該地址一般是被叫主機(jī)的地址,如果該主機(jī)位于防火墻之后,則為代理服務(wù)器地址。對(duì)應(yīng)于invite請(qǐng)求的呼叫進(jìn)展響應(yīng)消息中包含的contact字段的含義和成功響應(yīng)消息相同。但是,cancel請(qǐng)求不能直接發(fā)往該地址,必須沿原請(qǐng)求發(fā)送的路徑前傳。register請(qǐng)求中的contact字段指明用戶可達(dá)位置。該請(qǐng)求還定義了通配contact字段“*”,它只能和值為0的“失效”字段配用,表示去除某用戶的所有登記。contact字段也可設(shè)定“失效”參數(shù)(任選),給定登記的失效時(shí)間。如果沒有設(shè)定該參數(shù),則用“失效”字段值作為其缺省值
31、。如果兩者均無(wú),則認(rèn)為sip uri的失效時(shí)間為1小時(shí)。register請(qǐng)求的成功響應(yīng)消息中的contact字段返回該用戶當(dāng)前可達(dá)的所有位置。重定向響應(yīng)消息,如用戶臨時(shí)遷移、永久遷移、地址模糊等消息中的contact字段給出供重試的其它可選地址,可用于對(duì)bye、invite和options請(qǐng)求的響應(yīng)消息。contact字段的一般格式為:contact:地址;q參數(shù);動(dòng)作參數(shù);失效參數(shù);擴(kuò)展屬性其中,地址的表示形式和to,from字段相同。q參數(shù),其取值范圍為0,1,指示給定位置的相對(duì)優(yōu)先級(jí)。數(shù)值越大,優(yōu)先級(jí)越高。動(dòng)作參數(shù)僅用于register請(qǐng)求。它表明希望服務(wù)器對(duì)其后至該客戶的請(qǐng)求進(jìn)行代理服
32、務(wù)還是重定向服務(wù)。如果未含此參數(shù),則執(zhí)行動(dòng)作取決于服務(wù)器的配置。失效參數(shù)指明uri的有效時(shí)間,可用秒表示,也可用sip日期表示。擴(kuò)展屬性就是擴(kuò)展名。contact字段的示例為:contact: ;q=0.7;expires=3600l max-forwards該字段用于定義一個(gè)請(qǐng)求到達(dá)其目的地址所允許經(jīng)過的中轉(zhuǎn)站的最大值。請(qǐng)求每經(jīng)過一個(gè)中轉(zhuǎn)站,該值減1。如果該值為0時(shí)該請(qǐng)求還沒有到達(dá)其目的地址,服務(wù)器將回送“483”(too many hops)響應(yīng)并終止這個(gè)請(qǐng)求。設(shè)置該字段的目的主要是為了出現(xiàn)環(huán)路時(shí)不會(huì)一直消耗代理服務(wù)器的資源。該字段的初始值為70。max-forwards字段的一般格式為:
33、max-forwards:十進(jìn)制整數(shù)l allow該字段給出代理服務(wù)器支持的所有請(qǐng)求消息類型列表。allow字段的示例:allow: invite, ack, options, cancel, byel content-length該字段表示消息體的大小,為十進(jìn)制值。應(yīng)用程序使用該字段表示要發(fā)送的消息體的大小,而不考慮實(shí)體的媒體類型。如果使用基于流的協(xié)議(如tcp協(xié)議)作為傳輸協(xié)議,則必須使用此消息頭字段。消息體的長(zhǎng)度不包括用于分離消息頭部和消息體的空白行。 content-length值必須大于等于0。如果消息中沒有消息體,則content-length頭字段值必須設(shè)為0。sdp用于構(gòu)成請(qǐng)求
34、消息和2xx響應(yīng)消息的消息體。content-length字段的一般格式為:content-length:十進(jìn)制值content-length字段的示例:content-length: 349表示消息體的長(zhǎng)度為349個(gè)字節(jié)。l content-typecontent-type字段表示發(fā)送的消息體的媒體類型。如果消息體不為空,則必須存在content-type 頭字段。如果消息體為空且content-type 頭字段存在,則表示此類型的消息體長(zhǎng)度為0 (如一個(gè)空的聲音文件)。content-type字段的示例:content-type: application/sdpl supportedsip
35、協(xié)議中定義的100類臨時(shí)響應(yīng)消息的傳輸是不可靠的,即uas發(fā)送臨時(shí)響應(yīng)后并不能保證uac端能夠接受到該消息。如果需要在該響應(yīng)消息中攜帶媒體信息,那么就必須保證該消息能夠可靠的傳輸?shù)綄?duì)端。100rel擴(kuò)展為100類響應(yīng)消息的可靠傳輸提供了相應(yīng)的機(jī)制。100rel新增加對(duì)臨時(shí)響應(yīng)消息的確認(rèn)請(qǐng)求方法:prack。如果uac支持該擴(kuò)展,則在發(fā)送的消息中增加supported:100rel頭域和字段。如果uas支持該擴(kuò)展,則在發(fā)送100類響應(yīng)時(shí)增加require:100rel頭域和字段。uac收到該響應(yīng)消息后需要向uas發(fā)送prack請(qǐng)求通知uas已收到該臨時(shí)響應(yīng)。uas向uac發(fā)送對(duì)prack的2xx
36、響應(yīng)消息結(jié)束對(duì)該臨時(shí)響應(yīng)的確認(rèn)過程。如果某一ua想要在發(fā)送的臨時(shí)響應(yīng)消息中攜帶sdp消息體,那么uac和uas都必須支持和使用100rel擴(kuò)展以保證該消息的可靠傳輸。舉例:supported: 100rell user-agentuser-agent頭字段包含有發(fā)起請(qǐng)求的用戶終端的信息。顯示用戶代理的軟件版本信息可能會(huì)令用戶在使用有安全漏洞的軟件易受到外界攻擊,因此,應(yīng)該使user-agent頭字段成為可選配置項(xiàng)。舉例:user-agent: softphone beta1.5l expiresexpires頭字段指定了消息(或消息內(nèi)容)多長(zhǎng)時(shí)間之后超時(shí)。舉例:expires: 5l acce
37、pt-languageaccept-language頭字段用在請(qǐng)求消息中,表示原因短語(yǔ)、會(huì)話描述或應(yīng)答消息中攜帶的狀態(tài)應(yīng)答內(nèi)容的首選語(yǔ)言類型。如果消息中沒有accept-language頭字段,則服務(wù)器端認(rèn)為客戶端支持所有語(yǔ)言。舉例:accept-language: enl authorizationauthorization字段包含某個(gè)終端的鑒權(quán)證書。首先介紹一下終端向服務(wù)器端請(qǐng)求認(rèn)證的一般過程:終端發(fā)起請(qǐng)求時(shí)如果服務(wù)器端需要對(duì)用戶進(jìn)行認(rèn)證,那么會(huì)在本地產(chǎn)生本次認(rèn)證的nonce,并且通過認(rèn)證請(qǐng)求頭域?qū)⑺斜匾膮?shù)返回給終端從而發(fā)起對(duì)用戶認(rèn)證過程。終端收到認(rèn)證請(qǐng)求消息后根據(jù)服務(wù)器端返回的信息
38、和用戶配置等信息采用特定的算法生成加密的response,并且通過新的請(qǐng)求消息發(fā)送給服務(wù)器端。服務(wù)器端在收到帶有認(rèn)證響應(yīng)的新的請(qǐng)求消息后首先檢查nonce的正確性。如果nonce不是本地產(chǎn)生,則直接返回失敗。否則如果nonce是本地產(chǎn)生,但是認(rèn)證過程已經(jīng)超時(shí),則服務(wù)器端會(huì)重新產(chǎn)生nonce并重新發(fā)起對(duì)用戶的認(rèn)證過程。其中老的nonce會(huì)通過cnonce參數(shù)返回。nonce驗(yàn)證通過后服務(wù)器端會(huì)根據(jù)nonce、用戶名、密碼(服務(wù)器端可以根據(jù)本地用戶信息獲取用戶的密碼)、uri等采用和終端相同的算法生成response,并且對(duì)此response和請(qǐng)求消息中的response進(jìn)行比較,如果二者一致則用
39、戶認(rèn)證成功,否則認(rèn)證失敗。authorization字段的一般格式為:authorization:認(rèn)證方式 username,realm,nonce,response,uri,cnonce,algorithm認(rèn)證方式:有digest、basic、chap-password、carddigest等認(rèn)證方式。digest為http-digest認(rèn)證方式。目前softx3000只支持http-digest方式。以后為了實(shí)現(xiàn)uniphone的卡號(hào)呼叫還會(huì)加入卡號(hào)認(rèn)證的carddigest方式。username:被認(rèn)證的用戶的用戶名。realm:用于標(biāo)識(shí)發(fā)起認(rèn)證過程的域。nonce:由發(fā)起認(rèn)證過程的實(shí)體
40、產(chǎn)生的加密因子。response:終端在收到服務(wù)器的認(rèn)證請(qǐng)求后根據(jù)服務(wù)器端產(chǎn)生的nonce、用戶名、密碼、uri等信息經(jīng)過一定的算法生成的一個(gè)字符串。該字符串中包含了經(jīng)過加密后的用戶密碼。(在認(rèn)證過程中處理用戶密碼之外其他信息都會(huì)通過sip消息以明文的方式在終端和服務(wù)器端進(jìn)行傳遞。)uri:發(fā)起的呼叫請(qǐng)求消息的request-uri。由于終端在收到認(rèn)證請(qǐng)求后需要重新向服務(wù)器端發(fā)起請(qǐng)求(其中帶有認(rèn)證響應(yīng)信息)。該請(qǐng)求消息在經(jīng)過網(wǎng)絡(luò)服務(wù)器時(shí)某些字段包括requesturi都有可能被修改。認(rèn)證頭域的uri參數(shù)用于傳遞終端發(fā)起請(qǐng)求時(shí)原始消息的request-uri用于對(duì)認(rèn)證信息進(jìn)行認(rèn)證,這樣才能保證認(rèn)
41、證過程的正確性。cnonce:如果在服務(wù)器端超時(shí)后終端才向服務(wù)器返回了帶有認(rèn)證響應(yīng)的新的請(qǐng)求消息,則服務(wù)器端需要重新產(chǎn)生nonce重新對(duì)用戶進(jìn)行認(rèn)證。其中nonce中帶有新的nonce,老的nonce會(huì)通過cnonce參數(shù)返回給終端。algorithm:用于傳遞生成response的算法。舉例:authorization: digest username=6540012, realm=, nonce=200361722310491179922, response=b7c848831dc489f8dc663112b21ad3b6, uri=sip:0(3) 請(qǐng)求消息示例
42、下面是sip請(qǐng)求消息編碼的示例:invite sip:6650000210 sip/2.0from: ;tag=1ccb6df3to: cseq: 1 invitecall-id: 20973e49f7c52937fc6be224f9e52543sx3000via: sip/2.0/udp 16:5061;branch=z9hg4bkbc427dad6contact: supported: 100rel,100relmax-forwards:70allow:invite,ack,cancel,options,bye,register,prack,in
43、fo,update,subscribe,notify,message,refercontent-length:230content-type: application/sdpv: 0o: huaweisoftx3000 1073741831 1073741831 in ip4 16s: sip callc: in ip4 5t: 0 0m: audio 30000 rtp/avp 8 0 4 18a: rtpmap:8 pcma/8000a: rtpmap 0 pcmu/8000a: rtpmap 4 g723/8000a: rtpmap 18 g7
44、29/8000第一行:請(qǐng)求起始行。invite請(qǐng)求消息。請(qǐng)求uri,即被邀用戶的當(dāng)前地址為“sip:6650000210”。sip版本號(hào)為2.0。第二行:from字段。指明請(qǐng)求發(fā)起方的地址為“”。標(biāo)記為“1ccb6df3”,用于共享同一sip地址的不同用戶用相同的call-id發(fā)起呼叫邀請(qǐng)時(shí),對(duì)用戶進(jìn)行區(qū)分。第三行:to字段。指明請(qǐng)求接收方的地址為“”。從from和to字段,我們可以看出:ip地址為16的softx3000控制下的終端44510000撥打ip地址為10的softx3000控制下的66500002終端。終端類型可以
45、為sip、h.323、iad/ag下掛的esl等。第四行:cseq字段。用于將invite請(qǐng)求和其觸發(fā)的響應(yīng)、對(duì)應(yīng)的ack、cancel請(qǐng)求相關(guān)聯(lián)。第五行:call-id字段。該字段唯一標(biāo)識(shí)一個(gè)特定的邀請(qǐng),全局唯一。call-id為“20973e49f7c52937fc6be224f9e52543sx3000”,sx3000為發(fā)起呼叫的softx3000的域名,20973e49f7c52937fc6be224f9e52543為本地標(biāo)識(shí)。第六行:via字段。該字段用于指示該請(qǐng)求歷經(jīng)的路徑?!皊ip/2.0/udp”表示發(fā)送的協(xié)議,協(xié)議名為“sip”,協(xié)議版本為2.0,傳輸層為udp;“191.1
46、69.1.116:5061”表示發(fā)送方softx3000 ip地址為16,端口號(hào)為5061;“branch=z9hg4bkbc427dad6”為分支參數(shù),softx3000并行分發(fā)請(qǐng)求時(shí)標(biāo)記各個(gè)分支。第七行:contact字段。指示其后的請(qǐng)求(如bye請(qǐng)求)可以直接發(fā)往,而不必借助via字段。第八行:100rel擴(kuò)展,該字段為100類響應(yīng)消息的可靠傳輸提供了相應(yīng)的機(jī)制。第九行:max-forwards字段。表示該請(qǐng)求到達(dá)其目的地址所允許經(jīng)過的中轉(zhuǎn)站的最大值為70。第十行:allow字段。給出ip地址為16的softx3000支持的請(qǐng)求消息類型 列表。
47、第十一十二行:content-length字段,表示消息長(zhǎng)度為230個(gè)字節(jié)。第十三行:content-type字段,表示消息中攜帶的消息體是單消息體且為sdp。第十四行:空行,表示下面為sdp會(huì)話描述。第十五行:sdp協(xié)議版本號(hào),目前為0版本。第十六行:會(huì)話擁有者/創(chuàng)建者和會(huì)話標(biāo)識(shí),用于給出會(huì)話的發(fā)起者(其用戶名和用戶主機(jī)地址)以及會(huì)話標(biāo)識(shí)和會(huì)話版本號(hào)?!癶uaweisoftx3000”為用戶名,用戶名是用戶在發(fā)起主機(jī)上的登錄名,如果主機(jī)不支持用戶標(biāo)識(shí)的概念,該字段標(biāo)記為“-”。第一個(gè)“1073741831”為會(huì)話標(biāo)識(shí),會(huì)話標(biāo)識(shí)為一數(shù)字串,使得多元組(用戶名、會(huì)話標(biāo)識(shí)、網(wǎng)絡(luò)類型、地址類型、地址
48、)構(gòu)成會(huì)話的全球唯一的標(biāo)識(shí)符。第二個(gè)“1073741831”為版本號(hào),指該會(huì)話公告的版本。供代理服務(wù)器檢測(cè)同一會(huì)話的若干個(gè)公告哪一個(gè)是最新的公告。其基本要求是會(huì)話數(shù)據(jù)修改后,其版本號(hào)應(yīng)遞增?!癷n”指網(wǎng)絡(luò)類型,為文本串形式,目前規(guī)定的“in”為internet。“ip4”指地址類型,為文本串形式,目前已定義的有“ip4”和“ip6”兩種?!?6”為創(chuàng)建會(huì)話的主機(jī)的ip地址。對(duì)于ip4地址類型,可以是域名全稱或點(diǎn)分十進(jìn)制ip4地址表示形式。對(duì)于ip6地址類型,可以是域名全稱或壓縮文本ip6地址表示形式。第十七行:會(huì)話名。每個(gè)會(huì)話描述必需有一個(gè)且只有一個(gè)會(huì)話名。第十八行:連接
49、數(shù)據(jù)。網(wǎng)絡(luò)類型和地址類型目前的定義值僅限于in和ip4。“5”為softx3000(ip地址:16)控制下的終端的ip地址(終端類型為sip、h.323電話或iad/ag下掛的esl電話)。第十九行:時(shí)間描述,給出會(huì)話激活的時(shí)間區(qū)段,允許會(huì)話周期性發(fā)生。 “0”表示起始時(shí)間。該字段的格式為t:。其中起始時(shí)間和終止時(shí)間值為ntp(network time protocol)時(shí)間值的十進(jìn)制表示,單位為秒。第二十行:媒體級(jí)描述,該部分給出只適用于該媒體流的信息?!癮udio”表示媒體類型為音頻。目前定義的媒體類型有5種:音頻、視頻、應(yīng)用、數(shù)據(jù)和控制?!?0
50、000”指明媒體流發(fā)往的傳送層端口,即終端的udp端口號(hào)(終端類型為sip、h.323電話或iad/ag下掛的esl電話)?!皉tp/avp”為傳送層協(xié)議,其值和“c”行中的地址類型有關(guān),對(duì)于ip4來(lái)說,大多數(shù)媒體業(yè)務(wù)流都在rtp/udp上傳送,已定義如下兩類協(xié)議:rtp/avp,音頻/視頻應(yīng)用文檔,在udp上傳送;udp,udp協(xié)議。“8 0 4 18”對(duì)于音頻和視頻來(lái)說,就是rtp音頻/視頻應(yīng)用文檔中定義的媒體靜荷類型。表示會(huì)話中所有這些格式都可能被用到,但第一個(gè)格式是會(huì)話的缺省格式。該行總體表示,缺省a律pcm編碼單信道音頻信號(hào),其在rtp音頻/視頻應(yīng)用文檔中的靜態(tài)靜荷類型號(hào)為8 ,該信
51、號(hào)發(fā)往udp端口30000。第二十一二十四行:rtpmap屬性行,指明從rtp靜荷類型至編碼的映射關(guān)系。該行的格式為:a: rtpmap:/。其中,指的就是音頻信道數(shù),對(duì)于視頻信號(hào)尚無(wú)編碼參數(shù)。2. 響應(yīng)消息(1) 響應(yīng)消息結(jié)構(gòu)如圖3-4所示是sip響應(yīng)消息的格式,由起始行、消息頭和消息體組成。通過換行符區(qū)分消息頭中的每一行參數(shù)。對(duì)于不同的響應(yīng)消息,有些參數(shù)可選。圖3-4 sip響應(yīng)消息結(jié)構(gòu)(2) 響應(yīng)消息參數(shù)響應(yīng)消息參數(shù)請(qǐng)參考“請(qǐng)求消息參數(shù)”一節(jié)。(3) 響應(yīng)消息示例下面是sip響應(yīng)消息編碼的示例:sip/2.0 180 ringingfrom: ;tag=1ccb6df3to: ;tag=
52、58877b85cseq:1 invitecall-id: 20973e49f7c52937fc6be224f9e52543sx3000via: sip/2.0/udp 16:5061;branch=z9hg4bkbc427dad6require:100relrseq:1contact:content-length:157content-type:application/sdpv=0o=huaweisoftx3000 1073741824 1073741824 in ip4 10s=sip callc=in ip4 35t=0
53、0m=audio 30016 rtp/avp 8a=rtpmap:8 pcma/8000第一行:sip協(xié)議,版本號(hào)為2.0。狀態(tài)碼為180?!皉inging”為注釋短語(yǔ)。表示向被叫送振鈴。第二行、第三行:請(qǐng)參考“請(qǐng)求消息示例”小節(jié)。第四行:cseq字段。用于將invite請(qǐng)求和其觸發(fā)的響應(yīng)、對(duì)應(yīng)的ack、cancel請(qǐng)求相關(guān)聯(lián)。該響應(yīng)消息和上文中的請(qǐng)求消息cseq字段相同,均為“1 invite”,表明該響應(yīng)消息由上文中的請(qǐng)求消息觸發(fā)。第五第十一行:請(qǐng)參考“請(qǐng)求消息示例”小節(jié)。第十二行:空行,表示下面為sdp會(huì)話描述。第十三行:sdp協(xié)議版本號(hào),目前為0版本。第十四行:會(huì)話擁有者/創(chuàng)建者和會(huì)話
54、標(biāo)識(shí),用于給出會(huì)話的發(fā)起者(其用戶名和用戶主機(jī)地址)以及會(huì)話標(biāo)識(shí)和會(huì)話版本號(hào)?!癶uaweisoftx3000”為用戶名,用戶名是用戶在發(fā)起主機(jī)上的登錄名,如果主機(jī)不支持用戶標(biāo)識(shí)的概念,該字段標(biāo)記為“-”。第一個(gè)“1073741824”為會(huì)話標(biāo)識(shí),會(huì)話標(biāo)識(shí)為一數(shù)字串,使得多元組(用戶名、會(huì)話標(biāo)識(shí)、網(wǎng)絡(luò)類型、地址類型、地址)構(gòu)成會(huì)話的全球唯一的標(biāo)識(shí)符。第二個(gè)“1073741824”為版本號(hào),指該會(huì)話公告的版本。供代理服務(wù)器檢測(cè)同一會(huì)話的若干個(gè)公告哪一個(gè)是最新的公告。其基本要求是會(huì)話數(shù)據(jù)修改后,其版本號(hào)應(yīng)遞增?!癷n”指網(wǎng)絡(luò)類型,為文本串形式,目前規(guī)定的“in”為internet?!癷p4”指地址類型,為文本串形式,目前已定義的有“ip4”和“ip6”兩種?!?0”為創(chuàng)建會(huì)話的主機(jī)的ip地址。第十五行:會(huì)話名。每個(gè)會(huì)話描述必需有一個(gè)且只有一個(gè)會(huì)話名。第
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- LY/T 3412-2024細(xì)表面人造板
- 統(tǒng)編版八年級(jí)歷史上冊(cè)《第6課 戊戌變法》聽課評(píng)課記錄
- 湘教版數(shù)學(xué)九年級(jí)上冊(cè)4.4《解直角三角形的應(yīng)用》聽評(píng)課記錄2
- 瓦匠施工安全責(zé)任協(xié)議書(2篇)
- 生活技能培訓(xùn)服務(wù)合同(2篇)
- 粵人版地理七年級(jí)上冊(cè)《第三節(jié) 世界的主要?dú)夂蝾愋汀仿犝n評(píng)課記錄1
- 北京課改版歷史七年級(jí)下冊(cè)第9課《經(jīng)濟(jì)重心的南移》聽課評(píng)課記錄
- 五年級(jí)下冊(cè)數(shù)學(xué)聽評(píng)課記錄《 -2、5倍數(shù) 》人教版
- 人教版數(shù)學(xué)七年級(jí)上冊(cè)4.4《課題學(xué)習(xí) 設(shè)計(jì)制作長(zhǎng)方體形狀的包裝紙盒》聽評(píng)課記錄2
- 人教版七年級(jí)數(shù)學(xué)下冊(cè) 聽評(píng)課記錄 9.2 第1課時(shí)《一元一次不等式》
- 室內(nèi)裝飾拆除專項(xiàng)施工方案
- 老年癡呆癥患者生活陪護(hù)協(xié)議
- 2024年-急診氣道管理共識(shí)課件
- 鋼筋工程精細(xì)化管理指南(中建內(nèi)部)
- 小學(xué)語(yǔ)文中段整本書閱讀的指導(dǎo)策略研究 中期報(bào)告
- 2024年山西省高考考前適應(yīng)性測(cè)試 (一模)英語(yǔ)試卷(含答案詳解)
- 浙教版2023-2024學(xué)年數(shù)學(xué)八年級(jí)上冊(cè)期末復(fù)習(xí)卷(含答案)
- 2024年中國(guó)鐵路投資集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 運(yùn)動(dòng)訓(xùn)練與康復(fù)治療培訓(xùn)資料
- 經(jīng)營(yíng)開發(fā)部工作目標(biāo)責(zé)任書
- 小班繪本教學(xué)《藏在哪里了》課件
評(píng)論
0/150
提交評(píng)論