SIP协议学习分享_第1页
SIP协议学习分享_第2页
SIP协议学习分享_第3页
SIP协议学习分享_第4页
SIP协议学习分享_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SIPSIP协议概况协议概况 SIP(RFC3261)会话初始化协议是由IETF提出并主 持研究的一个应用层控制协议,可用以实现会话的 发起、建立和释放,但不负责媒体数据传输; SIP的开发目的是用来帮助提供跨越因特网的高级 电话业务。为了解决IP 网中的信令控制,以及同 软交换平台的通信,从而构成下一代的增值业务平 台。 同H.323协议相比,SIP协议具有实现简单、灵活度 高、易于扩展和移动性好优势; 支持单播、组播。 1 SIP与H.323对比 2 pH.323: H.323和SIP是一对并列的协议,是两套各自独 立的标准, H.323 标准是为构建多媒体会议系统而提 出的,并不是专门为

2、IP 电话提出的;SIP的出发点是以 现有的Internet 为基础来构建IP 电话业务网。它们能 实现的信令功能基本相同,也都利用RTP作为媒体传输 协议。 u设计原则不同: H.323协议由ITU-T制订,其应用背景 是通信网; SIP协议由IETF制订,其应用背景是 Internet。 u协议形式不同: H.323采用电信网常用的ASN.1编码形 式,严谨; SIP采用Internet协议常用的文本形式,简 单。 u地址形式不同: SIP的基本地址形式是URL,适合 Internet应用,可容易地嵌入Web网页; H.323的主要 地址形式是E.164地址。 u扩展业务实现方法不同:H.

3、323沿用电信网做法,用专 门的协议对补充业务的定义及实现做了严格的规定,缺 乏灵活性;SIP增加新的头部字段和请求方法来实现新 的业务,功能扩展比较方便。 SIPSIP协议特点协议特点 uSIP是基于文本的协议,易于实现; u基于Client/Server模型; uSIP重用几个现有的比较成熟的Internet业务和协议, 如DNS,RTP,RSVP等。 uSIP协议可以同时支持各种传输协议:UDP,TCP(可靠 性),TLS(安全性); uSIP借鉴已有的Internet协议HTTP、SMTP的成功经验, 开发方法和WEB应用类似,易于和Internet业务综合。 同时SIP可以充分利用己

4、定义的头域,对其进行简单必 要的扩充就能很方便地支持各项新业务和智能业务; uSIP支持用户的移动性,支持移动业务。 3 SIP移动性 4 SIP协议有:逻辑地址和实际地址分离机制;注册和 注销机制(REGISTER,Contact头域);重定向机制; re-INVITE更新机制。 p终端移动性:终端位置发生移动; p个人移动性:个人移动性是指使用同样的逻辑地址 在不同的终端上(不同的实际地址)定位1个用户; p会话移动性:会话移动性是指会话在不同终端上的 移动,将一个正在进行中的会话在不同终端间进行 移动(re-INVITE包含新终端的IP和端口号); p服务移动性:允许用户在改变网络服务提

5、供商或者 改变终端的情况下,保持用户当前拥有的服务内容, 包括地址簿、好友列表等。 SIPSIP从五个方面支持建立和终止多媒体会话:从五个方面支持建立和终止多媒体会话: 用户定位:检查参与通讯的终端用户的位置; 用户可达性判断:确定被叫方是否空闲以及是否愿 意参与会话; 用户能力交换:检查终端用户可用的媒体和媒体参 数; 会话建立:“ringing”过程,确认主叫和被叫双 方的会话参数; 会话管理:包括传输和终止会话,修改会话参数 (re-INVITE),激活服务等。 5 SIP与其他协议协同工作,但SIP协议 的功能实现并不依赖于这些协议 (会话描述协议)SDP(RFC 2327):用于描述

6、多 媒体会话; RTP(RFC 1889)/RTCP:用来传输实时数据并且提 供QoS反馈; (实时流协议)RTSP(RFC 2326):用于控制流媒体 的传输; (媒体网关控制协议)MEGACO/MGCP:用来控制到 公共电话交换网(PSTN)的网关; (资源预留协议)RSVP( RFC 2205 ):与SIP互 操作以保证语音流QoS; 6 SIP电话系统协议结构 SIPRSTPRSVP RTCP RTP TCP 媒体封装 (G.7xx,H.261等) UDP IPV4,IPV6 PPP SDH AAL3/4AAL5 ATM 以太网V.34 PPP 应应 用用 程程 序序 核核 心心 网络

7、层网络层 链路层链路层 物理层物理层 信令信令QoSQoS媒体传送媒体传送 7 SIP会话主要组件 uUA:用户代理,是终端用户设备,如用于创建和管理SIP 会话的移 动电话、多媒体手持设备、PC、PDA 等。用户代理客户机UAC发出 消息,用户代理服务器UAS对消息进行响应; uLS:注册或定位服务器,包含域中所有用户代理的位置信息的数据 库。一个用户可以注册不同的位置,因此定位服务器查找用户时 可得到零个或多个地址。在SIP中存在移动漫游概念,LS起着关键 作用; uPS:代理服务器, 接受UA 的会话请求并查询注册服务器,获取收 件方UA 的地址信息。然后,它将会话邀请信息直接转发给收件

8、方 UA(如果位于同一域中)或代理服务器(如果位于另一域中)。 uRS:重定向服务器, 允许SIP 代理服务器将SIP 会话邀请信息定向 到外部域。把请求消息中的用户地址(TO头域)映射成零个或更 多个新地址返回给请求用户,向请求方发送应答以指示被叫用户 的地址,可以获得的是E-mail形式的URL地址或被叫方关联的电话 号码。 pSIP服务器的差别在逻辑上,并非在物理上的差别。 8 SIP网络结构 9 用户向LS注册消息过程 10 用户开机后首先向其所在的注册服务器LS注册。 UA LS 位置 服务器 REGISTER(1) 401 Unauthorized (2) REGISTER(3)

9、200 OK(4) SIP协议规定用户 上电登记机制, 位置服务器中数 据库有所有用户 相关信息;配合 DNS机制进行域名 解析,使LS能定 位用户。SIPsip 注册过程.PNG SIP会话模型:主叫和被叫在相同域 主叫A呼叫被叫B时,发送INVITE消息给PS,要求与B进行会话,此时 PS再向LS查询获得B的地址信息,如IP;然后PS再转发A的邀请信息 (包含SDP会话参数描述)给B,B收到邀请信息后通知PS已接收到请 求,已经做好会话准备;PS再将该信息告诉A,ACK后会话建立。 11 主叫被叫在同一域中消息流程 主叫 用户 UAC 注册服务器LS 代理服 务器PS 被叫 用户 UAS

10、INVITE(1) 100 Trying(2) B is in。 (4) Where is B? (3) INVITE(5) 100 Trying (6) 180 Ringing(7) 180 Ringing (8)200 OK(9) 200 OK(10) ACK(11) RTP/RTCP BYE(12) 200 OK(13) 12 SIP会话模型:主叫和被叫在不同域 域A中PS发现B不 在该域中。根据 INVITE消息中TO 头域。 域A PS向RS查询 有关B的地址信息。 13 主叫被叫在不同域中消息流程 UACUAS RS PS INVITE(1) 302 (2) ACK(3) INVI

11、TE(4) INVITE(5) 100 Trying(6) 180 Ringing(7) 180 Ringing(8)200 OK(9) 200 OK(10) ACK(11) ACK(12) RTP/RTCP BYE(13) BYE(14) 200 OK(15) 200 OK(16) 14 SIP电话:重定向信令过程 15 SIP地址:SIP URL pSIP URL一般结构: SIP:username:pwdhost:port; 用户参数;传送参数; 方法参数;生存期参数;服务器地址参数?头部字段名 =头部字段值 pwell-known SIP端口号:5060 pSIP 支持许多种地址描述和

12、寻址,包括:用户名主机 地址、被叫号码PSTN网关地址和如Tel这样普通电话号码的描述等。SIP地址包括用户部分和 主机部分,如:j.doebig.tom、J.doe, 这样,SIP 主叫根据被叫地址,就可以识别出被叫是否 在传统电话网上,然后通过一个与传统电话网相连的网 关向被叫发起并建立呼叫。 16 SIP URL的协议应用 17 n指示请求的源地址:From字段中 n指示请求想要抵达的目的地:To字段中 n指示请求的当前目的地地址: Request-URL中(起始行) n指示重定向地址:Contact字段中 SIP消息一般格式 18 起

13、始行 *通用头部 *请求/响应头部 *实体头部 CRLF (空行,表示消息头域结束) 消息体,SDP 起始行:SIP版本;请求方法/响应类型;被邀用户 的当前地址 SIP基本方法:6种 19 uINVITE:邀请用户加入某个会话; uACK:确认会话,仅和INVITE配合; uBYE:释放已经建立的会话连接; uCANCEL:释放尚未完全建立的连接; uREGISTER:用户向注册服务器登记位置等信息; uOPTIONS:允许一个UA来查询另外一个UA或者proxy 服务器的能力,如内容类型,扩展,codecs等。通 过检查OPTIONS返回的Supported头域,就可以知道 是否支持这个选

14、项。所有的UA都必须支持OPTIONS 方法。 SIP消息主要头域 20 uVia:标示该请求的应答回送的地址。在转发请求之前, UA或PS会在via头上增加一个一段包含自己地址的值, 从而指示消息经过的路径,可发现路由环路。 uFrom:用来标志请求的原始发起者。 uTo:用来标志请求的目的地; uContact: 指示重定向地址,即告诉其他网元将来的请 求发送到哪里。 uCall-ID:包含一个全局的唯一标志,用来唯一标志这个 呼叫; uCseq:用于判定响应和请求的对应关系,判定重复请求; uMax-forwards:限制通讯中请求到达目的地前最大转发 次数; uContent-type

15、:包含了消息正文的描述; uContent-length:包含消息正文的长度(字节数)。 消息实例:alice向bob发送INVITE消 息 21 SIPalice bob 呼叫消息流程.PNG INVITE消息中TO头域无tag 指示重定向地址 # Alice端代理服务器收到INVITE请求之后, 就去找,可能通过DNS服务来提供的地 址信息。同时代理服务器会在via头上增加一个一 段包含自己地址的值。 消息实例:bob回送200 OK消息 22 初始VIA值 Alice端PS添加 Bob端PS添加 Bob端添加tag # VIA,TO,FROM,CALL-ID,Cseq包头域是从INVIT

16、E请求包中 直接拷贝过来的。200消息中SDP描述了bob支持的会话参数 类型,与alice的INVITE消息进行协商。Alice收到200后, 利用Contact指示的URL,不经过Via中地址直接向bob发送ACK 确认。 一个能直接联系到Bob的URI。 SIP消息源路由示例: 23 p参考RFC3261:P118-120 (省略与路由无关的 头域) uScenario:U1 - P1 - P2 - U2 U1发:INVITE sip: SIP/2.0 Contact: sip: P1发:INVITE sip: SIP/2.0 Contact: sip: Record-Route: si

17、p:;lr P2发:INVITE sip: SIP/2.0 Contact: sip: Record-Route: Record-Route: U2回:SIP/2.0 200 OK Contact: sip: (U2改写contact 头域为自己的URL) Record-Route: Record-Route: (P2负责,进行 定位服务,改写request URL) (P1查找DNS服务确定消息要发到 哪,并添加自己的URL) SIP消息源路由示例续一: 24 U2回送:SIP/2.0 200 OK Contact: sip: Record-Route: Record-Route: 且,U2: sets its dialog states remote target URI to sip: sets its route set to: (,) 200:U2P2P1U1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论