[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sipping] Fwd: [Fwd: WGLC ofdraft-ietf-sipping-service-examples-10.txt]



Dale,

My interpretation was always that 181 could be sent without to-tag

If you add a to-tag, it becomes dialog-creating, and should also have a Contact header. Furthermore, the UAC would probably send a BYE on this dialog, and the proxy would have to make sure not to forward that BYE

Regards,

jeroen

----- Original Message ----- From: "Dale R. Worley" <worley at dworley.hsd1.ma.comcast.net>
To: <sipping at ietf.org>
Sent: Thursday, June 22, 2006 5:14 PM
Subject: Re: [Sipping] Fwd: [Fwd: WGLC ofdraft-ietf-sipping-service-examples-10.txt]



  From: "nagesh kumar" <bvnkumar at gmail.com>

  F3 - Here proxy sends 181 when it is forwarding the call. However, proxy
  shall not generate any response by itself as per RFC 3261 - P110.
  "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. "

I think the situation is more complex than that.  The entire paragraph
on page 110 is (RFC 3261 section 16.7 item 6):

        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.  However, it
        can branch the request to a UAS sharing the same element as the
        proxy.  This UAS can return its own provisional responses,
        entering into an early dialog with the initiator of the
        request.  The UAS does not have to be a discreet process from
        the proxy.  It could be a virtual UAS implemented in the same
        code space as the proxy.

Such a virtual UAS can return a provisional response, but it is under
the constraint that if it adds a to-tag, it has to create its own
to-tag, because it is creating a separate early dialog.  (And indeed,
it cannot predict the to-tag that the ultimate recipient will choose.)
This limits the usefulness of proxy-generated provisional responses,
as there is no way to correlate them with their sibling "real"
responses as against responses from other forks that were made closer
to the UAC.

But it appears that 8.2.6.2 requires that all provisional responses
other than 100 must have a to-tag:

  However, if the To header field in the request did not contain a
  tag, the URI in the To header field in the response MUST equal the
  URI in the To header field; additionally, the UAS MUST add a tag to
  the To header field in the response (with the exception of the 100
  (Trying) response, in which a tag MAY be present).

As a practical matter, it doesn't make a difference if a virtual UAC
creates a one-use to-tag vs. not creating one at all, as neither
carries any additional information.

Checking for examples, RFCs 2543, 3666, and 4542 have examples of
non-100 provisional responses, and all examples have to-tags.
Checking the Internet-Drafts I have archived, three show examples with
to-tags, and one shows an example without a to-tag.

So it seems a sound conclusion that both the specification and the
archived examples require a to-tag on non-100 provisional responses.
In that light, proxies are allowed to generate 1xx responses for
requests they handle, but all of the 181 responses in
draft-ietf-sipping-service-examples-10 need to have to-tags added.
E.g.:

     F3 (181 Call is Being Forwarded) Proxy -> Alice

     SIP/2.0 181 Call is Being Forwarded
     Via: SIP/2.0/TLS client.atlanta.example.com:5061
      ;branch=z9hG4bK74bf9
      ;received=192.0.2.103
     From: Alice <sips:alice at atlanta.example.com>;tag=1234567
-     To: Bob <sips:bob at biloxi.example.com>
+     To: Bob <sips:bob at biloxi.example.com>;tag=bc2413ce
     Call-ID: 12345600 at atlanta.example.com
     CSeq: 1 INVITE
     Content-Length: 0

Dale

_______________________________________________
Sipping mailing list https://www1.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use sip-implementors at cs.columbia.edu for questions on current sip
Use sip at ietf.org for new developments of core SIP


_______________________________________________
Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use sip-implementors at cs.columbia.edu for questions on current sip
Use sip at ietf.org for new developments of core SIP