您好,欢迎访问三七文档
SIP协议介绍Nova.Li基本概念接口说明能力集语音提示音业务流程SIP消息基本概念1.SIP:SIP(SessionInitiationProtocol)是一个应用层控制协议,它用来创建、修改和终结会话2.SIP-I/SIP-T:当SIP网络和PSTN互通时,为了在SIP网络中透明传送PSTN信息,需要将ISUP消息封装在SIP消息体中。此时又将SIP称作SIP-I/SIP-T3.SIP逻辑实体RFC3261中定义的SIP逻辑实体包括用户代理(UA,UserAgent),代理服务器(Proxy),注册服务器(Registrar),重定向服务器(RedirectServer),B2BUA(Back-to-BackUserAgent)。用户终端(UserTerminalUA)从应用角度,基于SIP的用户终端可分为3种:SIP软终端、SIP硬终端、基于SIP的IAD或AG设备Proxy/B2BUAProxy:代理服务器是SIP网络的中间实体,为了处理客户端的请求,它既承担服务器的角色又承担客户端的角色。主要完成路由处理功能,即保证将请求消发送到离目标用户更近的其它实体。B2BUA:实质上是SIPUA的一种应用,是一种特殊的SIP逻辑实体,适用于SIP网络中需要呼叫和业务控制的场合。它可以接收SIP请求并像UAS那样处理它们。为了决定如何应答一个请求,B2BUA又向别的实体发送请求,此时它扮演了UAC的角色。B2BUA需要维护对话(Dialog)的状态,并处理所有在它所建立的对话中发送的请求消息。为了尽可能实现业务的透明传输,建议除非业务和应用控制(例如安全性的考虑或网间接口局)的需要,原则上B2BUA不能改变From域和To域的SIPURI部分、以及其它有可能影响业务透明传输的消息组成部分。我们的软交换(CSA/CSP)采用B2BUA方式。重定向服务器(RedirectServer)重定向服务器首先要能根据SIP请求消息中Request-URI所指实体的当前位置信息,用3xx类响应消息对SIP请求进行重定向。我们的CSP目前不能产生3xx消息,在ismart上注册呼叫转移可以模拟此类消息的产生。见log3xx注册服务器(Registrar)由于注册请求中Contact地址的有效期过短会引起注册刷新消息的频繁,从而给网络带来沉重负担;存亡周期过长则不利于运营商对用户终端的控制,因此对于注册请求中存亡周期过短或过长的行为,注册服务器应当能够进行正确的处理。建议注册服务器允许注册请求中Contact地址有效期的下限为120秒/2分钟,上限为86400秒/24小时,但注册服务器应当具备对上限和下限取值可灵活配置的功能,根据实际运营和业务需求情况合理取值。如果注册请求中的Contact地址的有效期小于下限,注册服务器应当回应以423错误响应,并在该响应消息的Min-Expires头域中指出服务器的建议值,在给予明确指示的情况下,如果终端仍然重发类似的请求消息,注册服务器应当判别是否属于恶意注册的行为;如果注册请求中Contact地址的有效期大于上限,则注册服务器自动将其减为上限,并在200OK响应中包含修改后的有效期值。注销时,Register消息中expire值为0。4.对话(dialog)1)对话是两个UA之间持续一段时间的点对点的SIP连接2)对话ID。任何UA上的对话都是由对话ID来标识的,这个对话ID包含一个Call-ID,一个本地标签和一个远端标签。对话中的每个UA的对话ID是不同的。另外,一个UA的本地标识符与对端UA的远端标识符相等。3)对话的建立。UA通过向服务器发送INVITE消息开始会话发起过程。如果UAS同意建立本次会话,则返回2XX响应,如果不同意,则返回3XX、4XX、5XX、6XX响应。在收到最终响应之前,UAS也可以发送临时响应(1XX)来通知UAC当前的处理进展情况。会话建立的标志是1XX(比如180振铃)或2XX(200摘机)消息中的To头字段中包含一个标签(tag)。4)对话的更改。对话建议之后,任何一方都可以发起会话更改请求,修改会话的某些属性,例如:增加删除媒体流,改变媒体发送接收地址等。这是通过在已经建立的Dialog中发送一个新的INVITE请求来完成的。我们称之为reINVITE。5)对话的终止。会话的中止可以通过对INVITE请求返回拒绝响应,对已建立的会话发送BYE请求等方式来完成。5三次握手INVITE事务由三次握手组成:客户端事务发送INVITE请求,服务器端事务发送响应,然后客户端事务发送ACK消息。6可靠传输机制SIP协议是一个请求响应协议,用于发起和管理会话。在SIP中,响应分为两类,一类是临时响应,一类是最终响应。最终响应传递呼叫请求处理的结果,并且保证可靠传递;临时响应提供呼叫请求处理过程中的信息,并且不保证可靠传递。但在有些情况下,可靠地传递临时响应非常重要,其中包括和PSTN互通这种情况,因此需要任选能力集来支持临时响应的可靠传递。可以借鉴最终响应2xx的可靠传递机制来实现临时响应的可靠传递。事务处理用户部分(TU)将周期性地发送最终响应2xx,直到收到ACK为止。为了可靠传递临时响应,需要采用相同的机制。事务处理用户部分TU采用按照指数递增的定时器控制临时响应的重传,当收到PRACK消息时停止临时响应的重传。7什么情况下要求临时响应被可靠传输1)初始的INVITE请求中包含Supported头部字段,且该头部字段中的任选标记为100rel,UAS就可以可靠地传递任何non-100临时响应。2)如果临时响应中包含Require头部字段,且该头部字段中的任选标记为100rel,UAS就必须可靠地传递任何non-100临时响应。3)UAS不应尝试可靠地传递100(试呼中)响应,只有编号为101到199的临时响应可以可靠传递。如果请求方法中未包含指示该特性的Supported头部字段或Require头部字段,则UAS就不用可靠地传递临时响应。接口说明UNI接口(用户网络接口)SIP用户终端UA与SIPB2BUA之间:SIPNNI接口(网络网络接口)1.SIPB2BUA之间:SIP或SIP-I。一般情况下使用SIP。2.SIP网络与PSTN(包含IAD)的互通:SIP或SIP-Inova:在NGN中,软交换携带的用户除了SIP用户外,还有可能为IAD或AG用户。由于IAD或AG在将来可能提供类似于目前Class5交换局的功能,为了确保对原有传统业务的支持,软交换在进行信令处理时,应当将IAD或AG用户作为一个PSTN用户看待。SIP网络与PSTN的互通SIP是实现VoIP的关键协议之一,对基于SIP的网络来说,必须要实现与传统PSTN的互通。目前只考虑SIP协议与PSTN中ISUP信令的互通。根据主被叫所在的网络,SIP网络和PSTN网络的互通分以下几种情况:1.自PSTN发起的呼叫,经过SIP-ISUP互通单元,终止在SIP用户(如SIP电话机).发端侧软交换进行路由选择时:如果能够根据号码规则或其他方式判断出被叫用户为SIP用户,则此时NNI接口采用SIP如果不能够判别出被叫用户为SIP用户,则此时NNI接口采用SIP-I2.SIP用户发起的呼叫,经过SIP-ISUP互通单元,终止在PSTN用户;此时代理服务器与SIP-ISUP互通单元之间的NNI采用SIP消息3.SIP网络被作为SIP-ISUP互通单元之间的传输网络来使用,呼叫自PSTN发起,也在PSTN落地,但是中间要经过SIP网络;SIP-ISUP互通单元之间的NNI采用SIP-I。能力集根据SIP-ISUPSIP-ISUP互通单元SIP域一侧的具体情况,SIP-ISUP互通单元有三种能力集配置:-配置A:适用于ISUP与3GPP中的SIP的互通-配置B:适用于ISUP与普通SIP的互通-配置C:适用于ISUP与SIP-I的互通语音提示音的播放假定网络架构为两个软交换,两个软交换之间采用SIP或SIP-I。由于振铃音或其他提示音的播放位置不同,对整个流程的影响将不同。鉴于这种情况,对语音资源的播放位置作如下原则性规定:180信号指示本地或远端播放振铃音通过带有SDP信息的183信号指示被叫方提供语音资源通知如果被叫用户为PSTN用户1.回铃音由被叫端局提供。2.当SIP-ISUP互通单元采用A或B配置,一般由被叫端局播放语音(忙、久叫不应等)3.SIP-ISUP互通单元采用C配置,一般由主叫端局播放语音(忙、久叫不应等)如果被叫用户为SIP或IAD用户1.回铃音或其他失败音信号(例如忙音等普通的音信号)由主叫方处理2.根据业务需要,如果被叫处需要播放语音资源音(例如,被叫用户忙等语音资源)的情况,通过183向主叫侧播放该语音通知业务流程基本注册过程SIP用户-SIP用户成功呼叫流程SIP用户-SIP用户失败呼叫流程SIP用户-PSTN用户成功呼叫流程SIP用户-PSTN用户失败呼叫流程PSTN用户-SIP用户成功呼叫流程PSTN用户-SIP用户失败呼叫流程PSTN用户-PSTN用户成功呼叫流程PSTN用户-PSTN用户失败呼叫流程基本注册过程流程说明:1.第2个Register消息与第1个Register消息Call-id相同,Cseq增加2.注销时,Register消息中expire值为0。3.LOG见register/logout基本呼叫流程1.SIP用户-SIP用户当被叫用户为SIP用户时,此时主叫侧提供回铃音.NNI采用SIP方式。成功呼叫SipUser1SS1SS21:INVITE(SDP)3:INVITE(SDP)2:100Trying4:100Trying5:180Ringing5:180Ringing6:200OK(SDP)6:200OK(SDP)7:ACK7:ACKSessionestablishedSipUser24:INVITE(SDP)5:180Ringing6:200OK(SDP)7:ACK9:200OK9:200OK9:200OK8:BYE8:BYE8:BYE流程说明;1.用户A向软交换1发起请求2.软交换1接收到请求后向用户A发送确认信号,表示正在对收到的请求进行处理3.软交换1经过路由分析,将请求转发到软交换24.软交换2向软交换1发送确认消息(表示已经接收到请求消息),同时将请求转发到用户C5.用户C振铃(回铃音由主叫方本地放送)6.用户C摘机7.用户A接收到200消息后发送确认信号8.主叫用户挂机,软交换将拆线信号转发到被叫用户C处9.被叫用户发送确认信号表示收到拆线信号10.如果拆线信号由被叫发出,BYE消息中的From、to域与初始Invite消息中的From、TO域发生颠倒11.LOG:sip-sip.cap被叫用户忙LOG:sip-sip(mang).cap15:200OK(INVITE)SIPUser2SS2SS1PSTNUser11:INVITE[SDP]2:100Trying3:INVITE[SDP]4:100Trying5:IAM6:ACM7:180Ringing[SDP]8:180Ringing[SDP]9:PRACK10:PRACK11:200OK(PRACK)12:200OK(PRACK)13:ANM14:200OK(INVITE)16:ACK17:ACKTalking8:BYE8:BYE8:REL9:200OK9:200OK9:RLCSIP用户-PSTN用户(采用ProfileB)流程说明当被叫用户为PSTN用户时,由被叫端局提供回铃音,因此要求临时响应可靠传送此时主叫用户发送的INVITE的Supported域中,必须带有100rel参数被叫用户发送的18*消息的Require域中,必须带有100rel参数此时被叫软交换接收到ACM的BCI为“用户空”且OBCI为“带内音或适当的码型目前可用”,被叫软交换后向发送带有SDP的180消息LOG:sip-pst
本文标题:SIP 培训
链接地址:https://www.777doc.com/doc-960401 .html