什么是SIP协议?
什么是SIP,這里講的SIP是一種VoIP網絡通信協議,首先我們要知道要了解網絡電話協議有哪些,
注意:SIP (系統級封裝(System In a Package)與本文無關,了解這個請移步:
1,SIP是類似于HTTP的基于文本的協議。
2,SIP可以減少應用特別是高級應用的開發時間。由于基于IP協議的SIP利用了IP網絡,固定網運營商也會逐漸認識到SIP技術對于他們的深遠意義
SIP協議原理圖示
SIP(SessionInitiationProtocol,會話發起協議)是由IETF推出的一種用于建立、修改和終止多媒體會話的應用層控制協議。這些多媒體會話包括Internet多媒體會議、遠程教育、Internet電話等。SIP側重于將SIP網絡電話作為互聯網上的一個應用,所以SIP繼承了互聯網協議簡單、開放、靈活的特點,既保證了對用戶和會話的可管理性,又使網絡核心負擔大大減輕,實現可伸縮性。同時,與其他互聯網應用(如FTP、E-mail等)相比較,SIP還增加了信令和QoS控制的要求。
SIP是一種基于文本的協議,它的語法和消息非常類似于HTTP協議,不同之處在于SIP不僅可以用TCP,也可以用UDP封裝。SIP采用統一資源定位(URL,UniformResourceLocators)來指示會話的發起方(From八當前請求的目的地(RequestURL)和最終的接收方(To)。SIP的消息分為兩大類:一類為客戶發往服務器的請求消息;另一類為服務器返回的響應消息。SIP在消息體中采用SDP(SessionDescriptionProtocol,會話描述協議)來描述多媒體會話的媒體信息。SIP最大的特點是僅需利用已有的消息頭字段,對其進行簡單必要的擴充,就能很方便地支持各項新業務和智能業務,具有很強的靈活性和可擴充性。SIP協議天然具有對移動性的支持。SIP的動態注冊機制,使用戶端的移動變得十分方便。SIP協議為實現固定和移動業務的無縫融合創造了條件。3GPPR5版本已經選定SIP作為3G移動通信多媒體域的信令協議來實現基于IP的移動語音和多媒體通信。SIP的這些優越特征使其在NGN中占據很重要的主導地位。下圖顯示了一個典型的SIP呼叫建立的信令過程,具體過程如下。
建立呼叫的SIP信令過程
建立呼叫的SIP信令過程
1、呼叫方對某個用戶SIP:weixin@yuyinjiqiren 發起INVITE請求,該請求中提供了足夠的信息,以便被叫方能參加該會話,包括媒體流的類型和格式以及地址和端口等信息,以SDP格式來表示,INVITE請求被送到本地的SIP代理服務器A;
2、本地的SIP代理服務器A通過DNS查詢,得到company.com域中處理SIP請求的重定向服務器的IP地址,并將接收到的請求轉發到該SIP重定向服務器;
3、SIP重定向服務通過查詢,了解到用戶userA@company.com當前并不在本地,而是以userB@univeristy.edu登記(company.com的服務器可以通過靜態配置數據庫入口來獲得這些消息,或者用戶通過使用SIPREGISTER消息動態通知重定向服務器),然后該服務器將請求重定向到university.edu;
4、本地的SIP代理服務器A通過DNS查詢,得到university.edu域中處理SIP請求的代理服務器B的IP地址,并將接收到的INVITE請求轉發到該SIP代理服務器B;
5、university.edu域中的SIP代理服務器B查詢本地的位置服務數據庫;
6、本地數據庫返回有關userB@univeristy.edu的消息,指示該用戶在本地是以userC@cs.university.edu注冊的;
7、university.edu域的SIP代理服務器B將該INVITE請求轉發到cs.university.edu域中的SIP代理服務器C;
8、cs.university.edu域中的SIP代理服務器C知道用戶userC@cs.university.edu當前所登記的機器的IP地址,并將該INVITE請求轉發到該地址;
9、被叫方userC@cs.university.edu接受該呼叫,并發回一個響應。該響應沿著10、11、12到達呼叫方,然后呼叫方返回一個確認(圖中未標出),至此呼叫已經建立,可以開始在它們之間直接傳輸媒體流了。
SIP行業通信方案
SIP功能
SIP被描述為用來生成、修改和終結一個或多個參與者之間的會話。這些會話包括Internet多媒體會議,Internet(或任何IP網絡)電話呼叫和多媒體發布。會話中的成員能夠通過多播或單播聯系的網絡來通信。SIP支持會話描述,它允許參與者在一組兼容媒體類型上達成一致。它同時通過代理和重定向請求到用戶當前位置來支持用戶移動性。SIP不與任何特定的會議控制協議捆綁。本質上,SIP提供以下功能:
?名字翻譯和用戶定位:無論被呼叫方在哪里都確保呼叫達到被叫方、執行任何描述信息到定位信息的映射,確保呼叫(會話)的本質細節被支持。
?特征協商:它允許與呼叫有關的組(這可以是多方呼叫)在支持的特征上達成一致(注意:不是所有各方都能夠支持相同級別的特征)。例如,視頻可以或不可以被支持。總之,存在很多需要協商的范圍。
?呼叫參與者管理:呼叫中參與者能夠引入其他用戶,加入呼叫或取消到其他用戶的連接。此外,用戶可以被轉移或置為呼叫保持。
?呼叫特征改變:用戶應該能夠改變呼叫過程中的呼叫特征。例如,一個呼叫可以被設置為“voice-only”,但是在呼叫過程中,用戶可以開啟視頻功能。也就是說一個加入呼叫的第三方為了加入該呼叫可以開啟不同的特征。
SIP系統基本組成
SIP協議雖然主要為IP網絡設計的,但它并不關心承載網絡,也可以在ATM、幀中繼等承載網中工作,它是應用層協議,可以運行于TCP,UDP,SCTP等各種傳輸層協議之上。SIP用戶是通過類似于e-mail地址的URL標識,例如:sip:myname@mycompany.com,通過這種方式可以用一個統一名字標識不同的終端和通信方式,為網絡服務和用戶使用提供充分的靈活性。按邏輯功能區分,SIP系統由4種元素組成:用戶代理、代理服務器、重定向服務器以及注冊服務器。
1.用戶代理
用戶代理(UserAgent)分為兩個部分:
客戶端(UserAgentClient),負責發起呼叫;
用戶代理服務器(UserAgentServer),負責接受呼叫并做出響應。
二者組成用戶代理存在于用戶終端中。用戶代理按照是否保存狀態可分為有狀態代理、有部分狀態用戶代理和無狀態用戶代理。
2.代理服務器
代理服務器(ProxyServer),負責接收用戶代理發來的請求,根據網絡策略將請求發給相應的服務器,并根據收到的應答對用戶做出響應。它可以根據需要對收到的消息改寫后再發出。
3.重定向服務器
重定向服務器(RedirectServer),用于在需要時將用戶新的位置返回給呼叫方。呼叫方可根據得到的新位置重新呼叫。
4.注冊服務器
注冊服務器(Registrar),用于接收和處理用戶端的注冊請求,完成用戶地址的注冊。
SIP服務器完全是純軟件實現
SIP的組網很靈活
對話啟動協議提供了一種既可在終端設備或代理服務器之間,也可向網關設備傳輸呼叫控制信息的方法,像許多現有的Internet協議一樣,SIP中也包含了常用的HTTP協議。 SIP被認為是一種輕量級協議,因為該協議使用的是能被終端設備輕易生成并分析的簡單文本命令。SIP只使用6個指令管理呼叫控制信息,SIP協議的簡單易行是極低成本應用系統選擇該協議的重要原因。 SIP并未對媒體傳輸機制加以定義,因此該協議能用在媒體傳輸作為專用設備的應用系統,這可以提高效率并降低成本。SIP也允許通過任意數據報協議傳輸呼叫控制信息,使其在非TCP/IP環境(如Novell或其他專有協議)中也能有效使用。 SIP的部分優點包括:該協議具有可擴展特性,可以輕松定義并迅速實現新功能。可以簡單易行地嵌入廉價終端用戶設備。該協議可確保互操作能力,并使不同的設備進行通信。便于那些非電話領域的開發人員理解該協議。
SIP的缺點包括:
SIP問世不久,因此大多數應用尚處于原型階段。該協議單獨應用的范圍較窄。但與其他協議協同使用時,具有較強的靈活性。SIP只是完整解決方案的一小部分,還需要許多其他的軟件來構建完整的SIP網絡電話產品。
SIP簡易組網
總結
- 上一篇: 开源软件 特点_开源和烹饪有什么共同点?
- 下一篇: 以下哪些Linux命令可以重启计算机的是