Re: [quicwg/base-drafts] disable_active_migration with SPA (#3765)

Igor Lubashev <> Wed, 29 July 2020 02:02 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 3A3C63A0EA6 for <>; Tue, 28 Jul 2020 19:02:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -3.1
X-Spam-Status: No, score=-3.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_IMAGE_ONLY_32=0.001, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id IOqK4mwMq6gz for <>; Tue, 28 Jul 2020 19:02:24 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 055A73A0E9C for <>; Tue, 28 Jul 2020 19:02:23 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 469525E005E for <>; Tue, 28 Jul 2020 19:02:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=pf2014; t=1595988143; bh=gfdRcd23Jn5R3UECAtTspDDcGQAIWL5F38PjsveYU0M=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=XW/DDMwk5F4vDcsOm4SsZX9bIW5lpCTgBMIqkGn9LIIRyWCV9tO9Q5X2KZ0aT0pwI DGKz3ikYboDQD3dI59hZ0qk3j8VIvou2uXWIBC96FmvRySx70vlrYotpGk4WOCoD5w gE/ymWx87iOtxwiCLFH0XC8Y/ynRzHYLvjgeYroE=
Date: Tue, 28 Jul 2020 19:02:23 -0700
From: Igor Lubashev <>
Reply-To: quicwg/base-drafts <>
To: quicwg/base-drafts <>
Cc: Subscribed <>
Message-ID: <quicwg/base-drafts/issues/3765/>
In-Reply-To: <quicwg/base-drafts/issues/>
References: <quicwg/base-drafts/issues/>
Subject: Re: [quicwg/base-drafts] disable_active_migration with SPA (#3765)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5f20d8af356ff_741116f87476b"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: igorlord
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
Archived-At: <>
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 29 Jul 2020 02:02:26 -0000

To summarize, it seems that people are generally not philosophically opposed to fixing this issue, but the solution needs to be simple and be compatible with the current behavior.

@MikeBishop has a PR that has one point unresolved -- what to do about SPA that is of a different protocol family.

I would like to propose a simple but workable solution.  _When "disable [active] migration" bit is set on the SPA, the client has to use the handshake source address if it is of the same address family as the SPA address it is migrating to.  If SPA is of a different address family, the client will have to change the source address but then stick with it for the duration of the connection._

If the server's need to prohibit active migration with SPA is due to the client's need to keep the same source address, the server will only return an SPA of the same address family and set "disable [active] migration" bit.  If the server is only concerned with the client staying on the same network, it can return a different-family SPA (and set "disable [active] migration" bit), since the chances are excellent the client will stay with the same network when it migrates very soon after the handshake completes.  

(In case the client tries to migrate to another address family and ends up on an unacceptable network, the server can probe the original path. If the original path is valid, the server would ignore packets coming on the new path, and the client would fail back to the original path.  If the original path is no longer valid, the server would close the connection on the new path.  The result would be a hiccup for the client, but this would happen rarely.)

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: