[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[DNA] Re: RS/RA Exchange
> I was considering what it would be like to have a router
> which always does unicast response at short interval, and one
> which never unicast responds, and has a large interval between
> (even solicited) mutlicast RAs.
>
> In this case, there would actually be less packets on the link
> in the case of solicitation storms, since the slow router
> would sometimes use the same multicast packet to respond to
> many hosts.
I don't know if others have explored this idea, so I might as well
blurt it out.
The RA delay is based on two concerns:
1. multiple (lots?) of routers on the link responding at identical time
to a RS
2. rate limiting - and using a multicast RA to respond to multiple RSs
I think we can address #1 by having the routers listen to each others RAs
on the link (per RFC 2461 they should do this to check for inconsistent
information) and track how many routers are on the link.
Then make this reason for the delay be a function of the number
of known routers - if there is only one router on the link the
delay can be zero.
If the router has a fine enough granularity and the link speed is
10 Mbps per second, I think having the random delay be 10 milliseconds
for every router more than one.
One way to address #2 is through a token bucket filter.
Imagine a token bucket which can hold, say, 50 tokens,
and that is filled with one token every 3 seconds.
(This keeps the average rate below on RA every 3 seconds just as
in RFC 2461.)
When a RS arrives and the number of tokens is greater than 1,
immediately unicast a RA (taking delay #1 into account if > 1 router on
the link) and remove one token.
When a RA arrives and the number of tokens is one,
immediately multicast a RA (again taking #1 into account)
and remove one token.
When a RA arrives and the number of tokens is zero,
record that a multicast RA should be sent when a token is added.
This ensures that one can handle a burst of RSs without delay
(or a very small delay when there are multiple routers) without
loosing rate limiting.
Also, should a flood (of more than 50 RSs) then after the 49 unicast RAs
the system will multicast a RA every 3 seconds.
Erik