Sip協議棧 事務層的設計與實現

2021-09-30 09:59:38 字數 887 閱讀 4190

乙個事務是客戶傳送的乙個請求事務(通過通訊層)傳送到乙個伺服器事務,連同伺服器事務的所有的該請求的應答傳送回客戶端事務。事務層處理應用服務層的重發,匹配請求的應答,以及應用服務層的超時。任何乙個使用者**客戶端(user agent client uac)完成的事情都是由一組事務構成的。通常乙個sip 事務由乙個單個請求和這個請求的所有應答組成,這些應答包括了零個或者多個臨時應答以及乙個或者多個終結應答

事務層包含兩個事務庫:客戶端事務庫和服務端事務庫。每個事務都包含若干狀態。其中invite客戶端事務包括calling、proceeding、completed、terminated四種狀態;非invite客戶端事務包括trying、proceeding、completed、terminated四種狀態;invite服務端端事務包括proceeding、completed、confirmed、terminated四種狀態;非invite服務端端事務包括trying、proceeding、completed、terminated四種狀態。

事務層需要依賴tu層和傳輸層。即接收傳輸層收到的資料,處理後轉給tu層;接收tu層要傳送的資料,處理後轉給傳輸層傳送。

事務層包含乙個定時器管理器,對11種定時器進行維護。當在tcp傳輸方式下不啟用。

每個事務包含乙個transactionkey做為事務的標識。在rfc3261中以頂端via的branch及cseq中的方法作為事務的標識,因此以它作為查詢事務的關鍵字。由於只遵循rfc2543的訊息中via可以不帶branch引數,為了處理這種情況,查詢時首先檢查訊息中是否存在該引數且是否以字串「z9hg4bk」開頭。若發現via中不帶branch引數或branch不符合rfc3261規範, 則根據請求訊息中的uri、via、call-id、to的tag、from的tag以及cseq生成雜湊**做為事務的標識

事務層是執行緒安全的。

SIP協議解析與實現

本文將按照rfc3261逐步的介紹sip協議,介紹了c和c 語言的實現,分析了osip庫的使用和實現。第一章 概述 一 概述 sip協議是乙個基於應用層的會話控制協議。它可以建立 修改 終止多 會話 會議 也可以邀請參與者加入到乙個現有的會話。由此可見,sip協議應該用來組合其它協議,從而實現完整的...

OSI與IP五層協議棧

1.分層思想 將複雜的流程分解為幾個功能相對單一的子過程 為了降低複雜性 整體流程更加氫氣,複雜問題簡單化 更容易發現問題並針對性的解決問題 2.osi七層模型 1974年,iso組織發布了osi參考模型 應用層表示層 使用asci編碼轉換與二進位制 會話層 會話層將通過傳輸層的流量進行歸類 傳輸層...

TCP IP協議棧設計 TCP設計實現小結

tcp ip協議棧設計 tcp設計實現小結 設計目的 在fpga上採用純verilog描述的方式,實現可定製裁剪的tcpip硬體協議棧,並加入超時重傳 滑動視窗等優化演算法,最終希望實現傳輸速率能超過200mhz的千兆乙太網。去年3月份,就開始了設計之旅,期間參考了眾多 網上也查了許多資料。經過一步...