引入
现实生活中,我们想找别人谈话,通常分为:对话建立 -> 对话 -> 对话结束,三个步骤。以老王和小明的对话为例,老王想找小明帮他修手机:
老王:Hi,小明!
小明:什么事?老王!
这就是现实生活中的对话建立过程,老王的“Hi,小明!”是向小明发起对话请求,小明的“什么事?老王!”是对老王的对话请求的响应。
现在他们开始谈论修手机的事,这是双方的对话内容。
对话结束时:
老王:谢谢,小明!再见!
小明:再见!
这是对话的结束过程。同样,老王的“谢谢!小明!再见!”是向小明发起对话结束请求,小明的“再见!”是对老王的对话结束请求的响应。
如果老王和小明的对话,通过模拟/数字转换、编码、封装后打包成IP数据包后,再通过IP网络传送,这就叫VoIP。老王和小明的对话实际上会打包成两种类型的数据包:信令包和媒体包。
“Sayhello”和“Say goodbye”那部分被封装成信令包,而具体谈话内容被封装成媒体包,它们都通过数据包传送到对方。
IP网络中建立对话比现实生活要复杂得多,要在IP网络建立对话,通话双方必须知道对方地址,怎样编码,如何封装数据包...等等,所以大家必须遵守一个统一的规则,这就引入了SIP协议。
简介
SIP(Session Initiation Protocol,会话初始协议):一种多媒体通信协议。
定义:SIP是一种应用层的信令控制协议(如:VoIP的信令包就是根据SIP协议封装的),用于创建、修改和释放一个或多个参与者的会话。这些会话可以是Internet多媒体会议、IP电话或多媒体分发。
SIP消息分两种:请求消息(比如INVITE)和响应消息,响应包括一个最终响应及可能的多个临时响应。
1)请求消息(Request):客户端为了激活特定操作而发给服务器的SIP消息,包括INVITE,ACK,OPTIONS,BYE,CANCEL和REGISTER消息。
2)响应消息(Response):服务器向客户端反馈对应请求的处理结果的SIP消息,包括1xx,2xx,3xx,4xx,5xx,6xx响应消息。
消息结构:SIP协议的消息由三部分构成,分别是起始行(请求行+状态行)、消息头和消息体(正文)。
功能实体
一个完整的SIP网络还需要加一些功能实体,这些功能实体包括:
1)User Agents - 用户代理:发起和终止会话的实体,比如电话终端。
2)SIP服务器:SIP服务器包括:登记服务器,代理服务器,位置服务器和重定向服务器。
(1) Registrar Server - 登记服务器
接收REGISTER 请求完成用户注册,可以支持鉴权的功能。
(2) Proxy Server - 代理服务器
对SIP请求及响应进行路由,它对收到的请求消息进行翻译和处理后,传递给其他的服务器。它与重定向服务器(Redirect Server)及位置服务器(Location Server)有联系。
(3) Location Server - 位置服务器
跟踪用户的位置,代理服务器或重定向服务器从位置服务器获取被叫当前可能的位置信息。
(4) Redirect Server - 重定向服务器
将用户新的位置返回给呼叫方。呼叫方可根据得到的新位置重新呼叫。与代理服务器proxy server不同的是, redirect server不会发起自己的呼叫。与User Agents不同的是, redirect server不接受呼叫终止或主动终止呼叫。
它们之间是如何相互工作的呢?举一个简单的例子。
老王和小明的终端在接入网络时,首先会向Registrar Server发送 REGISTER 请求注册,Registrar Server根据请求信息建立用户标识与终端 IP 地址的对应绑定关系。
老王拨打小明的电话时,老王向Location Server发送含有小明的统一资源标识符地址的 INVITE请求。(统一资源标识符称作 SIP URI。SIP URI 很像一个 E-mail 地址,典型的统一资源标识符包括一个用户名和主机名。)
由于老王和小明的终端都已经在Registrar Server注册,并建立用户标识与终端 IP 地址的对应绑定关系。Location Server就向Registrar Server查询,此时,Registrar Server就根据INVITE请求中的小明的统一资源标识符地址查找到小明的IP地址,这样就可以生成路由信息,联系到小明,并回应老王,建立通话。
SIPProxy Server、RedirectServer、Register Server、LocationServer可共存于一个设备,也可以分布在不同的物理实体中。
优势
1. 灵活性:SIP协议能够连接任何IP网络和IP设备,提供了很大的灵活性。
2. 扩展性:SIP协议的设计使其易于扩展,可以支持新的服务和功能。
3. 低成本:基于SIP的通信解决方案通常比传统的通信方式成本更低。
4. 丰富的服务支持:SIP协议支持语音会议、视频会议、订阅型服务等多种服务。