Which header field does a SIP User Agent Client use to advertise that is supports Provisional Response Acknowledgment?
The correct answer is A. Require 100rel.
SIP (Session Initiation Protocol) is a signaling protocol used for initiating, maintaining, modifying, and terminating real-time sessions that involve video, voice, messaging, and other communications applications and services between two or more endpoints on IP networks.
When a SIP User Agent Client (UAC) sends an INVITE request to a SIP User Agent Server (UAS) to initiate a session, the UAC can include specific headers in the SIP message to request or indicate its support for certain features or capabilities. One such feature is the ability to support Provisional Response Acknowledgment (PRACK).
PRACK is used to acknowledge a provisional response (1xx response) from the UAS to the UAC, indicating that the UAC has received the response and is ready to receive the final response (2xx response) to complete the session establishment. PRACK can help reduce call setup times and improve reliability by allowing retransmission of provisional responses without retransmitting the INVITE request.
To advertise its support for PRACK, the UAC includes the "Require" header field in its SIP message with the value "100rel". The "Require" header field is used to indicate a requirement for a particular SIP extension or feature. The value "100rel" indicates that the UAC requires support for PRACK.
The other options listed in the question are incorrect because:
B. Allow: PRACK - This header field is used by the UAS to indicate which methods (including PRACK) it allows the UAC to use in subsequent requests.
C. Accept: 100rel - This header field is used by the UAS to indicate which media types it is willing to accept in a subsequent response.
D. Supported: 100rel - This header field is used by the UAC to indicate which SIP extensions or features it supports.
E. Cseq: PRACK - This header field is used to identify the sequence number of the SIP message in the dialog and the method used in the request. It does not indicate support for PRACK.