一 SIP會話發起協議 - 先知道是什么

少年,思無邪 , 最最動人 。
協議概述
  • SIP會話發起協議是VoIP技術中最常用的協議之一 。它是一種應用層協議,與其它應用層協議協同工作 , 通過Internet控制多媒體通信會話 。
  • SIP采用SDP(會話描述協議)的幫助,它描述了用于通過IP網絡傳送語音和視頻的會話和RTP(實時傳輸協議) 。
  • SIP可用于雙方(單播)或多方(多播)會話 。
  • 其它SIP應用包括文件傳輸,即時通訊、視頻會議、網絡游戲、以及流媒體分發 。
網絡元素
  • 用戶代理
  • 代理服務器
  • 注冊服務器
  • 重定向服務器
  • 位置服務器
用戶代理用戶代理是SIP網絡中最智能的設備或網絡原件 。它可以是軟電話、手機或筆記本電腦 。
用戶代理在邏輯上分為兩部分:
  • 用戶代理客戶端(UAC):發送請求并接收響應的實體 。
  • 用戶代理服務器(UAS):接收請求并發送響應的實體 。
SIP基于客戶機 - 服務器架構,其中呼叫者的電話充當發起呼叫的客戶端,被叫方的電話充當響應呼叫的服務器 。即:一部電話既可以做客戶端,也可以做服務器端 。
代理服務器網絡元素接收來自用戶代理的請求并將其轉發給另外一個用戶 。
  • 作用類似路由
  • URI的幫助下進行轉發
  • 位于兩個用戶代理之間
代理服務器的兩種類型
  • 無狀態代理:只是轉發收到的消息,不存儲任何呼叫或交易的信息 。
  • 有狀態代理:可以跟蹤收到每個請求與響應,在有需要的時候,將來可以使用 , 對方沒有響應,可以重新發送請求 。
注冊服務器注冊服務器接受用戶代理的注冊請求 。幫助用戶在網絡中進行身份認證 。將URI和用戶的位置存儲在數據庫中,以幫助同一域內的其它SIP服務器 。
設備注冊流程圖:
一 SIP會話發起協議 - 先知道是什么

文章插圖
注冊流程描述:
  1. 設備向服務器發送 Register請求;
  2. 服務器向設備發送響應401,并在響應的消息頭 WWW_Authenticate字段中給出適合設備的認證體制和參數;
  3. 設備重新向服務器發送 Register請求,在請求的 Authorization字段給出信任書, 包含認證信息;
  4. 服務器對請求進行驗證,如果檢查出 設備身份合法,向設備發送成功響應 200 OK,如果身份不合法則發送拒絕服務應答 。
重定向服務器重定向服務器接收請求 , 并在注冊器創建的位置數據庫中查找請求的預期收件人 。使用數據庫獲取位置信息,并以3xx(重定向響應)響應給用戶 。
位置服務器位置服務器提供有關呼叫者可能的位置到重定向服務器或代理服務器的信息 。
SIP系統架構圖
一 SIP會話發起協議 - 先知道是什么

文章插圖
呼叫流程圖
一 SIP會話發起協議 - 先知道是什么

文章插圖
會話基本呼叫流程圖
一 SIP會話發起協議 - 先知道是什么

文章插圖
說明:
  • 發送到代理服務器的INVITE請求負責啟動會話 。
  • 代理服務器發送100 嘗試立即響應呼叫者(lijiatu)以停止INVITE請求的重新發送 。
  • 代理服務器在位置服務器中搜索nuonuo的地址 。獲取地址后,進一步轉發INVITE請求 。
  • 此后,nuonuo手機生成的180 振鈴(臨時響應)返回給lijiatu 。
  • nuonuo拿起手機后一個200 OK響應很快產生 。
  • 一旦200 OK到達lijiatu , nuonuolijiatu 收到一個ACK 。
  • 同時,會話建立,RTP數據包(會話)從兩端開始流動 。
  • 會話結束后,任何參與者(lijiatunuonuo)都可以發送一個BYE請求來終止會話 。
  • BYE直接從lijiatunuonuo繞過代理服務器 。
  • 最后,nuonuo發送200 OK響應來確認BYE,會話終止 。
  • 在上述基本呼叫流程中,可以使用三個事務(標記為1,2,3) 。
完整的呼叫(從INVITE到200 OK)稱為對話Dialog 。

推薦閱讀