分享

路由有关的SIP消息头的简单小结

 robincqmc 2014-07-21
一、SIP协议中定义的路由相关字段
1. Via:当UAC发起一个SIP Request消息时,消息经过的每一跳(包含发起方)都会在SIP消息中增加一个Via字段,内容为自己的地址信息,表示此消息通过此地址发往下一跳。
为什么要增加Via字段来记录Request消息经过的地址呢?实际上这个地址信息将被作为Request消息的Response消息的路由,Response将根据Via字段中记录的地址逐级返回,直到回到Request的发起方。

2. Route:Route和Via字段正好相反,它被用来作为Request消息的路由。当一个Proxy Server收到一个Request消息时,会检查Route字段的第一个地址是否等于自己,如果是,它将从Route字段中删去自己的地址信息,并将消息转发到Route字段中指定的下个地址;如果Route字段为空,则转发到Request URI指定的地址。

3. Record-Route:Record-Route字段实际上用于帮助UA建立Route Set,当UA发送Request时会用Route Set来设置上面提到的Route字段。当一个Request消息经过Proxy Server时,如果该Proxy Server希望通知UA相关的后续消息都能通过它来转发,此时它就会在消息中添加Record-Route字段,内容为自己的地址信息。当UAS发送Resposne消息时它将复制Request中的Record-Route字段,而UAC在Response消息中检测到Record-Route字段时,它就会用该字段的路由信息更新自己的Route Set。


二、IMS协议中增加的路由相关字段
1. Service-Route:Service-Route在S-CSCF向UE发送REGISTER成功应答时设置,作用和Record-Route类似,用于帮助UE建立Route Set,这样UE注册后的消息(例如INVITE)通过设置Route字段无需经过I-CSCF可直接送达S-CSCF。

2. Path:在P-CSCF转发Register请求给S-CSCF时插入,S-CSCF通过Path字段保存一个UE所使用的P-CSCF地址,这样当S-CSCF需要主动向UE发送消息时(例如网络端发起的De-register),S-CSCF就知道实际应该发往的P-CSCF地址了

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多