Re: [homenet] Configuration must not be carried by the routing protocol
Ole Troan <otroan@employees.org> Wed, 26 June 2013 19:13 UTC
Return-Path: <otroan@employees.org>
X-Original-To: homenet@ietfa.amsl.com
Delivered-To: homenet@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5330211E812D for <homenet@ietfa.amsl.com>; Wed, 26 Jun 2013 12:13:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JD0ZdGY+1bkc for <homenet@ietfa.amsl.com>; Wed, 26 Jun 2013 12:13:45 -0700 (PDT)
Received: from banjo.employees.org (banjo.employees.org [IPv6:2001:1868:205::19]) by ietfa.amsl.com (Postfix) with ESMTP id F234411E812B for <homenet@ietf.org>; Wed, 26 Jun 2013 12:13:44 -0700 (PDT)
Received: from dhcp-10-61-101-10.cisco.com (64-103-25-233.cisco.com [64.103.25.233]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: otroan) by banjo.employees.org (Postfix) with ESMTPSA id EBA475E5C; Wed, 26 Jun 2013 12:13:42 -0700 (PDT)
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
From: Ole Troan <otroan@employees.org>
In-Reply-To: <878v1yqhje.wl%jch@pps.univ-paris-diderot.fr>
Date: Wed, 26 Jun 2013 15:13:39 -0400
Content-Transfer-Encoding: quoted-printable
Message-Id: <0E223B9A-F615-4E46-971C-84A3117AA27A@employees.org>
References: <878v1yqhje.wl%jch@pps.univ-paris-diderot.fr>
To: Juliusz Chroboczek <jch@pps.univ-paris-diderot.fr>
X-Mailer: Apple Mail (2.1508)
Cc: "homenet@ietf.org Group" <homenet@ietf.org>
Subject: Re: [homenet] Configuration must not be carried by the routing protocol
X-BeenThere: homenet@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: <homenet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/homenet>, <mailto:homenet-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/homenet>
List-Post: <mailto:homenet@ietf.org>
List-Help: <mailto:homenet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/homenet>, <mailto:homenet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Jun 2013 19:13:46 -0000
what do we need for distributing configuration information between routers? a distributed database. what's a routing protocol? a distributed database. do we need to invent a separate distributed database for each class of information? cheers, Ole On Jun 25, 2013, at 12:30 , Juliusz Chroboczek <jch@pps.univ-paris-diderot.fr> wrote: > Dear editors, dear group, > > After the recent thread on this list, and a number of private mail > exchanges, I'm under the impression that there might be a consensus > that configuration information should not be carried over the routing > protocol. In this mail, I argue that > > configuration information should be carried by a protocol separate > from the routing protocol. > > We should therefore make serious efforts to ensure that nothing in the > arch documents prevents carrying configuration information in > a separate protocol. Ideally, we should include language in the arch > document that encourages such a separate implementation, but I'm not > sure if we can build consensus at this point. > > This mail is structured as follows: > > 1. advantages of carrying configuration information over the routing protocol; > 2. advantages of carrying configuration information over a separate protocol; > 3. possible configuration protocols; > 4. conclusions. > > > 1. Advantages of carrying configuration information over the routing > protocol > > I've heard the following advantages claimed for conflating the two functions: > > (i) it is not necessary to implement a new flooding protocol, which > saves space on resource-limited routers; > (ii) all routers participate in the routing protocol, while a new > configuration protocol requires ensuring that all routers forward > the configuration information. > > As I've shown with AHCP[1,2], however, a reasonably efficient, purely > user-space, increasing diameter flooding protocol can be implemented > in a hundred lines of C code or so, and takes just a few kB of flash > and a few bytes of memory; this is why I find point (i) above > unconvincing. Additionally, since homenet is planning to mandate the > implementation of a new routing protocol on all home routers, mandating > a configuration forwarding daemon does not break compatibility any further. > > > 2. Advantages of separating configuration from routing > > There are significant advantages to distributing configuration > information over a separate protocol. > > (i) distributing configuration information on a simple dedicated > protocol makes monitoring and trouble-shooting easier; > (ii) the architecture is more robust -- issues with the routing protocol > do not prevent configuration information from being distributed; > (iii) should new requirements arise, it is possible to reuse most of the > homenet architecture with a new routing protocol; > (iv) should new requireent arise, it is possible to reuse most of the > homenet architecture while running multiple routing protocols. > > Point (i) is important -- experience with DHCPv4 and RA shows how easy > it is to run into issues with configuration protocols, and how useful > it is to be able to identify and decode configuration packets without > having a full understanding of a complex routing protocol. > > Point (ii) is probably of secondary interest, since all implemen- > tations of link-state protocols are perfectly robust and completely > debugged. However, we all know the pain of recovering a router that > has lost its IP addresses, anything that avoids such pain should be > welcome. > > Points (iii) and (iv) are very important to me. I firmly believe that > once homenet starts being deployed, smart amateurs are going to start > building topologies that we don't even dream of, using link > technologies that we never heard of. Most probably, the homenet > routing protocol can then be extended to deal with the new topologies; > but before this happens it will be important that people can reuse the > homenet architecture with a different protocol. Hence, it is vitally > important that the homenet architecture be modular enough to allow > switching routing protocols. > > > 3. Possible configuration protocols > > 3.1 RA > > RAs are ignored by routers, and rightly so -- RAs have no loop > avoidance mechanism, and using RAs to configure routers leads to > a number of problems that I believe to be unsolvable. Extending the > RA protocol to be suitable for configuring routers is probably not > worth the hassle, and will lead to confusion. > > 3.2 DHCPv6 > > There is an IETF standard configuration protocol, and that's DHCPv6. > Other people on this list are more knowledgeable about DHCPv6, so I'll > refrain from making a fool of myself; however, I'll take the risk of > claiming that DHCPv6 (probably with extensions) looks like an > eminently suitable protocol for configuring homenet routers. > > 3.3 A new protocol > > In the Babel experiment, I have designed a new protocol, which > I called AHCP[1,2]. Since AHCP is designed to run before routing is > functional, it makes minimal assumptions about the network -- it only > requires each interface to have a link-local IPv6 address and to be > able to participate in link-local multicast traffic. An AHCP client > implements an increasing diameter search for an AHCP server. > > The full AHCP implementation (client+server+forwarder, with support > for Linux and BSD Unix), consists of 3500 lines of C and 350 lines of > bourne shell code, and compiles to less than 40 kB. Subset implemen- > tations are possible. We have found AHCP to be very robust and > reasonably fast even in the presence of massive packet loss. The > traffic generated is very reasonable, even when simultaneously > rebooting the whole network. > > I am not pushing AHCP as the homenet configuration protocol, since > I have good hope that a variant of DHCPv6 can be used. However, I do > hope that the results of the AHCP experiment can serve as useful input > for this group. > > > 4. Conclusions > > For the reasons outlined above, it is my firm opinion that configuration > information should not be carried by the Homenet routing protocol. Homenet > routers should either be configured by a variant of DHCPv6, or a new > protocol should be designed. > > The arch document should be carefully reviewed, and anything that > risks impeding such a solution must be eliminated. Ideally, the arch > document should encourage separating configuration distribution from > routing. > > Should DHCPv6 be finally chosen, I will be glad to collaborate on writing > a tiny DHCPv6 daemon suitable for homenet. (And I have a fair amount > of experience with writing tiny network daemons to run on 8MB routers.) > > > [1] http://tools.ietf.org/html/draft-chroboczek-ahcp > [2] http://www.pps.univ-paris-diderot.fr/~jch/software/ahcp/ > _______________________________________________ > homenet mailing list > homenet@ietf.org > https://www.ietf.org/mailman/listinfo/homenet
- Re: [homenet] Configuration must not be carried b… ietfdbh
- Re: [homenet] Configuration must not be carried b… Acee Lindem
- Re: [homenet] Configuration must not be carried b… Leddy, John
- Re: [homenet] Configuration must not be carried b… Michael Richardson
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- [homenet] Configuration must not be carried by th… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Michael Richardson
- Re: [homenet] Configuration must not be carried b… Dave Taht
- Re: [homenet] Configuration must not be carried b… Tim Chown
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Teco Boot
- Re: [homenet] Configuration must not be carried b… Lorenzo Colitti
- Re: [homenet] Configuration must not be carried b… Mark Townsley
- Re: [homenet] Configuration must not be carried b… Mikael Abrahamsson
- Re: [homenet] Configuration must not be carried b… Michael Thomas
- Re: [homenet] Configuration must not be carried b… Teco Boot
- Re: [homenet] Configuration must not be carried b… Teco Boot
- Re: [homenet] Configuration must not be carried b… Ted Lemon
- Re: [homenet] Configuration must not be carried b… Henning Rogge
- Re: [homenet] Configuration must not be carried b… Mark Townsley
- Re: [homenet] Configuration must not be carried b… Michael Thomas
- Re: [homenet] Configuration must not be carried b… Ted Lemon
- Re: [homenet] Configuration must not be carried b… David R Oran
- Re: [homenet] Configuration must not be carried b… Michael Thomas
- Re: [homenet] Configuration must not be carried b… Ole Troan
- Re: [homenet] Configuration must not be carried b… Jim Gettys
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Juliusz Chroboczek
- Re: [homenet] Configuration must not be carried b… Michael Thomas
- Re: [homenet] Configuration must not be carried b… Henning Rogge
- Re: [homenet] Configuration must not be carried b… Teco Boot