Re: [v6ops] new draft: draft-yc-v6ops-solicited-ra-unicast

Owen DeLong <> Wed, 22 July 2015 23:14 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 4A96D1B2D2B for <>; Wed, 22 Jul 2015 16:14:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.111
X-Spam-Status: No, score=-1.111 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_ALL=0.8, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id opeKdJHR-N0D for <>; Wed, 22 Jul 2015 16:14:12 -0700 (PDT)
Received: from ( [IPv6:2620:0:930::200:2]) by (Postfix) with ESMTP id 861EA1B2D12 for <>; Wed, 22 Jul 2015 16:14:12 -0700 (PDT)
Received: from [IPv6:2620::930:0:ae87:a3ff:fe29:7192] ([IPv6:2620:0:930:0:ae87:a3ff:fe29:7192]) (authenticated bits=0) by (8.14.5/8.14.2) with ESMTP id t6MNE7cC017458 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 22 Jul 2015 16:14:07 -0700
Content-Type: text/plain; charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2098\))
From: Owen DeLong <>
In-Reply-To: <>
Date: Wed, 22 Jul 2015 16:14:06 -0700
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <> <> <> <> <> <> <> <> <> <>
To: Erik Nordmark <>
X-Mailer: Apple Mail (2.2098)
Archived-At: <>
Cc: "" <>, v6ops list <>
Subject: Re: [v6ops] new draft: draft-yc-v6ops-solicited-ra-unicast
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: v6ops discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 22 Jul 2015 23:14:14 -0000

> On Jul 22, 2015, at 15:39 , Erik Nordmark <> wrote:
> On 7/21/15 12:47 PM, Ole Troan wrote:
>>> But in terms of implementation, isn't it simpler to always(*) respond to a RS with a unicast RA?
>>> As background, the text in RFC4861 comes from the old concern that all devices might boot at the same time when the power is re-established after a building power failure; that doesn't happen since most devices (laptops, smartphones, IoT devices) have batteries today. In that case it might have made sense to sending fewer RA messages by using multicast.
>> in addition to Mark’s points.
>>  - what happens when the router reboots, will not all the hosts then try to actively reconnect?
>>    that router could server thousands of users.
>>  - while this is intended for WIFI networks, in common deployments the WIFI interface is not integrated in the router. for the router’s perspective this just looks like another wired interface. either this has to be made configurable and not the default, or considerations of large flat wired L2 networks must also be considered.
> Ole,
> Even on a flat wired L2 network I don't think it is harmful to default to unicast solicited RAs.
> If we take a worst case of 10000 hosts on the L2 network all rebooting/initializing at the same time, we will see:
> - 10000 DAD probes for link-local address
> - 10000 MLD joins for the solicited node MC for their link-locals

As was pointed out earlier, we shouldn’t see MLD joins for LL solicited nodes or any other LinkScoped group, unless I am badly misunderstanding things.

> - 10000 RS messages(*)
> - 1/10000 RA messages

I think you mean 1 to 10000 because I don’t think fractional messages are possible.

> - 10000 DAD probes for global addresses (N x 10000 if N prefixes on-link)
> - N x 10000 mDNS etc type packets
> (*) RFC 4861 suggests receiving an RA before an RS is sent, thus under some timing conditions some RS messages might be avoided.
> But at best we seem to be talking about saving 20% of the packet during the boot of the 10000 hosts.

True… However, even if this is an actual concern, we could consider a threshold in PPS where we send an RA Mcast response.

e.g. if more than 10 RS received in 1 second, send a multicast RA.

In fact, we could probably get away with delaying an RA response to RS for 250ms. If another RS arrives during that delay, respond multicast, else unicast.

That probably still eliminates most of the RA traffic, may eliminate many of those 10000 RS messages, and could provide kind of the best of both worlds.
I’m not sure how hard it would be to implement in silicon, however.