《SIP协议原理(华为内部资料)》由会员分享,可在线阅读,更多相关《SIP协议原理(华为内部资料)(28页珍藏版)》请在金锄头文库上搜索。
1、ISSUEISSUE固网产品课程开发室固网产品课程开发室固网产品课程开发室固网产品课程开发室AA000007AA000007SIPSIP协议原理协议原理2.02.0学习目标学习目标学习目标学习目标l了解了解SIP协议的作用协议的作用l掌握掌握SIP命令命令l掌握掌握SIP协议的消息交互过程协议的消息交互过程学习完本课程,您应该能够:学习完本课程,您应该能够:参考资料参考资料参考资料参考资料l随机手册技术手册信令与协议SIP协议课程内容课程内容课程内容课程内容第一节第一节 概述概述第二节第二节 协议消息协议消息第三节第三节 呼叫流程呼叫流程SIPSIP协议概念协议概念协议概念协议概念l会话启动协
2、议SIP(Session Initiation Protocol)是一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话进程。 lSIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话。lSIP协议透明地支持名字映射和重定向服务,便于实现ISDN、智能网以及个人移动业务。 SIPSIP协议的特点协议的特点协议的特点协议的特点l一个正在发展和不断研究中的协议。 l简练、开放、兼容和可扩展等原则 。l充分注意到因特网开放而复杂的网络环境下的安全问题。 l充分考虑了对传统公共电话网的各种业务,包括IN业务和ISDN业务的支持。 SIP
3、SIP协议的信令功能协议的信令功能协议的信令功能协议的信令功能 l用户定位:确定参加通信的终端用户的位置;l用户通信能力协商:确定通信的媒体类型和参数;l用户意愿交互:确定被叫是否乐意参加某个通信;l建立呼叫:包括向被叫“振铃”,确定主叫和被叫的呼叫参数;l呼叫处理和控制:包括呼叫重定向、呼叫转移、终止呼叫等等。 术语术语术语术语l呼叫l事务SIP是一个客户/服务器协议。客户和服务器之间的操作从第1个请求至最终响应为止的所有消息构成一个SIP事务。 lSIP URL寻址方式,例如:Sip; 55500200127.0.0.1:5061; User=phone; Sip: ;method=REG
4、ISTER; l用户定位 l定位服务(Location Service) 术语术语术语术语l代理,代理服务器(Proxy、Proxy sever) 作为一个逻辑网络实体代表客户端转发请求或者响应,可以同时作为客户端和服务器端;代理服务器的主要功能:路由、认证鉴权、计费监控、呼叫控制、业务提供等。l重定向服务器(Redirect server) 重定向服务器将请求中的目的地址映射为零个或多个新的地址,然后返回给客户端,客户端直接再次向这些新的地址发起请求。l注册员(Registrar) 术语术语术语术语l用户助理(User Agent) 用户助理客户(User Agent Client) 用户助
5、理服务器(User Agent Server) 协议栈协议栈协议栈协议栈SoftX3000SoftPhoneIP CoreSoftX3000SoftPhoneSIP/SIP-TSIPSIPIPIPIPIPSIPSIP协议在协议在协议在协议在SoftX3000SoftX3000中的实现中的实现中的实现中的实现课程内容课程内容课程内容课程内容第一节第一节 概述概述第二节第二节 协议消息协议消息第三节第三节 呼叫流程呼叫流程SIPSIP协议消息的分类协议消息的分类协议消息的分类协议消息的分类lSIP消息采用文本方式编码,分为两类:请求消息和响应消息。 l请求消息:客户端为了激活按特定操作而发给服务器
6、的SIP消息。l响应消息:用于对请求消息进行响应,指示呼叫的成功或失败状态。 l请求消息和响应消息都包括SIP头字段和SIP消息字段。请求消息请求消息请求消息请求消息请求消息消息含义INVITE发起会话请求,邀请用户加入一个会话,会话描述含于消息体中。对于两方呼叫来说,主叫方在会话描述中指示其能够接受的媒体类型及其参数。被叫方必需在成功响应消息的消息体中指明其希望接受哪些媒体,还可以指示其行将发送的媒体。如果收到的是关于参加会议的邀请,被叫方可以根据Call-ID或者会话描述中的标识确定用户已经加入该会议,并返回成功响应消息。ACK证实已收到对于INVITE请求的最终响应。该消息仅和INVIT
7、E消息配套使用。BYE结束会话CANCEL取消尚未完成的请求,对于已完成的请求(即已收到最终响应的请求)则没有影响REGISTER注册OPTIONS查询服务器的能力响应消息响应消息响应消息响应消息序号状态码消息功能1xx信息响应(呼叫进展响应)表示已经接收到请求消息,正在对其进行处理2xx成功响应表示请求已经被成功接受、处理3xx重定向响应表示需要采取进一步动作,以完成该请求4xx客户出错表示请求消息中包含语法错误或者SIP服务器不能完成对该请求消息的处理5xx服务器出错表示SIP服务器故障不能完成对正确消息的处理6xx全局故障表示请求不能在任何SIP服务器上实现命令名称对端UPI版本Call
8、-ID:值Form:值To :值Cseq :值Via :值Contact :值Max-Forwards :值起始行消息头SIPSIP请求消息结构请求消息结构请求消息结构请求消息结构 Allow :值Content-Length :值Supported :值User-Agent :值Content-Type :值空格SDP消息头消息体SIPSIP请求消息结构请求消息结构请求消息结构请求消息结构 (续)(续)(续)(续)SIP/协议版本状态码描述性短语Call-ID:值Form:值To :值Cseq :值Via :值Contact :值Max-Forwards :值起始行消息头响应格式响应格式响应
9、格式响应格式Allow :值Content-Length :值Supported :值User-Agent :值Content-Type :值空格SDP响应格式(续)响应格式(续)响应格式(续)响应格式(续)消息头消息体课程内容课程内容课程内容课程内容第一节第一节 概述概述第二节第二节 消息结构消息结构第三节第三节 呼叫流程呼叫流程用户注册流程用户注册流程用户注册流程用户注册流程SoftX3000SIP PhoneRegister401 UnauthorizedRegister200 OKSoftX3000SIP PhoneASIP PhoneBINVITE5100 Trying6INVITE
10、7100 Trying8180 Ringing9180 Ringing10200 OK12200 OK11INVITE1100 Trying24073ACK4SIPSIP实体之间的实体之间的实体之间的实体之间的SIPSIP呼叫流程呼叫流程呼叫流程呼叫流程 SoftX3000SIP PhoneASIP PhoneBConversationACK13ACK14BYE1548716BYE17200 OK18SIPSIP实体之间的实体之间的实体之间的实体之间的SIPSIP呼叫流程呼叫流程呼叫流程呼叫流程 (续)(续)(续)(续)SoftX3000SoftX3000INVITE1100 Trying21
11、80 Ringing3PRACK4ACK5BYE6487 Request Terminated 7SIPSIP中继呼叫流程中继呼叫流程中继呼叫流程中继呼叫流程 SGASoftX3000ASoftX3000BSGBIAMIAMACMANMANMRELRELRLCRLCConversationINVITE1100 Trying2180 Ring3200 OK4ACK5BYE6200 OK7ACM成功的成功的成功的成功的SIP-TSIP-T呼叫流程呼叫流程呼叫流程呼叫流程 小结小结小结小结lSIP协议用于建立、修改并终止多媒体会议,如互联网电话会议。SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话。lSIP请求消息:这是客户端为了激活按特定操作而发给服务器的SIP消息,包括INVITE,PRACK,BYE,CANCEL和UPDATE消息。lSIP响应消息:这是服务器为了显示客户发给服务器的请求的状态,包括1xx、2xx、3xx、4xx、5xx、6xx响应和ACK。lSIP呼叫流程中各命令的作用应重点掌握。