Re: [nat66] Comments on draft-mrw-nat66-12

Fred Baker <fred@cisco.com> Tue, 15 March 2011 22:50 UTC

Return-Path: <fred@cisco.com>
X-Original-To: nat66@core3.amsl.com
Delivered-To: nat66@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4C1D13A6DC6 for <nat66@core3.amsl.com>; Tue, 15 Mar 2011 15:50:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.371
X-Spam-Level:
X-Spam-Status: No, score=-110.371 tagged_above=-999 required=5 tests=[AWL=0.228, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 nssigXqRQW83 for <nat66@core3.amsl.com>; Tue, 15 Mar 2011 15:50:48 -0700 (PDT)
Received: from sj-iport-6.cisco.com (sj-iport-6.cisco.com [171.71.176.117]) by core3.amsl.com (Postfix) with ESMTP id 012043A6A4B for <nat66@ietf.org>; Tue, 15 Mar 2011 15:50:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=fred@cisco.com; l=5657; q=dns/txt; s=iport; t=1300229533; x=1301439133; h=subject:mime-version:from:in-reply-to:date:cc:message-id: references:to:content-transfer-encoding; bh=Cm2+ruQNK1ZuFKplgSqy2EorSZeFzbgpYGwbunMmrA4=; b=fxqoANCQVaNnFBuES8mTSloCpLIngtp4v27n+2l1z53qAH6adgcCSUtv XhD1b4wceOTasGzhSUthlZVJjnVGpPc7hlk1iLlkPMNJePha8+zY/Crh+ ZNAK7FErlnbh1dwoniAmGIm+jUK1lDwyTabxAArcM4zOLqXsXdqSlqtlj E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAKuKf02tJV2Y/2dsb2JhbACmDXekUpxtgnuCZwSFMIctg08
X-IronPort-AV: E=Sophos;i="4.63,191,1299456000"; d="scan'208";a="667499417"
Received: from rcdn-core-1.cisco.com ([173.37.93.152]) by sj-iport-6.cisco.com with ESMTP; 15 Mar 2011 22:52:13 +0000
Received: from stealth-10-32-244-221.cisco.com (stealth-10-32-244-221.cisco.com [10.32.244.221]) by rcdn-core-1.cisco.com (8.14.3/8.14.3) with ESMTP id p2FMq7wL007745; Tue, 15 Mar 2011 22:52:12 GMT
Received: from [127.0.0.1] by stealth-10-32-244-221.cisco.com (PGP Universal service); Tue, 15 Mar 2011 15:52:12 -0700
X-PGP-Universal: processed; by stealth-10-32-244-221.cisco.com on Tue, 15 Mar 2011 15:52:12 -0700
Mime-Version: 1.0 (Apple Message framework v1082)
From: Fred Baker <fred@cisco.com>
In-Reply-To: <125BC580-ED43-40EE-B6B9-FD88557C35B9@apple.com>
Date: Tue, 15 Mar 2011 15:51:57 -0700
Message-Id: <758DD037-9DC2-4A1E-BEAE-7E99CBED6D3A@cisco.com>
References: <20110314063002.28048.29694.idtracker@localhost> <19F3A4CD-F39C-4F17-A6E9-7AA8AFBC6B3B@cisco.com> <CF8367A6-F303-43D7-99C6-D40D1DD5D5D9@free.fr> <125BC580-ED43-40EE-B6B9-FD88557C35B9@apple.com>
To: james woodyatt <jhw@apple.com>
X-Mailer: Apple Mail (2.1082)
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Cc: NAT66 HappyFunBall <nat66@ietf.org>
Subject: Re: [nat66] Comments on draft-mrw-nat66-12
X-BeenThere: nat66@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: "List for discussion of IPv6-to-IPv6 NAT." <nat66.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/nat66>, <mailto:nat66-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/nat66>
List-Post: <mailto:nat66@ietf.org>
List-Help: <mailto:nat66-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nat66>, <mailto:nat66-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Mar 2011 22:50:49 -0000

You're correct. Apart from the fact that I misspelled his name (shame on me), his comments miss the mark.

There is, in fact, a problem with NPTv6 with respect to multihoming, which is that if I have two upstreams and therefore two prefixes and routing changes (a session is using one ISP and either internal routing changes or the DMZ it is using fails), the session might switch to a different DMZ and as a result have a different IP address. This is equally true of NAPT44; if I change NAPTs, I change addresses. In NAPT, that is true even if they go to the same ISP. with NPTv6, multiple Translators going to the same ISP will use the same upstream prefix, and sessions can be rerouted between them or load shared, which is not true in NAPT44. So I will argue that if the limitations of NAPT44 around rerouting are acceptable, NPTv6's limitations - which the draft is IMHO very up front about - are not as bad as what folks deal with operationally today. To my mind, section 5 spends quite a bit of effort indicating that there are issues around differences in addresses. This is also discussed in RFC 3424. 

How would I fix that? The same way I would fix Multipath TCP and therefore the TCP Authentication Option - because I think they are the same problem. I would start out by observing, with RFC 3424, that protocols above the network layer make a mistake when they tie themselves to the Network Layer Address. It's the same mistake they would be making if they tied themselves to the MAC Address. Rather than quote RFC 3439 on the topic, I'll simply encourage people to read its comments on complexity, amplification, and especially coupling, which may be found at http://tools.ietf.org/html/rfc3439#section-2. When you couple layers together, things go belly up. Instead of complaining about the fact, which the IETF makes a grand past-time of and this thread is a case in point, start thinking about how to not couple them. With Multipath TCP we need to be able to send data to and receive data from any of our peer's addresses, and do so from any of our own. IMHO, the way to do that is to have each peer create a nonce - ILNP's random number, in a TCP option, might be a very good one - that will identify it to a peer, and use that regardless of the address pair. Having a TCP session change addresses is exactly the same behavior as having a Multipath TCP switch from using one address pair to using another address pair, which it might do packet by packet; an end to end session identifier above the network layer, what NIMROD calls an "identifier" and tries to split from the "locator", solves that quite nicely.

HIP, BTW, doesn't work for this. It requires two complete exchanges to operate using the same address pair before the HIT is established. I can trivially construct a network in which that will never happen; I suggested that problem to some students at BUPT, who prototyped NPTv6, ILNP, and GSE with HIP, and published two papers. One points out that ILNP doesn't have the problem (the nonce solves it), and the other points out that HIP does.

Ran's cue... I agree that all we have to do is change the TCP and UDP pseudo-header and therefore the checksum, and ILNP will be a superior solution, one that doesn't drop TCP sessions around a route change to a different provider. I personally don't think the pseudo-header change will happen within my lifetime, and think that people don't spend a lot of cycles thinking about NAPT44 route flap effects. 



On Mar 15, 2011, at 1:17 PM, james woodyatt wrote:

> On Mar 15, 2011, at 10:28 , Rémi Després wrote:
> 
>> 2.4
>> In case of multihoming with PA's, a limitation of NPTv6 that should be noted is that some incoming connections can fail:
>> - In a site having global prefixes PA1 and PA2, an internal server has two global IPv6 addresses S1 and S2. 
>> - If its default exit route goes to the PA1-CPE, incoming connections addressed to S2 will fail due to ingress filtering in the PA1-CPE.
> 
> I don't think this hits the mark.  From section 5:
> 
>                     [...] Also, an NPTv6 Translator does not aggregate
>   traffic for several hosts/interfaces behind a lesser number of
>   external addresses, so there is no inherent expectation for an NPTv6
>   Translator to block new inbound flows from external hosts, and no
>   issue with a filter or blacklist associated with one prefix within
>   the domain affecting another. [...]
> 
> I'm not sure that NPTv6 introduces any new site-multihoming problems for firewalls beyond those they already have, but I suspect it might.  Without NPTv6 involved to unify multiple external prefixes into a single local prefix, hosts on traditionally site-multihomed networks will discover each external prefix and their attributes separately.  With NPTv6 unifying the external prefixes into a single local prefix, they discover only one prefix and its unified attributes.  I suspect that NPTv6 might add a burden on firewalls related to the unification of external prefix attributes so that routers advertising the local prefix have unified attributes to advertise that prevent communications failures associated with attribute renewal.
> 
> 
> --
> james woodyatt <jhw@apple.com>
> member of technical staff, core os networking
> 
> 
> 
> _______________________________________________
> nat66 mailing list
> nat66@ietf.org
> https://www.ietf.org/mailman/listinfo/nat66