Re: [IPv6] Variable IIDs

Vasilenko Eduard <vasilenko.eduard@huawei.com> Mon, 06 November 2023 17:55 UTC

Return-Path: <vasilenko.eduard@huawei.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 45692C1C5F2F for <ipv6@ietfa.amsl.com>; Mon, 6 Nov 2023 09:55:39 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.204
X-Spam-Level:
X-Spam-Status: No, score=-4.204 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id sDlsWvHGNj_n for <ipv6@ietfa.amsl.com>; Mon, 6 Nov 2023 09:55:33 -0800 (PST)
Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 45C37C1CB008 for <ipv6@ietf.org>; Mon, 6 Nov 2023 09:55:10 -0800 (PST)
Received: from mscpeml500001.china.huawei.com (unknown [172.18.147.226]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4SPJmY1kkcz6JB7n; Tue, 7 Nov 2023 01:50:53 +0800 (CST)
Received: from mscpeml500001.china.huawei.com (7.188.26.142) by mscpeml500001.china.huawei.com (7.188.26.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.31; Mon, 6 Nov 2023 20:55:07 +0300
Received: from mscpeml500001.china.huawei.com ([7.188.26.142]) by mscpeml500001.china.huawei.com ([7.188.26.142]) with mapi id 15.01.2507.031; Mon, 6 Nov 2023 20:55:07 +0300
From: Vasilenko Eduard <vasilenko.eduard@huawei.com>
To: "Philipp S. Tiesel" <philipp@tiesel.net>, David Farmer <farmer=40umn.edu@dmarc.ietf.org>
CC: 6man <ipv6@ietf.org>
Thread-Topic: [IPv6] Variable IIDs
Thread-Index: AQHaDsObYplME4rvmUm7qkPW0a/wtLBtVS4AgAAHfQCAADpZUA==
Date: Mon, 06 Nov 2023 17:55:07 +0000
Message-ID: <977b7637e6c446a79887d223d3880784@huawei.com>
References: <d935987f-7550-855a-c57f-7f8c2fc6e5cf@gmail.com> <CAN-Dau1Q=ZkLUbi9s44QtGk+mC=ZoZZtqrWJ8Vez0yKwZvkwaw@mail.gmail.com> <1D146B15-1D58-4B0B-90C6-381E4FCDC40E@tiesel.net>
In-Reply-To: <1D146B15-1D58-4B0B-90C6-381E4FCDC40E@tiesel.net>
Accept-Language: en-US, zh-CN
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.81.194.124]
Content-Type: multipart/alternative; boundary="_000_977b7637e6c446a79887d223d3880784huaweicom_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/G-ewQ5Z1MsDAY18uxCa4uo6x7lc>
Subject: Re: [IPv6] Variable IIDs
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Nov 2023 17:55:39 -0000

I believe too that /80 is a good new target for SLAAC.
Ed/
From: ipv6 [mailto:ipv6-bounces@ietf.org] On Behalf Of Philipp S. Tiesel
Sent: Monday, November 6, 2023 8:26 PM
To: David Farmer <farmer=40umn.edu@dmarc.ietf.org>
Cc: 6man <ipv6@ietf.org>
Subject: Re: [IPv6] Variable IIDs

Hi David,

I like the Idea of the V-Flag, but guess the backward compatibility with the I-Flag is just too complicated.
SLAAC with smaller IIDs that 64bits only make sense in constrained environments where one could be reasonably sure all nodes support that.

So just adding a V flag signalling SLAAC Auto-configuration with smaller IIDs than /64 should be sufficient.

AVE!
   Philipp


On 6. Nov 2023, at 17:58, David Farmer <farmer=40umn.edu@dmarc.ietf.org<mailto:farmer=40umn.edu@dmarc.ietf.org>> wrote:

I agree with Lorenzo. It isn't a good idea to allow IIDs shorter than 48 bits, but a variable length between 64 and 48 bits would be acceptable.

I prefer two new one-bit PIO flags from Reserved1. Call the first one the V-flag. It would be similar to the A-flag, which would be left unchanged for backward compatibility, and support remains REQUIRED. However, the V-flag would allow a variable IID length for SLAAC between 64 and 48 bits for new nodes supporting this capability. The other is the I-flag, which can be used with the A-flag to tell new nodes supporting this capability not to generate an address for the A-flag and presumably use another PIO with the V-flag instead. Support for the V and I flags would be RECOMMENDED.

- A /64 PIO with only the A-flag, or both the A and V flags, both new and old nodes generate an address.

- A /64 PIO with both the A-flag and the I-flag, only old nodes generate an address.

- A /65 to /80 PIO with the V-flag, only new nodes generate an address. If the A-flag were set, it would be ignored.

- If the I-flag is set on a /64 PIO without the A-flag or a PIO of any other length, it is ignored.

- If you added L=0, you could have a /65 to /80 PIO with the V=1 and L=0 and an overlapping /64 PIO with the A=1, I=1, and L=0 without needing ND-Proxy.

Otherwise, overlapping PIOs would require ND-Proxy support in the routers.

Just my 2 cents.

On Fri, Nov 3, 2023 at 9:06 PM Brian E Carpenter <brian.e.carpenter@gmail.com<mailto:brian.e.carpenter@gmail.com>> wrote:
If anyone wants to turn this into an I-D, please feel free.

title: Variable Length Interface Identifiers
abbrev: Variable IIDs
docname: draft-tbd-6man-variable-iids-00

# Introduction

The lowest common denominator method of configuration for IPv6 nodes is SLAAC {{!RFC4862}}, which is carefully designed to allow any prefix length and any interface identifier (IID) length, provided that they do not total more than 128 bits. Until now, specifications of "IPv6 over foo" mappings, starting with {{!RFC2464}}, have specified an IID length of 64 bits, consistent with the value specified by {{!RFC4291}}.

This document allows a router to announce an IID length other than 64 on a given link, and updates RFC 4291, RFC 2464 (and numerous other "IPv6 over foo" documents TBD), and RFC 4862 accordingly. It extends {{!RFC4861}} by defining a new "IID length" mechanism in RA messages.

Terminology: a "modified" host or router supports this spec. An "unmodified" host or router supports RFC 4861 and 4862 precisely.

# Modified procedures

The predefined IID length specified by RFC 4291, RFC 2464, etc. is used to configure the link-local IPv6 address of a node exactly as described in RFC 4862.

On a link where variable IID length is not supported, the predefined IID length will continue to be used to configure all other addresses using SLAAC.

On a link where variable IID length is supported, each modified router will include an "IID length" indication in every RA/PIO message with the A bit set. This will override the value defined in RFC 2464 (etc.) and in RFC 4291, for the prefix concerned.

Suggestion: put the IID length in 6 bits of the Reserved2 field of the PIO. 0b000000 would mean 64, i.e. no change and backwards compatible. Any other value would define an IID length in bits. Values less than 48 (0b110000) are NOT RECOMMENDED. Values greater than 64 are impossible.

(Note: Reserved1 is not available - see {{?RFC8425}}.)

When a modified node receives an "IID length" less than 64, it will use that value instead of the default for all unicast address autoconfiguration under that prefix, except link-local.

# Deployment issues

  - Unmodified hosts and unmodified routers: no change, all use 64-bit IIDs.

  - Modified hosts and unmodified routers: no change, all use 64-bit IIDs.

  - Modified hosts and modified routers: configure to use longer prefixes and shorter IIDs if desired.

  - Modified routers and mixture of modified and unmodified hosts on a link:

    - The modified hosts will use a shorter IID and longer prefix if that is announced.

    - The unmodified hosts, according to RFC 4861, MUST ignore the Reserved1 field. So, according to section 5.5.3 clause d) of RFC 4862, they will ignore any PIO advertising a shorter IID. Therefore, the operator has two choices:

      1. Decide that unmodified hosts will not be supported (i.e. will not be able to configure an address using SLAAC).

      2. Announce (at least) two prefixes on the link - a /64 and a longer one, with a shorter IID. For that to make sense, we need an extra rule for modified hosts: if a host receives several PIOs from the same router, it prefers all those with the shortest IID and ignores the others.

  - Mixture of modified and unmodified routers on a link: don't do that!

# IANA Considerations

Maybe a registry for the Reserved2 field, like RFC 8425?

# Security Considerations

Nothing new?


--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org<mailto:ipv6@ietf.org>
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------


--
===============================================
David Farmer               Email:farmer@umn.edu<mailto:Email%3Afarmer@umn.edu>
Networking & Telecommunication Services
Office of Information Technology
University of Minnesota
2218 University Ave SE        Phone: 612-626-0815
Minneapolis, MN 55414-3029   Cell: 612-812-9952
===============================================
--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org<mailto:ipv6@ietf.org>
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------


AVE!
   Philipp S. Tiesel

--
Philipp S. Tiesel
https://philipp.tiesel.net/