SIP Page Saturday, May 15th, 2021.

Home |

SIP RFC   |   RFC 822   |   SIP Rel of Prov Resp RFC   |   SDP RFC   |   Sip Refer RFC   |   sip timers   |   Response Codes   |   OFF/ANSWER SDP RFC   |   RTP RFC   |   Early Media Ringtone in SDP RFC   |  
RTP Profile A/V RFC   |   RFC 2833   |   RFC MSRP   |   RFC DNS 1034   |   RFC DNS 1035   |   RFC 3265 Event Notification     |   Payload Assgn   |   Session Timer   |   sip note   |   RFC 5246 TLS   |   |   RFC 4266 TLS ext   |   |   TLS over SCTP   |  

A response belongs to the same transaction as a request if the two following conditions are met:
1. Both request and response have the same value as the "branch" parameter in the top Via header field.
2. Both request and response have the same value as the "method" parameter in the Cseq header field.
(The method is needed because a CANCEL request constitutes a different tranaction, but shares the same
value as the "branch" parameter of the request that it cancels.

How to identify a sip dialog?
"Dialogs are identified at each UA (local and remote) with a dialog ID. The dialog ID consists of a call-identifier value, a local tag, and a remote tag. The Call-ID is the same in both User Agents, and the local tag in a UA is identical to the remote tag in its peer. Dialog identification is carried in the signaling, and so, by looking at the content of a SIP message, the UAS can learn to which dialog the message pertains." Perea

How do you tell if sip session is considered early dialog?
If response to INVITE is 1xx(provisional) and it contains a tag parameter in To, the session has not been establiished, but dialog has.
Such dialog is said to be early state. If 2xx (OK) is received with tag in To then dialog is confirmed.

If a number of route headers are contained in sip request message, which route header is used? (top or bottom?)
If the request message contains one or more Route headers, then use the topmost Route header to determine the next hop (address + transport) for the message.
If the request message contains no route headers, then use the R-URI to forward the message. Through use of Route headers, the routing of a request message is done w/o affecting the destination of the message, provided that loose routing is applied.

prack rfc note
call example I