一:请求路由
松散路由(Loose Router)和严格路由(Strict Router),这是SIP协议(RFC3261)中的一个非常重要的概念。
在SIP消息的Route头域或Record-route头域中,携带的域值是SIP URI或SIPS URI,如果这个URI带有”lr”属性值,那么,就表示URI的地址所标识的SIP PROXY是松散路由的,否则,是严格路由的。如Record-Route: <sip:p1.example.com;lr>、Route: <sip:p2.example.com;lr>。
松散路由是RFC3261所定义的消息路由规则,而严格路由则是RFC2543中所定义的路由规则。松散路由提供了对严格路由的兼容机制。路由规则中,涉及了对Request URI域值的处理。严格路由时,要求Request URI为路由地址。
严格路由是一种比较“死板”的理由机制,这种路由机制在SIP协议的前身RFC 2534中定义,其机制非常简单。它要求收到的消息的request-URI必须是自己的URI,然后它会把第一个Route头域“弹”出来,并把其中的URI作为新的request-RUI,然后把该消息路由给该URI。而松散路由则提供了一种更为灵活的机制。
处理步骤:
Proxy首先会检查消息的request-URI是不是自己属于自己所负责的域。如果是,它就会通过定位服务将该地址“翻译”成具体的联系地址并以此替换掉原来的request-URI;否则,它不会动request-URI。
PROXY首先检查路由表中的第一个地址是否为自己,如果是则从表中删除。
严格路由在发往下一跳前,将Request URI的域值更新为路由表中的表头地址(下一跳)。
松散路由将路由如果发现Request URI是自己插入到路由表中的地址。从路由表中取出最后一个地址更新Request URI,并删除最后一个地址。
松散路由检查下一跳是否为严格路由。如果不是,不处理;否则,将Request URI插入到路由表表尾,并用下一跳地址(严格路由的地址)更新Request URI。
如果路由表为空,则路由给Request URI。
路由机制用于请求消息的路由,其中Route头域携带路由表信息,而Record-Route头域则是SIP PROXY想让自己保留在后续dialog中而插入的记录。也就是说,通常初始化时,发起终端是没有路由表的(当然也可以强制配置,这样局限性太强),完成第一次消息交互后,双方根据Record-Route信息,各自更新路由表。
二:应答消息路由
SIP应答消息的路由机制,相对请求来说,比较简单,基本思想就是,请求从哪里来,应答回哪里去。那是如何实现的呢?很简单,Via头域就是完成这个差事的。Via头域表说明了SIP请求实际的路由过程,用于应答消息的回程路由。
下面是一个via的示例(注意,换行仅是为了增强可读性,没其它意思)
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bKnashds8
;received=192.0.2.1
其中pc33.atlanta.com部分称为sent-by属性,表明了消息在本站点的具体发送地址。每个SIP PROXY在前转SIP请求消息时,都必须在Via表前端插入自己的via(称为top VIA)并说明sent-by。而“received=192.0.2.1”这一参数则说明了消息到达本站点时的源地址。
当UAS发送应答时,往top VIA所指示的地址发送(received优先于sent-by)。当SIP PROXY路由应答消息时,首先检查top VIA是不是自己,不是则不处理,是则删除top VIA,并继续前转。所以,当源发起端收到应答时,应答消息中应该只有一个VIA头域,并且是指向自己的,否则就应该丢弃。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/niino/archive/2010/06/30/5705102.aspx
分享到:
相关推荐
询问/应答机制 广泛应用于internet 可以基于UDP、TCP和SCTP传输,目前最常用UDP 4 协议簇 信令协议 – 注册、定位用户、路由 – 建立,修改,释放会话 媒体传输协议 – 用于传输语音/视频包 SIP – 信令协议 会话的...
7.5 分帧的SIP消息(Framing SIP Messages) 40 8 一般用户代理行为 40 8.1 UAC特性 41 8.1.1 产生一个请求 41 8.1.1.1 Request-URI 42 8.1.1.2 TO 42 8.1.1.3 From 43 8.1.1.4 Call-ID 44 8.1.1.5 Cseq 45 8.1.1.6 ...
SIP协议开发手册,详细介绍了SIP协议开发的各个细节,包括SIP路由、媒体能力协商、SIP安全机制等,是SIP协议开发人员非常有用的工具书。
SIP协议开发手册,详细介绍了SIP协议开发的各个细节,包括SIP路由、媒体能力协商、SIP安全机制等,是SIP协议开发人员非常有用的工具书。
Omnidial是一个旨在改善对通过Internet路由呼叫或消息的机制的实时发现的项目。 作为Android应用程序和Java库提供,可集成到其他Android和桌面应用程序中。 将电话号码或地址簿数据作为输入。 使用电话号码(可能...
8.4.1 信令路由分类和含义消息传递部分(MTP)路由 267 8.4.2 信令连接控制部分(SCCP)路由 268 第9章 信令网的结构 269 9.1 信令网的分类 269 9.1.1 无级信令网 269 9.1.2 分级信令网 270 9.2 影响信令网分级的...
第3章 P2P网络的基础——搜索和路由算法 36 3.1 传统搜索技术 36 3.2 P2P搜索技术的发展 37 3.3 DHT网络(结构化P2P网络)的搜索技术 39 3.3.1 DHT路由原理 39 3.3.2 Chord 40 3.3.3 Pastry 44 3.3.4 ...
RFC516 丢失消息的检测 RFC591 在 NVT ASCII UCSB和在线系统之间的实验输入映象 RFC621 “注意圣诞节的时候要把长袜挂在烟囱下面” RFC628 更深的数据语言的设计观念 RFC634 最近的网络图 RFC637 SU-DSL网络...
RFC1998 BGP 社区属性在多本地路由中的应用 RFC2002 IP移动性支持 RFC2003 在IP内封装IP RFC2004 IP最小封装 RFC2005 IP移动性的适用性陈述 RFC2011 SNMPv2 管理信息基础用于Internet 协议使用SMIv2 RFC2012 SNMPv2 ...
RFC1998 BGP 社区属性在多本地路由中的应用 RFC2002 IP移动性支持 RFC2003 在IP内封装IP RFC2004 IP最小封装 RFC2005 IP移动性的适用性陈述 RFC2011 SNMPv2 管理信息基础用于Internet 协议使用SMIv2 RFC2012 SNMPv2 ...
三、方案设计拓扑图 常州信息职业技术学院 VOIP 电话的配置与应用 李志华 第 3 页 2017/4/18 四、方案的具体实施 本方案主要采用 MSR 系路由,设计主要以 SIP 代理服务器的方式组建的 VOIP 企业语音通信网络。...
6. 3GPP R4版本为什么使用BICC协议而不是SIP-T? 4 7. 在R4中使用的扩展的H.248与H.248有什么不同? 5 8. 3GPP R99和R4核心网电路域差异 5 9. 承载与控制分离的结构有什么好处? 8 10. 3GPP R4相对于R99的优势 9 11....
第1 章Linux操作系统概述................... .......................................................................... 2 1.1 Linux发展历史...........................................................