0

在 SIP INVITE 消息中,INVITE 字段地址和 Message Header 中的 To 字段有什么区别?INVITE 字段中的 SIP URI 不应该与消息头中“To”字段中的 SIP URI 相同吗?

谢谢

4

3 回答 3

1

我认为您在谈论 RequestUri 和 To Uri 之间的区别。

请求 URI:

邀请 sip:+919100548751@85.13.246.222 SIP/2.0

到 URI:

sip:+919100548751@52.10.15.196;传输=UDP

它们之间的区别是 Request Uri 包含下一个 HOP ip 地址,而 uri 包含目标号码。

从源地址到目标地址……我们可以有很多跳。

我回答了你的问题

于 2019-11-20T09:51:56.097 回答
1

对于请求URI,规范RFC3261 8.1.1.1说:

消息的初始 Request-URI 应该设置为 To 字段中 URI 的值。一个值得注意的例外是 REGISTER 方法。

对于To标头,规范RFC3261 8.1.1.2说:

To 标头字段首先指定请求的所需“逻辑”接收者,或作为此请求目标的用户或资源的记录地址。这可能是也可能不是请求的最终接收者。

对于非 REGISTER 请求,To标头 URI 是一个“逻辑”值,通常由处理请求的代理决定如何使用它(通常什么都不做)。该请求URI更为关键。它规定了需要发送请求的位置和方式。

一个可能有帮助的例子是当需要通过 TCP 传输发送请求时。该请求URI可以生成为:

sip:1234@localhost;transport=tcp

ToURI 将保留:

 sip:1234@localhost
于 2019-11-20T20:50:52.510 回答
0

在 SIP INVITE 消息中,INVITE 字段地址和 Message Header 中的 To 字段有什么区别?

'to'头字段包含所需的address-of-record; 这address-of-record本质上是恒定的(有例外)。INVITE 字段地址又名Request-URI包含当前SIP-URI目标,并且本质上是可变的。

INVITE 字段中的 SIP URI 不应该与消息头中“To”字段中的 SIP URI 相同吗?

简短回答:在形成初始 INVITE 时是,在 SIP 路由发生时不是。

更长的东西:如果用户代理 Alice 发起对特定 Bob SIP 端点的呼叫,它会从某个地方检索 Bob 记录地址,然后创建一个初始 INVITE 请求,并将所需的内容address-of-record放在Request-URI字段中,将其address-of-record放在 URI 中的to标题字段。

初始 INVITE 被发送和路由……在一个 SIP 代理上,该 Request-URI字段使用 [RFC3261] 第 16 节中指定的过程进行细化。

如果它接收到针对属于该代理负责的域的记录地址的请求,则:

  • 它应该访问一个 SIP 位置服务来计算the request targets,注意不止一个target-URI是可能的!
  • 在一个简单的情况下,request-URIaddress-of-record使用 REGISTRAR 数据库与所需的注册联系人一起归档。
  • 代理创建与INVITE request更改request URI为新获取的相关的target URI
  • 然后如果target-URI存在更多,则以相同的方式进行分叉。
于 2019-11-25T17:59:02.920 回答