On 04/25/2011 10:55 AM, Iñaki Baz Castillo wrote:
> I agree, but I cannot see clear why a 404 is not better than a 604.
> In fact IMHO both mean the same (as a 404 must only be replied by a
> server responsible for the destination domain, or by a proxy trying
> to resolve a non existing domain as in this thread).
My interpretation, which I readily concede may differ from
that of others, is that 6xx and 4xx are different.
IMHO, 6xx responses are globally authoritative in that
the chance of using the same R-URI to perform a lookup somewhere
else does not have any higher probability of success. 4xx response
are repairable; if you can't get to the resource at one server,
maybe another server can help.
I will give you two examples.
1) Assume that an outbound SIP proxy gets a tel URI to perform
routing on. It converts the tel URI using ENUM to a
sip URI. Now, if ENUM returns a non-existent domain, then
using the same tel URI somewhere else to do an ENUM lookup
will not magically result in a new sip transform. In such a
case, a 6xx-class is more appropriate.
Now, assume that the ENUM process returned a routable sip URI
and the outbound proxy is able to contact the UAS responsible
for the URI. If the contacted UAS issues a 603 (Decline),
then using the same tel URI to query another SIP server will not
magically result in a new routable sip URI.
2) Assume that the US Library of Congress has implemented a
SIP event package that allows people to issue SUBS requests
against the books and be notified when a new edition is
released. They have defined a process whereby a ISBN URN
can be transformed to a sip URI. When the US Library of
Congress get a SUBS request with an invalid URN number,
what should it do? Issue a 4xx or a 6xx? IMHO, a 6xx is
more appropriate here since ISBN numbers are issued by a
national organization (NISO/ANSI/ISO 2108:1992) and
presumably the US Library of Congress works closely with
this organization and therefore has a knowledge about all books
published in the US.
Trying the request elsewhere with the same ISBN number will not
make a non-existent book magically appear.
>> Case 1: The forking is done at the outbound proxy, and let's
>> assume that a location server was contacted and it responds with
>> multiple URIs for the AoR, one of which is a URI rooted in the
>> "invalid- domain.net". Here, the correct behaviour would be for
>> the proxy to generate a 408 on the branch that included the
>> "invalid-domain.net" host.
>
> I assume you mean 404 :)
No, I meant 408 (c.f. step 7 of section 16.6, rfc3261), last
paragraph. Here, the client transaction will report failure
since invalid-domain.net does not exist.
Now, the proxy itself may end up sending a 404 upstream, but
the client transaction corresponding to invalid-domain.net will
most probably result in a 408.
> 6XX responses are painful in many cases. In fact, I do know about
> some proxies which, optionally, ignore the special behavior/meaning
> of 6XX responses. Things work better without 6XX (at least under my
> experience).
Clearly we had something in mind when we put the 6xx response
code (http stops at 5xx-class). Unfortunately, I do not remember
what we had in mind (maybe someone else can). If 6xx is not serving
its purpose, then maybe it should be deprecated. But that is a
discussion for another list, not this one.
Thanks,
- vijay
--
Vijay K. Gurbani, Bell Laboratories, Alcatel-Lucent
1960 Lucent Lane, Rm. 9C-533, Naperville, Illinois 60566 (USA)
Email: vkg@{bell-labs.com,acm.org} / [email protected]
Web: http://ect.bell-labs.com/who/vkg/
_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors