On Tue, Jun 12, 2007 at 02:26:58PM -0700, David Miller wrote: > The MAC is still very much centralized in most designs. > > So one way they'll do it is to support assigning N MAC addresses, > and you configure the input filters of the chip to push packets > for each MAC to the proper receive queue. > > So the MAC will accept any of those in the N MAC addresses as > it's own, then you use the filtering facilities to steer > frames to the correct RX queue. > > The TX and RX queues can be so isolated as to be able to be exported > to virtualization nodes. You can give them full access to the DMA > queues and assosciated mailboxes. So instead of all of this bogus > virtualized device overhead, you just give the guest access to the > real device. > > So you can use multiple queues either for better single node SMP > performance, or better virtualization performance.
Are you aware of any hardware designs that allow other ways to map packets onto rx queues? I can think of several scenarios where it could be advantageous to map packets by IP 3- or 5-tuple to get cpu locality all the way up the stack on a flow-by-flow basis. But doing this would require some way to request this mapping from the hardware. In the extreme case it would be cool if it were possible to push a bpf-like classifier down into the hardware to allow arbitrary kinds of flow distribution. Jason - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html