PRACK 在rfc 3262中定义。
在RFC3261 中,provisonal response (1xx response)表示所联系的服务器正在执行一些进一步的操作,并且尚未有明确的响应。如果服务器预计需要超过 200 毫秒才能获得最终响应,则会发送 1xx 响应。临时(1xx)响应可以包含消息正文,包括会话描述。 provisonal response进行的是不可靠传输,且永远不会导致客户端发送ACK。
到了rfc 3262,情况发生了变化。SIP 定义了两种类型的响应:provisional response和final response。
final response传达请求处理的结果并且会被可靠地发送。 provisional response提供有关请求处理进度的信息,但在RFC 3261中并未可靠发送。后来发现,可靠性在多种情况下非常重要,包括与 PSTN 的互操作场景。因此,需要一种可选功能来支持provisional response的可靠传输。 RFC 3262就定义了该功能。
可靠性机制的工作原理采用的就是对INVITE 的 2x