> From: Isaac Dudy
> 
> I have a question about draft-ietf-sipping-service-examples-08.txt
> section 2.9 Call Forwarding - No Answer.
> >From Alice UA point of view, the UA got three 18x responses 
> on a single
> INVITE request. 
> All the 18x have different To tags and thus create multiple early
> dialogs. (please note that the 181 response does not contain To tag at
> all but from Alice UA point of view the "null" To tag is 
> different from
> the first 180 response and thus create another early dialog).

Each 18x response must have a To-tag -- only 100 responses are allowed to
not have To-tags.  See section 8.2.6.2 of RFC 3261.  But yes, each 18x will
create an early dialog.

> In the flow we can see that eventually only one dialog is confirmed. 
> My questions are:
> 1) Doesn't Alice UA has to terminate the other early dialogs 
> with CANCEL
> or BYE ?? 
> 2) Can Alice UA relay on the fact that after 32 seconds from the first
> 2xx all other early dialogs are terminated automatically 
> without sending
> any CANCEL or BYE? 
> 3) What would have happen if Alice UA decided to send 
> immediately after
> the 2xx CANCEL on the two remaining early dialogs or BYE on each early
> dialog?

You can CANCEL the INVITE.  CANCEL actually works hop-by-hop, you send
CANCEL to the next server in line, which processes it by forwarding it to
the next server in line of each leg that it has created.  So you can't
CANCEL just one early dialog, you have to cancel the entire transaction,
destroying all of the early dialogs.

As Markus noted, you can BYE individual early dialogs.

Alice's UA can depend on early dialogs timing out and/or that the SIP agents
that sent the 181s see the 200 from the final UA and terminate their
internal record of the early dialogs.

> 4) According to RFC 3261 section 16.7 (on chapter choosing the best
> response) : 
> "Since a proxy may not insert a tag into the To header field of a 1xx
> response to a request that did not contain one, it cannot 
> issue non-100
> provisional responses on its own." 

That does appear to be a contradiction.  But I believe that the proxy can
act on the theory that it is parallel-forking the request, and one leg of
the fork is to a special UA inside the proxy, which responds with a 1xx.
But this has the consequence (as you noted above) that the 1xx generates its
own early dialog, unrelated to any other dialog.

Dale
_______________________________________________
Sip-implementors mailing list
[email protected]
http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to