sip报文举例

sip报文举例
【篇一:sip报文举例】
完整文章请浏览:
sip消息是sip客户终端和服务器之间通信的的基本信息单元。sip消息基于文本,采用utf-8编码(rfc 2279)中的iso 10646字符集。sip协议借鉴了http协议(rfc 2068)的设计思想,有很多消息格式与之相同。sip协议支持udp传输协议
sip消息消息分两类:请求消息 和 响应消息
请求消息(request):客户端为了激活特定操作而发给服务器的sip消息,包括invite,ack,options,bye,cancel和register消息。uac到uas。
响应消息(response):服务器向客户端反馈对应请求的处理结果的sip消息,包括1xx,2xx,3xx,4xx,5xx,6xx响应消息,uas到uac
sip消息格式与结构:
sip消息由三个部分组成:标识消息类型和目的地址的起始行,携带消息参数的头部以及承载任意附加信息的消息体。消息体中传送的最重要的信息就是由sdp(session description protocol)协议描述的媒体控制信息,供终端协商并建立媒体信道。
sip消息格式:由一个起始行(start-line)、一个或多个字段(header fields)组成的消息头、一个标志消息头结束的空行(crlf)以及作为可选项的消息体(message body)组成,其中描述的头称为实体头(entityheader)。
generic-message = start-line
*message-header
crlf
朱晓驰[ message-body ]
1.起始行
起始行分请求行(request-line)和状态行(status-line)两种。
1.1.请求行(request-line):请求消息的起始行,由请求消息类型,请求目的发送地址request-uri,sip协议的版本号,之间用空格隔开。
请求行的6种request method:企业私有云定制开发
invite:用于发起呼叫请求。invite消息包括消息头和数据区两部分。invite 消息头包含主、被呼叫的地址,呼叫主题和呼叫优先级等信息。数据区则是关于会话媒体的信息,可由会话描述协议sdp 来实现。
bye:当一个用户决定中止会话时,可以使用bye 来结束会话。
options:用于询问被叫端的能力信息,但options 本身并不能发起呼叫。
ack:对已收到的消息进行确认应答。
register:用于用户向sip服务器传送位置信息或地址信息。
cancel:取消当前的请求,但它并不能中止已经建立的连接。
1.2.状态行(status-line):响应消息的起始行,sip应答消息的status-line由sip-version开始,接着是一个数字编码的状态码status-code,最后是一个与状态码相关的描述性短语reason-phrase,然后由一个crlf行结束符结束status-line。
高压直流供电
sip应答消息的六类应答状态编码
1xx:临时消息:表示表示请求消息已经收到,后面将继续处理该请求。
2xx:成功消息:表示请求已经被成功的理解、接受或执行。
3xx:重定向消息:表示为了完成请求还需采取更进一步的动作。
4xx:客户机错误:表示该请求含有语法错误或在这个服务器上不能被满足。
5xx:服务器错误:表示该服务器不能处理一个明显有效的请求。
6xx:全局性故障:表示该请求在任何服务器上都不能被实现。
2.消息头:
消息头的作用是进一步提供有关消息的其他信息,使代理服务器或客户代理服务器更好地对消息进行处理。消息头分四类:通用头(general-header )、请求头(request-header )、响应头( response-header )和实体头( entityheader)
四大类
视频直播系统 高清general-header为描述消息基本属性的通用头域,可用于请求消息和应答消息;消息头有:call-id,from,to,via,contact,cseq,encryption,expires,record-route,timestamp,date,accept,accept-encoding,accept-language
request-header为请求头域,只可用于请求消息,它被用来传递有关应答的附加信息,对请求进行补充说明;subject,user-agent,organization,contact,authorization,proxy-authorization,proxy-require,response-key,require,priority,hide,route,max-forwards。
entity-header是消息体头域,用于描述消息体内容的长度、格式和编码类型等属性,可用于请求消息或应答消息。content-encoding,content-length,content-type
消息头格式:每个消息头都是一个 句子 ,以crlf行结束符表示一个头域的结束。它们都由字段名(field-name)和域值(field-value)两部分组成,中间以 : 相隔。
常见消息头说明:
call-id: 用于全局唯一标识正在建立的会话的标识符。
随机数加uac标识信息。
cseq: 用于标识同一会话中不同事务的序号,通常由一个用作序号的整型数和消息类型组成。整个会话操作过程由不同的事务组成,每一事务所涉及的消息的cseq序号必须相同。
via:为响应消息提供传输路径,当请求消息经过每一跳节点时,每一跳节点都把自身的ip地址信息放入顶层via中。响应消息则沿着请求消息记录下的传输路径反向传输,首先移走指明自身ip地址信息的顶层消息头
【篇二:sip报文举例】
作者:
出处:
1、sip业务基本知识1.1 业务介绍
会话初始协议(session initiation protocol)是一种信令协议,用于初始、管理和终止网络中的语音和视频会话,具体地说就是用来生成、修改和终结一个或多个参与者之间的会话。sip的业务模式是一个点对点协议,其中有两个要素——sip用户代理和sip网络服务器。用户代理是呼叫的终端系统元素,而sip服务器是处理与多个呼叫相关联信令的网络设备。用户代理本身具有一客户机元素(用户代理客户机uac)和一服务器元素(用户代理服务器uas)。客户机元素初始呼叫而服务器元素应答呼叫。这允许点到点的呼叫通过客户机-服务器协议来完成。下图是sip业务的网络结构和各个参与者的关系。
sip业务的核心特点集中在sip的设计目标之一是提供类似公用交换电话网(pstn)中呼叫处理功能的扩展集。在这个扩展集中,实现类似日常电话的操作:拨号,振铃,回铃音或者忙音,只是实现方式和术语有所不同。sip也实现了许多信令系统7(ss7)中更高级的呼叫处理功能,尽管这两个协议相差很远。ss7是一个高度集中处理的协议,其特点表现为高复杂度的中心网络结构和无智能的哑终端(传统的电话机)。sip则是一个点对点协议,所以它
壁炉门只需要一个相对简单的(因此也高度可扩展的)核心网络,而将处理工作下放给连接在网络边缘的智能端点(装有硬件或软件的终端设备)。sip的许多功能在端点中实现,这与传统的ss7将其在网络核心设备实现的作法大异其趣。而协议的其他特点还有它是一个文本协议,所以易于调测,结构灵活;而且它是一个中性的底层传输协议,可用tcp或udp(推荐udp);同时呼叫和媒体信息同时传送:媒体信息的传送由sdp传送
sip是互联网工程任务组(ietf)多媒体数据和控制体系结构的一个组成部分,因此它与ietf的许多其他协议都有联系,例如rtp(实时传输协议)和sdp协议。sip与许多其它的协议协同工作,仅仅涉及通信会话的信令部分(control message)。sip报文内容传送会话描述协议(sdp),sdp协议描述了会话所使用流媒体细节,如:使用哪个ip端口,采用哪种编解码器等等。sip的一个典型用途是:sip“会话”传输一些简单的经过封包的实时传输协议流。rtp本身才是语音或视频的载体。
1.2 业务过程和协议流程
?? 注册流程:(1)用户首次试呼时,终端代理a 向代理服务器发送register 注册请求;
(2)代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理回送401unauthorized 质询信息,其中包含安全认证所需的令牌;
(3)终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用register 消息报告给代理服务器;
(4)代理服务器将register 消息中的用户信息解密,通过认证/计费中心验证其合法后,将该用户信息登记到数据库中,并向终端代理a 返回成功响应消息200 ok。
?? 注销流程:(1)终端向代理服务器发送register消息注销,其头中expire字段设置为0。
(2)代理服务器在收到后送回200ok响应,并将数据库中的用户有关消息注销。
?? 基本呼叫建立过程:(1)用户摘机发起一路呼叫,终端代理a向该区域的代理服务器发起invite请求;
(2)代理服务器通过认证/计费中心确认用户认证已通过后,检查请求消息中的via头域中
是否已包含其地址。若已包含,说明发生环回,返回指示错误的应答;若没有问题,代理服务器在请求消息的via头域插入自身地址,并向invite消息的to域所指示的被叫终端代理b传送invite请求。
(3)代理服务器向终端代理a发送呼叫处理中的应答信息:100trying。
(4)终端代理b向代理服务器送呼叫处理中的应答信息:100trying。
(5)终端代理b指示被叫用户振铃,用户振铃后向代理服务器发送180ringing振铃信息。
(6)代理服务器向终端代理a转发被叫用户振铃信息。
(7)被叫用户摘机,终端代理b向代理服务器返回表示连接成功的应答(200ok)
(8)代理服务器向终端代理a转发该成功指示(200ok)
(9)终端代理a收到信息后,向代理服务器发ack信息进行确认
(10)代理服务器将ack确认消息转发给终端代理b。
(11)主被叫用户之间建立通信连接,开始通话。
?? 正常呼叫释放过程:(1) 正常呼叫
(2) 用户通话结束后,被叫用户挂机,终端代理b向代理服务器发送bye消息。
(3) 代理服务器转发bye消息至终端代理a,同时向认证、计费中心发送用户通话的详细信息,请求计费。
(4) 主叫用户挂机后,终端代理a向代理服务器发送确认挂断响应信息200ok。
刀模
(5) 代理服务器转发响应信息200ok。

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

本文链接:https://www.17tex.com/tex/1/257794.html

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

标签:消息   请求   协议   信息   代理   用户   终端
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议