[rrg] Brevity, abstraction & detail; Consensus on Bill's divisions and Strategy A?
Robin Whittle <rw@firstpr.com.au> Wed, 25 February 2009 07:23 UTC
Return-Path: <rw@firstpr.com.au>
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 B55673A686C for <rrg@core3.amsl.com>; Tue, 24 Feb 2009 23:23:59 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.171
X-Spam-Level:
X-Spam-Status: No, score=-1.171 tagged_above=-999 required=5 tests=[AWL=0.725, BAYES_00=-2.599, HELO_EQ_AU=0.377, HOST_EQ_AU=0.327]
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 ZTzx57-M35+O for <rrg@core3.amsl.com>; Tue, 24 Feb 2009 23:23:58 -0800 (PST)
Received: from gair.firstpr.com.au (gair.firstpr.com.au [150.101.162.123]) by core3.amsl.com (Postfix) with ESMTP id 754F33A6B6A for <rrg@irtf.org>; Tue, 24 Feb 2009 23:23:57 -0800 (PST)
Received: from [10.0.0.6] (wira.firstpr.com.au [10.0.0.6]) by gair.firstpr.com.au (Postfix) with ESMTP id 694F8175D97; Wed, 25 Feb 2009 18:24:16 +1100 (EST)
Message-ID: <49A4F1AA.8070205@firstpr.com.au>
Date: Wed, 25 Feb 2009 18:22:18 +1100
From: Robin Whittle <rw@firstpr.com.au>
Organization: First Principles
User-Agent: Thunderbird 2.0.0.19 (Windows/20081209)
MIME-Version: 1.0
To: RRG <rrg@irtf.org>
References: <49A3CF70.2020602@firstpr.com.au> <CBF89A2B19964CC497ADC7799434C9A2@ad.redback.com>
In-Reply-To: <CBF89A2B19964CC497ADC7799434C9A2@ad.redback.com>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
Subject: [rrg] Brevity, abstraction & detail; Consensus on Bill's divisions and Strategy A?
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, 25 Feb 2009 07:23:59 -0000
Following on from Tony's message in "Re: [rrg] Ivip map-encap & MHF in draft-irtf-rrg-recommendation-00": http://www.ietf.org/mail-archive/web/rrg/current/msg04546.html Short version: What is meant by "abstract"? Concern about deciding too hastily between what is relevant in an architectural discussion and what is implicitly irrelevant "implementation detail". Likewise, concern about over-emphasising the value of brevity. Can the RRG form rough consensus that Bill's top level taxonomic divisions are adequate? What about consensus that the best solution will be found within the core-edge separation division - Strategy A? Hi Tony, Regarding the scope of the taxonomies and the level of detail in the divisions of the taxonomies you wrote: > |The descriptions of these approaches in 3.3.1.x are exceedingly > |minimal. I don't know why everything has to be so terse. Internet > |drafts are printed on 100% recycled electrons, and I think it is > |important to help people - including those outside the RRG - identify > |and understand the various possible architectures as clearly as > |possible. > > Unfortunately, length and detail do not create clarity. Yes, but clarity can only be achieved with sufficient length and detail. This is assuming clarity means more than simplicity and lack of ambiguity - that a clear description of the architecture or class of possible architectures is sufficient to clearly distinguish it from all other divisions of the solution space. A clear description of a division in the architectural taxonomy will not be excessively brief and will most likely be written by someone who fully understands at least one architecture which fits within that division. > Instead, they frequently obscure it. OK - but do you think any of the text I suggested obscures clarity? If so, please propose simpler versions. With one exception (my attempt to improve A4d, which covers LISP and maybe to some extent APT) all the changes I made concern the architectural principles used in the Ivip proposal. Since I chose and/or devised these architectural principles for my proposal, and since I assert that the previous text (or lack of text) is inadequate for properly describing these architectural principles, I think my suggested text should be the starting point for discussions about how to properly describe these divisions of the taxonomy. The I-D, RFC, recommendation or whatever it will be: http://tools.ietf.org/html/draft-irtf-rrg-recommendation-00 will be an important reference for everyone who is involved in the future architecture of the Net. It results from a dozen or so face-to-face meetings and 6,272 mailing list messages (RAM and RRG, 38Mb including headers). A central feature of the recommendation will be the one or more taxonomies. I think it is essential that the taxonomic divisions and sub-divisions be described clearly - in terms we in the RRG understand and in terms which other people will understand. I think it is rather tortuous using "encoder" and "decoder" when "ITR" and "ETR" are more communicative and accurate, but I understand you are trying to keep the discussion as general as possible. > The point of having broad, overall descriptions is > to first describe the key aspects of the particular segment of the solution > space. These create abstractions that we can actually discuss and > manipulate in some pragmatic fashion without drowning in implementation > detail. While I am all for brainstorming, I am not convinced that much good will come from abstract manipulations of very high level constructs which distinguish the highest level divisions in the solution space, such as the difference between core-edge separation, core-edge elimination and one or more clean-slate approaches which do not involve cores or edges at all. I don't want to get in the way of such discussions, but I think most people in this field went through this stuff two years ago. We are not trying to design an idealised network. We are very tightly constrained by the need for the scalable routing solution to be voluntarily adopted by the great majority of end-user networks which want multihoming, TE and portability - none of whom can be assumed to have any direct concern with the costs born by ISPs due to routing scaling problems. So the solution has to have clear, immediate, benefits for the great majority of such end-user networks, as well as being attractive to most ISPs and to whatever new and existing entities will be involved in running various aspects of the solution. This rules out significant changes to host protocols, operating systems or applications. It rules out having to renumber the network when choosing a new ISP. IMHO it rules out expecting people to abandon IPv4 and adopt IPv6. It rules out changes to the interdomain routing system which would disrupt the BGP DFZ. I think the RRG could probably reach rough consensus now that this rules out all approaches other than core-edge separation schemes - "Strategy A". I am only really interested in the different architectural approaches to core-edge separation. You and Ran Atkinson seem to be wary of drowning in "implementation detail", "engineering detail" etc. But how do you decide what is "implementation detail" and so, presumably unworthy of consideration in an "architectural" discussion. "Pragmatic" surely means discussing things in a way which considers all the potential barriers to success - which involves a great deal of detail about challenges and potential solutions. This goes right down to bits, bytes, milliwatts, nanoseconds and exact methods of achieving some pretty tricky things: AKA "implementation details". I think this low valuation of "engineering detail" is not shared by many people who have something important to contribute to a scalable routing solution. This results in curious outcomes such as Dino occasionally writing to the list, as if his tail was between his legs, discussing something he considers important in an apologetic manner, because it seems to be an "implementation detail". More often, I suspect, people don't write at all. Please consider the new text I proposed in my message: http://www.ietf.org/mail-archive/web/rrg/current/msg04535.html For instance A4h, which is intended to create a proper place in the taxonomy for the architectural elements which I chose for Ivip's encapsulation approach. A successful encapsulation architecture must involve a secure, scalable approach to handling PMTUD problems. So I think the two things need to be described together. I assert that this A4h text, or something like it, is needed to properly describe the division within the A4 space which encompasses the encapsulation and PMTUD architecture I chose for Ivip. A4h is exclusive thing to Ivip - anyone can use it. I also assert that A4h is different enough from A4d (an attempt to describe a division in the architectural taxonomy which encompasses LISP's "statefull" approach) to warrant a separate place in the taxonomy. For instance, for almost all traffic packets, A4h avoids the use of UDP or any other headers apart from IP-in-IP. A4h also maintains for all packets the use of the outer source address being that of the originating host - which makes it very easy to extend border filtering on source address to decapsulated packets, as explained in my proposed replacement text for Bill's short sentence on "Border filtering". I think I understand your desire for abstract thinking in order to find new ideas, new combinations of existing ideas etc. - and to avoid being bogged down in existing combinations and ways of thinking. However, since I think you don't contribute much "abstract" discussion to the list, but frequently urge me and others to write and think with greater abstraction or at a more "architectural" level, I am unsure what it is you want. Perhaps you could give some examples - concrete enough so I can understand them! > Yes, once we have made the key architectural decisions at the > uppermost layers of the solution space, then we can and should > recurse downwards into more detail, but until then, the details > simply serve as noise in conflict with any insights and > generalizations that we might have. I don't understand this at all. Bill's taxonomy casts a pretty wide net. It is clear that a number of teams and individuals looked at the whole scene two or so years ago and concluded that the only way forward was a core-edge separation scheme. I think this is the correct decision. Initially, that meant Map-Encap. Now it also includes Map-Translate (Six/One Router) and Map-Forward using modified IP headers. This resulted in a handful of architectures with some things in common and many significant differences. Only by discovering differences between actual architectures that someone is proposing (or perhaps has just dreamed up but does not seriously propose) can we determine the need of divisions in the taxonomy. This gives rise to the need for suitably detailed descriptions of those divisions. These details are vital and in no way resemble "noise". You may choose to apply a "higher" (more "abstract", less "detailed") distinction between what constitutes a good description of a significant division between sub-spaces of the total design space than someone else does. However, if a designer or a proponent of a particular architecture asserts that their architecture needs its own division in the taxonomy, and/or if they assert that they need a different, perhaps more detailed, description than you consider adequate, then I suggest that the designer's suggested text be sympathetically considered for inclusion in the draft report in full. > |The taxonomy should clearly cover every seriously proposed > |architecture - and should probably not cover anything else without > |noting that such an architecture may be possible, but has not yet > |been proposed. > > I strongly disagree. The point of the taxonomy is to cover as much of the > solution space as we can possibly see. Specific proposals are only points > in this space and our top-down decision making should have us first try for > consensus at the broadest possible levels of abstraction. OK - I agree. I agree with the overall divisions in Bill's taxonomy. Does anyone disagree with these divisions? Should some be removed, added or described in different ways? My guess is that there would be good consensus in the RRG that the overall divisions in Bill's taxonomy are adequate. Then the question becomes how to sub-divide each of those divisions. However, if we also have consensus that the best practical solution will certainly be a core-edge separation scheme, then we should be concentrating our attention on Strategy A. It doesn't really matter if we haven't delineated every architectural option in some other Strategy N - as long as we have established that any architecture meeting the criteria of Strategy N is a non-starter, for instance due to it being impossible to introduce voluntarily, for instance due to its need for new stacks, APIs and/or applications. In that process of discussing subdivisions within the taxonomy, I suggest caution in imposing restrictions regarding brevity or degree of abstraction. If someone who has devised or chosen an architecture, or some architectural principle, asserts that the taxonomy needs to be changed in order to clearly accommodate that architecture, then I think there would need to be some pretty careful discussion and broad support from the RRG before it was decided that their proposed text was too long, too detailed or unnecessary. Regards - Robin
- [rrg] Ivip map-encap & MHF in draft-irtf-rrg-reco… Robin Whittle
- Re: [rrg] Ivip map-encap & MHF in draft-irtf-rrg-… Tony Li
- [rrg] Brevity, abstraction & detail; Consensus on… Robin Whittle