📜  SIP-基本呼叫流程

📅  最后修改于: 2020-10-29 03:47:41             🧑  作者: Mango


下图显示了SIP会话的基本呼叫流程。

SIP呼叫流程

下面给出了上述调用流程的分步说明-

  • 发送到代理服务器的INVITE请求负责启动会话。

  • 代理服务器立即将100个Trying响应发送给调用方(爱丽丝),以停止INVITE请求的重发。

  • 代理服务器在位置服务器中搜索Bob的地址。获取地址后,它将进一步转发INVITE请求。

  • 此后,由Bob产生的180次振铃(临时响应)将返回给Alice。

  • Bob拿起电话后,很快就会产生200 OK响应。

  • 一旦获得200 OK ,Bob就会从Alice那里收到一个ACK

  • 同时,建立会话,并且RTP数据包(会话)开始从两端流出。

  • 对话后,任何参与者(爱丽丝或鲍勃)都可以发送BYE请求以终止会话。

  • BYE绕过代理服务器直接从Alice到达Bob。

  • 最后,鲍勃发送200 OK响应以确认BYE,并且会话终止。

  • 在上述基本呼叫流程中,三个事务(标记为1、2、3)可用。

完整的调用(从INVITE到200 OK)称为Dialog

SIP梯形

代理如何帮助将一个用户连接到另一个用户?让我们借助下图找出答案。

SIP梯形

图中显示的拓扑称为SIP梯形。该过程如下-

  • 当呼叫者发起呼叫时,INVITE消息将发送到代理服务器。收到邀请后,代理服务器将尝试在DNS服务器的帮助下解析被呼叫者的地址。

  • 获取下一条路由后,呼叫者的代理服务器(代理1,也称为出站代理服务器)将INVITE请求转发到被呼叫者的代理服务器,后者充当被呼叫者的入站代理服务器(代理2)。

  • 入站代理服务器与位置服务器联系,以获取有关用户注册的被呼叫者地址的信息。

  • 从位置服务器获取信息后,它将呼叫转发到其目的地。

  • 一旦用户代理知道他们的地址,他们就可以绕过呼叫,即对话直接通过。