为什么标签需要标识SIP对话框?

Pra*_*avi 5 sip

本地和远程标签以及Call-ID的组合用于标识对话框.据说Call-ID是呼叫的唯一值.那么为什么Call-ID不仅仅用于识别对话框呢?

Fra*_*rar 8

总之一句话:发夹.

发夹是指用户代理自己调用时,主要用于自我测试.(你可能有这个原因的另一个原因是你的代理将你的呼叫路由到你自己,称为"tromboning".当故意这样做时,它对你的基础设施进行了有用的端到端测试.)

所以,假设您向自己发送邀请,然后回答.然后,您的用户代理必须有两个对话框(每个对话框都带有标识符),每个对话框代表一个呼叫的一端.如果你只有一个Call-ID,那么你不知道哪个对话是调用者,哪个是被调用者.

这里的FromTo标签是您可以明确确定哪个对话框的方式.

  • 谢谢提供信息。不知道发夹的概念。发现了另外 1 个场景,它表明了对话 id 中标签的重要性。在某处阅读当 INVITE 由代理分叉时,UAC 将收到对同一请求的多个响应。这将创建单独的对话作为同一呼叫的一部分,即呼叫 ID 相同,因此将使用 To 和 From 标签来识别哪个对话对应于哪个 UA。请确认这个理解是否正确? (2认同)
  • 这确实是正确的,Pravi.参见RFC 3261,第13.1节,第2段最后一段. (2认同)