Network Bridging Application Development (Windows Embedded CE 6.0)
1/6/2010
Media Access Control (MAC) network bridges interconnect network segments in a multiple-segment network by forwarding frames from one segment to another.
Using Network Bridging, you can integrate all of the parts required to include MAC bridging on your target device. The network bridging implementation consists of a single module, Mbridge.dll. Network Bridging is dependent on the Network Driver Interface Specification (NDIS) implementation in Windows Embedded CE and is implemented as an NDIS intermediate driver. The intermediate driver appears as miniport to the protocol layer above it and a protocol driver to the miniport driver it binds to. To include network bridging, you also need to include the NDIS Catalog item in your OS design.
Windows Embedded CE supports a MAC bridge for Ethernet local area networks (LANs). A MAC bridge facilitates the setup and administration of multisegment networks. Without a bridge, a network administrator must assign a subnet number to each network segment, correctly configure the hosts on each subnet, as well as configure how packets are forwarded between the subnets. Bridging the segments that make up the network enables the network to operate as a single Internet Protocol (IP) subnet.
When packets are sent over a multiple-segment network, the MAC bridge notes the source MAC address of every frame received on any port that is in the listening or forwarding state. The bridge stores this data in a database that maps MAC addresses to port numbers. The database holds one entry for each distinct MAC address indicating the port at which traffic from that MAC address was last observed on. Timeout rules ensure that a database entry is removed after a certain time period has elapsed — 300 seconds by default — since traffic from a specific MAC address was last observed.
Frames that are received on ports that are in the forwarding state are eligible to be forwarded to one or more target ports. If the database has an entry for the destination MAC address of the received frame, the bridge forwards the frame to the port indicated in the database provided that the port is also in the forwarding state.
If the database does not contain a MAC address that corresponds with the destination address of the received frame, the frame is flooded out to all ports on the network that are in a forwarding state, which results in every eligible port receiving a copy of the frame.
The learning process implemented through the MAC bridge database minimizes the number of received frames that are transmitted to all eligible ports by flooding. Once the bridge has received a frame from a specific host, it learns of and memorizes the location of the port through which the host can be reached.
Network Bridging supports IPv6. For more information, see Core Protocols of IPv6 and IPv6 Addressing.
See Also
Concepts
Network Bridging Architecture
Network Bridging Spanning Tree Algorithm
Network Bridging Registry Settings
Network Bridging Object Identifiers