我是sip协议的新手。我理解sip正常注册过程,其中from和to header字段是相同的。但是我不理解第三方注册,其中from和to头字段是不同的。我的问题是
1)什么是第三方注册。
2)使用此第三方注册时。
任何帮助都会很棒。
谢谢
1)什么是第三方注册?
在SIP协议下,REGISTER请求可以由与某个地址本身相关联的用户代理客户端(UAC)或由某个其他实体(第三方)发送。当REGISTER请求不是由UAC本身发送时,第三方注册只是后一种情况的一个奇特术语。
特别是,RFC 3261提到:
代表特定地址(AOR)的注册可以由适当授权的第三方执行。
虽然这两个字段[To和From标题字段]通常是相同的,但是有许多有效的部署,其中第三方可以代表用户注册联系人。
在支持第三方注册的体系结构中,一个实体可能负责更新与多个记录地址相关联的注册。
2)何时使用第三方注册?
第三方注册经常用于具有许多不同服务器和(特别是)多个注册商的体系结构中。
例如,您的架构中可能有三个假设的服务器:
hyderabad.proxy.sip.in
- 代理服务器,它像海德拉巴的客户一样注册商mumbai.proxy.sip.in
- 代理服务器,作为孟买客户的注册商voicemail.sip.in
- 中央电话应用服务器,当客户端无法访问时,它会特别记录语音邮件。当您的UAC在hyderabad.proxy.sip.in
注册时,可能需要通知语音邮件服务器停止录制语音邮件并开始将呼叫直接转发到当前客户端的位置。因此,hyderabad.proxy.sip.in
服务器将代表您向voicemail.sip.in
发送REGISTER请求,在此第三方注册中扮演第三方角色。如果有更多不同的专用服务器,您的原始注册商可能需要代表您发送多个REGISTER请求。
在这种情况下,您可以将第三方注册视为一种转发:您发送单个REGISTER请求,并由代理服务器转发到所有相关服务器。
有关第三方注册的更真实的例子,您可以查看有关LTE语音(VoLTE)架构的this article。