Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于sip协议中ACK消息失败的混淆_Sip - Fatal编程技术网

关于sip协议中ACK消息失败的混淆

关于sip协议中ACK消息失败的混淆,sip,Sip,根据sip协议,当第一次invitesend时,sip返回proxy authentication required消息(如果有任何代理服务器可用),然后客户端发送acknowledge消息。但是,如果确认消息未能到达sip服务器,会发生什么情况?服务器有时会返回禁止,并忽略带有身份验证头的所有新邀请。此外,当sip收到多条确认消息时,它会立即发送禁止 如果您的问题是,对于发出407但未收到ACK的SIP服务器,正确的行为是什么,请参阅RFC 3261 17.2.1以了解INVITE服务器事务的

根据sip协议,当第一次
invite
send时,sip返回
proxy authentication required
消息(如果有任何代理服务器可用),然后客户端发送
acknowledge
消息。但是,如果确认消息未能到达sip服务器,会发生什么情况?服务器有时会返回
禁止
,并忽略带有
身份验证头的所有新
邀请
。此外,当sip收到多条
确认
消息时,它会立即发送
禁止

如果您的问题是,对于发出407但未收到ACK的SIP服务器,正确的行为是什么,请参阅RFC 3261 17.2.1以了解INVITE服务器事务的描述

发送407将使状态机进入“完成”状态,此时必须设置G和H定时器。当G触发时,需要重新传输407响应。如果所有的ACK消息都丢失了,那么定时器H将使服务器事务最终放弃。但如果第二个ACK到达服务器,则仅此而已。您将看到两个407响应,一个是丢失的ACK,另一个是成功的ACK

使用凭据处理后续的INVITE应该与前面描述的过程完全独立。带有凭据的INVITE消息将构成单独的对话,形成事务