亚洲综合伊人,成人欧美一区二区三区视频不卡,欧美日韩在线高清,日韩国产午夜一区二区三区,大胆美女艺术,一级毛片毛片**毛片毛片,你瞅啥图片

您當前的位置是:  首頁 > 新聞 > 國內(nèi) >
 首頁 > 新聞 > 國內(nèi) >

SIP協(xié)議與應用場景技術分享筆記-卷1-rfc3261-4

2019-01-02 09:19:15   作者:james.zhu   來源:CTI論壇   評論:0  點擊:


  SIP 定義
  以下定義對SIP協(xié)議非常重要。
  Address-of-Record: 一個 address-of-record (AOR) 是一個SIP或者SIPS URI地址,它指到了一個域,同時它支持定位服務。定位服務可以映射這個URL到其他的URL,其他的URL可能綁定了用戶的有效性和可用性。典型的示例是定位服務通過注冊來實現(xiàn)。AOR 經(jīng)常被認為是一個用戶的“公開地址”。
  Back-to-Back User Agent:背靠背用戶代理(B2BUA)是一個邏輯實體,它作為一個UAS來接收一個請求,處理這個請求。為了決定如何應答這個請求,它的工作方式又類似于一個user agent client (UAC)來生成請求。不像代理服務器,它會保持dialog狀態(tài),并且必須介入到整個它所創(chuàng)建的dialogs中發(fā)送的所有請求。因為,它自己本身就是一個UAC和UAS的結合體,本身并不需要特別明確的定義來定義它的行為。
  Call:呼叫是一個非正式的名稱,它指的是介于終端之間的通信,通常情況下創(chuàng)建呼叫的目的是為了多媒體的溝通。
  Call Leg:dialog另外的名稱[31];已不在此規(guī)定中使用。
  Call Stateful: 一個代理是有狀態(tài)呼叫,它具有這樣的特征。如果它保持dialog整個狀態(tài),這個狀態(tài)一直持續(xù)從初始化INVITE開始到BYE請求結束。一個call stateful 代理總是一個事務狀態(tài),但是事務狀態(tài)不一定是一個有狀態(tài)呼叫代理。
  Client:終端用戶是任何一個網(wǎng)絡的要素,它發(fā)送SIP請求和接收SIP響應。用戶端可能,或不可能直接和真人用戶進行互動。用戶代理終端和代理是終端。
  Conference:一個對媒體會話,它包含了多個參與方。
  Core:Core 指定了某些功能,這些功能專門針對某些SIP實體的參與方類型。例如,具體指定了是一個狀態(tài)或者非狀態(tài)代理,用戶代理或者注冊。除了某些非狀態(tài)代理以外,所有的core功能都是事務用戶。
  Dialog:dialog是一種端對端的SIP關系,它介于兩個UA之間,這兩個UA在一定時間內(nèi)維持著某種綁定關系。一個dialog的創(chuàng)建是通過SIP消息,例如對INVITE請求的2xx 響應。一個Dialog是通過一個call identifier, local tag,和一個remote tag來定義的。Dialog以前稱之為一個call leg,call leg在RFC2543定義。
  Downstream:在事務內(nèi)的一個消息前轉(zhuǎn)的,它涉及到了一個請求流程,這個請求流程是從用戶代理客戶端到用戶代理服務器端的處理方向。
  Final Response: 是一個響應消息,它結束SIP事務,相反的,一個provisional response(臨時響應)則不會結束事務。所有All 2xx,3xx,4xx,5xx 和 6xx responses 都是最終響應消息。
  Header: 頭是SIP消息的組件,它傳遞消息的信息。它由一系列的頭域值構成。
  Header Field:頭是SIP消息的組件。一個頭域可以表現(xiàn)為一個或多個頭域值。每一行頭域值包含頭域值名稱和一個或者多個頭域值。如果有多個頭域值的話,可以通過逗號分開。一些頭域值僅有單行頭域,它總是以單行頭域出現(xiàn)。
  Header Field Value: 一個頭域是一個單個數(shù)值;它由零個或多個頭域值構成。
  Home Domain:主機域?qū)IP用戶提供服務。典型的解釋是,這是一個域名,它出現(xiàn)在注冊AOR的URL中。
  Informational Response:類似于一個臨時響應。
  Initiator, Calling Party, Caller: 一方發(fā)起一個會話(和dialog),它帶著一個INVITE請求。一個呼叫方始終保持一個角色,這個角色從它開始發(fā)送這個初始的INVITE開始計算,這個INVITE創(chuàng)建了一個dialog,一直到結束這個dialog。
  Invitation:一個INVITE請求。
  Invitee, Invited User, Called Party, Callee: 一方接收一個INVITE請求,這個請求的目的是為了創(chuàng)建一個新的會話。被呼叫方始終保持這個角色,這個角色從它開始接收這個INVITE開始計算,一直到dialog結束,這個dialog是由那個INVITE創(chuàng)建。
  Location Service:定位服務用來支持一個 SIP 重定位或代理服務器來獲得關于被呼叫方可能存在的地址信息。它包含一個綁定的address-of-record列表數(shù)值,這些從從零個到多個contact 地址。這個綁定關系可以通過多種方式來創(chuàng)建或者刪除;此協(xié)議細節(jié)中定義了一個REGISTER method來更新綁定關系。
  Loop:一個已到達代理的請求,經(jīng)過前轉(zhuǎn)以后,后來又返回到同樣的代理。當這個請求第二次到達代理時,這個請求的Request-URI確認是第一次的請求,并且其他影響代理操作的頭域值不會改變,因此代理會在這個請求中做出和第一次同樣的處理決定;丨h(huán)的請求是一種錯誤,流程會檢測回環(huán)請求,通過協(xié)議本身來處理這種回環(huán)請求。
  Loose Routing:如果代理遵守本規(guī)范來處理路由頭域,代理會被告知是一個松散路由。這些流程從一系列的代理中分開了目的地請求(出現(xiàn)在Request-URL中),代理所遵守的機制被稱之為松散路由。
  Message: 消息是在SIP要素之間發(fā)送的數(shù)據(jù),它是協(xié)議的一部分。SIP消息可以是請求或者響應。
  Method: method是一個基本功能,一個請求在服務器端被激活。Method在請求自己的消息中傳輸。常見的methods是INVITE和BYE。
  Outbound Proxy: 它是一個代理,負責接收從客戶端發(fā)出的請求,即使它可能不是一個通過Request-URI解析度服務器。 通常情況下,一個UA 可以通過outbound  proxy手動配置,或通過自動配置協(xié)議進行學習。
  Parallel Search:在并行查詢中,一個代理會對可能存在的用戶位置發(fā)送幾個請求,這些可能存在的用戶位置用來接收請求。而且,并行查詢也不是發(fā)送一個請求,然后等待收到這個請求的最后響應,然后發(fā)送接下來的請求。它不會等到前面的請求響應收到以后再發(fā)送下一個請求。
  Provisional Response: 它是臨時響應,臨時響應表示服務器端的處理進程,但是臨時響應不會結束SIP事務。1xx是臨時響應,其他的響應是最終響應。
  Proxy, Proxy Server:代理是一個中間實體,它的工作方式既是一個服務器端,又是一個客戶端,作為客戶端的作用是支持其他客戶端發(fā)起請求。代理服務器基本功能是扮演路由的角色,它的工作就是確保請求被發(fā)送到比較接近目標用戶的其他實體。代理也可以執(zhí)行一些強制的策略(例如,確保用戶被允許呼叫)。代理可以解析請求消息的部分消息內(nèi)容,如果必要的話,在一個請求消息被前轉(zhuǎn)之前,代理可以重寫請求消息的部分參數(shù)內(nèi)容。
  Recursion:遞歸處理。當用戶在響應中的Contact 頭域中產(chǎn)生一個或多個URLS的新請求時,用戶會在3xx響應中產(chǎn)生遞歸。
  • Redirect Server:重定向服務器是一個用戶代理服務器,它會對接收的請求產(chǎn)生3xx 響應,重新定向用戶,讓用戶聯(lián)系其他可選的URL列表中的URI地址。
  • Registrar: 注冊服務是一個注冊服務器,它用來接受REGISTER請求,負責把注冊服務器接受的信息保存到定位服務所支持的domain,這個domain是注冊服務器負責。
  • Regular Transaction:正常事務是任何帶method的事務,帶INVITE, ACK,或者CANCEL的method的除外。
  • Request::請求是一個由用戶端發(fā)送到服務器的SIP消息,請求的目的是觸發(fā)一個特別的操作。
  • Response:響應是一個由服務器端發(fā)送到用戶端的SIP消息,其目的是說明請求發(fā)送后服務器端回復的狀態(tài)。
  • Ringback:回鈴是一種信令音(回鈴音),它是由呼叫方應用程序生成,用來表示被呼叫方已經(jīng)被提示(被呼叫方正在振鈴狀態(tài))。
  • Route Set:路由集是一組有序SIP或者SIPS URI的集和,它用來表示當發(fā)送一個特別的請求時所經(jīng)過的代理列表。路由集通過路由頭,例如Record-Route或者經(jīng)過配置后獲得。
  • Server:服務器是網(wǎng)絡中的一個要素,它用來接收請求,然后對其進行服務支持,并且對其請求返回響應消息。服務器的實例包括代理,用戶終端服務器,重定位服務器和注冊服務器。
  • Sequential Search:在順序查詢中,代理服務器按照順序嘗試查詢每個contact地址,并且,只有當上一個查詢返回最終響應后才進行下一個查詢的新的處理。  2xx或者6xx 的最終響應總是結束順序查詢處理。
  • Session: 在SDP規(guī)范中:"一個媒體會話是一系列媒體發(fā)送方和媒體接收方,以及從發(fā)送方到接收方之間的媒體數(shù)據(jù)流。一個媒體會議就是一個媒體會話的舉例。" (RFC 2327[1]) (對SDP定義的會話來說,一個會話由一個或多個RTP 會話構成)。就像定義中的那樣,對于同一會話來說,一個被呼叫方可以被不同的呼叫方多次邀請。如果使用了SDP,會話通過SDP 用戶名稱,會話ID,網(wǎng)絡類型,地址類型和在地址單元中的原始值域構成。
  • SIP Transaction: 一個SIP 事務會發(fā)生在客戶端和服務器端之間,它由第一個由客戶端發(fā)出的請求開始到服務器端最終響應的所有消息構成(非1xx消息)。如果請求是INVITE,并且最終響應是一個非-2xx消息的話,這個事務也會對這個響應包括一個ACK。這個對于200 OK(INVITE的響應)的ACK來說,它是一個獨立的事務處理。
  關于SIP事務的定義,除了rfc3261中定義以外,筆者為了幫助讀者能夠比較完整地了解事務的真正概念,除了在老師文檔中有過介紹以外,特別添加了圖例來進一步說明什么是SIP的事務,另外,讀者一定要注意官方定義中的加粗部分內(nèi)容的解釋。
  • SIP Transaction:A SIP transaction occurs between a client and a server and comprises all messages from the first request sent from the client to the server up to a final (non-1xx) response sent from the server
  to the client. If the request is INVITE and the final response is a non-2xx, the transaction also includes an ACK to the response. The ACK for a 2xx response to an INVITE request is a separate transaction
  另外,事務有分為客戶端事務和服務器端事務處理方式。在不同的環(huán)境中扮演不同的角色。
  配合rfc3261對事務的定義,我們通過以下圖例詳細說明一下事務的定義。通過rfc的定義,我們看出,以下呼叫流程包括了三個事務處理的流程。這里大家應該注意到是,如果請求是INVITE情況下的問題。第一個是INNITE到200 OK的流程,它是一個非200 OK的情況。因此,第二個是ACK,它是一個獨立分離的事務處理。第三個事務是一個非INVITE請求,客戶端發(fā)送到是BYE,然后回復200 OK。因此,從簡單的流程中可以看出,這個dialog 包括了三個事務處理。
  當然,每個事務都有各自的ID和其他屬性來區(qū)別于其他的事務。每個事務的ID包括以下幾個方面的屬性:
  • 通過Via-header 添加到branch ID
  • Cseg header
  • rfc 3261定義的branch ID 起始前綴“z9hG4bK”
  以下是一個INVITE中的定義示例:
  參考資料:
  https://www.rfc-editor.org/rfc/pdfrfc/rfc3262.txt.pdf
  http://www.aboutsip.com/aboutsip-intro_transactions_and_dialogs.pdf

 
  關注微信公眾號:asterisk-cn,獲得有價值的Asterisk行業(yè)分享
  Asterisk freepbx 中文官方論壇:http://bbs.freepbx.cn/forum.php
  Asterisk freepbx技術文檔: www.freepbx.org.cn
  融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
  Asterisk/FreePBX中國合作伙伴,官方qq技術分享群(3000千人):589995817

【免責聲明】本文僅代表作者本人觀點,與CTI論壇無關。CTI論壇對文中陳述、觀點判斷保持中立,不對所包含內(nèi)容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

專題

CTI論壇會員企業(yè)