Re: [nvo3-dt-encap] [nvo3] Encap draft published by design team

Tom Herbert <> Fri, 17 February 2017 00:39 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id AADDA12943C for <>; Thu, 16 Feb 2017 16:39:44 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, URIBL_BLOCKED=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id ejUPZ0a3at4y for <>; Thu, 16 Feb 2017 16:39:43 -0800 (PST)
Received: from ( [IPv6:2607:f8b0:400d:c09::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 561BE1293E3 for <>; Thu, 16 Feb 2017 16:39:42 -0800 (PST)
Received: by with SMTP id s186so31972816qkb.1 for <>; Thu, 16 Feb 2017 16:39:42 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=mu5mS/eQXmqkTqcoP+N7H5bBGr5mO0kPM0Q1sgOMr9Y=; b=R7S1iWwVVhovPYSHfYW1dZ2K9q55EqdjZXs3VsW60zK3aams1IXiupDKDnjz+jWv+s ttn1pdaGNSTMBYqj+j1GgR1BJgOB9sgn5Wr3pzdOh4TrjvFG62Jwv2HKJ/vvlHle5xJk V3jrMSUbXksUxE8CyGhffNGs4NEdhLWAy9Z9jJZcgGPlnsl7epHD3jwj+gg2X8ER9U3g U1+i4rLYemZCe9GAOL0OKPm9ZXGepMI8LZK71pGpwcy8m6uyu2LcrZY4cSUQ5kH+I4C4 ODpa6cAsunUcyw1cbUiqbydOG+qEIZMURA1eadALgcdzgjb9r+pmdKq4LSvqiYQvU8KR Vnew==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=mu5mS/eQXmqkTqcoP+N7H5bBGr5mO0kPM0Q1sgOMr9Y=; b=EkKkxFAKVngw7pFJPcQlGj+QyPqtkCd6j9sZFSIAS5wuZHjvAiFDnZzo4UXmWtTjzo Erk7UcUNyvuRh0uEGQVeBY+NNZkC5zyCjQrZfKa3ZVLYK9NR12XssQ9CSCrm7b3kUczz xKbOvgOwhb4FOqOufr1ZF0GZ4vpCBvdkp+gW/EYnfVLdbEPhtCfF1+0li81XWjuwfbKs Lnm537Pl80W+o02hbQwXKqoHoDNqYHd692DdBYN6C85adRdIsv4hONwoBDxdBEGnqM4q 4RhBsmfOcKXWrLRQuv1H5b3suEIWBifqBgcqYbl/gcplhwiiWhuUvJx7A8jfzQvuw2ht MgaA==
X-Gm-Message-State: AMke39mUzodz/YifOh5UFXlWJSyJVS4DcYKIP8nX+30g0RTjSEgECs9TFfVxCe9JsFgju8BZuZoxpfWFBnCMPw==
X-Received: by with SMTP id 11mr4865037qkf.262.1487291981365; Thu, 16 Feb 2017 16:39:41 -0800 (PST)
MIME-Version: 1.0
Received: by with HTTP; Thu, 16 Feb 2017 16:39:40 -0800 (PST)
In-Reply-To: <>
References: <> <> <> <> <> <> <> <> <> <> <> <> <> <> <>
From: Tom Herbert <>
Date: Thu, 16 Feb 2017 16:39:40 -0800
Message-ID: <>
To: Joe Touch <>
Content-Type: text/plain; charset=UTF-8
Archived-At: <>
Cc: Sam Aldrin <>, Sami Boutros <>, "" <>, "" <>, "" <>
Subject: Re: [nvo3-dt-encap] [nvo3] Encap draft published by design team
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Private mailing list for internal NVO3 Encapsulation Design Team discussions <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 17 Feb 2017 00:39:44 -0000

On Thu, Feb 16, 2017 at 4:20 PM, Joe Touch <> wrote:
> Hi Tom,
> On 2/16/2017 4:10 PM, Tom Herbert wrote:
> But, as I said this idea creates a new dependency on a control plane
> which is TBD. I'm afraid this could be a opening a Pandora's box of
> new complexity that the group didn't bargain for...
> You need a control plane to setup the endpoints of a tunnel anyway.
> Indicating a fixed set of features for that tunnel is as easy as "use
> Bob", where "Bob" is defined elsewhere.
> The interaction between the control plane and dataplane will need to
> be explicit in the definition of the protocol as it is in TCP. And
> this method creates new conditions that need to be handled. For
> instance, if Bob says that he'll send option A and then option B, but
> we get a packet from him with option B before option A then what does
> that mean? Is this an error?
> It depends on what we define, but IMO that's a silent drop or - at best - a
> rate-limited warning in the log file.
> What if Bob wants to send options A,B,C
> in that order, but Sally wants to only receive them in order C,B,A?
> I was using "Bob" to refer to the protocol configuration, the way that we
> use strings to refer to such parameterization of more flexible systems for
> security algorithms. You're using Bob to refer to an endpoint, so let's call
> the protocol configuration we want to use "kiwi".
> E.g., see the list of encryption transforms for IKE.
> In this case, we could define one required protocol that can easily be "X
> with TLVs A, B, C in that order only".
> My point is that the protocol used need not be so ossified in its
> specification, e.g., the encapsulation protocol could specify TLVs
> A,B,C,D,E, and F, and allow any order in general. However, the complexity of
> dealing with all possible combinations and orders need not impact NVO3.
> Whose ordering requirements take precedence?
> The same as any negotiation protocol - there's typically an offer and a
> counter based on a subset. You say you want "kiwk, orange, or grape" (in
> order of preference) and the receiver either picks ONE or refuses. That's
> going to have to happen anyway.
> What about middleboxes
> that need to parse TLVs, would they have a say in this negotiation?
> Middleboxes don't play by any known rules. They'd have just as much trouble
> with TLV ordering and selection as they would with changes from "don't care"
> to "care" of bits in bitfields.
> What about options in a multicast packet, what ordering of TLVs would
> be used for those? And so on...
> Same issues apply in all cases. TLVs are no different from bitfields. You
> need to negotiate what they mean in both cases for all uses.
> I'm not arguing for TLVs, just pointing out that the claimed reasons for
> picking bitfields over TLVs is nonsense.

The operational issues we see with TLVs in terms of performance and
DDOS are not aberrations, they are fundamental issues we face in
deployment. Maybe with enough work and new implementation these issues
can be addressed in Geneve, but honestly given the history of similar
protocols in IETF and that of nvo3 I have doubts. It would be great if
I'm proven wrong in this :-).

Thanks for the interesting discussion...