Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp1223126imu; Fri, 21 Dec 2018 15:09:24 -0800 (PST) X-Google-Smtp-Source: AFSGD/WgSU2aRJeEuKftILXZHVCpIipI0EjErUTYNzvZZ9Bp/agG0xSj6dJc9+4BWOukcswGeWoG X-Received: by 2002:a62:c42:: with SMTP id u63mr4338795pfi.73.1545433764382; Fri, 21 Dec 2018 15:09:24 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 2si22223768pla.156.2018.12.21.15.09.08; Fri, 21 Dec 2018 15:09:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=temperror (no key for signature) header.i=@c0d3.blue header.s=2018 header.b=s388RoDa; arc=fail (DNS record missing); spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2404048AbeLUPP0 (ORCPT + 99 others); Fri, 21 Dec 2018 10:15:26 -0500 Received: from mail.aperture-lab.de ([138.201.29.205]:38484 "EHLO mail.aperture-lab.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730803AbeLUPPZ (ORCPT ); Fri, 21 Dec 2018 10:15:25 -0500 From: =?UTF-8?q?Linus=20L=C3=BCssing?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=c0d3.blue; s=2018; t=1545405322; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references; bh=lTRJUL0Yahq7JN1bW0uPxHC2MDoSg3ibls3Avb5GR/M=; b=s388RoDaer9X9snNErQYSgRYEE3Cqz6AwiN/eWp1+DF6xTfx/xnavfbF7FiZow/4JIbxNY xxzEC7l87k1N3FqTUInpB4eDOQUHBgwGNppm3UBbjD19yJXEgXMZS7Tf/hMwVZUZ9UQQSN B2Xq12Qvu5w7bh11BE7+MK0+01eM6+894dE1KaDhm6UMGmxzRTLpIZTK5vXFVVQlCmeJjo B+Xqb30fa11POH66OAr8YNztSEYOgM9zXRw24is0SFTXBLkfCHWef95MOK3ymxRuA279gf Fiyxwm7f5NYmenxcvjCq5WX/UOEAzBV1iedyBAR2a9oyIlPj9HuEfh2dmDhgsQ== To: netdev@vger.kernel.org Cc: Roopa Prabhu , Nikolay Aleksandrov , Alexey Kuznetsov , Hideaki YOSHIFUJI , "David S . Miller" , bridge@lists.linux-foundation.org, b.a.t.m.a.n@lists.open-mesh.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 0/4] bridge: implement Multicast Router Discovery (RFC4286) Date: Fri, 21 Dec 2018 16:15:07 +0100 Message-Id: <20181221151511.14923-1-linus.luessing@c0d3.blue> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=c0d3.blue; s=2018; t=1545405322; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references; bh=lTRJUL0Yahq7JN1bW0uPxHC2MDoSg3ibls3Avb5GR/M=; b=jZ8yB4xIk9J17F1YY25e9WUhVljLguSPcudp56TnBfz+5iEmFN44fgB2nmdcu6yQGplhxe PgIU2+D4/3O/Srv+hofLvzWhlyLCPJiSTKcCwDPm51TCv2TkaNfOkA0ozMcVmbipB/w4Q9 7vBpnaTmPyuKZv17G8U68S4ZAOTQ6IAwtg7nW5Soq1G0fbzJ+Mt7QX7LOEGrWzEiLbMSWg 8Gl8S1E/W9xAYm6mVoANjB2qJRBR7/1UvstR2bW3U9sdnEdyFHo6o3JdIYuAXFy6QDnyLS cQsNABn/tJlDedZ8zSByTH9fNES+0jUXG95t246RLYfMBU2sTp55Z3Ze6s9c8w== ARC-Seal: i=1; s=2018; d=c0d3.blue; t=1545405322; a=rsa-sha256; cv=none; b=a0Ynt6pKn8Dl+j6ISQ6+Bvs5Tl0wbV8Eg0RKYb5H0Z1zwT0jT0pt9lkZMIPpjta9+UQS8U QVT8Gn9D4zazyLJciAi6LHCKstUuzquCc8jkRZhBmd4qR3Fc7fHeZwwnyr20SZpy5jPf+S mRQwK0rPqocClTWMYC2BC2MyKH7NTrNex4GFqiQg4Qyi39Lw2xmHOYC2dhbOgzgzKekYwB AGnmmKKxhA/+sTmE6pWyXv4/0JAMrd39eQmo+HQHHCwesVrtlXmZ18t2Wx+sFYsHRTZf3R +AqtBYKt6hedachPP+hv0/L2FfFlfJUv6rTUi06Z9EIPf0/u4nOHD4/gEh/GKA== ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=linus.luessing@c0d3.blue smtp.mailfrom=linus.luessing@c0d3.blue Authentication-Results: ORIGINATING; auth=pass smtp.auth=linus.luessing@c0d3.blue smtp.mailfrom=linus.luessing@c0d3.blue Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patchset adds initial Multicast Router Discovery support to the Linux bridge (RFC4286). With MRD it is possible to detect multicast routers and mark bridge ports and forward multicast packets to such routers accordingly. So far, multicast routers are detected via IGMP/MLD queries and PIM messages in the Linux bridge. As there is only one active, selected querier at a time RFC4541 ("Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches") section 2.1.1.a) recommends snooping Multicast Router Advertisements as provided by MRD (RFC4286). The first two patches are refactoring some existing code which is reused for parsing the Multicast Router Advertisements later in the fourth patch. The third patch lets the bridge join the all-snoopers multicast address to be able to reliably receive the Multicast Router Advertisements. What is not implemented yet from RFC4286 yet: * Sending Multicast Router Solicitations: -> RFC4286: "[...] may be sent when [...] an interface is (re-)initialized [or] MRD is enabled" * Snooping Multicast Router Terminations: -> currently this only relies on our own timeouts * Adjusting timeouts with the values provided in the announcements Regards, Linus