From: Antonio Quartulli <antonio@open-mesh.com>
To: "David S. Miller" <davem@davemloft.net>,
Stephen Hemminger <stephen@networkplumber.org>
Cc: <bridge@lists.linux-foundation.org>, <netdev@vger.kernel.org>,
Antonio Quartulli <antonio@open-mesh.com>
Subject: [PATCH 0/3] bridge: implement restricted forwarding policy
Date: Mon, 8 Apr 2013 19:41:00 +0200 [thread overview]
Message-ID: <1365442863-32394-1-git-send-email-antonio@open-mesh.com> (raw)
Hello,
with this patchset I would like to introduce a new feature to be added to the
bridge module that is later going to be one of the building block of a
distributed technique implemented using batman-adv.
The scenario where we want to play is a Layer2 mesh network handled by
the batman-adv module. For who may not know how it works, batman-adv creates a
sort of "extended broadcast domain" shared among nodes that are not directly
connected to each other.
This mechanism provides every node the view of the batman-adv network
as it was a very big Ethernet switch.
The goal we want to achieve by adding this feature consists in selecting a
subset of the interfaces available on all the hosts participating to the mesh
network and to prevent packets from being forwarded from one of them to another.
Looking again at the "very big switch" abstraction this would allow a mesh
network administrator to define a sort of "not forwarding policy network wide"
between some of the big switch's port.
This patchset is introducing the small piece needed by every hosts in the
network to handle the policy locally. In particular, I'm adding a new flag for
the net_device->flags member (IFF_BRIDGE_RESTRICTED) and a new attribute to the
sk_buff structure (bridge_restricted), then the bridge code is modified to
obey the following rule:
* do not forward any skb with the bridge_restricted attribute set to interfaces
marked with the IFF_BRIDGE_RESTRICTED flag.
Later, a change to batman-adv will follow which will make it spit out skbs with
the bridge_restricted member set depending on its distributed logic.
I am not entirely sure if I chose the very best place for those flags. If not,
please advise :)
Thanks a lot.
Cheers,
Antonio Quartulli (3):
if.h: add IFF_BRIDGE_RESTRICTED flag
sk_buff: add bridge_restricted flag
bridge: implement restricted port forwarding policy
include/linux/skbuff.h | 3 ++-
include/uapi/linux/if.h | 1 +
net/bridge/br_forward.c | 18 +++++++++++++++++-
net/bridge/br_input.c | 6 ++++++
net/core/dev.c | 2 +-
5 files changed, 27 insertions(+), 3 deletions(-)
--
1.8.1.5
next reply other threads:[~2013-04-08 17:48 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-08 17:41 Antonio Quartulli [this message]
2013-04-08 17:41 ` [PATCH 1/3] if.h: add IFF_BRIDGE_RESTRICTED flag Antonio Quartulli
2013-04-08 18:58 ` Stephen Hemminger
2013-04-09 6:33 ` Antonio Quartulli
2013-04-09 7:56 ` Antonio Quartulli
2013-04-09 12:57 ` Jamal Hadi Salim
2013-04-09 13:51 ` Antonio Quartulli
2013-04-09 15:49 ` Jamal Hadi Salim
2013-04-10 16:54 ` Antonio Quartulli
2013-04-10 20:46 ` Stephen Hemminger
2013-04-11 10:56 ` Antonio Quartulli
2013-04-11 11:03 ` Jamal Hadi Salim
2013-04-08 17:41 ` [PATCH 2/3] sk_buff: add bridge_restricted flag Antonio Quartulli
2013-04-08 17:41 ` [PATCH 3/3] bridge: implement restricted port forwarding policy Antonio Quartulli
2013-05-06 18:48 ` Using skb->mark outside netfilter (was: [PATCH 0/3] bridge: implement restricted forwarding policy) Antonio Quartulli
2013-05-07 13:04 ` Using skb->mark outside netfilter Jamal Hadi Salim
2013-05-07 13:23 ` Antonio Quartulli
2013-05-07 13:30 ` Jamal Hadi Salim
2013-05-07 14:17 ` Antonio Quartulli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1365442863-32394-1-git-send-email-antonio@open-mesh.com \
--to=antonio@open-mesh.com \
--cc=bridge@lists.linux-foundation.org \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=stephen@networkplumber.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).