SIP 注册获得 500 服务器内部错误 - 63

SIP REGISTER getting 500 server internal error - 63

场景是关于 LTE 网络上的 SIP 注册。

  1. 设备锁定网络并发送 SIP 注册 呼叫 ID 4EdqB3YwpQHIYGPtj9c 和 CSeq 号。 1
  2. 网络返回 401 未经授权。
  3. 设备发送带有 call id 4EdqB3YwpQHIYGPtj9c 和 CSeq 编号的 nonce 值的注册消息。 2。并注册成功。
  4. 设备重新连接到网络。比如开关机。
  5. 设备再次发送具有相同呼叫 ID 4EdqB3YwpQHIYGPtj9c 和 Cseq 编号的 REGISTER 消息。 1,从网络收到 500 服务器内部错误 - 63
  6. 一段时间后设备再次发送REGISTER消息,这次call id是不同的3Qp8ssj7hpKpspDn0mELU1v和cseq no。 1.收到n/w的401响应后,重新发送REGISTER,同样成功。

我的查询是:

  1. 重新附加 cseq 后是否执行。重置为 1?
  2. 重新连接后,设备是否应该使用不同的呼叫 ID 来发起 REGISTER 消息?
  3. 500 内部服务器错误中的错误代码 63 是什么意思?

提前致谢

在重新连接 Cseq 后没有。重置为 1?

新的 SIP 注册可以从任何新的随机数开始。它也可以以 Cseq: 1 开头。在您正在检查的用户设备中,它可能正在使用 Cseq 1 开始所有新注册。

当在 Sip-Registrar 收到新注册时(即 S-CSCF IP 多媒体子系统);使用 Call-ID 值创建绑定。这就引出了下一个问题。

重新连接后,设备是否应该使用不同的呼叫 ID 来发起 REGISTER 消息?

注册人数 time-bound,将在一段时间后过期。在到期之前,应该发送 Re-registration。此后续注册请求应绑定到 Sip-Registrar 处的旧注册。为此,我们将保持不变 call-Id。 (以及相同的 Contact、To、From 和 From 标签:用于绑定的所有 headers 和参数完全是一个不同的主题;我们现在将跳过它。)根据 RFC3261,UA 应该在单个引导周期内对所有注册使用相同的 Call-ID。

对于您的情况,无法猜测为什么新注册请求发送 500 内部服务器错误,该请求与旧注册具有相同的 call-Id。

旧的绑定有可能仍然存在于 Sip-Registrar 并且在分离期间,资源清理可能没有发生。由于相同的呼叫 ID,此新注册可能会附加到旧绑定。 (请注意,这只是猜测,我不确定您的 Sip-Registrar 发生了什么)

500 内部服务器错误中的错误代码 63 是什么意思?

这个数字 63 是专有实现。作为回应,在 500 之后,可以对文本进行操作以添加任何创建有意义原因的内容。

有关如何在 SIP-Registrar 处处理注册的更多信息,您可以查看以下 RFC link:

https://www.rfc-editor.org/rfc/rfc3261#section-10.3

此致, 国民党