netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: jamal <hadi@cyberus.ca>
To: "Waskiewicz Jr, Peter P" <peter.p.waskiewicz.jr@intel.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
	"Zhu, Yi" <yi.zhu@intel.com>,
	Stephen Hemminger <shemminger@linux-foundation.org>,
	Patrick McHardy <kaber@trash.net>,
	netdev@vger.kernel.org, jgarzik@pobox.com,
	cramerj <cramerj@intel.com>,
	"Kok, Auke-jan H" <auke-jan.h.kok@intel.com>,
	"Leech, Christopher" <christopher.leech@intel.com>,
	davem@davemloft.net
Subject: RE: [PATCH] IPROUTE: Modify tc for new PRIO multiqueue behavior
Date: Tue, 08 May 2007 19:28:22 -0400	[thread overview]
Message-ID: <1178666902.4055.28.camel@localhost> (raw)
In-Reply-To: <D5C1322C3E673F459512FB59E0DDC32902CDF558@orsmsx414.amr.corp.intel.com>

On Tue, 2007-08-05 at 08:35 -0700, Waskiewicz Jr, Peter P wrote:

> But the point is that although the DCE spec inspired the development of
> these patches, that is *not* the goal of these patches.  As Yi stated in
> a previous reply to this thread, the ability for any hardware to control
> its queues at the stack level in the kernel is something that is missing
> in the kernel.  If the hardware doesn't want to support it, then the
> patches as-is will not require anything to change in drivers to continue
> working as they do today.

Wireless offers a strict priority scheduler with statistical transmit
(as opposed to deterministic offered by the linux strict prio qdisc);
so wireless is not in the same boat as DCE.

> Bottom line: these patches are not for a specific technology.  I
> presented that spec to show a possible use case for these patches.  Yi
> presented a use case he can use in the wireless world.  I will be
> posting another use case shortly using ATA over Ethernet.
> 

Once you run the ATA over ethernet with your approach, please repeat the
test with a single ring in hardware and an equivalent qdisc in linux.
I dont believe you will see any difference - Linux is that good.
This is not to say i am against your patches, I am just for optimizing
for the common.

> > I dont believe wireless needs anything other than the simple 
> > approach i described. The fact that there an occasional low 
> > prio packet may endup going out first before a high prio due 
> > to the contention is non-affecting to the overall results.
> 
> I don't see how we can agree that having any type of
> head-of-line-blocking of a flow is or is not a problem.  

But where is this head-of-line blocking coming from?
Please correct me if am wrong:
If i had 4 hardware rings/queues in a wireless NIC with 4 different
WMM priorities all filled up (I would say impposible to achieve but for
the sake of discussion assume possible), then 
there is still a probability that a low prio packet will be sent first
before a high prio one. It all depends on the probabilistic nature of
the channel availability as well as the tx opportunity and backoff
timings.

> You believe it
> isn't an issue, but this is a gap that I see existing in the stack
> today.  As networking is used for more advanced features (such as ndb or
> VoIP), having the ability to separate flows from each other all the way
> to the wire I see is a huge advantage to ensure true QoS.
> 

You dont believe Linux has actually been doing QoS all these years
before DCE? It has. And we have been separating flows all those years
too. 
Wireless with CSMA/CA is a slightly different beast due to the shared
channels; its worse but not very different in nature than the case where
you have a shared ethernet hub (CSMA/CD) and you keep adding hosts to it
- we dont ask the qdiscs to backoff because we have a collision.
Where i find wireless intriguing is in the case where its available
bandwidth adjusts given the signal strength - but you are talking about
HOLs not that specific phenomena.

cheers,
jamal



  reply	other threads:[~2007-05-08 23:28 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-25  1:39 [PATCH] IPROUTE: Modify tc for new PRIO multiqueue behavior Peter P Waskiewicz Jr
2007-04-25  4:05 ` Stephen Hemminger
2007-04-25 11:36   ` jamal
2007-04-25 17:45     ` Waskiewicz Jr, Peter P
2007-04-26 13:27       ` jamal
2007-04-26 15:57         ` Patrick McHardy
2007-04-26 16:30           ` Waskiewicz Jr, Peter P
2007-04-26 16:44             ` Patrick McHardy
2007-04-26 16:50               ` Waskiewicz Jr, Peter P
2007-04-27 15:09             ` jamal
2007-04-27 15:45               ` Waskiewicz Jr, Peter P
2007-04-30 12:56                 ` jamal
2007-05-01 18:27                   ` Waskiewicz Jr, Peter P
2007-05-01 22:11                     ` jamal
2007-05-01 23:04                       ` Waskiewicz Jr, Peter P
2007-05-02 12:43                         ` jamal
2007-05-03 21:03                           ` Waskiewicz Jr, Peter P
2007-05-03 23:54                             ` jamal
2007-05-04 15:48                               ` Waskiewicz Jr, Peter P
2007-05-04 20:01                             ` Stephen Hemminger
2007-05-04 20:06                               ` David Miller
2007-05-04 20:43                               ` Waskiewicz Jr, Peter P
2007-05-04 21:00                                 ` David Miller
2007-05-04 21:22                                 ` Johannes Berg
2007-05-08  9:33                                   ` Zhu Yi
2007-05-08  9:45                                     ` Johannes Berg
2007-05-08 13:28                                       ` jamal
2007-05-08 15:35                                         ` Waskiewicz Jr, Peter P
2007-05-08 23:28                                           ` jamal [this message]
2007-05-10  3:02                                             ` Zhu Yi
2007-05-10 12:35                                               ` jamal
2007-05-11  1:58                                                 ` Zhu Yi
2007-05-11  2:23                                                   ` jamal
2007-05-10 18:22                                             ` Waskiewicz Jr, Peter P
2007-05-10 20:00                                               ` jamal
2007-05-09 14:16                                         ` Johannes Berg
2007-04-27 14:58           ` jamal
2007-04-27 15:43             ` Jeff Garzik
2007-04-27 15:46               ` Waskiewicz Jr, Peter P
2007-04-26 18:49       ` Jan Engelhardt

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=1178666902.4055.28.camel@localhost \
    --to=hadi@cyberus.ca \
    --cc=auke-jan.h.kok@intel.com \
    --cc=christopher.leech@intel.com \
    --cc=cramerj@intel.com \
    --cc=davem@davemloft.net \
    --cc=jgarzik@pobox.com \
    --cc=johannes@sipsolutions.net \
    --cc=kaber@trash.net \
    --cc=netdev@vger.kernel.org \
    --cc=peter.p.waskiewicz.jr@intel.com \
    --cc=shemminger@linux-foundation.org \
    --cc=yi.zhu@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).