Hi Carsten,

Thanks very much for your review and comments.


----- Original Message -----
> From: Carsten Bormann <c...@tzi.org>
> To: Mark Smith <markzzzsm...@yahoo.com.au>
> Cc: "6...@ietf.org" <6...@ietf.org>
> Sent: Friday, 29 March 2013 7:21 PM
> Subject: Re: "MLDv2 Procedures for Link-Layer Unicast Delivery of Multicast"
> 
> Hi Mark,
> 
> interesting draft.  I'm interested in this from a 6LoWPAN perspective -- 
> everything we can do to get rid of multicasts is very good for 6LoWPANs.
> 
> I don't understand how you think NUD would work with this (3.2) -- are you 
> saying that the multicast emitter actively runs NUD to the targets?
> 

Yes. NUD is performed on the link-local addresses used as the source addresses 
for the MLDv2 messages.

Originally when I was thinking about this, I thought that might be one of the 
things that would need to be changed. However, when I reviewed the part of 
RFC3810 (MLDv2) related to MLD Report source addresses, I came across the 
following in 5.2.13, "Source Addresses for Reports":

   On the other hand, routers MUST silently discard a message that is
   not sent with a valid link-local address, without taking any action
   on the contents of the packet.  Thus, a Report is discarded if the
   router cannot identify the source address of the packet as belonging
   to a link connected to the interface on which the packet was
   received.  A Report sent with the unspecified address is also
   discarded by the router.  This enhances security, as unidentified
   reporting nodes cannot influence the state of the MLDv2 router(s).

It seems to me that the only way to be sure a MLDv2 source link-local address 
is valid and belongs to the link is to test it's existence, which is of course 
what neighbor discovery does using an NS/NA transaction. So the existing ND 
neighor presence discovery mechanism can, and I think the above implies should 
be used to determine MLDv2 link-local source address validity, and therefore 
the ND NUD mechanism can then be used to determine when the neighbor 
disappears, and therefore link-layer unicasting of mulicast IPv6 should stop 
for that now absent listener.

(Out of interest, I checked to see if this sort of link-local address validity 
checking is being performed by Linux and one of the BSDs (I can't remember 
which one). Neither of them did, all they checked was that the source address 
of the MLDv2 report was a link-local address. So they're vulnerable to MLDv2 
reports with spoofed, non-existent link-local addresses ...)

> MLDv2 is a protocol that runs between multicast listeners and multicast 
> routers.
> How do you handle multicast emitters that aren't multicast routers?
> 

The main use case scenario I've been thinking about is multicast IPTV over a 
carrier network, towards a residential customer, where the last hop in the 
customer's home is 802.11, and where the multicast performance problems appear. 
So the multicast source servers would be wired, and on segments where the 
volumes of multicast traffic didn't impact link performance.

My main overriding goals were to avoid changes to the end-hosts, leaving 
changes to be made to the multicast router's behaviour (e.g. residential CPE), 
and to reduce the number of multicasts as much as possible, but not eliminate 
them. Low levels of multicast on 802.11 works ok, it's the high levels that 
cause problems.

If a host implementation can be changed, then it could implement the procedures 
I've described. It could listen to the MLDv2 reports (as non-Querier multicast 
routers do), do neighbor discovery/NUD on the MLDv2 source link-local 
addresses, and then proceed to link-layer unicast the multicast IPv6 traffic to 
its on-link neighbors.

> How do you wean MLDv2 itself off multicast?  (Now that would be my holy 
> grail.  
> We didn't get around to do this in RFC 6775 -- we didn't think we'd 
> have to, since we were addressing a subnet where subnet-multicast doesn't 
> work at all.)  Maybe efficient-ND could do something here.
> 

I've put a little bit of thought into this. If you're able to change the host 
and the router implementations, then I've thought might be able to eliminate 
multicasts by treating the broadcast/multicast link as a Non-Broadcast 
Multi-Access link, and then use RFC2491, "IPv6 over Non-Broadcast Multiple 
Access (NBMA) networks" methods. Briefly looking at it, it does mention how to 
handle the SMDS link layer, and my understanding is that was a connectionless 
(rather than a connection oriented) NBMA link-layer, so treating 802.11 or 
802.3 as an NMBA link could probably use the NBMA IPv6 techniques used for SMDS.

Regards,
Mark.

> Grüße, Carsten
> 
--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------

Reply via email to