Re: Use cases for PMTUD and PLPMTUD (was: RE: 6MAN: Adoption call on draft-hinden-6man-rfc1981bis-01)

Mark Andrews <marka@isc.org> Mon, 08 February 2016 00:48 UTC

Return-Path: <marka@isc.org>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C888E1A8707 for <ipv6@ietfa.amsl.com>; Sun, 7 Feb 2016 16:48:27 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.602
X-Spam-Level:
X-Spam-Status: No, score=-4.602 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MANGLED_HERE=2.3, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id U96-3hItWUMe for <ipv6@ietfa.amsl.com>; Sun, 7 Feb 2016 16:48:26 -0800 (PST)
Received: from mx.ams1.isc.org (mx.ams1.isc.org [199.6.1.65]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 457601A8702 for <ipv6@ietf.org>; Sun, 7 Feb 2016 16:48:26 -0800 (PST)
Received: from zmx1.isc.org (zmx1.isc.org [149.20.0.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx.ams1.isc.org (Postfix) with ESMTPS id 49D761FCAB9; Mon, 8 Feb 2016 00:48:22 +0000 (UTC)
Received: from zmx1.isc.org (localhost [127.0.0.1]) by zmx1.isc.org (Postfix) with ESMTPS id 256591600A0; Mon, 8 Feb 2016 00:48:21 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1]) by zmx1.isc.org (Postfix) with ESMTP id 155DE1600A1; Mon, 8 Feb 2016 00:48:21 +0000 (UTC)
Received: from zmx1.isc.org ([127.0.0.1]) by localhost (zmx1.isc.org [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 58V5ZDLF7z5l; Mon, 8 Feb 2016 00:48:21 +0000 (UTC)
Received: from rock.dv.isc.org (c110-21-49-25.carlnfd1.nsw.optusnet.com.au [110.21.49.25]) by zmx1.isc.org (Postfix) with ESMTPSA id 92E2C1600A0; Mon, 8 Feb 2016 00:48:20 +0000 (UTC)
Received: from rock.dv.isc.org (localhost [IPv6:::1]) by rock.dv.isc.org (Postfix) with ESMTP id A351E41AF670; Mon, 8 Feb 2016 11:48:18 +1100 (EST)
To: Michael Richardson <mcr+ietf@sandelman.ca>
From: Mark Andrews <marka@isc.org>
References: <2134F8430051B64F815C691A62D983183395EFC6@XCH-BLV-105.nw.nos.boeing.com> <56B4E91C.6090905@si6networks.com> <2134F8430051B64F815C691A62D983183395F14A@XCH-BLV-105.nw.nos.boeing.com> <56B502FB.4050302@si6networks.com> <20160205230616.CA7A1419BA10@rock.dv.isc.org> <15275.1454861964@obiwan.sandelman.ca>
Subject: Re: Use cases for PMTUD and PLPMTUD (was: RE: 6MAN: Adoption call on draft-hinden-6man-rfc1981bis-01)
In-reply-to: Your message of "Sun, 07 Feb 2016 11:19:24 -0500." <15275.1454861964@obiwan.sandelman.ca>
Date: Mon, 08 Feb 2016 11:48:18 +1100
Message-Id: <20160208004818.A351E41AF670@rock.dv.isc.org>
Archived-At: <http://mailarchive.ietf.org/arch/msg/ipv6/zF86I45vee8qN8HNYUTAbiCDFjQ>
Cc: Fernando Gont <fgont@si6networks.com>, 6man WG <ipv6@ietf.org>, "Fred Baker (fred)" <fred@cisco.com>, Bob Hinden <bob.hinden@gmail.com>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Feb 2016 00:48:28 -0000

In message <15275.1454861964@obiwan.sandelman.ca>, Michael Richardson writes:
> 
> Mark Andrews <marka@isc.org> wrote:
>     >> Except for within well-managed administrative domains where
>     >> RFC1981-only > is sufficient. They do exist; I am typing this message
>     >> from within one righ t now.
>     >>
>     >> I'd expect 6man to produce protocols that work everywhere, rather than
>     >> just on some subset scearios...
> 
>     > RFC 1981 works for TCP unless you *deliberately* break it by dropping
>     > PTB as TCP retries.
> 
> Yes, and we know that many networks do this.
> 
> {It appears that the Linux IPv6 XFRM/NetKey IPsec stack also fails to send
>  PTBs when operating in one-arm router mode, but I haven't fully convinced
>  myself that this is where the failure is yet}
> 
>     > RFC 1981 does NOT work in general for UDP.  DNS/UDP is a perfect
>     > example as it is the responding server that get the PTB and the DNS
>     > client is trying multiple servers.  Often by the time the server is
>     > tried again especially when a server is anycast the MTU knowledge has
>     > been lost.
> 
> I didn't think PLPMTUD worked any better in this situation, or are I wrong he
> re?

Conceptually you do PLPMTUD by adjusting the EDNS UDP size advertised
in the query until you get a response.  This isn't strict PMTUD as
it also accounts for firewalls that are blocking fragments, firewalls
that still think DNS is limited to 512 byte UDP payloads.  Unfortunately
you only have about 3 seconds to do this all in as well as talking
to other servers.  The DNS doesn't have a way of signaling "fragment
at this size".

Named tracks successful answers/timeouts with different EDNS udp
sizes as well as the actual response sizes that have got through.

; [edns success/4096 timeout/1432 timeout/1232 timeout/512 timeout]

Too many timeouts with a particlar size and we stop offering a EDNS
UDP buffer of that size and fallback to the next break point.  These
values are set for 4in6/6in4 + a UDP header.  timeouts with a smaller
EDNS buffer size also count against larger sizes.

> i.e: both are broken for UDP, and in the DNS/UDP case, the server never
>      retransmits either... so absent using TCP, it will always just fail.

But the client re-queries leading to a re-transmission.
 
> --
> Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
>  -= IPv6 IoT consulting =-
> 
> 
> 
> 
> --=-=-=
> Content-Type: application/pgp-signature; name="signature.asc"
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.12 (GNU/Linux)
> 
> iQEVAwUBVrduiYCLcPvd0N1lAQJ7RQf/bInuCsHmVH6AONDSavt/Ut1/xo0NdnRp
> 1vtfg2LwHG5cUJGNpHOdnlg0OdhIJS9KVYN6xP0FQqbfTq4E6zRpoBkw4kMFQFWK
> cYOe8MaXx4FJFWF6MWcugglhWRkFQeSaQyYcn0Odhmeoc7w2/ehlsTfuFNGCnpH9
> 2bJS2Og80JWMDy7Q95IL6JrsKE1/VDDLpJJkQTfqPboZ1BG5Vn6IlDUT+lEMsZly
> By2CSNBglAqVtU5fUPYCa6yCx92I2g8MYePqkjclN1dAlELhlOUllsrJ8F3kCuFs
> 4eT9yAOtU4W7tP/Ka3bBdJTRYnS31NXozgdIlPsnhZ7mXdrks1tQcg==
> =kitT
> -----END PGP SIGNATURE-----
> --=-=-=--
-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: marka@isc.org