[Sip] Does retargeting belong on the list of Evil SIP Ideas?

Dean Willis <dean.willis@softarmor.com> Tue, 23 November 2004 18:17 UTC

Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA05390 for <sip-web-archive@ietf.org>; Tue, 23 Nov 2004 13:17:49 -0500 (EST)
Received: from megatron.ietf.org ([132.151.6.71]) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CWfIN-0005Md-05 for sip-web-archive@ietf.org; Tue, 23 Nov 2004 13:21:43 -0500
Received: from localhost.localdomain ([127.0.0.1] helo=megatron.ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CWfB9-0003PH-OV; Tue, 23 Nov 2004 13:14:15 -0500
Received: from odin.ietf.org ([132.151.1.176] helo=ietf.org) by megatron.ietf.org with esmtp (Exim 4.32) id 1CWf4E-0001fL-A3 for sip@megatron.ietf.org; Tue, 23 Nov 2004 13:07:06 -0500
Received: from ietf-mx.ietf.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id NAA04730 for <sip@ietf.org>; Tue, 23 Nov 2004 13:07:02 -0500 (EST)
Received: from nylon.softarmor.com ([66.135.38.164]) by ietf-mx.ietf.org with esmtp (Exim 4.33) id 1CWf7w-0003pG-2D for sip@ietf.org; Tue, 23 Nov 2004 13:10:56 -0500
Received: from [63.110.3.165] ([64.100.183.165]) (authenticated bits=0) by nylon.softarmor.com (8.12.11/8.12.11) with ESMTP id iANI7Tqq030564 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <sip@ietf.org>; Tue, 23 Nov 2004 12:07:37 -0600
Message-ID: <41A37C24.8030006@softarmor.com>
Date: Tue, 23 Nov 2004 12:06:28 -0600
From: Dean Willis <dean.willis@softarmor.com>
User-Agent: Mozilla Thunderbird 0.9 (Windows/20041103)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: "'sip@ietf.org'" <sip@ietf.org>
References: <24EAE5D4448B9D4592C6D234CBEBD597089962@stntexch03.cis.neustar.com>
In-Reply-To: <24EAE5D4448B9D4592C6D234CBEBD597089962@stntexch03.cis.neustar.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-Spam-Score: 0.0 (/)
X-Scan-Signature: e8a67952aa972b528dd04570d58ad8fe
Content-Transfer-Encoding: 7bit
Subject: [Sip] Does retargeting belong on the list of Evil SIP Ideas?
X-BeenThere: sip@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Session Initiation Protocol <sip.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:sip@ietf.org>
List-Help: <mailto:sip-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/sip>, <mailto:sip-request@ietf.org?subject=subscribe>
Sender: sip-bounces@ietf.org
Errors-To: sip-bounces@ietf.org
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 41c17b4b16d1eedaa8395c26e9a251c4
Content-Transfer-Encoding: 7bit

I try to keep a running list of things  that turned out to be a royal 
pain that needs (or needed) fixing. Some of these things sounded cool at 
first, and I championed them.  Others I never did like. Some of these 
things I'm not allowed to suggest deprecating anymore -- we took a hum 
on forking a few meetings back. One of these days I'm going to get this 
list better organized and  post it someplace more persistent in the hope 
that it may assist in avoiding repeptition of mistakes. And someday, 
perhaps we can do something about some of these quirks.

To-date, I believe the Evil List includes:

1) Replacing the Request-URI at each hop while routing was Evil. We 
fixed this with Loose Routing mode, which is still slightly Evil.

2) Abusing To and From to indicate branches is Evil. We should have left 
these as real endpoint identifiers.

3) Forking is Evil.

4)  Allowing (and requiring)  responses to carry a payload with more 
meaning than "I acknowledge having received that request" is Evil. Since 
we can't reject a response, we can't deal with big responses and can't 
negotiate what they carry. Acknowledgement and response are different 
beasties -- one is transport, the other is application, and we need to 
understand the difference.

5) The three-message INVITE transaction model and its dependence on 
payload in the response is Evil.

6) The two-message non-INVITE transaction model and its interaction with 
retransmission and hop-by-hop cascade (See Sparks'  non-invite analysis) 
is Evil.

7) Building transport state and reliability into the application state 
and requiring a transport protocol extension for every new application 
semantic is Evil.

8) Using z9hG4bK on via fields rather than a negotiated mechanism (like 
maybe a version) is Evil.

9) Jon argues that not requiring SIPS to be end-to-end is Evil. I think 
the jury is still out on this one, but we're still deliberating.

10) Provisional responses, as currently constructed, whether reliable or 
non-relaible, are Evil. This may be redundant with the NIT discussion.

11)  I believe I'm coming to believe that "retargeting",  i.e. changing 
a request in a proxy such that the entity to which it is delivered  has 
a different assertable identity than the identity to which the request 
was originally addressed,  is Evil. Perhaps it could be mitigated by a 
assertion of transitivity: "I, the proxy identified herein, do assert 
that I have altered the target of this request according to local 
policy, and you can either deal with it or go away." Oh wait, that's the 
302 response . . . Perhaps this is redundant with "Forking is evil" as 
forking is just a special case of retargeting. Or perhaps forking and 
retargeting are both special cases of "exploders" and could both be 
dealt with using the consent framework . . .

Sometimes I wonder if  the use of UDP was fundamentally Evil.

If I've missed something blatantly Evil, please comment back, and I may 
add it to the list I hope to post someplace.

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