IP Telephony Cookbook by Saverio Niccolini, Jorg Ott, et al - HTML preview

PLEASE NOTE: This is an HTML preview only and some elements such as links or page numbers may be incorrect.
Download the book in PDF, ePub, Kindle for a complete version.

Transaction #2

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