Roland Dreier 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.
>
> Not quite... You'll have to deal with multiple Rx filters, not just
> the current one-filter-for-all model present in today's NICs. Pools
> of queues will have separate configured characteristics. The "steer"
> portion you mention is a bottleneck that wants to be eliminated.
I think you're misunderstanding. These NICs still have only one
physical port, so sending or receiving real packets onto a physical
wire is fundamentally serialized. The steering of packets to receive
queues is done right after the packets are received from the wire --
in fact it can be done as soon as the NIC has parsed enough of the
headers to make a decision, which might be before the full packet has
even been received. The steering is no more of a bottleneck than the
physical link is.
No, you're misreading. People are putting in independent configurable
Rx filters because a single Rx filter setup for all queues was a
bottleneck. Not a performance bottleneck but a configuration and
flexibility limitation that's being removed.
And where shall we put the configuration machinery, to support sub-queues?
Shall we duplicate the existing configuration code for sub-queues?
What will ifconfig/ip usage look like?
How will it differ from configurating full net_devices, if you are
assigning the same types of parameters?
Jeff
-
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