freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

sip協(xié)議字段講解(編輯修改稿)

2024-12-03 08:30 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 會(huì)話的某些屬性,例如:增加或刪除媒體流,改變媒體發(fā)送或接受地址等。 當(dāng)需要結(jié)束會(huì)話的時(shí)候,任何一端 UA 可以通過發(fā)送 BYE 請(qǐng)求,來結(jié)束會(huì)話。對(duì)端同意結(jié)束,則發(fā)送 200 OK應(yīng)答,結(jié)束會(huì)話成功。 圖 最基本的兩個(gè) UA 之間的 SIP 呼叫 最基本、最簡(jiǎn)單的 SIP 呼叫是兩個(gè) UA 之間之間的點(diǎn)對(duì)點(diǎn)呼叫。如上圖所示。 下面就最基本的 SIP 呼叫,分別針對(duì)發(fā)起會(huì)話、調(diào)整會(huì)話和結(jié)束會(huì)話進(jìn)行說明。 發(fā)起會(huì)話 圖 建立會(huì)話的三次握手 如圖 所示, INVITE、 200 OK、 ACK三條消息為會(huì)話發(fā)起過程中的三次握手。三次握手過程的完成,唯一標(biāo)識(shí)了會(huì)話的成功建立。 UAC 的 INVITE 消息的產(chǎn)生 RFC3261 規(guī)定,由 UAC產(chǎn)生的一個(gè)有效的 SIP 請(qǐng)求消息必須至少包含下列頭字端: Via、MaxForwards、 To、 From、 CSeq 和 CallID 頭字端,不僅是在 INVITE,它們?cè)谒械?SIP請(qǐng)求消息中都是必選的。這六個(gè)頭字段是構(gòu)建 SIP 消息的 基本單元,它們共同提 供了大部分的關(guān)鍵的消息路由服務(wù),包括消息的尋址、響應(yīng)的路由、消息傳播距離限制、消息排序,以及事務(wù)交互的唯一性標(biāo)識(shí)等。另外,請(qǐng)求行 ( RequestLine)也是必選的。 各頭字段的說明見上文。具體地,請(qǐng)求行( RequestLine)中的 RequestURI 設(shè)置為與 To 頭字段一值(除 REGISTER 以外的 所有請(qǐng)求的初始 RequestURI 都應(yīng)該與 To 頭字段一值);Via 頭字段設(shè)置為響應(yīng)消息將要被發(fā)送的地址,其 brance 參數(shù)值在時(shí)間和空間上也必 須唯一(即不同的 method 有不 同 brance 值,兩種情況除外, CANCEL 與對(duì)應(yīng)的 INVITE 的 brance值相同,對(duì)非 2xx 的最終響應(yīng)的 ACK與對(duì)應(yīng)的 INVITE 的 brance 值相同); MaxForwards一般設(shè)置為 70; To 頭字段包含了請(qǐng)求消息的邏輯接收者,可以是 SIP 或 SIPS URI,其 tag值標(biāo)識(shí)了對(duì)話中的對(duì)端,在 INVITE 消息中不應(yīng)該出現(xiàn); From 頭字段設(shè)置為消息發(fā)送者的地址,其 tag 值標(biāo)識(shí)了消息的發(fā)起 者; Cseq 設(shè)置為不同于其他事務(wù)的整數(shù)序列和 INVITE方法; CallID 設(shè)置為全局時(shí)間上和空間上都唯一的 ID 號(hào); Contact 頭字段設(shè)置為 UAC(請(qǐng)求發(fā)送者)的地址。 另外, INVITE 消息中可以包含 SDP 消息,這時(shí) ContentType 頭字段的值應(yīng)該是application/sdp。 SIP 協(xié)議中規(guī)定了 關(guān)于媒體協(xié)商的過程是通過在消息中攜帶 SDP 來完成的。關(guān)于 SDP 協(xié)商的過程需要遵循如下規(guī)定: INVITE 消息中攜帶 SDP 請(qǐng)求,則 200 OK消息中返回 SDP 響應(yīng); 200 OK消息中攜帶 SDP 請(qǐng)求,則 ACK消息中返回 SDP 響應(yīng)。 SDP 請(qǐng)求和響應(yīng)這個(gè)協(xié)商過程,不能并行,只能當(dāng)一次交互完成之后才能發(fā)起新的協(xié)商過程。 UAS 的行為 INVITE 消息根據(jù) Via 頭字段中的地方,發(fā)送消息。當(dāng) UAS 收到消息后,可以按以下幾種進(jìn)行:正在處理,發(fā)送 1XX;重定向, UAS 希望將此請(qǐng)求重新發(fā)送到另一地址,發(fā)送 3XX;拒絕,發(fā)生了某種錯(cuò)誤,發(fā)送 4XX 或 5XX 或 6XX;接受,發(fā)送 2XX。 UAS 構(gòu)建響應(yīng)消息時(shí),按照如下方法:構(gòu)建狀態(tài)行( StatusLine);復(fù)制收到請(qǐng)求的 Via 頭字段,做部分修改;復(fù)制 To 頭字段,添加 tag 值(即 UAS 的標(biāo)識(shí));完全復(fù)制 From 頭字段, Cseq 頭字段和 CallID 頭字段; Contact 頭字段修改為 UAS 的地址。 如果 INVITE 請(qǐng)求中攜帶了 SDP 請(qǐng)求,則在 200OK消息中攜帶 SDP 響應(yīng)。 ACK的發(fā)送 對(duì)于最終響應(yīng)( 2XX, 3XX, 4XX, 5XX, 6XX), UAC 將構(gòu)建 ACK消息。此時(shí)的 ACK消息的構(gòu)建方法與 INVITE 大體一 致: RequestLine 中的 RequestURI 應(yīng)設(shè)置為 200OK中的Contact 頭字段的 URI; Via 頭字段的 brance 值不同于 INVITE; MaxForwards、 To、 From、CallID 與 INVITE 相同( To 中包含了 tab 標(biāo)識(shí)); Cseq 中的整數(shù)序列 與 INVITE 相同, method為 ACK。 一個(gè)例子(圖 ) MESSAGE INVITE sip: SIP/ Via: SIP/:5060。branch=z9hG4bKfw19b MaxForwards: 70 To: G. Marconi From: Nikola Tesla CallID: CSeq: 1 INVITE Subject: About That Power Outage... Contact: ContentType: application/sdp ContentLength: 158 v=0 o=Tesla 2890844526 2890844526 IN IP4 s=Phone Call c=IN IP4 t=0 0 m=audio 49170 RTP/AVP 0 a=rtpmap:0 PCMU/8000 Ringing MESSAGE SIP/ 180 Ringing Via: SIP/:5060。branch=z9hG4bKfw19b 。received= To: G. Marconi From: Nikola Tesla CallID: CSeq: 1 INVITE Contact: ContentLength: 0 OK MESSAGE SIP/ 200 OK Via: SIP/:5060。branch=z9hG4bKfw19b 。received= To: G. Marconi From: Nikola Tesla CallID: CSeq: 1 INVITE Contact: ContentType: application/sdp ContentLength: 155 v=0 o=Marconi 2890844528 2890844528 IN IP4 s=Phone Call c=IN IP4 t=0 0 m=audio 60000 RTP/AVP 0 a=rtpmap:0 PCMU/8000 MESSAGE ACK sip: SIP/ Via: SIP/:5060。branch=z9hG4bK321g MaxForwards: 70 To: G. Marconi From: Nikola Tesla CallID: CSeq: 1 ACK ContentLength: 0 調(diào)整會(huì)話 圖 調(diào)整會(huì)話 在會(huì)話建立后,呼叫方或被叫方可以發(fā)送一條新的 INVITE 消息,來調(diào)整、修改已經(jīng)建立的會(huì)話的參數(shù)信息。在一個(gè)現(xiàn)存對(duì)話中發(fā)出 INVITE 請(qǐng)求就 是 reINVITE。其過程與發(fā)起會(huì)話的過程類似,如上圖 所示。 reINVITE 請(qǐng)求的產(chǎn)生 reINVITE 過程所采用的 SDP 協(xié)商過程與建立會(huì)話的 INVITE 過程相同:會(huì)話中的任意一方可以通過在 reINVITE 消息中攜帶一個(gè)新的 SDP 請(qǐng)求來更新會(huì)話內(nèi)容;或者, reINVITE 可以不攜帶 SDP,讓其對(duì)方在 200OK 中攜帶 SDP。 reINVITE 消息中的 To、 From、 CallID、 Cseq 和 RequestURI 頭字段的生成方法采用通用的請(qǐng)求消息的生成規(guī)則。 reINVITE 不會(huì)被分 岔(分岔成為多份 INVITE,發(fā)送到不同地址),因此只可能收到一個(gè)最終應(yīng)答(不會(huì)分岔的原因是,會(huì)話已經(jīng)建立,那么 reINVITE 消息中的 RequestURI 將是目標(biāo) UA 的地址,會(huì)準(zhǔn)確無誤地送到)。 reINVITE 過程不能重疊,如果已經(jīng)有一個(gè) reINVITE 事務(wù)正在執(zhí)行,就不能發(fā)起新的reINVITE 事務(wù)。 對(duì)于 reINVITE 事務(wù)的 ACK和 2XX 響應(yīng)的生成,與初始 INVITE 過程相同。 UAS 的處理 UAS 收到 reINVITE 消息后,必須檢查其中的 SDP 是否更改,并對(duì)相應(yīng)的會(huì)話參數(shù)做出調(diào)整。 如果新的媒體描述不可接受, UAS 可以返回 488( Not Acceptable Here)拒絕響應(yīng)。這個(gè)響應(yīng)應(yīng)當(dāng)包含一個(gè) Warning 頭域(用來提供給請(qǐng)求方,提供這個(gè)拒絕的原因)。 如果 UAS 返回了 2XX 響應(yīng),但是沒有受到 ACK,它必須發(fā)送 BYE 來結(jié)束本次對(duì)話。 一個(gè)例子 在例子 的基礎(chǔ)上,發(fā)起一個(gè)增加視頻請(qǐng)求的 reINVITE,消息如下: 1. INVITE MESSAGE INVITE sip: SIP/ Via: SIP/:5060。branch=z9hG4Bk412kg MaxForwards: 70 To: G. Marconi From: Nikola Tesla CallID: CSeq: 2 INVITE Subject: Request for video… Contact: ContentType: application/sdp ContentLength: 158 v=0 o=Tesla 2890844526 2890844526 IN IP4 s=Phone Call c=IN IP4 t=0 0 m= video 53000 RTP/AVP 32 a= rtpmap:32 MPV/90000 OK MESSAGE SIP/ 200 OK Via: SIP/:5060。branch= z9hG4Bk412kg 。received= To: G. Marconi From: Nikola Tesla CallID: CSeq: 2 INVITE Contact: ContentType: application/sdp ContentLength: 155 v=0 o=Marconi 2890844528 2890844528 IN IP4 s=Phone Call c=IN IP4 t=0 0 m= video 61000 RTP/AVP 32 a= rtpmap:32 MPV/90000 MESSAGE ACK sip: SIP/ Via: SIP/:5060。branch=z9hG4bK432km MaxForwards: 70 To: G. Marconi From: Nikola Tesla CallID: CSeq: 2 ACK ContentLength: 0 結(jié)束會(huì)話 圖 結(jié)束會(huì)話 會(huì)話的中止可以通過對(duì) INVITE 請(qǐng)求返回拒絕響應(yīng)來完成,或者對(duì)已建立的會(huì)話發(fā)送 BYE請(qǐng)求等方式來完成。對(duì)于非 2XX 的最終響應(yīng), UAC 收到此響應(yīng)后,發(fā)送 ACK中止會(huì)話。對(duì)于 BYE 請(qǐng)求,下面略作介紹。 UAC 行為 會(huì)話中的任意一方可以通過發(fā)送 BYE 請(qǐng)求來結(jié)束已經(jīng)建立的會(huì)話。 BYE 請(qǐng)求的生成與通用的請(qǐng)求消息的生成規(guī)則相同。 BYE 請(qǐng)求對(duì)應(yīng)一個(gè)新的事務(wù)。 UAC 發(fā)送 BYE 請(qǐng)求之后即認(rèn)為本次會(huì)話已經(jīng)結(jié)束了。 UAS 行為 UAS 收到 BYE 請(qǐng)求之 后,需要查詢匹配的會(huì)話。如果找不到則返回 481 響應(yīng)。如果找到對(duì)應(yīng)的會(huì)話, UAS 必須結(jié)束該會(huì)話。然后對(duì) BYE 返回 2XX 響應(yīng)。對(duì)于正在處理的請(qǐng)求消息,UAS 返回 487 響應(yīng)。 一個(gè)例子 1. BYE MESSAGE BYE sip: SIP/ Via: SIP/:5060。branch=z9hG4bK392kf MaxForwards: 70 To: Nikola Tesla From: G. Marconi CallID: CSeq: 1 BYE ContentLength: 0 2. 200 OK SIP/ 200 OK Via: SIP/:5060。branch=z9hG4bK392kf 。received= To: Nikola Tesla From: G. Marconi CallI
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1