资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,AA000007,SIP协议原理,2.0,学习目标,了解SIP协议的作用,掌握SIP命令,掌握SIP协议的消息交互过程,学习完本课程,您应该能够:,参考资料,随机手册技术手册信令与协议SIP协议,课程内容,第一节 概述,第二节 协议消息,第三节 呼叫流程,SIP协议概念,会话启动协议SIP(Session Initiation Protocol)是一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话进程。,SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话。,SIP协议透明地支持名字映射和重定向服务,便于实现ISDN、智能网以及个人移动业务。,SIP协议的特点,一个正在发展和不断研究中的协议。,简练、开放、兼容和可扩展等原则。,充分注意到因特网开放而复杂的网络环境下的安全问题。,充分考虑了对传统公共电话网的各种业务,包括IN业务和ISDN业务的支持。,SIP协议的信令功能,用户定位:确定参加通信的终端用户的位置;,用户通信能力协商:确定通信的媒体类型和参数;,用户意愿交互:确定被叫是否乐意参加某个通信;,建立呼叫:包括向被叫“振铃”,确定主叫和被叫的呼叫参数;,呼叫处理和控制:包括呼叫重定向、呼叫转移、终止呼叫等等。,术语,呼叫,事务,SIP是一个客户/服务器协议。客户和服务器之间的操作从第1个请求至最终响应为止的所有消息构成一个SIP事务。,SIP URL寻址方式,例如:,Sip;,55500200127.0.0.1:5061,;User=phone;,Sip:,;,method=REGISTER;,用户定位,定位服务(Location Service),术语,代理,代理服务器(Proxy、Proxy sever),作为一个逻辑网络实体代表客户端转发请求或者响应,可以同时作为客户端和服务器端;,代理服务器的主要功能:路由、认证鉴权、计费监控、呼叫控制、业务提供等。,重定向服务器(Redirect server),重定向服务器将请求中的目的地址映射为零个或多个新的地址,然后返回给客户端,客户端直接再次向这些新的地址发起请求。,注册员(Registrar),术语,用户助理(User Agent),用户助理客户(User Agent Client),用户助理服务器(User Agent Server),协议栈,SoftX3000,SoftPhone,IP Core,SoftX3000,SoftPhone,SIP/SIP-T,SIP,SIP,IP,IP,IP,IP,SIP协议在SoftX3000中的实现,课程内容,第一节 概述,第二节 协议消息,第三节 呼叫流程,SIP协议消息的分类,SIP消息采用文本方式编码,分为两类:请求消息和响应消息。,请求消息:客户端为了激活按特定操作而发给服务器的SIP消息。,响应消息:用于对请求消息进行响应,指示呼叫的成功或失败状态。,请求消息和响应消息都包括SIP头字段和SIP消息字段。,请求消息,请求消息,消息含义,INVITE,发起会话请求,邀请用户加入一个会话,会话描述含于消息体中。对于两方呼叫来说,主叫方在会话描述中指示其能够接受的媒体类型及其参数。被叫方必需在成功响应消息的消息体中指明其希望接受哪些媒体,还可以指示其行将发送的媒体。,如果收到的是关于参加会议的邀请,被叫方可以根据Call-ID或者会话描述中的标识确定用户已经加入该会议,并返回成功响应消息。,ACK,证实已收到对于INVITE请求的最终响应。该消息仅和INVITE消息配套使用。,BYE,结束会话,CANCEL,取消尚未完成的请求,对于已完成的请求(即已收到最终响应的请求)则没有影响,REGISTER,注册,OPTIONS,查询服务器的能力,响应消息,序号,状态码,消息功能,1xx,信息响应(呼叫进展响应),表示已经接收到请求消息,正在对其进行处理,2xx,成功响应,表示请求已经被成功接受、处理,3xx,重定向响应,表示需要采取进一步动作,以完成该请求,4xx,客户出错,表示请求消息中包含语法错误或者SIP服务器不能完成对该请求消息的处理,5xx,服务器出错,表示SIP服务器故障不能完成对正确消息的处理,6xx,全局故障,表示请求不能在任何SIP服务器上实现,命令名称,对端UPI,版本,Call-ID:值,Form:值,To:值,Cseq:值,Via:值,Contact:值,Max-Forwards:值,起始行,消息头,SIP请求消息结构,Allow:值,Content-Length:值,Supported:值,User-Agent:值,Content-Type:值,空格,SDP,消息头,消息体,SIP请求消息结构(续),SIP/协议版本,状态码,描述性短语,Call-ID:值,Form:值,To:值,Cseq:值,Via:值,Contact:值,Max-Forwards:值,起始行,消息头,响应格式,Allow:值,Content-Length:值,Supported:值,User-Agent:值,Content-Type:值,空格,SDP,响应格式(续),消息头,消息体,课程内容,第一节 概述,第二节 消息结构,第三节 呼叫流程,用户注册流程,SoftX3000,SIP Phone,Register,401 Unauthorized,Register,200 OK,SoftX3000,SIP PhoneA,SIP PhoneB,INVITE,5,100 Trying,6,INVITE,7,100 Trying,8,180 Ringing,9,180 Ringing,10,200 OK,12,200 OK,11,INVITE,1,100 Trying,2,407,3,ACK,4,SIP实体之间的SIP呼叫流程,SoftX3000,SIP PhoneA,SIP PhoneB,Conversation,ACK,13,ACK,14,BYE,15,487,16,BYE,17,200 OK,18,SIP实体之间的SIP呼叫流程(续),SoftX3000,SoftX3000,INVITE,1,100 Trying,2,180 Ringing,3,PRACK,4,ACK,5,BYE,6,487 Request Terminated,7,SIP中继呼叫流程,SGA,SoftX3000A,SoftX3000B,SGB,IAM,IAM,ACM,ANM,ANM,REL,REL,RLC,RLC,Conversation,INVITE,1,100 Trying,2,180 Ring,3,200 OK,4,ACK,5,BYE,6,200 OK,7,ACM,成功的SIP-T呼叫流程,小结,SIP协议用于建立、修改并终止多媒体会议,如互联网电话会议。SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话。,SIP请求消息:这是客户端为了激活按特定操作而发给服务器的SIP消息,包括INVITE,PRACK,BYE,CANCEL和UPDATE消息。,SIP响应消息:这是服务器为了显示客户发给服务器的请求的状态,包括1xx、2xx、3xx、4xx、5xx、6xx响应和ACK。,SIP呼叫流程中各命令的作用应重点掌握。,
展开阅读全文