PRACK是SIP消息中保证临时消息(101-199)可靠传输的机制。为达到该目的,UAC有两种选择,在inivite消息中加入Require:100rel或者Supported:100rel。UAS在接受到上述消息中,也存在选择的问题。
当Inivte中含有Supported:100rel,UAS在发送临时消息中,可以根据UAS中是否支持PRACK决定发送临时消息中的参数。如果支持则临时消息中加入Require:100rel和Rseq字段,接到该消息UAC发送PRACK;否则不加上述参数,UAC不发PRACK。
当Inivte中含有Require:100rel。UAS如果不支持PRACK需要使用420(不正确的扩展)来拒绝呼叫。否则临时消息中加入Require:100rel和Rseq字段,接到该消息UAC发送PRACK。