华为MC850和MC851SIP通话技术白皮书

华为MC850和MC851SIP通话技术⽩⽪书
HUAWEI MC850&MC851 SIP IP通话技术⽩⽪书
华为技术有限公司
2009-5
⽬录
1 概述 (3)
铝合金手电筒2 SIP协议介绍 (3)
3 SIP实现的功能 (3)
4 SIP体系结构 (4)
5 SIP通信基本原理 (5)
6 SIP消息类型 (6)
7 SIP业务流程 (6)
7.1 不带鉴权正常注册流程 (6)
7.2 带鉴权正常注册流程 (7)
7.3 带鉴权呼叫建⽴流程 (8)
7.4 呼叫建⽴早释流程 (9)
7.5 呼叫建⽴释放流程 (10)
8 缩略语清单 (10)
1 概述
⽬前,在⽹络转型改造的过程中,运营商⾯临种种问题:固定电话⽤户的流失;分离的⽹络,⾼成本的⽹络升级费⽤;复杂的管理;向未来⽹络演进困难等。运营商希望能够通过⽹改或者升级,达到⽹络融合,降低成本;⽹络IP化,⽹络和业务实现融合;可以提供新业务;灵活的⽹络架构。因此⽹络
和业务融合是⼀种趋势,也是解决运营商⽬前问题的根本办法。因此,运营商⽹络向基于SIP的IMS/NGN演进也成为⼀种趋势,HUAWEI MC850&MC851正是⼀款基于SIP协议,配合华为IMS/NGN实现SIP语⾳、视频通话的固话升级换代产品。
2 SIP协议介绍
SIP(Session Initiation Protocol)称为会话初始协议,1999年由IETF(InternetEngineering TaskForce)组织提出的,是⼀个在基于IP⽹络中,完成实时通信应⽤的⼀种信令协议。SIP 充分借鉴了其他各种Internet协议,如HTTP(超⽂本传输协议)、SMTP(简单邮件传输协议)等;和这些协议⼀样,SIP也采⽤基于⽂本的编码⽅式,这也是SIP同IP语⾳和视讯通信领域现有标准相⽐最⼤的特点之⼀。SIP可以⽤来创建,修改和终⽌会话,它独⽴运作于通讯协议之下,并且不依赖建⽴的会话类型。
SIP协议与RTP/RTCP、SDP等多种已经存在的Internet协议配合实现Voice、Video、Conference等各种业务流程,SIP的开发⽬的就是⽅便在互联⽹上提供语⾳、视频等通信服务,现在已经成为IMS/NGN采⽤的关键性标准。
3 SIP实现的功能
SIP协议是⽤来建⽴、修改和结束两个或多个⽤户之间会话。这些会话包括互联⽹多媒体会议,互联⽹(或IP⽹络)电话呼叫和多媒体信息传输。具体讲,SIP提供以下功能:
1、⽤户地址登记和⽤户地址翻译:确保可以准确地到位于⽹络上的被叫并建⽴呼叫。
2、媒体协商:允许参与呼叫的⽤户组完成相关的媒体特征协商并达成⼀致。
3、呼叫参与者管理:在通话中引⼊或取消其他⽤户的连接,转移或保持其他⽤户的呼叫。
4、媒体流的更改:允许⽤户在过程中更改媒体流特征。
SIP不是⼀个垂直集成的通讯系统。SIP可能叫做是⼀个部件更合适,它可以⽤作其他IETF协议的⼀个部分,⽤来构造完整的多媒体架构。⽐如,这些架构将会包含实时数据传输协议(RTP)(RFC 1889)⽤来传输实时的数据并且提供QoS反馈,实时流协议(RSTP)(RFC 2326)⽤于控制流媒体的的传输,媒体⽹关控制协议(MEGACO)(RFC 3015)⽤来控制到公共电话交换⽹(PSTN)的⽹关,还有会话描述协议(SDP)(RFC 2327)⽤于描述多媒体会话。因此,SIP应该和其他的协议⼀起⼯作,才能提供完整的对终端⽤户的服务。虽然基本的SIP协议的功能组件并不依赖于这些协议。
4 SIP体系结构
在SIP体系结构中的元素可以分为⽤户代理(UA)和中间服务器。通常情况下,两个UA之间通过中间服务器的定位和路由完成通信。
代理服务器A
⽤户代理
A
SIP
媒体(RTP
代理服务器B
⽤户代理B
上图中描述了⼀个典型的⽹络结构,在SIP系统中可能包含:
1、⽤户代理(User Agent):它发起或接收SIP请求响应,是媒流的终结点,通常是⽤户设备。SIP协议本⾝是⼀个C/S类型的协议,UA在逻辑上分为:
a) ⽤户代理客户端(UAC):发起请求的主叫⽅应⽤;
b) ⽤户代理服务器(UAS):接受、重定向或拒绝请求,代表⽤户给到来的请求发送响应。
2、代理服务器:接收和转发SIP请求。SIP请求可经由多个代理服务器,每个代理服务
单点系泊系统器接收请求后将其转发给下⼀跳服务器。下⼀条可能是另⼀个代理服务器,也可能是最终的⽤户代理服务器。
3、注册服务器(Registrar):接受REGISTER请求的服务器。这类服务器⽤于存储⽤户登记的地址(SIP地址)与⽤户当前所在的主机地址之间的明确绑定关系。
发光棒4、应⽤服务器(Application Server):在⽹络中为终端⽤户提供服务的实体,如会议服务器等。
5、背靠背⽤户代理(B2BUA):将UAS和UAC粘合在⼀起来完成SIP请求的转发。该实体功能上类似于⼀个代理服务器,但打破了代理服务器修改请求时所遵循的所有准则。
5 SIP通信基本原理
⽤户代理要发起或接收呼叫,⾸先要完成注册。通过注册,⽤户代理将⾃⼰的SIP URI 与某个主机地址进⾏绑定,使⾃⼰可以被联络到。SIP使⽤注册⽀持⽤户移动性(user mobility)和发现(discovery)。⽤户代理⽤REGISTER消息向注册服务器发起注册,注册服务器回响应消息完成注册,如果有必要,注册时还要完成鉴权流程。
1、代理服务器参与的呼叫原理
在呼叫流程中,主叫⽅的⽤户代理作为UAC发起呼叫请求,主叫⽅⽤户代理⾸先将请求发送到主叫⽅的代理服务器上,然后把呼叫请求转发到被叫⽅的代理服务器上。被叫⽅的代理服务器查询被叫的当前能联络上的主机地址,然后把这个呼叫请求发送给被叫。被叫的响应消息按照相反的⽅向返回给主叫⽅的⽤户代理。当然中间的代理服务器可能有多个。
2、B2BUA服务器参与的呼叫原理
B2BUA服务器参与的呼叫中,B2BUA服务器取代了代理服务器的位置,呼叫流程与上述的流程基本相同。B2BUA服务器对请求和响应的转发,不使⽤SIP协议中的机制。B2BUA 服务器收到⼀个请求或者响应后,使⽤其他的某种机制,到消息要去的位置,然后将消息转发给它。
在呼叫建⽴完成后,就开始在⽤户代理之间交换媒体流,中间的代理服务器或B2BUA 服务器不参与媒体流的交换。
6 SIP消息类型
SIP消息分为SIP请求消息、SIP应答消息。
SIP请求消息是由客户端发往服务器端的消息,通过⼀个请求⾏作为起始⾏。请求⾏包括了⽅法名、请求的URL、协议版本号,⽤空格(SP)分开。
请求⾏=⽅法(Method)SP Request-URL SIP-Version CRLF
请求⽅法(Method)共定义了六类:REGISTER、INVITE、ACK、CALCEL、BYE、OPTIONS。
SIP应答消息是由服务器端发往客户端的消息,使⽤状态⾏作为它们的起始⾏。状态⾏包括协议版本、状态码和相关的⽂本短语。应答消息包括Informational(1xx)、Successful (2xx)、Redirection(3xx)、Request Failure(4xx)、Server Failure(5xx)、Global Failure (6xx)。
Status-Line=SIP-Version SP Status-Code SP Reason-Phrase CRLF
Status-Code(状态码)是⼀个三位数字的整数值,它说明了对请求的反应。
7 SIP业务流程
SIP注册服务器、代理服务器、应⽤服务器功能⼀般可以统⼀到SIP SERVER中,SIP SERVER可以在⼀台硬件设备中实现,也可能是⼀套庞⼤完整的头端系统平台如
IMS/NGN。终端通过配合SIP SERVER所⽀持的不同业务SIP信令流程,可以配合完成丰富的通话类业务,如注册、呼叫建⽴、呼叫早释、呼叫释放等,我们以注册、呼叫建⽴、呼叫早释、呼叫释放为例介绍⼀下这⼏个常⽤的SIP信令流程。
gps信号转发器7.1 不带鉴权正常注册流程
不带鉴权正常注册流程
(1)SIP UA向SIP SERVER发送REGISTER消息请求注册,REGISTER消息中不携带Authorization 头域。
(2)SIP SERVER收到REGISTER消息后,SIP SERVER返回200响应消息。表明SIP UA注册成功7.2 带鉴权正常注册流程
带鉴权正常注册流程
(1)SIP UA向SIP SERVER发送REGISTER消息请求注册,REGISTER消息中不携带Authorization 头域。
(2)SIP SERVER收到REGISTER消息后,SIP SERVER返回401响应消息给SIP UA,表明SIP SERVE
R 端要求对⽤户进⾏认证,并且通过WWW-Authenticate字段携带SIP SERVER⽀持的认证⽅式、SIP SERVER域名、本次认证的nonce,并且通过该响应消息将这些参数返回给SIP UA从⽽发起对⽤户的认证过程。
(3)SIP UA收到401响应消息后,根据SIP SERVER端返回的信息和⽤户配置信息采⽤认证⽅式定义的算法⽣成加密的response。SIP UA重新向SIP SERVER发起注册请求,携带Authorization字段,包括认证⽅式DIGEST、SIP UA的⽤户标识、SIP SERVER的域名、nonce、URI和response。
(4)SIP SERVER收到SIP UA的注册请求,⾸先检查nonce的正确性,如果和401响应中产⽣的nonce相同,则通过;否则,直接返回失败。然后,SIP SERVER会根据nonce、⽤户名、密码、URI等采⽤和终端相同的算法⽣成response,并且对此response和请求消息中的response进⾏⽐较,如果⼆者⼀致则⽤户认证成功,若SIP SERVER返回200响应消息,表明终端
认证成功。否则,SIP SERVER返回失败响应消息,表明终端注册失败。
7.3 带鉴权呼叫建⽴流程
沥青透水混凝土
带鉴权呼叫建⽴流程
(1)SIP UA1向软交换发送INVITE请求消息,邀请SIP UA2加⼊会话;INVITE消息不携带鉴权字段信息。
(2)软交换⽹络SIP SERVER返回407响应消息给SIP UA1,表明SIP SERVER端要求对⽤户进⾏认证,并且通过WWW-Authenticate字段携带SIP SERVER⽀持的认证⽅式、SIP SERVER域名、本次认证的nonce,并且通过该响应消息将这些参数返回给SIP UA1从⽽发起对⽤户的认证过程。
(3)SIP UA1收到407响应消息后,根据SIP SERVER端返回的信息和⽤户配置信息采⽤认证⽅式定义的算法⽣成加密的response。SIP UA1重新向SIP SERVER发起INVITE请求,携带Authorization字段,包括认证⽅式DIGEST、SIP UA1的⽤户标识、SIP SERVER的域名、nonce、URI和response。
(4)SIP SERVER收到SIP UA1的鉴权请求,⾸先检查nonce的正确性,如果和407响应中产⽣的nonce相同,则通过;否则,直接返回失败。然后,SIP SERVER会根据nonce、⽤户名、密码、URI等采⽤和终端相同的算法⽣成response,并且对此response和请求消息中的response 进⾏⽐较,如果⼆者⼀致则⽤户认证成功。
(5)SIP SERVER对终端鉴权通过后,转发SIP UA1 INVITE请求给SIP UA2。
(6)SIP UA2给SIP UA1返回100 TRYING响应消息,表⽰已经接收到请求消息,正在对其进⾏处理;
未载入sso模块(7)SIP UA2振铃,并回180 RINGING响应消息通知SIP UA1,SIP UA1听回铃⾳;
(8)SIP UA2给SIP UA1回200 OK响应消息,表⽰其发过来的INVITE亲求已经被成功接受、处理;
(9)SIP UA1发ACK消息给SIP UA2,证实已经收到SIP UA2对应INVITE请求的最终响应;
(10)SIP UA1与SIP UA2之间双向传送媒体流。
7.4 呼叫建⽴早释流程
呼叫建⽴早释流程
(1)SIP UA1向SIP UA2发送INVITE请求消息,邀请被叫加⼊会话。
(2)(SIP SERVER不对SIP UA1业务鉴权或者业务鉴权通过后)SIP UA2返回临时响应100 TRYING。
(3)SIP UA2返回180 RINGING振铃消息。
(4)SIP UA1突然取消会话,发出CANCEL消息。
(5)SIP UA2对CANCEL消息回200 OK响应消息,表明接受该请求。
(6)SIP UA2给SIP UA1回487响应消息,表明请求终⽌INVITE请求。
(7)SIP UA1返回ACK响应消息。
7.5 呼叫建⽴释放流程
呼叫建⽴释放流程
(1)SIP UA1作主教正与另⼀⽅通话,SIP UA1挂机,发BYE消息给SIP SERVER,请求结束本次会话。
(2)SIP SERVER给SIP UA1回200 OK响应消息,表明接受该BYE请求,SIP UA1的通话结束。
8 缩略语清单
修订记录

本文发布于:2024-09-22 17:18:18,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/257143.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:消息   请求   协议   呼叫   响应   注册   服务器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议