📅  最后修改于: 2020-10-29 03:47:21             🧑  作者: Mango
有一些实体可以帮助SIP创建其网络。在SIP中,每个网络元素都由一个类似于地址的SIP URI (统一资源标识符)来标识。以下是网络元素-
它是SIP网络的端点,也是最重要的网络元素之一。端点可以启动,修改或终止会话。用户代理是SIP网络中最智能的设备或网络元素。它可以是软件电话,手机或笔记本电脑。
用户代理在逻辑上分为两部分-
用户代理客户端(UAC) -发送请求并接收响应的实体。
用户代理服务器(UAS) -接收请求并发送响应的实体。
SIP基于客户端-服务器体系结构,其中呼叫者的电话充当发起呼叫的客户端,而被呼叫者的电话充当响应呼叫的服务器。
网络元素接收来自用户代理的请求并将其转发给另一个用户。
基本上,代理服务器的角色很像路由器。
它具有一定的智能能力,可以理解SIP请求并借助URI提前发送。
代理服务器位于两个用户代理之间。
源和目标之间最多可以有70个代理服务器。
代理服务器有两种类型-
无状态代理服务器-它仅转发收到的消息。这种类型的服务器不存储任何呼叫或交易信息。
有状态代理服务器-这种类型的代理服务器会跟踪收到的每个请求和响应,并在将来需要时可以使用它。如果没有及时的响应,它可以重新发送请求。
注册服务器接受来自用户代理的注册请求。它可以帮助用户在网络中进行身份验证。它将URI和用户的位置存储在数据库中,以帮助同一域中的其他SIP服务器。
看下面的示例,该示例显示了SIP注册的过程。
此处,呼叫者想在TMC域中注册。因此,它向TMC的注册器服务器发送REGISTER请求,并且服务器在授权客户端时返回200 OK响应。
重定向服务器接收请求,并在注册服务商创建的位置数据库中查找请求的预期收件人。
重定向服务器使用数据库获取位置信息,并以3xx(重定向响应)响应用户。我们将在本教程的后面部分讨论响应代码。
位置服务器将有关呼叫者可能位置的信息提供给重定向和代理服务器。
只有代理服务器或重定向服务器才能联系位置服务器。
下图描绘了每个网络元素在建立会话中所扮演的角色。
SIP被构造为分层协议,这意味着它的行为是根据一组相当独立的处理阶段来描述的,每个阶段之间只有一个松散的耦合。
SIP的最底层是其语法和编码。使用增强的Backus-Naur形式语法(BNF)指定其编码。
在第二层是传输层。它定义了客户端如何发送请求和接收响应以及服务器如何通过网络接收请求和发送响应。所有SIP元素都包含一个传输层。
接下来是事务层。事务是客户端事务(使用传输层)发送到服务器事务的请求,以及对该请求的所有响应,这些响应是从服务器事务发送回客户端的。用户代理客户端(UAC)完成的任何任务都使用一系列事务进行。无状态代理不包含事务层。
交易层上方的层称为交易用户。除无状态代理外,每个SIP实体都是交易用户。