Call Legs是什麼鬼

        如果你接觸過Voip,那麼你會經常碰到這些術語:Channel、 Call、 Call Leg  (A leg 及 B Leg),還有 Bridged Call。是不是感覺暈乎乎的,不知所云?這裏解釋一下這些術語。

 

1. Call legs

        當你拿起電話,接通一個號碼時,從電話交換機的視角來看,這路呼叫是分成兩部分的:

  • 首先,在你撥號時,你的話機設備向交換機發起一條連接,並通知交換機你要呼叫的號碼
  • 然後,交換機查找撥號規則,處理被叫號碼,然後向被叫終端發起一條連接

因此,在交換機上,有兩條獨立的連接存在:

  • 一條是主叫方 originator (caller)發起的連接,通常稱爲ingress
  • 另一條是交換機發起的,連接被叫方 recipient of the call (callee),通常稱爲egress

        這兩條連接,都是call legcall leg.指的是在終端與交換機之間,交換機的入局或出局連接。

 

1.1 A leg 與 B leg

        A leg 和B leg 這兩個術語經常混淆。在嚴格意義上:

  • A leg 描述ingress (即交換機入局的 call leg) 
  • B leg 拱橋egress (即交換機出局的  call leg) 

在多數場景下,這意味着In most cases, this means that

  • 主叫方的連接是 A leg
  • 被叫方的連接是 B leg.

2. Channels

        在FreeSWITCH或Asterisk的實現中,channel 就是描述call leg的抽象。

        Channel由撥號方案控制。每個channel 有一個UUID,編程中可以通過UUID操作呼叫或報告呼叫詳情。

3. Calls

        術語call 指從主叫到被叫間的端到端連接。

3.1 單legg call

        顧名思義,只有一個call leg組成的call

        比如:接入voicemail時,主叫方連接的是交換機提供的APP。這時交換機並沒有生成B leg,因爲它沒必要橋接到第三方。

        一些具體實例:

  • IVR
  • voicemail
  • 會議

3.2 Bridged call

        撥號方案通過某種方式,把A legB leg連接在一起,這時,我們稱建立一個bridged call(橋接)

        因此,在bridged call裏,兩條leg並稱爲一個call。

        呼叫同一組織內的分機時,通常只經過一道交換。在現實世界裏,通常你接到的電話是來自你的SIP供應商的,不是主叫直接呼叫到你的設備上,期間可能需要多次交換,才能順利連接主叫和被叫。但是,在每一個交換機視角里,這些概念同樣適用。

        橋接的雙方,可以不使用同一種協議,這爲通信交換提供了極大的便利,但這打破了端到端安全加密的要求。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章