Okay, with that understanding I think I can give +1 to this project. There should be guidance somewhere (whitepaper?) that Solaris bridging is not expected to be ultra performant. In other words, you probably don't want to use a Solaris host to replace a 10G switch, or with multiple aggregated gigabit ports.
- Garrett James Carlson wrote: > Garrett D'Amore writes: > >> James Carlson wrote: >> >>> Fishing for +1s ... has anyone read this? >>> >>> >>> >> I'll reply later today. I need to check your materials for one thing -- >> I'm a bit surprised you intend to disable crossbow polling mode. The >> rest of your proposal (without looking at the detailed changes) looked >> good to me. >> > > This was discussed with Nicolas Droux and Venugopal Iyer at length. > The issue is that the hooks I have in the mac layer in order to > intercept packets at a low level for bridging purposes are in a place > where only interrupt-based packets are processed. > > I investigated adding hooks for the polled mode, and got a handle on > what might be required, but the Crossbow folks suggested that I just > disable polling for these ports. The reasons are several: > > - The data paths used for polling mode are diverse, complicated, and > very performance sensitive. Adding hooks there would likely lower > performance for the most critical high-end features, and would be > complex as many of the functions involved have doppelgaengers. > > - Polling mode is used only for high-speed high-performance > interfaces, and enabling bridging forces us turn on promiscuous > mode (as a basic requirement of doing bridging), which in turn > substantially impacts performance in many ways (not just the extra > data, but also by causing performance features to be disabled as a > side-effect). In other words, there's a fundamental conflict > between these two goals: if you want to sling packets fast, you > don't want bridging, and if you want bridging, you have to be > willing to give up the upper end (>1Gbps) of performance. > > - The whole issue goes away when the Crossbow team redesigns the > classifier components so that they're able to handle the > functionality required for bridging. (We don't currently have an > ETA on that, though it's not expected to be immanent, which is why > the bridging project is going forward with the existing design.) > >