From owner-freebsd-current@FreeBSD.ORG Tue Jun 12 18:09:08 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D400416A400 for ; Tue, 12 Jun 2007 18:09:08 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from out4.smtp.messagingengine.com (out4.smtp.messagingengine.com [66.111.4.28]) by mx1.freebsd.org (Postfix) with ESMTP id AE29513C469 for ; Tue, 12 Jun 2007 18:09:08 +0000 (UTC) (envelope-from bms@incunabulum.net) Received: from compute2.internal (compute2.internal [10.202.2.42]) by out1.messagingengine.com (Postfix) with ESMTP id 47B53C69; Tue, 12 Jun 2007 14:09:08 -0400 (EDT) Received: from heartbeat1.messagingengine.com ([10.202.2.160]) by compute2.internal (MEProxy); Tue, 12 Jun 2007 14:09:08 -0400 X-Sasl-enc: Q/HdScJ5YRY8bSZSiAHPewoRqoCmGQ3Dk+eBCXaXEBn4 1181671747 Received: from [192.168.123.18] (82-35-112-254.cable.ubr07.dals.blueyonder.co.uk [82.35.112.254]) by mail.messagingengine.com (Postfix) with ESMTP id A682719D53; Tue, 12 Jun 2007 14:09:07 -0400 (EDT) Message-ID: <466EE142.9090502@incunabulum.net> Date: Tue, 12 Jun 2007 19:09:06 +0100 From: Bruce M Simpson User-Agent: Thunderbird 1.5.0.10 (X11/20070407) MIME-Version: 1.0 To: Julian Elischer References: <466EC92E.2050609@incunabulum.net> <466EDF7C.1080806@elischer.org> In-Reply-To: <466EDF7C.1080806@elischer.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD Current Subject: Re: HEADS UP: Source-specific multicast code committed to tree X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jun 2007 18:09:08 -0000 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