Date: Tue, 12 Jun 2007 19:09:06 +0100 From: Bruce M Simpson <bms@incunabulum.net> To: Julian Elischer <julian@elischer.org> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: HEADS UP: Source-specific multicast code committed to tree Message-ID: <466EE142.9090502@incunabulum.net> In-Reply-To: <466EDF7C.1080806@elischer.org> References: <466EC92E.2050609@incunabulum.net> <466EDF7C.1080806@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Julian Elischer wrote: >> * Strict socket membership is now the default; the legacy 4.4BSD >> behaviour of delivering a multicast datagram to all sockets matching >> the 4-tuple has been removed. > this seems a but counterintuitive This particular change only affects UDP. Strictly speaking, multicast datagrams should only be delivered locally to sockets which are members of the multicast group. Source multicast makes this definition stricter - multicast datagrams should only be delivered if the source is permitted to deliver to the destination. In the absence of IGMPv3/MLDv2 support from upstream routers, it is possible for datagrams from blocked sources to reach the end host. For the time being FreeBSD merely enforces these semantics by dropping such datagrams. When IGMPv3/MLDv2 support is added, the source filter list is relayed to upstream multicast routers whenever it changes, and they SHOULD NOT deliver datagrams blocked by source filters to the end host. Other implementations have done this for many years and it's time FreeBSD followed suit. A sysctl to enable the strict behaviour has been in place for a few years now. It is preferred by design in a source multicast environment. regards, BMS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?466EE142.9090502>