SIP tag 和 Call-ID 的区别

ideawu 2017-06-16 19:29

SIP 的一次通话,可以通过 From, To, Call-ID 三元组来区分。但是,为什么 From 和 To 不用固定的地址,而要在地址后面加上tag=随机数呢?

tag 的目的是为了解决自己给自己打电话的问题(Hairpinning)。如果你自己给自己打电话,那么你应该有两个 Session,但是,如果 From 和 To 是固定的,你就无法区别这两个 Session 哪个是 caller 哪个是 callee。发送 INVITE 时,caller 会在 From 中带有tag=随机数,而 callee 发送响应时,在 To 后面补充tag=随机数,不同的随机数分别表示 caller 和 callee。

所以,RFC 3261 中说:

The combination of the To tag, From tag, and Call-ID completely defines a peer-to-peer SIP relationship...

用的是 From tag 和 To tag,而不是用 From 和 To。

Related posts:

  1. P2P 的定义
  2. Ideawu.P2P API 简介
  3. P2P应用的架构
  4. The Day You Went Away — M2M
  5. 让你的网站支持手机二维码登录

[返回] [原文链接]