Re: [tcpm] [v6ops] Flow Label Load Balancing

Fernando Gont <fgont@si6networks.com> Fri, 04 December 2020 23:35 UTC

Return-Path: <fgont@si6networks.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5D7E63A0E32; Fri, 4 Dec 2020 15:35:13 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.549
X-Spam-Level:
X-Spam-Status: No, score=-0.549 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DATE_IN_PAST_24_48=1.34, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
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 gUitAfVsZUdG; Fri, 4 Dec 2020 15:35:10 -0800 (PST)
Received: from fgont.go6lab.si (fgont.go6lab.si [IPv6:2001:67c:27e4::14]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6E2083A1083; Fri, 4 Dec 2020 15:35:07 -0800 (PST)
Received: from [IPv6:2800:810:464:8164:896a:de13:c010:ff3a] (unknown [IPv6:2800:810:464:8164:896a:de13:c010:ff3a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by fgont.go6lab.si (Postfix) with ESMTPSA id 29AF2283AA7; Fri, 4 Dec 2020 23:35:02 +0000 (UTC)
To: Tom Herbert <tom@herbertland.com>, Brian E Carpenter <brian.e.carpenter@gmail.com>
Cc: Erik Kline <ek.ietf@gmail.com>, IPv6 Operations <v6ops@ietf.org>, tcpm <tcpm@ietf.org>, Fernando Gont <fernando@gont.com.ar>
References: <CAEGSd=DY8t8Skor+b6LSopzecoUUzUZhti9s0kdooLZGxPEt+w@mail.gmail.com> <CALx6S34uCrA1QdvLV8fpRKaJGLWMgtCmBCnrsBjU3TS+kXUs3Q@mail.gmail.com> <CAO42Z2xn_+7EVpjGyEU3aAdBmt1h=a4MPXFjjoTi_JeM2w9pkg@mail.gmail.com> <f66cbccd-55ed-375b-743b-7fc6c48a50c2@gont.com.ar> <CAO42Z2xqU4gs9iP=u_0Z16Qk+U24_YH0h5vTmJRJ5XZXZ0nweQ@mail.gmail.com> <0d38980a-f1c5-fac5-a9b1-0711d61353d1@gont.com.ar> <CAEGSd=A_e-db8m2VN+2wEuXj9e+GTq7brYfY_fwW7tysUr19Ng@mail.gmail.com> <CALx6S34xQF-PHQRqom_O8=amoRFmVrzHL-qh8765mtr1XnF2Wg@mail.gmail.com> <d59e1785-672d-8cc7-f844-51c64a440a57@gont.com.ar> <CALx6S373yLJwHigv4Yo-xdtRkZ9YsB0J9cwXqy0BWpwXSiHCPg@mail.gmail.com> <42b6e327-08b5-292b-be65-28f1a8508a69@si6networks.com> <CAMGpriUb3WQqFhtDULy=Avbf8dWh1LsO=LBfvGUf3ozBAg7myA@mail.gmail.com> <CALx6S373gk+GweWm=ph8fHgSk7rDPGQCXjdC++G6Jk2NGo1x-A@mail.gmail.com> <85dd3823-ff2d-94ac-3535-d3d042bdd338@gmail.com> <CALx6S35oJRRnqMNOqGMz1XfkR-f8Hn7RBcQwbEyEL2j_ueGjUg@mail.gmail.com>
From: Fernando Gont <fgont@si6networks.com>
Message-ID: <70c456f7-ce86-1bd2-a580-71524ce2606f@si6networks.com>
Date: Thu, 03 Dec 2020 19:41:33 -0300
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
In-Reply-To: <CALx6S35oJRRnqMNOqGMz1XfkR-f8Hn7RBcQwbEyEL2j_ueGjUg@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/3SPt3gfPOj0wHLHyRwBs2oS9iuo>
Subject: Re: [tcpm] [v6ops] Flow Label Load Balancing
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Dec 2020 23:35:14 -0000

Tom,

On 3/12/20 17:38, Tom Herbert wrote:
> On Thu, Dec 3, 2020 at 1:17 PM Brian E Carpenter
> <brian.e.carpenter@gmail.com> wrote:
>>
>> On 04-Dec-20 06:30, Tom Herbert wrote:
>>> On Thu, Dec 3, 2020 at 8:43 AM Erik Kline <ek.ietf@gmail.com> wrote:
[....]
>>
>> But that doesn't help with server load balancing. For ECMP/LAG in a
>> transit network, the DA alone doesn't help either, if a particular
>> destination is prone to very heavy flows for some reason.
> 
> Brian,
> 
> Specifically, that is a problem for a host that uses a _single_ IPv6
> address for all its connections. 

That that's the vast majority of current hosts - if not all.


> What I am suggesting is to give hosts
> many addresses, which we already do anyway like when mobile devices
> and data center servers are assigned /64s. If a host then randomly
> chooses an address from that block for each connection it creates
> thenl the address 2-tuple contains all the entropy needed for purposes
> of load balancing, ECMP, etc. is contained in the source address.
> Addresses are guaranteed to be present and plaintext in each packet so
> no DPI required, they're as stable as any flow identifying information
> in a packet can be and they offer much more entropy than sixteen bits
> of port number of twenty bit flow label.

Agreed. Although that move is not-trivial: e.g. if you move from shared 
link to /64 per hosts, then stuff like mDNS breaks.

There's also an API to be specifiied.

P.S.: And, in the process, we have kind of burned 64-bits of the 128-bit 
IPv6 addresses, too...


Thanks,
-- 
Fernando Gont
SI6 Networks
e-mail: fgont@si6networks.com
PGP Fingerprint: 6666 31C6 D484 63B2 8FB1 E3C4 AE25 0D55 1D4E 7492