Re: [rrg] Various misunderstandings
RJ Atkinson <rja.lists@gmail.com> Wed, 24 February 2010 13:41 UTC
Return-Path: <rja.lists@gmail.com>
X-Original-To: rrg@core3.amsl.com
Delivered-To: rrg@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id EF9AE28C14C for <rrg@core3.amsl.com>; Wed, 24 Feb 2010 05:41:26 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.449
X-Spam-Level:
X-Spam-Status: No, score=-2.449 tagged_above=-999 required=5 tests=[AWL=0.150, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8bMWEsCXZwSB for <rrg@core3.amsl.com>; Wed, 24 Feb 2010 05:41:25 -0800 (PST)
Received: from qw-out-2122.google.com (qw-out-2122.google.com [74.125.92.24]) by core3.amsl.com (Postfix) with ESMTP id 6787A3A7CA3 for <rrg@irtf.org>; Wed, 24 Feb 2010 05:41:25 -0800 (PST)
Received: by qw-out-2122.google.com with SMTP id 8so980685qwh.7 for <rrg@irtf.org>; Wed, 24 Feb 2010 05:43:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:content-type:mime-version :subject:from:in-reply-to:date:content-transfer-encoding:message-id :references:to:x-mailer; bh=SkD8V0fRwdIAzeS8truB4sVHvT+TUy5VBkpKKShCIKo=; b=j57Ex/8vn4LhEGSX5sIDbK5HtXG8iaivae8sNbPStVC9/qLvQmJrJus9Bs238pQIii y+3r/Z2KoY9Kq6JdOSTYhZjzCLhXezA/iCbrK847xqFNYX2fS1wKDk3/dZqon4FagidS YOO9AqXeTjBmYXqQVb14Qjo/ms5Jo+oQSgPIg=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; b=ZgRrByuVAfnUtnhk/n26cxS6d/Z1Ms0tCTMI+C3afUuxEekg0RIS3CswphW5w60XzC WQwPX73RmWKUZSauqxaLnvPbtUcYyVHau/IpAAR34clzjMpAEGs9T5nEG2whwZsRKnys Vncp5dSeQ55VjrInIowcGn7MNaF6X7mA7yTJE=
Received: by 10.224.7.145 with SMTP id d17mr7505918qad.125.1267019011636; Wed, 24 Feb 2010 05:43:31 -0800 (PST)
Received: from ?10.30.20.5? (pool-70-104-194-109.nrflva.fios.verizon.net [70.104.194.109]) by mx.google.com with ESMTPS id 21sm277295qyk.5.2010.02.24.05.43.29 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 24 Feb 2010 05:43:30 -0800 (PST)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Apple Message framework v1077)
From: RJ Atkinson <rja.lists@gmail.com>
In-Reply-To: <4B84ADE5.2070300@firstpr.com.au>
Date: Wed, 24 Feb 2010 08:43:28 -0500
Content-Transfer-Encoding: 7bit
Message-Id: <87535B75-14EB-4742-A02E-0FED5FDD1413@gmail.com>
References: <82128A5F-ABE8-4448-AEF7-97480C98291E@gmail.com> <4B84ADE5.2070300@firstpr.com.au>
To: IRTF Routing RG <rrg@irtf.org>
X-Mailer: Apple Mail (2.1077)
Subject: Re: [rrg] Various misunderstandings
X-BeenThere: rrg@irtf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: IRTF Routing Research Group <rrg.irtf.org>
List-Unsubscribe: <http://www.irtf.org/mailman/listinfo/rrg>, <mailto:rrg-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/rrg>
List-Post: <mailto:rrg@irtf.org>
List-Help: <mailto:rrg-request@irtf.org?subject=help>
List-Subscribe: <http://www.irtf.org/mailman/listinfo/rrg>, <mailto:rrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Feb 2010 13:41:27 -0000
On 23 Feb 2010, at 23:41 , Robin Whittle wrote: > Short version: I have incorrectly stated that ILNP requires > upgraded applications. I now understand ILNP > works with ordinary IPv6 applications. So far, so good. :-) Thank you. > Since > many or most applications are IPv4 only, this > still means ILNP requires upgrades to most > applications. That is still not correct. ILNPv4 works fine with ordinary IPv4 applications using existing APIs -- such as BSD Sockets -- no changes required. Also, and separate from the sentence above, many APIs are neutral and work equally well with IPv4 or IPv6. The claim that "many or most applications are IPv4 only" is simply not true today. It probably was true 15 years ago, but the situation is quite different now. I don't have time to do a full tutorial on networking application authoring, but some quick highlights below I hope will help bring greater understanding of the current real-world situation. 1) Java applications Virtually ALL Java applications are protocol-independent, oblivious to whether IPv4 or IPv6 is in use. Those same applications work unchanged over ILNPv4 and ILNPv6 -- and are equally oblivious as to whether IP or ILNP is in use. A huge percentage of web-based applications are written in Java. Web-based applications are probably the most numerous single kind of application deployed today. 2) BSD Sockets/C applications The BSD Sockets extensions for IPv6 added protocol-independent constructs, including, but not limited to, getaddrinfo() and freeaddrinfo(). These were originally defined in RFC-2133, and later updated by RFC-2553, and then by RFC-2553. Protocol independence was provided for in the first of these RFCs, and was retained in subsequent updates to these RFCs. RFC-2133 was published in 1997 and was already widely available prior to publication. Virtually all applications written in the last ~15 years, which is most applications in use today, have had these APIs available. Many applications use these protocol-independent constructions with BSD Sockets, for the practical reason that using them simplifies the application source code and also makes the application more robust. Again, and just to be crystal clear, applications written to the BSD Sockets using protocol-independent (e.g. IPv4 or IPv6 underneath) also work fine over either ILNPv4 or ILNPv6 -- without requiring any changes, and generally without even awareness that ILNP is in use underneath rather than IP. 3) Javascript/ECMAscript As with Java, which is actually unrelated to these as near as I can tell, this is in wide use with web pages and has a protocol- independent API concept (using URLs/URIs rather than using IP addresses or SockAddrs in the API). > Ran insists ILNP is not a Core-Edge Elimination > architecture but does not argue why this is the > case, or why the CEE/CES distinction is non- > architectural or for some other reason invalid. See RRG list archives for discussion of why the "distinction" is neither helpful nor meaningful. > Ran insists that ILNP is not "revolutionary". > I think ILNP and the other CES architectures could > fairly be considered "revolutionary", since they > require all hosts to adopt the "Locator / Identifier > Separation" naming model - and for other reasons. Hmm. ILNP doesn't require applications to change, and ILNP-capable nodes always retain full classic IP capabilities. Those 2 facts directly contradict the suggestion that ILNP is anything other than "evolutionary". > You haven't argued why I am wrong to call ILNP a CEE architecture. > I believe it is and I will continue to state this unless you can > convince me otherwise. At least in the USA, people have the right to state anything they wish to state, no matter how incorrect or meaningless their statement(s) might be. > You still haven't argued why ILNP doesn't fit the CEE definition in > or why the CEE/CES distinction is non-architectural, > unimportant or whatever. First, the RRG is not a philisophical debating society. It is supposed to be a forum for professional discussions of topics relating to routing research. No one is required to respond to silly or incorrect ideas. I don't read every note posted to the list, as I have a day job (and RRG is not part of my day job). Second, as the RRG list archives show, I have in fact outlined why the CEE/CES distinction is not meaningful or helpful. Other senior folks (e.g. Joel, Lixia, and I believe JNC) concur with that assessment -- in fact, I think one of them made the observation long before I did (so I was really agreeing with them :-). > Do you anticipate such an arrangement for ILNP too? I don't see any requirement to create an ILNP-specific API. As I have said all along, I believe that *no matter what happens in RRG*, the trend in the applications world will be to prefer protocol-independent APIs. Virtually all Java applications use those today (and all along the Java lifetime). Today, most C applications are using the protocol-independent constructions of the BSD Sockets API. > Most applications today are IPv4-only, so for everyone to adopt ILNP, > most applications must be rewritten. Both assertions above are untrue, as I have discussed above. > ILNP, like other CEE architectures, only supports IPv6 Untrue. See above. > - and only > provides substantial benefits to adoptors (portability, multihoming > and inbound TE) on all their communications once essentially every > host and network on the IPv6 Internet adopts it. Disagree. See the various ILNP papers and I-Ds for counter examples. > Only then can > end-user networks which need these benefits get them without PI space > - so ILNP requires essentially 100% adoption by all IPv6 hosts and > networks before it can provide substantial benefits to adopters or to > scalable routing. Disagree. See the various ILNP papers and I-Ds. > I assume this would only be done for sessions between two ILNP-hosts. > If so, how does the router know this is the case? See the several published ILNP papers for examples of ways that a router can learn, on a per-session basis, whether ILNP is in use for that session (or not in use). > I would really appreciate you citing your sources, rather than > expecting readers to figure out who you are ... criticising. I have tried hard to avoid criticising *any* person. I have disagreed with certain ideas that have been put forward. (There are also some ideas put forward that I either agree or disagree with, but haven't bothered to send email about.) > Yes, but when you write "classic IP" you are referring to IPv6, which > is a revolutionary change from the IPv4 Internet which everyone uses > and which is the only Internet with a routing scaling problem. IPv6 and IPv4 are architecturally identical. As someone who has worked on 4 different IPv6 implementations so far, there is no meaningful difference between IPv4 and IPv6 except for the change in the IP address size. The idea that IPv6 is "revolutionary" sounds silly. > 1 - In order to deliver substantial benefits to adoptors or to > routing scalability, they require essentially all hosts to adopt > the "Locator / Identifier Separation" naming structure, which > is revolutionary by any definition. This would be the biggest > change to Internet communications since 1980. Disagree with most of the above. > 2 - They all require adoption of IPv6, which is itself > revolutionary since IPv6 is not backwards compatible with > IPv4. Also disagree. > 3 - They all require all hosts to updates their stacks - and some > require all applications be updated too. Disagree that a stack change by itself makes a proposal "revolutionary". Major vendors have been known to push major stack changes out as part of ordinary operating system bug-fix/patch releases in modern days, unlike the practices of 15 or 20 years ago. I believe that it is reasonable to believe that stack changes will be pushed out and deployed provided the business incentives line up (which, again, I believe is true, at least for ILNP, and possibly for other ideas). Other folks, apparently including Robin, disagree with this. I haven't seen any convergence within the RG on this narrow question (whether stack changes are reasonable or not) over the past several years. [I don't have the spare time for lengthy email debates, and I think I've made my key points in the above email. I apologise for the undue length of this note, but I did not have the time to write a more concise note. So I'll now go back under my rock for a while.] Yours, Ran Atkinson
- Re: [rrg] Various misunderstandings RJ Atkinson
- Re: [rrg] Various misunderstandings - ILNP, CEE/C… Robin Whittle
- Re: [rrg] Various misunderstandings RJ Atkinson
- Re: [rrg] Various misunderstandings - ILNP; CEE/C… Robin Whittle