什么是会话初始协议(SIP)?
会话初始协议(SIP)是一种信号协议,用于启动、维护、修改和终止互联网协议(IP)设备之间的实时通信会话。SIP支持IP网络上两个或多个端点之间的语音、消息传递、视频和其他通信应用和服务。
SIP由互联网工程任务组于1996年开发,并于1999年标准化。
SIP满足了基于IP的通信不断变化的需求。对移动性、互操作性和多媒体的原生支持是SIP开发背后的驱动力之一。SIP是对其他通信协议的补充,例如基于IP的会话中使用的实时传输协议(RTP)和实时流协议。
SIP功能
SIP通信协议在建立和终止多媒体会话时确定五个属性:
- 用户位置
- 用户可用性
- 用户能力
- 会话设置
- 会话管理
SIP会话可以包括互联网电话,视频会议和其他形式的统一通信。该协议可用于邀请参与者参加不一定涉及发起方的单播或多播会话。
SIP不提供通信服务。相反,它定义了SIP功能的可互操作实现,称为基元,用于促进不同的服务。基元允许将其他信息嵌入到SIP消息中,例如将用户的照片链接到目录信息以增强用户的呼叫方ID。
SIP还支持名称映射和重定向服务,这是该协议实现移动性的两种方式。使用单个标识符或统一资源标识符(URI)检测用户和终结点,该标识符与其网络位置无关。URI是字母数字,使用的语法看起来更像是电子邮件地址,而不是电话号码或IP地址。其他SIP功能可通过应用程序编程接口获得。
除了实时服务之外,SIP还用于异步事件通知,例如自动回调、消息等待指示器和基于状态的好友列表。
SIP允许代理服务器进行通信,以便用户以后可以使用实时传输协议进行通信。
SIP协议如何工作?
SIP的操作类似于超文本传输协议(HTTP)和简单邮件传输协议(SMTP),并包含其部分内容。与HTTP或SMTP一样,SIP在开放系统互连通信模型的应用层中工作。它由IPv4和IPv6支持。
SIP可以被认为是一种客户端-服务器架构。SIP还将与其他协议协同工作,即会话描述协议(SDP),该协议包含在SIP消息中。SDP用于描述邀请,公告和参数协商的会话的多媒体通信。
此外,SIP是一种基于文本的协议,就像HTTP一样,这意味着它的内容是可读的格式。这使得SIP与类似的信令协议(如H.323)相比更容易读取和调试。
SIP是一种请求-响应协议。请求和响应是消息协议在设备之间发送的名称,用于进行通信。SIP接收来自客户端的请求和来自服务器的响应。请求可以通过任何传输协议发送,例如用户数据报协议、流控制传输协议或传输控制协议。
使用SIP的设备通过SIP代理服务器直接相互通信。代理充当中介系统来卸载原本由SIP处理的任务。
SIP确定用于会话的终结点、通信媒体和媒体参数,以及被叫方是否同意通信。然后,SIP在通信的任一端建立呼叫参数,同时处理呼叫转移和终止。
企业SIP服务器确定用户将与之通信的SIP终结点,但直接连接到服务提供商的SIP电话除外。
SIP请求示例
SIP根据其特性和功能发出请求。以下是简单请求的示例:
- 邀请。启动将启动呼叫的对话。
- 确认。确认其他用户已响应请求。
- 更新。可用于修改会话,而无需更改对话的状态。
- 取消。停止挂起的请求。
- 再见。结束对话和呼叫。
声网和网络电话
在电信领域,语音呼叫有两个阶段:呼叫建立和数据传输。IP语音(VoIP)用于通过互联网传输语音和多媒体内容。在此过程中,SIP可以被认为是电话总机操作员。它处理VoIP呼叫的呼叫建立阶段。
该过程的呼叫设置部分涉及组织获取两个电话或设备连接的详细信息。数据传输在呼叫建立后进行。RTP等协议在呼叫的数据传输阶段发送数据包。
SIP网络由多个元素组成,这些元素管理两个端点之间的SIP请求。这些元素是设置VoIP呼叫,使每个端点知道对方的IP地址并开始交换数据所必需的。
以下是三个主要的SIP网络元素:
- 用户代理。这些是端点或设备,可以是客户端或呼叫者以及服务器或接收器。
- 注册商服务。在这种情况下也称为域名系统,它们将有关用户代理的信息(例如网络/IP地址)存储在数据库中。它们对网络中的用户进行身份验证。
- 位置服务。它们接收来自调用用户的邀请请求。它们在注册表中查询呼叫收件人的IP地址,并将邀请发送到收件人用户代理。收件人对邀请的响应将通过位置服务器发回。
位置服务和注册器服务可以一起托管在一台称为代理服务器的服务器上。代理服务器使注册商和位置服务器能够执行用户身份验证的联合任务,并提供通信所需的信息。它们也可以托管在自己的独立服务器上。
虽然VoIP仅处理语音通信,但SIP可以处理其他媒体传输,例如图像和视频。此外,SIP是一种协议,而VoIP是支持互联网电话的技术和方法的集合。许多组织使用一种称为SIP中继的技术来提高企业中的VoIP效率。