Re: [bess] I-D Action: draft-ietf-idr-tunnel-encaps-01.txt

Eric C Rosen <erosen@juniper.net> Mon, 15 February 2016 17:22 UTC

Return-Path: <erosen@juniper.net>
X-Original-To: bess@ietfa.amsl.com
Delivered-To: bess@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 10F0B1A8A4C; Mon, 15 Feb 2016 09:22:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_PASS=-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 z9y_GJnRHH8x; Mon, 15 Feb 2016 09:22:34 -0800 (PST)
Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1bon0756.outbound.protection.outlook.com [IPv6:2a01:111:f400:fc10::1:756]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 0E8B71A89D3; Mon, 15 Feb 2016 09:22:33 -0800 (PST)
Authentication-Results: juniper.net; dkim=none (message not signed) header.d=none;juniper.net; dmarc=none action=none header.from=juniper.net;
Received: from [172.29.34.136] (66.129.241.11) by CY1PR0501MB2154.namprd05.prod.outlook.com (10.164.3.152) with Microsoft SMTP Server (TLS) id 15.1.409.15; Mon, 15 Feb 2016 17:22:10 +0000
To: "Carlos Pignataro (cpignata)" <cpignata@cisco.com>
References: <20151221171512.15817.2209.idtracker@ietfa.amsl.com> <56815342.7030609@juniper.net> <F39D317C-7787-4F42-A8DE-ECD82DDB1741@cisco.com>
From: Eric C Rosen <erosen@juniper.net>
Message-ID: <56C2093D.7080800@juniper.net>
Date: Mon, 15 Feb 2016 12:22:05 -0500
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1
MIME-Version: 1.0
In-Reply-To: <F39D317C-7787-4F42-A8DE-ECD82DDB1741@cisco.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Originating-IP: [66.129.241.11]
X-ClientProxiedBy: BY2PR13CA0036.namprd13.prod.outlook.com (25.162.223.46) To CY1PR0501MB2154.namprd05.prod.outlook.com (25.164.3.152)
X-Microsoft-Exchange-Diagnostics: 1; CY1PR0501MB2154; 2:EKO5RYP6SSQfIC39WuY9c+4/mGwUe+LdwBCb28HFQX14YDTJbibr9m3mnoBXFLiVyb9nPttUEhUJBo8PP2IWHbv9KiTQDkL8GBOmJgQntY7a1T1MtH2n0pfAvE5/Q6sri8WIViMPwaOAOdBTtzas7g==; 3:kY1nddgYJQFZN4GzsV73gh6W2TUhgRlE/cQ4J6tBR/O8ZKI87OR4C7Z1/XFrZR9r2YQIeB9166IhwmJgj8RNmcOxX8VdmgzxqWC6qXRBYZCaw1QxeKKnwyYBC6Dxg8Db; 25:WIzdP+c5xNm6i8qQhONqelVYJlY5biCuZhPsEblDlt6pYzQWdyS3BBG5rviKYI0t/HS8hxawWECjS6xadwRQnPYz+eZus2oii7ubXUaoPfHkHxmrd6VL1E6gs0Q6GIVzUWZFpAPXJzdkp7w+JC0IMOyLO+u6aVv+3ALl4qyms+Vi2zkUE2/OKTgJgnbt39FdHBYjEb/SEHAbqUwHIMqFRg9dFaOgUP22magLY4F6+hNCIgYyd41AMpM9c+dCc/LjfNtti/d6Sg+Ocw3UaKtBHHD9uSjLX71OgcbtqtOrG0Hb70xRoTaGyS4e+Wxygw5S
X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0501MB2154;
X-MS-Office365-Filtering-Correlation-Id: cb85da8b-a160-477b-fe15-08d3362c8a69
X-Microsoft-Exchange-Diagnostics: 1; CY1PR0501MB2154; 20:DbP7Jt5IxKLpXctHjQyfqcABcV/HO4o9lnmPTj361rFUlrJMKAFzpjO9jN083fdIDf62UadIgNF00bi4nlSkbq6s2qsYGRaqjnzZhG0T2XUgQWUzAFP1apgxqRUOPaRSEw1LtzFoluJEmrpMG4tPnFDnmRObdMIQq16onCKAM9Br/kSmfvY6jOY63YmTWI5hRZP82bUQAuafsKTY23eNhEDTuX3f2Cv5pXMkYl9egUYYIhaqJABg2joITur4oUmKDHM76Z61Qau+oyJGsvr/x2osDnZLbMhze7B1lwyCSOc19lVOW8TE3AsL/H3anFEGFSOsQpGVeEm0ItGLSyipgFD64AtZR04UEreTsk2bhgI77YGzdgh6aTbJ11hdX2iUJ2y0TBBMJIs0+tDmUUhYaD1you+np0c+mJJFaNoxIgmRwGSHXsScx8bqALbShBaXqhGly/NsHxnm+E0cL149NWLITVZyzjDhiUbicinueBziEeqls5i2tjmRRQu9aFfe; 4:y/QuF70OwL7XrrRes9NvYQLzZC9Ft6BmFMlZSKLoj3LQxo493PHAcc5qwV70SgRzBlMUzDdO73Vct7xmgdwKucnarFlqhd36W4SnTv6Jc2lkaBtDWfgPZM50FsgDy6VOpeWgZgLRACwHjteYoJ0LZlUuuT8MuXKN2CdVe96xVe7lVBcV0DmelH4xbfs/Emamxxn/ALkvANOsSKZwwn2JQs2I6xPFR5KkSeHDYcT6K2J12j8fSEBZEIO7lxXWbAVLSfKRecrXq69Zt+8xA0iLpxUOLUfLyw+E5ffoUI2NxIQD0AfiOcr2QS9/o3SXuTjdhLA7U1JkS5asat7HnFPHemA7P1QG0NF7VUNV57PvEYaVB3ExGGMvJn0bVnRqk06X
X-Microsoft-Antispam-PRVS: <CY1PR0501MB21540A40A51A8EA6644491AED4AC0@CY1PR0501MB2154.namprd05.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001); SRVR:CY1PR0501MB2154; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0501MB2154;
X-Forefront-PRVS: 08534B37A7
X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(6049001)(52604005)(479174004)(377454003)(24454002)(189998001)(36756003)(5890100001)(42186005)(80316001)(4001350100001)(83506001)(110136002)(86362001)(50466002)(5001960100002)(23676002)(5004730100002)(2870700001)(50986999)(65816999)(87976001)(77096005)(1096002)(33656002)(122386002)(5008740100001)(87266999)(54356999)(76176999)(65806001)(586003)(92566002)(2906002)(40100003)(6116002)(4326007)(230783001)(66066001)(65956001)(3846002); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR0501MB2154; H:[172.29.34.136]; FPR:; SPF:None; MLV:sfv; LANG:en;
X-Microsoft-Exchange-Diagnostics: 1;CY1PR0501MB2154;23:nXtuXlAhHw66iRh1YXw13itJm5zZ5O6g8Zdzc2JsdmseT+rOBMEsMu+MJwVpE1/7uuxe9Otcp4AAkKTQ0iMrO840IXqIDlbcTd96B6J+yVLdodLWuXgqd7OUB7aEUcqTZSFEhIEm5qgEncMn3U/hevaTdVk0/K9olOd7QxM8cm6Dm34UMijiz5pHtVfvkkMr9Oek1yIKE6352QpUQXXKmoZaMH77lykdOLpfzAmoT4h33huLUyKiqC0KjUKvQRo91wTYMH9P3TfVnhwc/rbZsVvUmOfLADMxdj/Vp/hdoV44oJQULlj4Svfne1ly/I3yYw386+xQxMCwmuuTJkSpKtDEd8ZLIdUJdYXMRwXrfIrzBNIpY+Hig/kOQdkeq7dyG/9EgYvUNCZkDP2Pnwu3Qwsx99iCTPg5wJ7FSdiGe//E/ZvVMCF5znFhx25jpG3s/cBlQPzxTNjUBgLEYLRfy0uhJE44N9E9zesQZwoXTNbv+lV+mnSQKOVuGye9lWz7luBrYs8wsQRBzd/FZej3jTSBkllI6OdOh4MtcxYGUd5ljMZx5h/tC8Y1AoKpGLC6kk2pFU0fkM6JVGAR/RWGNUC699D9eQkys5l+xqrH3mLX0XIRQlWz9WyQCrjiIosQV0sbPTSfffvtEbtnJEIE+hTw9JCjDjTxZqH5LlqSnp09AZK/nDrQwl5Kkkz69wJGcb+wJX/iywfz7umD2IZFqosz6ClqrUz8O+qSYCwhr5RHxOkpqc81ZuU4pc8yauKMJxqzyIen3Dymd71KHpfF98AgXVPPlttNSiQWsATapyoRPjgqBOkrlO8Y6CFTxgd/9yAtb+g0+GViI/loPEBIMTXcVlK0trCEkRn+9Jc/VQyYgT2FP42oPM3FFBt1tShJL97XxuCH5ZnlZl4dBlcD4FFpWXJ1c4ceEkXSBXHEH1mC5fH6QlLeeiO9m27uoUfS/BbSJ1OxD8OELYnCR7erPv3fZqQn/A0aGEXaEAfpxemscLpIj1Gg2SRpt0qysdmyMQ3iGnyOh9xDr471iL05yvZWJ4PUarpP5nccPq0Iz9FQ+uiVaglxeBYdt/xvfzCGog8wvi9CH8sdBiaxyNNn2XDuC0ico0hbijHNFtHUe6E8JOGYFwU7t00KrCPCAgzt
X-Microsoft-Exchange-Diagnostics: 1; CY1PR0501MB2154; 5:kxZTnC9k9rV042O0KAzq0npmxVfjWYA9621pYnJKxduYWySUtsSHUcDau5cUBvvxtI7d6im0Kqs86pqA7hKofExMtJHgtgDJTvhPsNZzLyMGVny5YakwvkAPluzDD0ZwhQ+bu9/b2mArlDOylhZSYg==; 24:3b0W4/qXrmcdhf70WD1Ex+/1BHKrOJW4a+UI5i+xZlmAxSw29dsvWQQ+fJhKeoy8VpDwSRZyg60m9YHPMF1Wl860vSZ2hPAzaiVDp3fgXHU=
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Feb 2016 17:22:10.8815 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0501MB2154
Archived-At: <http://mailarchive.ietf.org/arch/msg/bess/YCDocizQ3hWeq8pa7M6B_TU9Plc>
Cc: "idr@ietf.org" <idr@ietf.org>, "bess@ietf.org" <bess@ietf.org>
Subject: Re: [bess] I-D Action: draft-ietf-idr-tunnel-encaps-01.txt
X-BeenThere: bess@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: BGP-Enabled ServiceS working group discussion list <bess.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/bess>, <mailto:bess-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/bess/>
List-Post: <mailto:bess@ietf.org>
List-Help: <mailto:bess-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/bess>, <mailto:bess-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 15 Feb 2016 17:22:41 -0000

On 2/11/2016 6:38 PM, Carlos Pignataro (cpignata) wrote:
> Hi, Eric,
>
> Thanks for sending this out — I am interested in this document, and will give it a critical review (in particular the sections you call out below).
Thanks!
>
> In the mean time, however, I wanted to send a few high-level comments (prepended with “CMP”) from scanning through it. I hope these are useful.
>
> 3.2.  Encapsulation Sub-TLVs for Particular Tunnel Types
>
>     This section defines Tunnel Encapsulation sub-TLVs for the following
>     tunnel types: VXLAN ([RFC7348]), VXLAN-GPE ([VXLAN-GPE]), NVGRE
>     ([RFC7637]), GTP ([GTP-U]), MPLS-in-GRE ([RFC2784], [RFC2890],
>     [RFC4023]), L2TPv3 ([RFC3931]), and GRE ([RFC2784], [RFC2890],
>     [RFC4023]).
>
>
> CMP: More comments below, but I am a bit confused about the need to include MPLS-in-GRE, and the lack of IP-in-IP (Tunnel Type 7) for example.
MPLS-in-GRE is included in section 3.2 because there is already a tunnel 
type codepoint allocated for it, and if that tunnel type is used, an 
encapsulation sub-TLV is needed in order to signal the GRE key.

One can argue that there is no need for the MPLS-in-GRE tunnel type, 
since everything you can do with it could be done instead with the GRE 
tunnel type.  But unless and until we decide to deprecate the 
MPLS-in-GRE tunnel type, it needs to be included.    In theory, I would 
love to see the MPLS-in-GRE tunnel type deprecated, but I worry that 
that might introduce a backwards compatibility problem.    This is 
certainly something that can be discussed by the WG.

IP-in-IP is not mentioned in section 3.2 because, although there is a 
tunnel type codepoint allocated for it, no one has ever defined an 
encapsulation sub-TLV for it.  Also, if it is necessary to signal values 
for the fields of the outer iP header, it might make more sense to use 
an "outer encapsulation sub-TLV" (section 3.3).  Do you have an opinion 
about this?
>
> CMP: A couple of editorial comments as well: For GRE, I think you also need to cite RFC 7676 (GRE over IPv6)
Sure.
>
> CMP: Also, having this document Obsolete RFC 5512 effectively also orphans a number of Tunnel types and sub-TLVs. For example, Tunnel Types values 3-6 from RFC 5566 (IPsec Tunnel Encap) and IPsec Tunnel Authenticator sub-TLV. I do not know if the answer is to also have that incorporated (useful parts as you say) and obsoleted. Maybe not, maybe it does make sense given it is a short doc, which would lead to a complete self-contained set of Tunnel types.
I think RFC 5566 will have to be obsoleted and replaced.  I've been 
thinking about that, but I'm still not sure how much of 5566 should be 
moved into the tunnel-encaps draft and how much should be in a separate 
draft.  There are some non-obvious issues to consider.  For example, 
5566 really is  just intended to facilitate iPsec Security Associations 
between BGP Next Hops, but with the tunnel encapsulation attribute we 
could presumably set up Security Associations from ingress to egress.
>
> 3.2.4.  L2TPv3
> …
>        Cookie: an optional, variable length (encoded in octets -- 0 to 8
>        octets) value used by L2TPv3 to check the association of a
>
> CMP: The cookie can only take sizes 0, 4, or 8 octets, and not 0..8
Do you have a reference for that?  Section 4.1 of RFC 3931 seems to say 
only that the field is variable length with a maximum size of 64 bits.
>
> 3.2.7.  MPLS-in-GRE
>
> CMP: This seems to be an example and not a separate encapsulation type. This is GRE Type, with MPLS as protocol sub-TLV. I see that the section says:
>
>     While it is not really necessary to have both the GRE and MPLS-in-GRE
>     tunnel types, both are included for reasons of backwards
>     compatibility.
>
> CMP: I will also note that having two different ways of doing the same thing (Tunnel Type 2 and protocol 0x8847 vs. Tunnel Type 11) takes us away from interop., and that there does not seem to be MPLS-in-GRE defined in any RFC (so it seems like potentially a good time to rationalize instead of perpetuate). My $0.02 only.
Tunnel type 11 is used by draft-ietf-bess-evpn-overlay.
>
> CMP: Should MPLS-over-GRE be an example only? Or otherwise, how do we interop the two types of “ MPLS-over-GRE”?
Well, the two ways of doing the same thing are explicitly defined to be 
equivalent, so I don't think there is an interop issue, the issue is 
more of "can we get rid of the MPLS-in-GRE type without causing a 
backwards compatibility problem".
> Should an example be also added about MPLS-over-L3TPv3?
Surely no one will ever propose MPLS-over-L2TPv3 again!
>
> 3.3.1.  IPv4 DS Field
>
> CMP: Why not also define this for IPv6?
There are a lot of possible Outer Encapsulation sub-TLVs that could be 
created, I only included a couple of examples that seemed like they 
might be useful.  If you have some sub-TLVs to suggest for the case 
where the outer encapsulation is IPv6, please suggest some text.   (Some 
IPv6-specific text will probably make it easier to get the draft past 
the IESG ;-))
>
> 3.3.2.  UDP Destination Port
>
> CMP: One additional thought. Obsoleting RFC 5512 also removes the anchor from RFC 5640 — that is not a terrible deal in itself, but is there also an opportunity to generalize the Load-Balancing approach thereby defined to also include the new encapsulations’ LB, UDP-based (port as the LB Field), etc?
I wasn't aware of RFC 5640.

I don't think there's anything in RFC 5640 that requires the 
Encapsulation-SAFI.  So at a minimum, I think we can get by with saying 
that the tunnel-encaps draft updates RFC 5640, and that the LB Block 
sub-TLV can be included in the a tunnel TLV of a tunnel encapsulation 
attribute that is attached to an update of any AFI/SAFI.

If you think it is worthwhile to generalize the load balancing approach 
of RFC 5640, perhaps the best approach would be to do a 5640bis.

>
> I hope these are clear and useful — Thanks!
>
Looking forward to any additional comments you might have!