All of lore.kernel.org
 help / color / mirror / Atom feed
* Multiqueue TX
@ 2014-07-26  7:31 Sharat Masetty
  2014-07-28 22:37 ` Sharat Masetty
  0 siblings, 1 reply; 4+ messages in thread
From: Sharat Masetty @ 2014-07-26  7:31 UTC (permalink / raw)
  To: Linux Netdev List; +Cc: David Miller

I have a question from this David's nice presentation
http://vger.kernel.org/~davem/davem_nyc09.pdf on multiqueue TX. My
questions are on the slide named "PICTURE WITH NON-TRIVIAL QDISC"

1)  What is the rationale behind such an arrangement, where one would
have multiple TX queues pointing to the on single Qdisc?
2)  If the Qdisc in this illustration was a non trivial Qdisc such as
htb, which has multiple leaf Qdisc's, how would the traffic shaping be
preserved?
3) How would the back pressure/flow control of these individual TX
queues work in this case?

Thanks
Sharat

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multiqueue TX
  2014-07-26  7:31 Multiqueue TX Sharat Masetty
@ 2014-07-28 22:37 ` Sharat Masetty
  2014-07-28 22:43   ` David Miller
  2014-07-28 23:03   ` John Fastabend
  0 siblings, 2 replies; 4+ messages in thread
From: Sharat Masetty @ 2014-07-28 22:37 UTC (permalink / raw)
  To: Linux Netdev List; +Cc: David Miller

Hi David,

Can you please answer my question when you get a chance?

Regards,
Sharat

On Sat, Jul 26, 2014 at 1:31 AM, Sharat Masetty <sharat04@gmail.com> wrote:
> I have a question from this David's nice presentation
> http://vger.kernel.org/~davem/davem_nyc09.pdf on multiqueue TX. My
> questions are on the slide named "PICTURE WITH NON-TRIVIAL QDISC"
>
> 1)  What is the rationale behind such an arrangement, where one would
> have multiple TX queues pointing to the on single Qdisc?
> 2)  If the Qdisc in this illustration was a non trivial Qdisc such as
> htb, which has multiple leaf Qdisc's, how would the traffic shaping be
> preserved?
> 3) How would the back pressure/flow control of these individual TX
> queues work in this case?
>
> Thanks
> Sharat

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multiqueue TX
  2014-07-28 22:37 ` Sharat Masetty
@ 2014-07-28 22:43   ` David Miller
  2014-07-28 23:03   ` John Fastabend
  1 sibling, 0 replies; 4+ messages in thread
From: David Miller @ 2014-07-28 22:43 UTC (permalink / raw)
  To: sharat04; +Cc: netdev

From: Sharat Masetty <sharat04@gmail.com>
Date: Mon, 28 Jul 2014 16:37:25 -0600

> Can you please answer my question when you get a chance?

I do not have the time currently, and you cannot expect one single
developer to answer your question.

There are hundreds of talented and knowledgable networking hackers on
this list, they could just as easily answer you as well.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multiqueue TX
  2014-07-28 22:37 ` Sharat Masetty
  2014-07-28 22:43   ` David Miller
@ 2014-07-28 23:03   ` John Fastabend
  1 sibling, 0 replies; 4+ messages in thread
From: John Fastabend @ 2014-07-28 23:03 UTC (permalink / raw)
  To: Sharat Masetty; +Cc: Linux Netdev List, David Miller

On 07/28/2014 03:37 PM, Sharat Masetty wrote:
> Hi David,
>
> Can you please answer my question when you get a chance?
>
> Regards,
> Sharat

Little patience ;) Monday's are always a bit busy.

>
> On Sat, Jul 26, 2014 at 1:31 AM, Sharat Masetty <sharat04@gmail.com> wrote:
>> I have a question from this David's nice presentation
>> http://vger.kernel.org/~davem/davem_nyc09.pdf on multiqueue TX. My
>> questions are on the slide named "PICTURE WITH NON-TRIVIAL QDISC"
>>
>> 1)  What is the rationale behind such an arrangement, where one would
>> have multiple TX queues pointing to the on single Qdisc?

The simplest example is to take a look at sch_tbf and try to work out
how we could rate limit a device. Here you have a single qdisc being
used for all TX queues. HTB as you note below is another example.

How would you propose creating rate limits across entire interfaces
without a single Qdisc.

Its ongoing work to create queuing disciplines that don't bottleneck
on the qdisc lock and distribute the state.

>> 2)  If the Qdisc in this illustration was a non trivial Qdisc such as
>> htb, which has multiple leaf Qdisc's, how would the traffic shaping be
>> preserved?

Not sure I follow. Using HTB as a root qdisc on an interface works the
same if the interface has 1 queue or 128 queues.

Maybe you need to review netdev_pick_tx and follow skb->queue_mapping
through the device notice that it is not really used by the qdisc.

>> 3) How would the back pressure/flow control of these individual TX
>> queues work in this case?

To sort this out look into netif_stop_subqueue() and how the ethernet
drivers use this call. Then look at how it is used in ./net/sch_generic
by the dequeue_skb() call. I think it should be clear by reviewing this
usage how the back pressure works from the driver to the qdisc. Its
fairly straight forward and uses a bit to indicate to the qdisc stack
the driver can not consume more skbs.

>>
>> Thanks
>> Sharat
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


-- 
John Fastabend         Intel Corporation

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-07-28 23:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-26  7:31 Multiqueue TX Sharat Masetty
2014-07-28 22:37 ` Sharat Masetty
2014-07-28 22:43   ` David Miller
2014-07-28 23:03   ` John Fastabend

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.