Figure 2.15 SIP transactions
{ 2.2.2.5 SIP Dialogues
It has been shown what transactions are, that one transaction includes INVITE and its responses and another transaction includes BYE and its responses when a session is being torn down.Those two transactions should be somehow related-both of them belong to the same dialogue. A dialogue represents a peer-to-peer SIP relationship between two user agents. A dialogue persists for some time and it is very important concept for user agents. Dialogues facilitate the proper sequencing and routing of messages between SIP endpoints.
Dialogues are identified using Call-ID, From tag, and To tag. Messages that belong to the same dialogue must have these fields equal.We have shown that CSeq header field is used to order messages. In fact, it is used to order messages within a dialogue.The number must be monotonically increased for each message sent within a dialogue. Otherwise the peer will handle it as an out-of-order request or retransmission. In fact, the CSeq number identifies a transaction within a dialogue, because we have said that requests and associated responses are called transactions.This means that only one transaction in each direction can be active within a dialogue. One could also say that a dialogue is a sequence of transactions. Figure 2.16 extends Figure 2.15 to show which messages belong to the same dialogue.
P.41
[IP Telephony Cookbook] / Technological Background
Calling party
Called party
INVITE
100 Trying
Transaction #1
180 Ringing
200 OK
Dialog
ACK
BYE
200 OK