Re: [v6ops] Up-leveling Transition Coexistence

Mark Townsley <mark@townsley.net> Mon, 19 December 2011 08:31 UTC

Return-Path: <mark@townsley.net>
X-Original-To: v6ops@ietfa.amsl.com
Delivered-To: v6ops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8C43221F89BA for <v6ops@ietfa.amsl.com>; Mon, 19 Dec 2011 00:31:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.999
X-Spam-Level:
X-Spam-Status: No, score=-2.999 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, J_CHICKENPOX_13=0.6, RCVD_IN_DNSWL_LOW=-1]
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 lXcF91V8BbVl for <v6ops@ietfa.amsl.com>; Mon, 19 Dec 2011 00:31:34 -0800 (PST)
Received: from mail-ee0-f44.google.com (mail-ee0-f44.google.com [74.125.83.44]) by ietfa.amsl.com (Postfix) with ESMTP id 2246F21F891D for <v6ops@ietf.org>; Mon, 19 Dec 2011 00:31:33 -0800 (PST)
Received: by eekc14 with SMTP id c14so3819999eek.31 for <v6ops@ietf.org>; Mon, 19 Dec 2011 00:31:33 -0800 (PST)
Received: by 10.213.105.212 with SMTP id u20mr4729757ebo.24.1324283492870; Mon, 19 Dec 2011 00:31:32 -0800 (PST)
Received: from ?IPv6:2a01:e35:2ef3:a3f0:66b9:e8ff:fecc:84b0? ([2a01:e35:2ef3:a3f0:66b9:e8ff:fecc:84b0]) by mx.google.com with ESMTPS id a60sm41811537eeb.4.2011.12.19.00.31.30 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 19 Dec 2011 00:31:30 -0800 (PST)
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset="us-ascii"
From: Mark Townsley <mark@townsley.net>
In-Reply-To: <867F4B6A1672E541A94676D556793ACD0CB44B264D@MOPESMBX01.eu.thmulti.com>
Date: Mon, 19 Dec 2011 09:31:29 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <93E30FA4-E814-4AA3-B3FD-52CD4C1AB23F@townsley.net>
References: <D61C0046-1B8D-4941-988F-F183CA10D0F4@townsley.net> <867F4B6A1672E541A94676D556793ACD0CB44B264D@MOPESMBX01.eu.thmulti.com>
To: Wuyts Carl <Carl.Wuyts@technicolor.com>
X-Mailer: Apple Mail (2.1084)
Cc: "v6ops@ietf.org Operations" <v6ops@ietf.org>
Subject: Re: [v6ops] Up-leveling Transition Coexistence
X-BeenThere: v6ops@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: v6ops discussion list <v6ops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/v6ops>, <mailto:v6ops-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/v6ops>
List-Post: <mailto:v6ops@ietf.org>
List-Help: <mailto:v6ops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/v6ops>, <mailto:v6ops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Dec 2011 08:31:35 -0000

On Dec 19, 2011, at 8:35 AM, Wuyts Carl wrote:

> Some feedback on the below, being a CPE vendor for residential market.
> First note that, although our main deployment is in the residential CPE market, we're not present in retail, so maybe my view is "spoiled" due to this.
> 
> I don't believe in this configuration-oriented approach at all as it is mainly to complicated or not really a possible approach.  There are 4 possibilities listed in this scenario, where we would have to pick one from, but none of them are really suitable I think, for sure not the one where you'd have to run a "couple" of configuration attempts with timeouts etc" or "have to shut down intfs based upon ...".
> Although some of these can possibly covered through some scripting, this is nothing really one should force upon a CPE, in fact, to no other IP device either.  Let's stick to standard behavior, threating an IP intf as it should be, not try to enforce some "extra's" on top of them.  An IP intf gets enabled, and can start forwarding traffic if the forwarding is allowed upon it (so routes availabe etc).  If you want to accomplish the below, I think you've to force lots of policy on top of the present CPE's capabilities in this area, so a no-go I'd say.  Please don't mix a residential CPE with a full-blown business router.  Again this seems to be an attempt of enforcing some stuff upon the CPE, to be avoided I'd say (again).

Fully agree that the "configuration-oriented" approach is very problematic. Unfortunately, this was the path that 6204-bis seemed to have been headed down. I hope we're changing that course.

> 
> I also see some replies on "what if multiple transition scenario's are being used at the same time, combining DSLite with 4over6 or whatever".  This is of course possible in multi-homed scenario's but again here the same applies.  Let's try to keep normal IP behavior in place, read forwarding-oriented approach, not try to enforce all kind of tricky things.  As our customers are operators, not end-users, dual-homed scenario's are not our main target, but I can't see any added value looking into this "configuration-oriented" approach.

I think you are saying the "forwarding-oriented" approach is preferred, given the alternative being the "configuration-oriented" approach. However, perhaps you are saying you really want to do "none of the above". 

Problem is, you have to choose one or the other if you are going to support DS-Lite or 6rd. Take your pick. Neither is not an option. 

- Mark

> 
> My 2 cents
> Regs
> Carl
> 
> 
> 
> 
> 
> 
> -----Original Message-----
> From: v6ops-bounces@ietf.org [mailto:v6ops-bounces@ietf.org] On Behalf Of Mark Townsley
> Sent: woensdag 14 december 2011 18:27
> To: v6ops@ietf.org Operations
> Subject: [v6ops] Up-leveling Transition Coexistence
> 
> 
> Folks,
> 
> We have had a lot of lively discussion of late on the new sections in 6204-bis that describe how 6rd, Dual-Stack, and DS-Lite  are to work together on a residential CE router. I'd like to summarize what I think the main architectural issue is alongside a possible solution framework. Technical comments are very welcome, but let's also try and keep them thoughtful and at a pace that everyone can keep up amidst their day-jobs. 
> 
> The requirements in RFC 6204 are based on a fundamental assumption that a CE router has a single active WAN interface for forwarding IPv4 and IPv6 traffic towards an ISP. The inclusion of IPv6 via 6rd, IPv6 via Native, IPv4 via DS-lite and IPv4 via Native together forces us to at least reconsider this basic assumption.  Breaking this down at bit, there are three possible steady-state combinations of "native" and "virtual" (tunneled) dual-stack connectivity methods that do not break the basic forwarding model of a single WAN egress per IP version:
> 
> (1) One Native IPv4 and IPv6 interface (Classic Dual-Stack) 
> (2) One Native IPv4 and one Virtual IPv6 interface (6rd, Softwires H&S via L2TP, TSP, etc) 
> (3) One Virtual IPv4 and one Native IPv6 interface (DS-Lite, 4rd, etc) 
> 
> Digging deeper into transition between these states:
> 
> For (1), IPv4 and IPv6 each share a single WAN interface, so there is no problem when enabling one vs. the other. 
> 
> For (2), when enabling tunneled IPv6 on an existing IPv4-only network there is no significant change in the basic model as each IP version still has its own distinct single WAN interface. Multihoming issues arise when enabling native IPv6 alongside tunneled IPv6 (needed for "6rd sunsetting") as IPv6 may be enabled on two distinct interfaces at the same time.
> 
> For (3) there similarly is no problem when enabling tunneled IPv4 on an existing IPv6-only network, and I have been told that there are greenfield deployments just like this happening. The multihoming issues arise when enabling tunneled IPv4 on a network that has native IPv4 available at the same time.  
> 
> I'd like to identify two strategies to deal with these situations. 
> 
> The first I will call "configuration-oriented". For this to work, one of the following assumptions must hold. None are pretty, but you MUST pick one to avoid solving how to forward traffic when multiple interfaces are enabled at the same time for a given IP version. 
> 
> (a) From the perspective of the CE router, the network supports only one type of interface for a given IP version, or 
> 
> (b) The CE router is configured in advance of any IP configuration to support only one type of interface for a given IP version, or
> 
> (c) The CE router goes through an ordered set of configuration attempts in series, each requiring a timeout before moving to the next. Transition-oriented changes after steady-state is reached will require "reboot" to go through the ordered process from scratch. 
> 
> (d) The CE router chooses one type of interface and shuts down all others based on a predetermined priority when more than one interface with the same IP version is configured. This allows parallel configuration attempts and changes after reaching steady-state, but requires the CE router and network to manage a "flash cut" from one configured interface to the other and may be prone to tricky race-conditions.
> 
> The second strategy I will call "forwarding-oriented." In this model, configuration of any WAN interface method at any time is accepted. The CE follows forwarding rules in order to ensure packets make it out the right interface on WAN egress, and liberally accepts packets on WAN ingress. This is "classic multihoming" and should work for any order of planned incremental transition steps, as well as failover and/or transient situations.
> 
> After publishing draft-townsley-v6ops-6rd-sunsetting-00, 6204-bis began adopting some of the "forwarding-based" requirements for IPv6, though DS-Lite remained in the "configuration-based" role for IPv4. 
> 
> Ole and I also just published draft-townsley-troan-ipv6-ce-transitioning-01.txt, which is a general set of IPv6 requirements for multihoming with 6rd-specifics (i.e., it is a "forwarding-based" solution for IPv6). We'll be publishing the same for IPv4 in order to support DS-Lite. Neither are rocket science, but teaching the CE to properly forward when faced with more than one alternative egress interface has been labeled "hard" (though as an interesting data point I have found IPv4 routers that support multiple WAN interfaces at the same time for less than $50). In my mind, the "configuration-oriented" alternative seems at least as hard as the "forwarding-oriented" alternative, is less robust, and certainly less flexible in terms of letting the operator decide its fate in terms of how to perform each transition step.
> 
> Again, technical comments are very welcome. Mostly I would like to know if people understand and agree with the basic premise here, and if so whether "configuration-oriented" or "forwarding-oriented" is the best way forward. So far, I think the forwarding-oriented approach wins hands down, but then again I'm used to building routers that have lots of interfaces and operators that ask them to do all sorts of crazy things :-) 
> 
> Thanks, and Happy Holidays in advance to those who will be celebrating soon,
> 
> - Mark
> _______________________________________________
> v6ops mailing list
> v6ops@ietf.org
> https://www.ietf.org/mailman/listinfo/v6ops