DIY编程器网
标题:
SIP:会话初始化协议基本介绍
[打印本页]
作者:
admin
时间:
2015-4-27 00:41
标题:
SIP:会话初始化协议基本介绍
(SIP:Session Initiation Protocol)
会话初始化协议(SIP)是一种应用层控制协议,它可用来创建、修改或终止多媒体会话,如因特网电话呼叫。 SIP 能够邀请参与者加入已存在的会话,如组播会议。现有的会话中可以添加或删除媒体。 SIP 支持名称映射和重定向服务,其支持用户移动性。不管用户网络位置在哪,用户只需维持单一外部可视标识符。
SIP 在五个方面支持创建和终止多媒体通信:
用户定位:决定用于通信的终端系统的确定;
用户可用性:决定被叫方是否愿意加入通信;
用户能力:媒体和媒体参数的确定;
呼叫建立:“响铃“,主叫方和被叫方的会话参数的建立;
呼叫管理:包括传输和终止会话、修改呼叫参数和调用服务。
SIP 可以结合其它 IETF 协议来建立完善的多媒体结构,如提供实时数据传输和服务质量(QOS)反馈的实时传输协议(RTP)、提供流媒体发送控制的实时流协议(RTSP)、为公用交换电话网络(PSTN)提供网关控制的媒体网关控制协议(MEGACO),以及描述多媒体会话的会话描述协议(SDP)。因此, SIP 需要与其它协议协同作用来为用户提供完善的服务。然而 SIP 的基本功能和操作并不依赖于这些协议。
SIP 提供了一组安全服务,包括防止拒绝服务攻击、认证(用户对用户和代理对用户)、完整性保护和加密及隐私服务。
SIP 同时支持 IPv4 and IPv6 。关于因特网电话会话, SIP 做如下工作:
通过 SIP 地址识别主叫方和被叫方。当建立一个 SIP 呼叫时,主叫方首先定位适合的服务器,然后发出一个 SIP 请求。最通常的 SIP 行为是邀请。 SIP 请求会被代理重定向或者触发一系列的新 SIP 请求,而不是直接到达目的被叫方。用户可以通过 SIP 服务器注册他们的位置。 SIP 地址 (URL) 可以嵌入到网页中,因此只要点击一下就可以和对方建立呼叫会话。
协议结构
SIP 信息可以在 TCP 上传输也可以在 UDP 上传输。 SIP 信息是基于文本的,采用 UTF-8 编码中的 ISO 10646 字符集。信息的每一行必须通过 CRLF 终止。大多数信息语法和头字段类似于 HTTP 。 SIP 信息可以是请求信息也可以是响应信息。
一个请求信息具有以下格式:
Method
Request URI
SIP version
Method ― 资源上所执行的方法。可能的方法有: Invite 、 Ack 、 Options 、 Bye 、 Cancel 和 Register 。
Request-URI ― 指一个 SIP URL 或一个通用 URI ;是请求要被寻址到用户或服务 。
SIP version ― 正在使用的 SIP 版本。
响应信息头的格式见下图 :
SIP version
Status code
Reason phrase
SIP version ――正在使用的 SIP 版本。
Status-code ―― 3 位整数结果代码,用于试图了解和满足请求要求。
Reason-phrase ―― status code 的原文描述。
欢迎光临 DIY编程器网 (http://diybcq.com/)
Powered by Discuz! X3.2