Re: [dhcwg] I-D Action: draft-ietf-dhc-dhcpv6-pd-relay-requirements-00.txt

Timothy Winters <tim@qacafe.com> Wed, 08 April 2020 13:22 UTC

Return-Path: <tim@qacafe.com>
X-Original-To: dhcwg@ietfa.amsl.com
Delivered-To: dhcwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 7F27E3A0899 for <dhcwg@ietfa.amsl.com>; Wed, 8 Apr 2020 06:22:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=qacafe.com
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 hdM-Y1fG6EG3 for <dhcwg@ietfa.amsl.com>; Wed, 8 Apr 2020 06:22:09 -0700 (PDT)
Received: from mail-wr1-x42d.google.com (mail-wr1-x42d.google.com [IPv6:2a00:1450:4864:20::42d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 54F133A0883 for <dhcwg@ietf.org>; Wed, 8 Apr 2020 06:22:09 -0700 (PDT)
Received: by mail-wr1-x42d.google.com with SMTP id h9so7794169wrc.8 for <dhcwg@ietf.org>; Wed, 08 Apr 2020 06:22:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qacafe.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=yEqA1Au9RKOCgMQj86oD9wrj3c6ArvJG3O0n0o8cj6s=; b=YeYXay7fQL3yEcdF2cezFj3FEcUbo1LmXGj4THdyio/XOYilDNKvtCIfiKkCfN2y4d oI+HS2NZxPYcEwedYPeH+7PqXhhKQQuweKqH2tiQ5OPwxYRUrWL+j2+t/LBCfDUPNrHR ZlDUuPAlNTzBSOplQ9ilbgGf6gAoCz9pTLm+s=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=yEqA1Au9RKOCgMQj86oD9wrj3c6ArvJG3O0n0o8cj6s=; b=FSPyKsV2zRhWT0X8h56HfPqjbj2MiRW2PzL3ZWhGWjGAlqASQ5iS412IwK53LDa8TE lzqRwC7J7upqbE5ouwEOnEZNdwa76brRGhwdv/m8ylKZj7Ess38OV9w3G+WiNADoooI4 4pCWlZhVMNuqJEegs/XencYBp359Kas49OqoEj8ppqF7obZNa6kcAF4fvPwX6ei/9eTU mbvXV5liNoeU1+08iwMKEVI4R7xynsko3KNaCPGtsZPLmfHGprnca1PDA9FoaPkvvq4/ y5MXQk65uGePaEYaX6/7kyr/AAhFawE8gSlPlZGVZkDlDhwKOGz3VosterMO9zjTQhgd +aqw==
X-Gm-Message-State: AGi0PuY78JzPqGaWjVN2CXzhdfBXjSKuNgMkhGADKf8YRU95Is2RVnRi ZYJ+yoMw878KK88fysd6VMifTVr/T7TBvH+LFfBFOw==
X-Google-Smtp-Source: APiQypJHh422GkoL6iM8ni2qTCREWVG5DE3Uwl7hJxnaULjdVVczvhG0flAig0lyZzoybQxgZBQYiGKLyB5HDKp9GSA=
X-Received: by 2002:adf:ed52:: with SMTP id u18mr3967724wro.377.1586352127597; Wed, 08 Apr 2020 06:22:07 -0700 (PDT)
MIME-Version: 1.0
References: <158346050095.14620.2547383825421375669@ietfa.amsl.com> <CANFmOt=21NNyYom9KtVQ7x5mTE6rR2GAAg8DwAdaptuOWAJLrQ@mail.gmail.com> <BN7PR11MB2547E17639F673343B5210BBCFFC0@BN7PR11MB2547.namprd11.prod.outlook.com> <CANFmOtnWHJzNtw8-aj+Dqgbqh0aeDMVtXcnib0RC4Bpi+OW0eg@mail.gmail.com> <43727BCE-732F-4629-8BCD-EBCDE2507B82@cisco.com> <BN7PR11MB2547273DA5E1D5F39F26629ACFF00@BN7PR11MB2547.namprd11.prod.outlook.com> <BN7PR11MB254754D841622448F49B021ACFCE0@BN7PR11MB2547.namprd11.prod.outlook.com> <98E34F29-CAB3-4FC3-9B53-AB17AF811683@gmx.com> <75369E25-F0D9-47A5-A94C-EF40736656FC@cisco.com> <D847C596-F3D0-4165-BA5B-32E0D4E7BA35@gmx.com> <BN7PR11MB254768A96E2FCD8A56C92138CFC90@BN7PR11MB2547.namprd11.prod.outlook.com>
In-Reply-To: <BN7PR11MB254768A96E2FCD8A56C92138CFC90@BN7PR11MB2547.namprd11.prod.outlook.com>
From: Timothy Winters <tim@qacafe.com>
Date: Wed, 08 Apr 2020 09:21:56 -0400
Message-ID: <CAJgLMKs+v-NF4n7Jg+2LxA965e=FtYt-i9OA7XuWMFkum9VC+w@mail.gmail.com>
To: "Bernie Volz (volz)" <volz=40cisco.com@dmarc.ietf.org>
Cc: "ianfarrer@gmx.com" <ianfarrer@gmx.com>, "draft-ietf-dhc-dhcpv6-pd-relay-requirements@ietf.org" <draft-ietf-dhc-dhcpv6-pd-relay-requirements@ietf.org>, "dhcwg@ietf.org" <dhcwg@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000000df29b05a2c763dc"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dhcwg/W_nyp3PFX3_S_tmJnjRe_uynJ2c>
Subject: Re: [dhcwg] I-D Action: draft-ietf-dhc-dhcpv6-pd-relay-requirements-00.txt
X-BeenThere: dhcwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: <dhcwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dhcwg/>
List-Post: <mailto:dhcwg@ietf.org>
List-Help: <mailto:dhcwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dhcwg>, <mailto:dhcwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 08 Apr 2020 13:22:13 -0000

Hi Ian,

I've read this draft including Bernie comments and think it will be ready
for the last call.

I did have one extra thought about IA_PD and forwarding loops.   In the
case where the delegating router has a route to the CPE for a delegated
prefix and the CPE loses that prefix (reboot, loses sense of time/space,
etc).  The Router will continue to send traffic to the CPE for that
prefix.  While the CPE waits for DHCP it will typically get a route with
RAs and send the traffic back to the router, making a loop until DHCPv6
happens.  If the loop has lots of IPv6 traffic sometimes DHCPv6 is dropped
so you have to wait until the traffic dies down to get the CPE and prefix
again.  Is this something that we think we should try to solve in this
document?

~Tim

On Wed, Apr 1, 2020 at 2:43 PM Bernie Volz (volz) <volz=
40cisco.com@dmarc.ietf.org> wrote:

> Hi:
>
>
>
> For G-5:  OK … so G-4 says to do it for a single interface, G-5 says to do
> it across multiple interfaces (of the relay).
>
>
>
> And looks good for other issues.
>
>
>
> Thanks!
>
>
>
>    - Bernie
>
>
>
> *From:* ianfarrer@gmx.com <ianfarrer@gmx.com>
> *Sent:* Wednesday, April 1, 2020 2:29 PM
> *To:* Bernie Volz (volz) <volz@cisco.com>
> *Cc:* draft-ietf-dhc-dhcpv6-pd-relay-requirements@ietf.org; dhcwg@ietf.org
> *Subject:* Re: [dhcwg] I-D Action:
> draft-ietf-dhc-dhcpv6-pd-relay-requirements-00.txt
>
>
>
> Hi Bernie,
>
>
>
> Please see inline below.
>
>
>
> Thanks,
>
> Ian
>
>
>
>
>
>
>
>    G-5:    The relay MUST allow the same client identifier (DUID) to
>
>            have active delegated prefix leases on more than one
>
>            interface simultaneously.  This is to allow client devices
>
>            with duplicate DUIDs to function on separate broadcast
>
>            domains.
>
> - See earlier my points in section 3.4; not sure how best to “modify” this
> item.
>
>
>
> [if - What about changing to:
>
>
>
> The relay SHOULD allow the same client identifier (DUID) to have active
> delegated prefix leases on more than one
> interface simultaneously, unless client DUID uniqueness is necessary for
> the functioning or security of the network.
>
> This is to allow client devices with duplicate DUIDs to function on
> separate broadcast domains.
>
> ]
>
> BV> OK, but I guess I should have raised this earlier but what is meant by
> Interface? Who’s interface? Do we need “on more than one interface” in this
> sentence?
>
>
>
> [if - Good point. This is intended to cover deployment scenario where a
> single L3 router has many customer facing interfaces each with a relay
> function. So, to clarify this:
>
>
>
> If a device has multiple interfaces that implement a delegating relay
> function, the device SHOULD allow the same client identifier (DUID) to
>
> have active delegated prefix leases on more than one interface
> simultaneously, unless client DUID uniqueness
>
> is necessary for the functioning or security of the network.
>
> This is to allow client devices with duplicate DUIDs to function on
> separate broadcast domains.
>
>
>
> ]
>
>
>
>
>
>    G-6:    The maximum number of simultaneous prefixes delegated to a
>
>            single client MUST be configurable.
>
>
>
>    G-7:    The relay MUST implement a mechanism to limit the maximum
>
>            number of active prefix delegations on a single port for all
>
>            client identifiers and IA_PDs.  This value SHOULD be
>
>            configurable.
>
> - For G-6 ad G-7, are there some recommendations about what (a) a
> reasonable number to support is and (b) what the default should be? While
> it would be great to have this be “unlimited”, likely equipment
> manufacturers might like some guidance. For example we could say that
> “While allowing this to be fully configurable, delegating relays should
> support at least 8 per client device and use this as the default limit.”
> That’s just an example.
>
>
>
> [if - This is a good question. We could add another requirement here
> recommending that the delegating relay supports at least X prefixes per
> client. The question is what value? I’ve seen 4-8 in SP edge routers, so I
> think 8 is a reasonable value, but I’m not sure whether this is reasonable
> for CMTS/BNG etc. Any insight would be appreciated here.
>
> ]
>
> BV> Yeah – I don’t have any direct insight. I agree that 8 is a reasonable
> value as I would hope it would never be that many to start with.
>
>
>
> [if - I’ll go with 8 for now and hopefully we’ll get some more feedback
> during last call. For the wording:
>
>
>
>           G-7: The relay MUST implement a mechanism to limit the
>
>             maximum number of active prefix delegations on a single port
> for all
>
>             client identifiers and IA_PDs. This value MUST be configurable.
>
>
>
>           G-8: It is RECOMMENDED that delegating relays support
>
>             at least 8 active delegated leases per client device and use
> this
>
>             as the default limit.
>
>
>
> I don’t think that we need the ‘fully configurable line’ in G-8 as it’s
> covered in G7 (I’ve changed the old SHOULD to a MUST for the configurable
> statement in G7]
>
>
>
>
>
>    G-8:    The delegating relay MUST synchronize the lifetimes of active
>
>            prefix delegation leases with server.
>
> - I’m not sure I completely understand what this requirement means. Are
> you suggesting NTP or similar time synchronization be used? As lifetimes
> are relative (seconds remaining, not absolute time stamps) in DHCP
> messages, I’m not sure why NTP would be that critical. As there are 3
> places lifetimes would be stored (server, delegating relay, client), unless
> all of these clocks were synchronized, some drift should be tolerated
> (i.e., not all clocks will tick at the same rate).
>
>
>
> [if - The important thing here is the lease lifetime synchronisation
> between the server, delegating relay and client from the timers in the
> Reply messages. No suggestion that NTP should be used for that as it’s the
> DHCP lifetimes that matter. As this is a requirements document, we didn’t
> want to define how the delegating relay performs this synchronisation (like
> with SAVI), just that this needs to happen. Do you think that this is the
> wrong approach, or is the requirement text not clear as to the intention?
>
> ]
>
> BV> I think perhaps this could be worded in a different way? Perhaps
> something like “The delegating relay MUST update the lifetimes based on the
> Client Reply messages it forwards to the client and only expire the
> delegated prefixes when the valid lifetime has elapsed.” Isn’t that really
> what you are after?
>
>
>
> [if - OK]
>
>
>
> BV> I also wonder whether there is some value in pointing out that
> “snooping” Client Reply Messages cannot capture which delegated prefixes
> have been released; Client Release messages must be monitored instead.
> (While it was something I had noted but for some reason failed to bring up
> during the RFC8415 discussion, it would have been a nice change to allow a
> Server to send back the “released” leases in the Reply to the respond with
> the IA_*/IA* options containing 0 lifetimes. This would have made snooping
> a bit simpler as I think then it would have been possible to just snoop the
> Reply messages.
>
>
>
> [if - This could actually be a problem for e.g. a user is being DoS’d.
> Even if they were to release their current lease, change their DUID and get
> new leases the relay would continue to forward the DoS traffic to the old
> prefix until it aged out.
>
>
>
> The 0 lifetime in the server response seems like a neater solution to me,
> but it sounds like that ship has sailed. What about adding the following in
> general requirements?:
>
>
>
> G-10: On receipt of a Release message from the client, the delegating
> relay MUST expire the active leases for each of the IA_PDs in the message.]
>
>
> _______________________________________________
> dhcwg mailing list
> dhcwg@ietf.org
> https://www.ietf.org/mailman/listinfo/dhcwg
>