[Devel] SIP To: Header Tags issue
alex at pilosoft.com
alex at pilosoft.com
Fri Mar 31 02:08:36 CEST 2006
Hi,
Having somewhat of an interesting issue that appears to result from
vagueness of SIP RFC.
Issue is that if requester sent a SIP message and there is no ;tag on the
To: field, the UAS is supposed to add the tag and send it back, and
requester should use that value in all future references to this call.
Now, this causes problems in the following sequence of events, assuming
SER is doing stateful forwarding.
Requester SER UAS
INVITE->
<- 100 trying
INVITE->
<- 100 trying (with the new tag)
Now, note that at this point, the message with the new tag is 'consumed'
by ser, and requester remains oblivious to the new tag. (Yes, once 183
Ringing or OK comes through - requester will get the tag, but, if
requester needs to CANCEL the call, UAS requires the tag to be present -
and the CANCEL will fail).
So, what is the more appropriate thing to do?
Options as I see them:
a) I should make SER add a tag to the To: field if it is missing.
RFC is silent whether a proxy is allowed/required to add a tag to the To
field.
b) I should make SER do a stateless-forwarding of "100 Trying" messages.
This will result in client getting two acks (one stateful from SER, one
stateless from UAS), which I'm not sure is a correct thing.
Which one is the "right thing"?
More information about the Devel
mailing list