参考连接 :https://www.2cto.com/kf/201609/546336.html
https://www.w3cschool.cn/session_initiation_protocol/session_initiation_protocol_introduction.html
https://www.ibm.com/developerworks/cn/opensource/os-cn-sip-intro/
专业词汇: SDP(会话描述协议)
RTP(实时传输协议)
SIP (会话发起协议)
SIP 网络元素
(1)用户代理
它是端点和SIP网络的最重要的网络元件之一。端点可以启动,修改或终止会话。 用户代理是SIP网络中最智能的设备或网络元件。它可以是软电话,移动电话或笔记本电脑。用户代理在逻辑上分为两个部分 。
-
用户代理客户端(UAC) - 发送请求并接收响应的实体。
-
用户代理服务器(UAS) - 接收请求并发送响应的实体。
SIP基于客户端 - 服务器架构,其中呼叫者的电话充当发起呼叫的客户端,并且被叫者的电话充当响应呼叫的服务器。
(2)代理服务器
它是从用户代理接收请求并将其转发给另一个用户的网络元素。
-
基本上代理服务器的作用就像一个路由器。
-
它具有一些智能来理解SIP请求并且在URI的帮助下向前发送它。
-
代理服务器位于两个用户代理之间。
-
源和目标之间最多可以有70个代理服务器。
有两种类型的代理服务器 -
-
无状态代理服务器 - 它仅转发接收的消息。这种类型的服务器不存储呼叫或事务的任何信息。
-
状态代理服务器 - 此类型的代理服务器会跟踪收到的每个请求和响应,如果需要,将来可以使用它。如果没有来自另一方的响应,它可以重传请求。
(3)注册服务器
注册服务器接受来自用户代理的注册请求。它帮助用户在网络中验证自己。它将URI和用户的位置存储在数据库中,以帮助同一域中的其他SIP服务器。请看下面的示例,显示SIP注册的过程。

这里呼叫者想要注册到TMC域。因此它向TMC的注册服务器发送注册请求,并且服务器在授权客户端时返回200 OK响应。
(4)重定向服务器
重定向服务器接收请求并在由注册器创建的位置数据库中查找请求的预期接收者。重定向服务器使用数据库获取位置信息,并以3xx(重定向响应)向用户作出响应。
(5)位置服务器
位置服务器向重定向和代理服务器提供关于呼叫者可能的位置的信息。只有代理服务器或重定向服务器可以联系位置服务器。
下图描述了每个网络元素在建立会话时所扮演的角色。