SIP 代理和路由

2018-12-28 18:25 更新

我們知道,代理服務(wù)器可以是無(wú)狀態(tài)的或有狀態(tài)的。在本章中,我們將討論更多關(guān)于代理服務(wù)器和SIP路由。

無(wú)狀態(tài)代理服務(wù)器

無(wú)狀態(tài)代理服務(wù)器簡(jiǎn)單地轉(zhuǎn)發(fā)它接收的消息。這種服務(wù)器不存儲(chǔ)任何呼叫或交易的信息。

  • 無(wú)狀態(tài)代理一旦轉(zhuǎn)發(fā)就忘記SIP請(qǐng)求。
  • 事務(wù)將通過(guò)無(wú)狀態(tài)代理快速。

狀態(tài)代理服務(wù)器

狀態(tài)代理服務(wù)器跟蹤它接收的每個(gè)請(qǐng)求和響應(yīng)。如果需要,它可以使用未來(lái)存儲(chǔ)的信息。如果它沒(méi)有從另一方接收到響應(yīng),它可以重傳請(qǐng)求。

  • 狀態(tài)代理在轉(zhuǎn)發(fā)請(qǐng)求之后記住請(qǐng)求,因此它們可以使用它來(lái)提前路由。狀態(tài)代理維護(hù)事務(wù)狀態(tài)。事務(wù)意味著事務(wù)狀態(tài),而不是調(diào)用狀態(tài)

  • 事務(wù)不像無(wú)狀態(tài)的狀態(tài)代理那么快。

  • 如果需要,狀態(tài)代理可以分叉和重傳(例如,例如呼叫前轉(zhuǎn)忙)。

Via和記錄路由

記錄路由

記錄 - 路由報(bào)頭被想要在相同呼叫id的后續(xù)請(qǐng)求的路徑中的代理插入到請(qǐng)求中。然后由用戶代理使用它來(lái)路由后續(xù)請(qǐng)求。

Via

Via頭由服務(wù)器插入請(qǐng)求以檢測(cè)循環(huán)并幫助響應(yīng)找到他們的方式回到客戶端。這有助于只有響應(yīng)到達(dá)其目的地。

  • UA自己在發(fā)送請(qǐng)求時(shí)在Via報(bào)頭字段中生成并添加其自己的地址。

  • 轉(zhuǎn)發(fā)請(qǐng)求的代理將Via頭字段包含其自己的地址添加到Via頭字段列表的頂部。

  • 生成對(duì)請(qǐng)求的響應(yīng)的代理或UA將請(qǐng)求中的所有Via報(bào)頭字段按順序復(fù)制到響應(yīng)中,然后將響應(yīng)發(fā)送到在頂部Via報(bào)頭字段中指定的地址。

  • 接收響應(yīng)的代理檢查頂部Via頭字段并匹配其自身的地址。如果不匹配,則響應(yīng)已被丟棄。

  • 然后刪除頂部Via頭字段,并將響應(yīng)轉(zhuǎn)發(fā)到在下一個(gè)Via頭字段中指定的地址。

Via頭字段包含協(xié)議名,版本號(hào)和傳輸(SIP / 2.0 / UDP,SIP / 2.0 / TCP等),并包含端口號(hào)和參數(shù),如received,rport,branch。

  • 如果UA或代理從與在頂部Via頭字段中指定的地址不同的地址接收到請(qǐng)求,則將所接收的標(biāo)簽添加到Via報(bào)頭字段。

  • 分支參數(shù)通過(guò)UA和代理被添加到Via報(bào)頭字段,其被計(jì)算為Request-URI的哈希函數(shù),以及To,F(xiàn)rom,Call-ID和CSeq數(shù)。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)