Bugzilla – Full Text Bug Listing |
Summary: | BridgeNetDevice flooding causes crash if a loopback device was added to it | ||
---|---|---|---|
Product: | ns-3 | Reporter: | scheibel1 |
Component: | bridge | Assignee: | Gustavo J. A. M. Carneiro <gjcarneiro> |
Status: | NEW --- | ||
Severity: | normal | CC: | ns-bugs |
Priority: | P5 | ||
Version: | pre-release | ||
Hardware: | All | ||
OS: | All |
Description
scheibel1
2012-08-17 16:17:27 EDT
Actually, one can avoid this issue by avoiding adding netdevices which are loopback net devices when calling BridgeHelper::Install. My title is therefore misleading, as bridge nodes should work fine as long as I avoid the mistake of adding a loopback device to the bridge. It would still be nice if the BridgeNetDevice would refuse to add loopback devices, or if this behavior was documented (i.e. make sure not to install loopback devices with the BridgeHelper). I think this is worthwhile because the issue results from what I would consider to be a valid use case: I personally made this mistake because it was attractive to me to mark nodes as bridges, and then later come around and bundle all the netdevices together for such nodes with the BridgeHelper (which happened to be after a point when an internet stack had been installed on the bridge). To be honest I'd go for the (b) option, however I'd like to argue about it a bit more. Now, a "bridge" device is for real a... stupid bridge (meaning, not intellgent). Let's check what is the intended use of such a device. The answer is trivial: one wants to make a... bridge (doh!), like a hub or a WiFi AP with bridged interfaces (the WiFi and the Ethernet). Note: a switch is different). The two are quite different tho, as in the first case you'll probaby NOT want to have an IP stack on the hub, while you might want the IP stack on the WiFi AP. Hence, the Bridge NetDevice should be "nice" with loopback things. In order to fix this, however, I'd like to have a test program where the Brige fails miserably. If this possible ? Thanks. Well, this is kind of documented. Documentation says: "Bridging is designed to work only with NetDevices modelling IEEE 802-style technologies, such as CsmaNetDevice and WifiNetDevice." |