SIP Session Management 2 — Questions and Answers
Question 1: Which SIP method is used to modify an existing session's parameters, such as changing the codec mid-call?
- UPDATE
- MODIFY
- RE-INVITE (Correct answer)
- PATCH
Correct answer: RE-INVITE
A re-INVITE is sent within an established dialog to renegotiate session parameters like media codecs or IP addresses.
Question 2: What is the purpose of the SIP UPDATE method compared to re-INVITE?
- UPDATE modifies session state before the answer is received, avoiding hold (Correct answer)
- UPDATE terminates a session gracefully
- UPDATE is used only for registration refresh
- UPDATE replaces the ACK acknowledgment
Correct answer: UPDATE modifies session state before the answer is received, avoiding hold
RFC 3311 UPDATE allows session parameter changes before the final response is sent, avoiding the need to place the call on hold.
Question 3: In a SIP dialog, what does the Route header set contain?
- The list of proxy servers to traverse for in-dialog requests (Correct answer)
- The codecs negotiated during session setup
- The sequence numbers of transmitted requests
- The expiry time of the session
Correct answer: The list of proxy servers to traverse for in-dialog requests
The Route header set is built from Record-Route headers and ensures subsequent in-dialog requests traverse the same proxy path.
Question 4: What SIP response code indicates the session was successfully established?
- 180 Ringing
- 200 OK (Correct answer)
- 202 Accepted
- 183 Session Progress
Correct answer: 200 OK
A 200 OK response to an INVITE confirms the session has been accepted and established by the callee.
Question 5: Which SIP timer governs how long a UAC waits for a final response before retransmitting an INVITE?
- Timer A
- Timer B (Correct answer)
- Timer C
- Timer D
Correct answer: Timer B
Timer B is the INVITE transaction timeout timer; if no final response is received within 64*T1, the transaction times out.
Question 6: What is the function of the CSeq header in SIP session management?
- Identifies the transaction method and sequence number within a dialog (Correct answer)
- Encrypts the session media stream
- Stores the session expiration time
- Routes requests through proxy servers
Correct answer: Identifies the transaction method and sequence number within a dialog
CSeq provides a command sequence number paired with the method name, used to order requests and match responses within a dialog.
Question 7: When a SIP proxy inserts a Record-Route header, what is the primary reason?
- To remain in the signaling path for subsequent in-dialog requests (Correct answer)
- To encrypt the SDP body
- To indicate the session expiry time
- To specify the codec preference order
Correct answer: To remain in the signaling path for subsequent in-dialog requests
Proxies add Record-Route so they remain on the request path for future in-dialog messages like re-INVITEs or BYEs.
Which SIP method is used to modify an existing session's parameters, such as changing the codec mid-call?