NGN网络核心协议—SIP协议详解


摘要:SIP协议是NGN中的重要协议,越来越得到业界的重视 。本文通过SIP协议的背景、功能、网络元素、实现机制、以及SIP消息的组成等几个方面对SIP协议做了全方位的概要性介绍,以使读者对SIP有初步的概念和熟悉 。
要害字:SIP NGN 代理服务器
一、SIP协议的背景和功能
SIP( 会话初始协议)的开发目的是用来帮助提供跨越因特网的高级电话业务 。因特网电话(IP电话)正在向一种正式的商业电话模式演进,SIP就是用来确保这种演进实现而需要的NGN(下一代网络)系列协议中重要的一员 。
SIP是IETF标准进程的一部分,它是在诸如SMTP(简单邮件传送协议)和HTTP(超文本传送协议)基础之上建立起来的 。它用来建立,改变和终止基于IP网络的用户间的呼叫 。为了提供电话业务它还需要结合不同的标准和协议:非凡是需要确保传输(RTP),与当前电话网络的信令互连,能够确保语音质量(RSVP),能够提供目录(LDAP),能够鉴权用户(RADIUS)等等 。
SIP被描述为用来生成,修改和终结一个或多个参与者之间的会话 。这些会话包括因特网多媒体会议,因特网(或任何IP网络)电话呼叫和多媒体发布 。会话中的成员能够通过多播或单播联系的网络来通信 。SIP支持会话描述,它答应参与者在一组兼容媒体类型上达成一致 。它同时通过代理和重定向请求到用户当前位置来支持用户移动性 。SIP不与任何特定的会议控制协议捆绑 。
本质上,SIP提供以下功能:
名字翻译和用户定位:无论被呼叫方在哪里都确保呼叫达到被叫方 。执行任何描述信息到定位信息的映射 。确保呼叫(会话)的本质细节被支持 。
特征协商:它答应与呼叫有关的组(这可以是多方呼叫)在支持的特征上达成一致(注重:不是所有方都能够支持相同级别的特征) 。例如视频可以或不可以被支持 。总之,存在很多需要协商的范围 。
呼叫参与者治理:呼叫中参与者能够引入其它用户加入呼叫或取消到其它用户的连接 。此外,用户可以被转移或置为呼叫保持 。
呼叫特征改变:用户应该能够改变呼叫过程中的呼叫特征 。例如,一呼叫可以被设置为“voice-only”,但是在呼叫过程中,用户可以需要开启视频功能 。也就是说一个加入呼叫的第三方为了加入该呼叫可以开启不同的特征 。
二、SIP网络元素
SIP中有两个要素 。SIP用户代理和SIP网络服务器 。用户代理是呼叫的终端系统元素,而SIP服务器是处理与多个呼叫相关联信令的网络设备 。
用户代理本身具有一客户机元素(用户代理客户机UAC)和一服务器元素(用户代理服务器UAS) 。客户机元素初始呼叫而服务器元素应答呼叫 。这答应点到点的呼叫通过客户机-服务器协议来完成 。
SIP服务器元素提供多种类型的服务器 。有三种服务器形式存在于网络中--SIP有状态代理服务器,SIP无状态代理服务器和SIP重定向服务器 。由于呼叫者未必知道被呼叫方的IP地址或主机名,SIP服务器的主要功能是提供名字解析和用户定位 。可以获得的是email形式的地址或与被呼叫方关联的电话号码 。使用该信息,呼叫者的用户代理能够确定特定服务器来解析地址信息--这可能涉及网络中很多服务器 。
SIP代理服务器接收请求,决定将这些请求传送到何处,并且将它们传送到下一服务器(使用下一跳路由原理) 。在网络中可以有多跳 。
有状态和无状态代理服务器的区别是有状态代理服务器记住它接收的入请求,以及回送的响应和它转送的出请求 。无状态代理服务器一旦转送请求后就忘记所有的信息 。这答应有状态代理服务器生成请求以并行地尝试多个可能的用户位置并且送回最好的响应 。无状态代理服务器可能是最快的,并且是SIP结构的骨干 。有状态代理服务器可能是离用户代理最近的本地设备,它控制用户域并且是应用服务的主要平台 。

推荐阅读