简介
本文档介绍如何配置enableDelayQuickReinvite,以防止应用服务器(AS)在ACK后过快发送重新INVITE。
先决条件
- 基本会话初始协议(SIP)知识
- 基本AS知识
- BW bwcli基础知识
要求
- 可以使用AS bwcli和管理员用户
- 能够查看AS XSLogs
运行 get 命令检查两个参数的当前值。
默认情况 enableDelayQuickReInvite 已禁用(false),且默认值 delayQuickReInviteMs 是1000(1000毫秒,或1秒)。
为了增强可读性,省略部分get命令输出。
AS_CLI/Interface/SIP> get
...
enableDelayQuickReInvite = false
delayQuickReInviteMilliseconds = 1000
...
配置delayQuickReInviteMilliseconds参数。
接受默认值或使用最适合您环境的默认值。
使用尽可能最小的值。从值100ms开始,然后将其增大到足以解决问题。
AS_CLI/Interface/SIP> set delayQuickReInviteMilliseconds 100
...Done
配置delayQuickReInviteMilliseconds的值后,启用enableDelayQuickReInvite。
AS_CLI/Interface/SIP> set enableDelayQuickReInvite true
...Done
验证
配置完成后,再次运行呼叫方案,以确定AS会增加ACK与重新INVITE之间的延迟。
例如,如果AS已配置为增加100ms,则预期延迟至少为100ms或稍高。
100毫秒通常足以防止ACK和re-INVITE接收顺序混乱。
该值可能更高,具体取决于网络环境和信号路径中涉及的SIP实体。
故障排除
如果设备仍然以500错误代码做出响应,且ACK和re-INVITE已按正确顺序传送,则需要对设备进行进一步调查。
使用AS上的XSLogs验证AS是否按配置添加了延迟。
使用数据包捕获或设备日志来确保延迟足够大,以便消息按正确顺序传送。
请注意,仅当发送ACK后AS发送重新邀请时,此操作才有效。
如果AS收到ACK且导致AS发送重新邀请,则此命令不起作用。