[BEHAVE] General PMTUD black hole detection in translators

Iljitsch van Beijnum <iljitsch@muada.com> Wed, 10 February 2010 07:18 UTC

Return-Path: <iljitsch@muada.com>
X-Original-To: behave@core3.amsl.com
Delivered-To: behave@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 239C828C0DD for <behave@core3.amsl.com>; Tue, 9 Feb 2010 23:18:53 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.537
X-Spam-Level:
X-Spam-Status: No, score=-2.537 tagged_above=-999 required=5 tests=[AWL=0.062, BAYES_00=-2.599]
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 CnWGctu6-ccx for <behave@core3.amsl.com>; Tue, 9 Feb 2010 23:18:51 -0800 (PST)
Received: from sequoia.muada.com (unknown [IPv6:2001:1af8:2:5::2]) by core3.amsl.com (Postfix) with ESMTP id B8BCE3A68D6 for <behave@ietf.org>; Tue, 9 Feb 2010 23:18:49 -0800 (PST)
Received: from [192.168.2.11] (static-167-138-7-89.ipcom.comunitel.net [89.7.138.167] (may be forged)) (authenticated bits=0) by sequoia.muada.com (8.13.3/8.13.3) with ESMTP id o1A7Ieu8044668 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO) for <behave@ietf.org>; Wed, 10 Feb 2010 08:18:41 +0100 (CET) (envelope-from iljitsch@muada.com)
From: Iljitsch van Beijnum <iljitsch@muada.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Wed, 10 Feb 2010 08:19:52 +0100
Message-Id: <FB6800D2-6304-42E8-82C2-17D2D016EB81@muada.com>
To: "behave@ietf.org WG" <behave@ietf.org>
Mime-Version: 1.0 (Apple Message framework v1077)
X-Mailer: Apple Mail (2.1077)
Subject: [BEHAVE] General PMTUD black hole detection in translators
X-BeenThere: behave@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: mailing list of BEHAVE IETF WG <behave.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/behave>, <mailto:behave-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/behave>
List-Post: <mailto:behave@ietf.org>
List-Help: <mailto:behave-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/behave>, <mailto:behave-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Feb 2010 07:18:53 -0000

If we want to avoid cases where there is a link with a reduced MTU between the IPv6 hosts and a translator that triggers path MTU discovery black holes towards certain IPv4 servers, we could add a form of PMTUD black hole detection to translators.

It would work like this: the translator of course translates too big messages from the IPv6 side to IPv4. If it remembers that it did this and then sees that the IPv4 host doesn't lower its packet sizes within a reasonable timeframe, it can then when new sessions are set up from the same IPv6 host towards the same IPv4 host, adjust the MSS to the value that was present in the earlier too big message.

So then the first TCP session would time out but subsequent ones would have their MSS clamped and those would work. This would only kick in when there is an actual black hole so there is no impact for well behaved systems. The initial session would still fail so there would still be good reason for PMTUD breakers to fix their systems, but after the initial failure, the user would have something that works.