美文网首页
SIP重要头域

SIP重要头域

作者: 耦耦 | 来源:发表于2018-05-07 09:02 被阅读15次

From:

<span style="font-family:'楷体';font-size:17px">如果一个SIP消息中没有Contact或者Record-Route头域,那么callee就会根据From头域产生后续的Request。</span>

也就是这里Record-Route、Contact、From是有优先级的,如果Record-Route存在,会先选择Record-Route,没的话再去看Contact有没有,如果连Contact都没有的话,最后才会根据From头域里面的地址残剩后续的Request。

<span style="font-family:'楷体';font-size:17px">from里的URI是可变的,因为中间可能经过层层proxy代理,但是To的地址是唯一的。</span>

Contact:

<span style="font-family:'楷体';font-size:17px">后续Request将根据Contact头域的地址内容决定目的地的地址,同时将Contact头域的内容放到Request-URI中。</span>

看个栗子(alice发起通话,最后bob结束通话):

这里alice(2006)向bob(2008)主动发起INVITE,这里的Request-URI和Contact是这样的: 消息的初始Request-URI应该设置为 To字段中URI 的值。

image.png

现在要说的话都说完了,bob想要挂断电话并发起请求,这里的Request-URI和Contact是这样的:

image.png

这里也就是说,一开始是alice(2006)向bob(2008)发起call请求,最后却是bob发起挂断电话的请求,这时,bob从接收者变成了发起者,而相应的请求行的Request-URI就变成了alice的地址,contact里面也变成了发起者bob的地址。

<span style="font-family:'楷体';font-size:17px">请求者的身份和接收者的身份根据请求是可以相互转换。</span>

Record-Route/Route:

Record-Route头域一般是被proxies插入到request中的,这样后续的Request如何有着和前面一样的call-id就会被路由 到这些proxies。它也会被User Agent作为发送后续request的依据。这套机制很像source-route,Record-Route头域的信息被复制到Route头域中。并 且Request-URI头域会被设置为第一个Route头域的内容。

Via:

Via头域是被服务器插入request中,用来检查路由环的,并且可以使response根据via找到返回的路。它不会对未来的request 或者是response造成影响。 响应消息就依靠via来完成。

<span style="font-family:'楷体';font-size:17px">总的来说,如果有Route,request就应该根据Route发送,如果没有就根据Contact头域发送,如果连Contact都没有,就根据From头域发送。</span>

<span style="font-family:'楷体';font-size:17px">Loop:环路。当请求抵达一个代理服务器,代理服务器转发这个请求,当这个请求再次来到同一个
代理服务器,就称之为环路。</span>

To
To头字段首先指定了请求的所需“逻辑”收件人,或者是此请求的目标用户或资源的记录地址。这可能是也可能不是请求的最终接收者。To头域可以包含SIP或SIPS URI,但也可以使用其他URI方案

相关文章

  • SIP重要头域

    From: 如果一个SIP消息中没有Contact或者Record-Route头域,那么callee就会根据Fro...

  • SIP协议

    SIP协议是什么? sip是一个基于文本的会话初始协议。 SIP中的重要概念: UA:用户代理,只要是能发起SIP...

  • SIP技术介绍

    目录 SIP SIP协议简介 基本概念介绍 SIP的功能和特点 SIP消息 SIP工作原理简介 SIP支持的传输协...

  • Android-SIP_开发介绍(1)

    由于网上的有关于Sip相关的视频通讯、即时通讯比较少,成型的Sip项目也相对较少,就算找到,打开一个源码也会看的头...

  • 【HTTP】协议头详解

    HTTP的头域包括通用头、请求头、响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。 通...

  • gb28181协议常见流程简析

    上级=sip+源设备 1.注册 1.sip代理或下级向sip服务器发送REGISTER请求+sip编号+IP+端口...

  • HTTP头域

    HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大...

  • SIP [RFC3261]

    SIP概括 会话初始协议(Session Initiation Protocal, SIP)。SIP是一个应用层的...

  • voip开发入门->SIP协议学习日记01

    一、SIP简介 1. 什么是SIP? 会话初始化协议 SIP( Session Initiation Proto...

  • 用express实现CORS跨域

    跨域请求头 cors express 跨域请求

网友评论

      本文标题:SIP重要头域

      本文链接:https://www.haomeiwen.com/subject/jxqmrftx.html