1.1 --- a/src/devices/bridge/bridge-channel.h Sat Aug 23 22:35:10 2008 +0100
1.2 +++ b/src/devices/bridge/bridge-channel.h Tue Aug 26 12:25:08 2008 +0100
1.3 @@ -25,9 +25,13 @@
1.4 namespace ns3 {
1.5
1.6 /**
1.7 - * \ingroup netdevice
1.8 + * \ingroup bridge
1.9 *
1.10 - * \brief bridge net device for bridge things and testing
1.11 + * \brief Virtual channel implementation for bridges (BridgeNetDevice).
1.12 + *
1.13 + * Just like BridgeNetDevice aggregates multiple NetDevices,
1.14 + * BridgeChannel aggregates multiple channels and make them appear as
1.15 + * a single channel to upper layers.
1.16 */
1.17 class BridgeChannel : public Channel
1.18 {
2.1 --- a/src/devices/bridge/bridge-net-device.h Sat Aug 23 22:35:10 2008 +0100
2.2 +++ b/src/devices/bridge/bridge-net-device.h Tue Aug 26 12:25:08 2008 +0100
2.3 @@ -31,9 +31,37 @@
2.4 class Node;
2.5
2.6 /**
2.7 - * \ingroup netdevice
2.8 + * \ingroup devices
2.9 + * \defgroup bridge Bridge
2.10 *
2.11 - * \brief bridge net device for bridge things and testing
2.12 + * \brief a virtual net device that bridges multiple LAN segments
2.13 + *
2.14 + * The BridgeNetDevice object is a "virtual" netdevice that aggregates
2.15 + * multiple "real" netdevices and implements the data plane forwarding
2.16 + * part of IEEE 802.1D. By adding a BridgeNetDevice to a Node, it
2.17 + * will act as a "bridge", or "switch", to multiple LAN segments.
2.18 + *
2.19 + * By default the bridge netdevice implements a "learning bridge"
2.20 + * algorithm (see 802.1D), where incoming unicast frames from one port
2.21 + * may occasionally be forwarded throughout all other ports, but
2.22 + * usually they are forwarded only to a single correct output port.
2.23 + *
2.24 + * \attention The Spanning Tree Protocol part of 802.1D is not
2.25 + * implemented. Therefore, you have to be careful not to create
2.26 + * bridging loops, or else the network will collapse.
2.27 + *
2.28 + * \attention Bridging is designed to work only with NetDevices
2.29 + * modelling IEEE 802-style technologies, such as CsmaNetDevice and
2.30 + * WifiNetDevice.
2.31 + *
2.32 + * \attention If including a WifiNetDevice in a bridge, the wifi
2.33 + * device must be in Access Point mode. Adhoc mode is not supported
2.34 + * with bridging.
2.35 + */
2.36 +
2.37 +/**
2.38 + * \ingroup bridge
2.39 + * \brief a virtual net device that bridges multiple LAN segments
2.40 */
2.41 class BridgeNetDevice : public NetDevice
2.42 {
2.43 @@ -41,6 +69,17 @@
2.44 static TypeId GetTypeId (void);
2.45 BridgeNetDevice ();
2.46
2.47 + /** \brief Add a 'port' to a bridge device
2.48 + *
2.49 + * This method adds a new bridge port to a BridgeNetDevice, so that
2.50 + * the new bridge port NetDevice becomes part of the bridge and L2
2.51 + * frames start being forwarded to/from this NetDevice.
2.52 + *
2.53 + * \attention The netdevice that is being added as bridge port must
2.54 + * _not_ have an IP address. In order to add IP connectivity to a
2.55 + * bridging node you must enable IP on the BridgeNetDevice itself,
2.56 + * never on its port netdevices.
2.57 + */
2.58 void AddBridgePort (Ptr<NetDevice> bridgePort);
2.59
2.60 // inherited from NetDevice base class.