From: jamal <hadi@cyberus.ca>
To: Leonid Grossman <Leonid.Grossman@neterion.com>
Cc: "Waskiewicz Jr, Peter P" <peter.p.waskiewicz.jr@intel.com>,
Patrick McHardy <kaber@trash.net>,
davem@davemloft.net, netdev@vger.kernel.org, jeff@garzik.org,
"Kok, Auke-jan H" <auke-jan.h.kok@intel.com>,
Ramkrishna Vepa <Ramkrishna.Vepa@neterion.com>,
Alex Aizman <aaizman@neterion.com>
Subject: RE: [PATCH] NET: Multiqueue network device support.
Date: Sat, 09 Jun 2007 15:23:20 -0400 [thread overview]
Message-ID: <1181417000.4043.34.camel@localhost> (raw)
In-Reply-To: <78C9135A3D2ECE4B8162EBDCE82CAD7701B7D69C@nekter>
On Sat, 2007-09-06 at 10:58 -0400, Leonid Grossman wrote:
> IMHO, in addition to current Intel and Neterion NICs, some/most upcoming
> NICs are likely to be multiqueue, since virtualization emerges as a
> major driver for hw designs (there are other things of course that drive
> hw, but these are complimentary to multiqueue).
>
> PCI-SIG IOV extensions for pci spec are almost done, and a typical NIC
> (at least, typical 10GbE NIC that supports some subset of IOV) in the
> near future is likely to have at least 8 independent channels with its
> own tx/rx queue, MAC address, msi-x vector(s), reset that doesn't affect
> other channels, etc.
Leonid - any relation between that and data center ethernet? i.e
http://www.ieee802.org/3/ar/public/0503/wadekar_1_0503.pdf
It seems to desire to do virtualization as well.
Is there any open spec for PCI-SIG IOV?
> Basically, each channel could be used as an independent NIC that just
> happens to share pci bus and 10GbE PHY with other channels (but has
> per-channel QoS and throughput guarantees).
Sounds very similar to data centre ethernet - except data centre
ethernet seems to map "channels" to rings; whereas the scheme you
describe maps a channel essentially to a virtual nic which seems to read
in the common case as a single tx, single rx ring. Is that right? If
yes, we should be able to do the virtual nics today without any changes
really since each one appears as a separate NIC. It will be a matter of
probably boot time partitioning and parametrization to create virtual
nics (ex of priorities of each virtual NIC etc).
> In a non-virtualized system, such NICs could be used in a mode when each
> channel runs on one core; this may eliminate some locking... This mode
> will require btw deterministic session steering, current hashing
> approach in the patch is not sufficient; this is something we can
> contribute once Peter's code is in.
I can actually see how the PCI-SIG approach using virtual NIC approach
could run on multiple CPUs (since each is no different from a NIC that
we have today). And our current Linux steering would also work just
fine.
In the case of non-virtual NICs, i am afraid i dont think it is as easy
as simple session steering - if you want to be generic that is; you may
wanna consider a more complex connection tracking i.e a grouping of
sessions as the basis for steering to a tx ring (and therefore tying to
a specific CPU).
If you are an ISP or a data center with customers partitioned based on
simple subnets, then i can see a simple classification based on subnets
being tied to a hw ring/CPU. And in such cases simple flow control on a
per ring basis makes sense.
Have you guys experimented on the the non-virtual case? And are you
doing the virtual case as a pair of tx/rx being a single virtual nic?
> In general, a consensus on kernel support for multiqueue NICs will be
> beneficial since multiqueue HW is here and other stacks already taking
> advantage of it.
My main contention with the Peters approach has been to do with the
propagating of flow control back to the qdisc queues. However, if this
PCI SIG standard is also desiring such an approach then it will shed a
different light.
cheers,
jamal
next prev parent reply other threads:[~2007-06-09 19:23 UTC|newest]
Thread overview: 153+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-04 21:40 [RFC] NET: Multiple queue hardware support PJ Waskiewicz
2007-06-04 21:40 ` [PATCH] NET: Multiqueue network device support PJ Waskiewicz
2007-06-05 11:50 ` jamal
2007-06-05 15:51 ` Waskiewicz Jr, Peter P
2007-06-05 22:28 ` jamal
2007-06-06 15:11 ` Patrick McHardy
2007-06-06 22:13 ` jamal
2007-06-06 22:30 ` Waskiewicz Jr, Peter P
2007-06-06 22:40 ` David Miller
2007-06-06 23:35 ` jamal
2007-06-06 23:56 ` David Miller
2007-06-07 16:08 ` Stephen Hemminger
2007-06-07 16:59 ` Waskiewicz Jr, Peter P
2007-06-11 12:08 ` Patrick McHardy
2007-06-07 22:04 ` jamal
2007-06-09 14:58 ` Leonid Grossman
2007-06-09 19:23 ` jamal [this message]
2007-06-09 21:23 ` Leonid Grossman
2007-06-09 22:14 ` Jeff Garzik
2007-06-10 3:02 ` jamal
2007-06-10 15:27 ` Leonid Grossman
2007-06-06 22:35 ` David Miller
2007-06-06 22:57 ` Waskiewicz Jr, Peter P
2007-06-06 23:00 ` David Miller
2007-06-06 23:14 ` Waskiewicz Jr, Peter P
2007-06-06 23:36 ` Jeff Garzik
2007-06-06 23:32 ` jamal
2007-06-06 23:48 ` Rick Jones
2007-06-06 23:54 ` jamal
2007-06-07 0:01 ` David Miller
2007-06-06 23:58 ` David Miller
2007-06-06 23:52 ` David Miller
2007-06-07 0:47 ` Jeff Garzik
2007-06-07 12:29 ` jamal
2007-06-07 15:03 ` Kok, Auke
2007-06-07 21:57 ` jamal
2007-06-07 22:06 ` Kok, Auke
2007-06-07 22:26 ` jamal
2007-06-07 22:30 ` Kok, Auke
2007-06-07 22:57 ` jamal
2007-06-07 22:44 ` David Miller
2007-06-07 22:54 ` jamal
2007-06-07 23:00 ` David Miller
2007-06-07 23:03 ` jamal
2007-06-08 0:31 ` Sridhar Samudrala
2007-06-08 1:35 ` jamal
2007-06-08 10:39 ` Herbert Xu
2007-06-08 11:34 ` jamal
2007-06-08 12:37 ` Herbert Xu
2007-06-08 13:12 ` jamal
2007-06-09 11:08 ` Herbert Xu
2007-06-09 14:36 ` jamal
2007-06-08 5:32 ` Krishna Kumar2
2007-06-08 19:55 ` Waskiewicz Jr, Peter P
2007-06-09 0:24 ` jamal
2007-06-07 22:55 ` Waskiewicz Jr, Peter P
2007-06-09 1:05 ` Ramkrishna Vepa
2007-06-06 23:53 ` David Miller
2007-06-07 1:08 ` jamal
2007-06-07 12:22 ` jamal
2007-06-11 12:01 ` Patrick McHardy
2007-06-11 11:58 ` Patrick McHardy
2007-06-11 12:23 ` jamal
2007-06-11 12:39 ` Patrick McHardy
2007-06-11 12:52 ` jamal
2007-06-11 13:03 ` Patrick McHardy
2007-06-11 13:29 ` jamal
2007-06-11 14:03 ` Patrick McHardy
2007-06-11 14:30 ` Cohen, Guy
2007-06-11 14:38 ` Patrick McHardy
2007-06-11 14:48 ` jamal
2007-06-11 15:00 ` Tomas Winkler
2007-06-11 15:14 ` jamal
2007-06-11 15:34 ` Cohen, Guy
2007-06-11 22:22 ` jamal
2007-06-12 14:04 ` Cohen, Guy
2007-06-12 15:23 ` jamal
2007-06-12 23:38 ` jamal
2007-06-11 14:40 ` jamal
2007-06-11 14:49 ` Patrick McHardy
2007-06-11 15:05 ` jamal
2007-06-11 15:12 ` Patrick McHardy
2007-06-11 15:25 ` jamal
2007-06-11 15:44 ` Patrick McHardy
2007-06-11 21:35 ` jamal
2007-06-11 23:01 ` Patrick McHardy
2007-06-12 0:58 ` Patrick McHardy
2007-06-12 2:29 ` jamal
2007-06-12 13:21 ` Patrick McHardy
2007-06-12 15:12 ` jamal
2007-06-12 21:02 ` David Miller
2007-06-12 21:13 ` Jeff Garzik
2007-06-12 21:17 ` Ben Greear
2007-06-12 21:26 ` David Miller
2007-06-12 21:46 ` Jeff Garzik
2007-06-12 21:52 ` Roland Dreier
2007-06-12 21:59 ` Jeff Garzik
2007-06-12 22:04 ` David Miller
2007-06-12 22:18 ` Jeff Garzik
2007-06-12 22:00 ` David Miller
2007-06-12 21:53 ` David Miller
2007-06-12 22:01 ` Jeff Garzik
2007-06-12 21:46 ` Ben Greear
2007-06-12 21:54 ` David Miller
2007-06-12 22:30 ` Jeff Garzik
2007-06-12 22:40 ` Ben Greear
2007-06-12 21:47 ` Jason Lunz
2007-06-12 21:55 ` David Miller
2007-06-12 22:17 ` Jason Lunz
2007-06-13 3:41 ` Leonid Grossman
2007-06-13 16:44 ` Rick Jones
2007-06-12 21:17 ` Patrick McHardy
2007-06-13 5:56 ` Zhu Yi
2007-06-13 11:34 ` Patrick McHardy
2007-06-14 1:51 ` Zhu Yi
2007-06-13 12:32 ` jamal
2007-06-13 13:12 ` Robert Olsson
2007-06-13 13:33 ` jamal
2007-06-13 15:01 ` Leonid Grossman
2007-06-13 15:53 ` Robert Olsson
2007-06-13 18:20 ` David Miller
2007-06-13 18:22 ` Waskiewicz Jr, Peter P
2007-06-13 21:30 ` jamal
2007-06-14 2:44 ` Zhu Yi
2007-06-14 11:48 ` jamal
2007-06-15 1:27 ` Zhu Yi
2007-06-15 10:49 ` jamal
2007-06-18 1:18 ` Zhu Yi
2007-06-18 15:16 ` jamal
2007-06-19 2:12 ` Zhu Yi
2007-06-19 16:04 ` jamal
2007-06-20 5:51 ` Zhu Yi
2007-06-21 15:39 ` jamal
2007-06-22 1:26 ` Zhu Yi
2007-06-25 16:47 ` jamal
2007-06-25 20:47 ` David Miller
2007-06-26 13:27 ` jamal
2007-06-26 20:57 ` David Miller
2007-06-27 22:32 ` jamal
2007-06-27 22:54 ` David Miller
2007-06-28 0:15 ` jamal
2007-06-28 0:31 ` David Miller
2007-06-12 9:19 ` Johannes Berg
2007-06-12 12:17 ` jamal
2007-06-11 17:36 ` Patrick McHardy
2007-06-11 18:05 ` Waskiewicz Jr, Peter P
2007-06-11 18:07 ` Patrick McHardy
2007-06-13 18:34 ` Waskiewicz Jr, Peter P
2007-06-11 17:52 ` Patrick McHardy
2007-06-11 17:57 ` Waskiewicz Jr, Peter P
2007-06-11 18:05 ` Patrick McHardy
2007-06-11 18:15 ` Waskiewicz Jr, Peter P
2007-06-11 18:24 ` Patrick McHardy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1181417000.4043.34.camel@localhost \
--to=hadi@cyberus.ca \
--cc=Leonid.Grossman@neterion.com \
--cc=Ramkrishna.Vepa@neterion.com \
--cc=aaizman@neterion.com \
--cc=auke-jan.h.kok@intel.com \
--cc=davem@davemloft.net \
--cc=jeff@garzik.org \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=peter.p.waskiewicz.jr@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).