[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] 802.1D bridge

From: SimonW
Subject: Re: [lwip-users] 802.1D bridge
Date: Tue, 25 Feb 2020 14:38:31 -0700 (MST)

THanks for the reply. Motivation for the question is.

>From http://www.nongnu.org/lwip/2_1_x/group__bridgeif.html - the only
documentation that I can so far find:

/This file implements an IEEE 802.1D bridge by using a multilayer netif
approach (one hardware-independent netif for the bridge that uses hardware
netifs for its ports). On transmit, the bridge selects the outgoing port(s).
On receive, the port netif calls into the bridge (via its netif->input
function) and the bridge selects the port(s) (and/or its netif->input
function) to pass the received pbuf to.


add the port netifs just like you would when using them as dedicated netif
without a bridge
only NETIF_FLAG_ETHARP/NETIF_FLAG_ETHERNET netifs are supported as bridge
add the bridge port netifs without IPv4 addresses (i.e. pass 'NULL, NULL,
don't add IPv6 addresses to the port netifs!
set up the bridge configuration in a global variable of type
'bridgeif_initdata_t' that contains
the MAC address of the bridge
some configuration options controlling the memory consumption (maximum
number of ports and FDB entries)
e.g. for a bridge MAC address 00-01-02-03-04-05, 2 bridge ports, 1024 FDB
entries + 16 static MAC entries: bridgeif_initdata_t mybridge_initdata =
BRIDGEIF_INITDATA1(2, 1024, 16, ETH_ADDR(0, 1, 2, 3, 4, 5));
add the bridge netif (with IPv4 config): struct netif bridge_netif;
netif_add(&bridge_netif, &my_ip, &my_netmask, &my_gw, &mybridge_initdata,
bridgeif_init, tcpip_input); NOTE: the passed 'input' function depends on
BRIDGEIF_PORT_NETIFS_OUTPUT_DIRECT setting, which controls where the
forwarding is done (netif low level input context vs. tcpip_thread)
set up all ports netifs and the bridge netif
When adding a port netif, NETIF_FLAG_ETHARP flag will be removed from a port
to prevent ETHARP working on that port netif (we only want one IP per bridge
not per port).
When adding a port netif, its input function is changed to call into the
Makes reference to including IPv4 config and not adding IPv6 addresses. I
could do with fuller documentation - or better still an example.

Sent from: http://lwip.100.n7.nabble.com/lwip-users-f3.html

reply via email to

[Prev in Thread] Current Thread [Next in Thread]