Re: [tsvwg] draft-dhesikan-tsvwg-rtcweb-qos

Andrew Mcgregor <andrewmcgr@google.com> Mon, 15 July 2013 00:15 UTC

Return-Path: <andrewmcgr@google.com>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1430721F9BF2 for <tsvwg@ietfa.amsl.com>; Sun, 14 Jul 2013 17:15:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.377
X-Spam-Level:
X-Spam-Status: No, score=-1.377 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, J_CHICKENPOX_21=0.6, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zvj8Hdmh69FQ for <tsvwg@ietfa.amsl.com>; Sun, 14 Jul 2013 17:15:58 -0700 (PDT)
Received: from mail-qc0-x22e.google.com (mail-qc0-x22e.google.com [IPv6:2607:f8b0:400d:c01::22e]) by ietfa.amsl.com (Postfix) with ESMTP id BDF0E21F9B8E for <tsvwg@ietf.org>; Sun, 14 Jul 2013 17:15:57 -0700 (PDT)
Received: by mail-qc0-f174.google.com with SMTP id m15so5980274qcq.33 for <tsvwg@ietf.org>; Sun, 14 Jul 2013 17:15:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=K3auZROxGd3QKgdN/+K9FoN3bSH69eyAQt44I2XkjNA=; b=lW/1QDYvjRazn0kSayXNGoYHvW4vgA3WbMmDUkSb1Nq8SHChlQysWrqfAKTXZMXNAa P87W+nQzyd7yczE95Lr4AMMKuWUwM8wJeUB/R3OZkcJ/ArlcI5jPpWdzUCwam1yip9yR cX/9gDun/pj0iYqQtnmyJewR4sXNmfrwginc/tz4UINjydxg1PvWwbpvksRvAU7QwRdH waUkFZ0EOxV4KaeqW+T0oMmY6Jyk3SMqQBjUbAI+KcpDl325xG+RGQE6Dkb/2bJ9SJEv hvtf8lRaHG5hdvboZP/DQWrWo/8apQ0BtO9TwbqIWinmdfNC4X4hrbBRB0NoA6Wyx1he nj6g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=K3auZROxGd3QKgdN/+K9FoN3bSH69eyAQt44I2XkjNA=; b=ClQROaSY3+jzReH6Fu8yNfpjz+2aXejhGYaeCPk7OcBD/imHnMJOyRQprcXu22ZkGW HJDjzxrLfi5O4xKW0vtW807foFrAPuQ8V0cISH0P6wL+8E/Xib/+eoExOUMFAOMoVl27 MCA0YIMOf2ahUr2kdeViufrFIUwQm2RewSaAc8wM0YlM4G2KxLnmxB2Er+xYy/5qEC9k 9TSqvFb1qEk5rvrKbGOnpATi42zk6N/e4n0CALO/acDGvM/Zq+AdEqvgk9vqSdl8s8fx glFhuDnsDPlk5Ob6vuA6KZkwxaul2TCanq9ShQD46mHoSqdlu85qu1fj4D7SWyI34sbe ecQQ==
MIME-Version: 1.0
X-Received: by 10.224.33.141 with SMTP id h13mr48576440qad.21.1373847356885; Sun, 14 Jul 2013 17:15:56 -0700 (PDT)
Received: by 10.224.137.196 with HTTP; Sun, 14 Jul 2013 17:15:56 -0700 (PDT)
In-Reply-To: <51E30F5B.3080603@gmail.com>
References: <32AE7F11-A06E-40C1-A73C-5C69F252DAF9@iii.ca> <51DBC3D3.3000300@erg.abdn.ac.uk> <CAA_e5Z71M-WWhDUdCOH+L2Ur+-YHYDoOhd2c50zwwM=RpfQZWQ@mail.gmail.com> <AAD74A5C56B6A249AA8C0D3B41F86990154362F4@xmb-aln-x10.cisco.com> <51E30523.2090805@gmail.com> <CAPRuP3nB46cQd0-sghDGv5jU+3VAzW-UqJbLFdYW1r+vSP0=eg@mail.gmail.com> <51E30F5B.3080603@gmail.com>
Date: Mon, 15 Jul 2013 10:15:56 +1000
Message-ID: <CAPRuP3k__1UU6cJn9gzKSwbvjwD80rY37J+h2=b=AXpo-PnDXQ@mail.gmail.com>
From: Andrew Mcgregor <andrewmcgr@google.com>
To: Brian E Carpenter <brian.e.carpenter@gmail.com>
Content-Type: multipart/alternative; boundary="20cf3074d2e4aee0df04e181c356"
X-Gm-Message-State: ALoCoQmo//xk7b3c5UiAEjXhD/gjMFRgVClvuMesnA6VjNS8hVFJYUckQOwD3MUrU5gHJGkmtirNkh7OTJgTkvVT5aRuNOwLW2+1nGUjr0IN4DsYDaQV1Orctk+G3x2GYtTOHLT36kETWb/xkL7aogTS4wafgL5cb17oZmC9B9PgMlCvaUDPqdQ7CAKn0X/QURDUjovzSbTH
Cc: "gorry@erg.abdn.ac.uk" <gorry@erg.abdn.ac.uk>, tsvwg <tsvwg@ietf.org>, Andrew McGregor <andrewmcgr@gmail.com>
Subject: Re: [tsvwg] draft-dhesikan-tsvwg-rtcweb-qos
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tsvwg>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 15 Jul 2013 00:15:59 -0000

On 15 July 2013 06:51, Brian E Carpenter <brian.e.carpenter@gmail.com>wrote:

> On 15/07/2013 08:25, Andrew Mcgregor wrote:
> > Nevertheless, specifying a priority order is exactly what tc_prio and
> > pfifo_fast do... I agree it's wrong, but that's what a very large number
> of
> > existing devices do right now, and ignoring that fact is likely to cause
> > problems.
> >
> > Yes, this is unfortunately a mess, and I can't see a way to avoid that
> > completely.  The smaller set of codepoints I mention, AF42>AF33>AF21>(CS1
> > or BE), is not comprehensive, but is at least consistently ordered; the
> > tc_prio map unfortunately makes EF unusable because it ends up equivalent
> > to BE.
> >
> > To clarify a little, I'm saying that AF42, AF32, AF22 and AF12 are all
> the
> > same so far as tc_prio is concerned, same for AF41, AF31, AF21 and AF11,
> > and the same for AF[1234]3.  So to get some consistency between the
> > schemes, I have chosen for example AF42, which is in the highest priority
> > band for both, AF33 for the second, AF21 for the third, and CS1 for the
> > fourth, although even that is not ideal because it puts AF21 in a
> > less-than-best-effort class while CS1 is equivalent to best-effort on the
> > linux-based devices.
>
> In that case, the error is using the PHB names in the first place. The
> behaviours you're describing are *not* the PHBs whose names you are using.
> They need new names that describe them correctly.
>

Well, perhaps they do.  However, using the RFC 4594 names for the bit
patterns in the packets per figure 3 of that RFC, rather than the PHB
definitions, those particular bit patterns get vaguely compatible treatment
between some router behaving per RFC 4594 PHB definitions and something
running pfifo_fast.  That is my point.

Perhaps we need another description of what is going on here, that's a
separate question, but we have those five codepoints (and perhaps a few
more, I didn't do an exhaustive search) that produce sensible behaviour in
both RFC 4594 recommended behaviour and the more widely deployed pfifo_fast.

More sensible names might well be those originally from 802.11e or 802.1p,
whichever of those coined these, those being VO ('voice'), VI
('video/interactive'), BE ('best effort') and BK ('background'), in which
case we have from my earlier example:

RFC 4594 name -> 802 name (TOS bit pattern)
AF42 -> VO (100100)
AF33 -> VI (011110)
AF21 -> BK (010010)
BE -> BE (000000)
CS1 -> BE (001000) (possibly, the different code point in this case saying
'BE, and I really mean that, this is not just default')

Using this set of bit patterns, the queueing behaviour will be correct on
many, perhaps most, existing access networks AND the 802 layer queueing
will be correct as well on a subset of those.  This would be a win, in
general.  It will also cause something sensible to happen in a network
using the mapping from RFC 4594 figure 3.

To reiterate, the binding between a behaviour such as EF or AFxy and a
> particular
> DSCP value is locally defined. If the behaviour is in fact simple
> preemptive
> priority, please don't call it something else. The fact that Linux gets it
> wrong doesn't mean IETF documents should be wrong too.
>

I believe that that local definition of the binding is a catastrophic bug
in the diffserv specs, and should never have been published in that form.
 However, too late now.  There is absolutely no way to tell an application
correctly what it should do with those bits unless there is an agreed set
of default meanings for at least some of the codepoints; maybe not total
specification of the exact behaviour, that's impractical, but at least a
way of setting some expectations.

If rtcweb continues with the code point recommendations in the draft as it
stands, code written to those recommendations will be quite seriously
broken when deployed.  The predictable outcome will be 'so turn off the
marking', and yet again an opportunity to do something sensible and
pragmatic with this feature is missed.  Let's not allow that to happen
simply because of terminology.  By saying 5 out of 64 codepoints should
have reasonable default behaviours, we might actually get this deployed.


>
>    Brian
>
> >
> > There is considerable established practice within the game industry of
> > using QoS codepoints that do map to tc_prio bands.  Therefore there's a
> > commonly deployed base of both low-end routers and code that depend on
> that
> > behaviour, and attempting to standardise something that is inconsistent
> > with it seems like an exercise in futility.
> >
> > I should point out that not every linux-based router does this, it is
> > certainly possible to get 4594 behaviour, or ignore the TOS bits
> entirely,
> > or do DPI to assign TOS, or remark, or pretty much any behaviour you
> might
> > imagine.  However, the majority of linux-based devices use very close to
> > the default configuration of the IP stack.
> >
> > I believe rtcweb should be pragmatic about this, and accept that very
> > fine-grained marking is not going to fly in the majority of cases on the
> > edge of the internet, and take the benefits available from a restricted
> set
> > of codepoints that are at least widely available, reasonably consistent
> in
> > semantics, and commonly also result in correct behaviour from lower
> layers,
> > particularly 802.1p and 802.11e MAC QoS.
> >
> > Andrew
> >
> >
> > On 15 July 2013 06:08, Brian E Carpenter <brian.e.carpenter@gmail.com
> >wrote:
> >
> >> On 15/07/2013 06:46, Subha Dhesikan (sdhesika) wrote:
> >> ...
> >>> The other challenge I see is with the relative position of the values
> >> being different from what is traditionally known for DSCP where EF> AF4x
> >>> AF3x>... How have you handled it so far in a non-web rtc environment?
> >> I don't track rtcweb and have no intention of doing so, but what on
> earth
> >> do you
> >> mean by writing an inequality for DSCPs? DSCPs do not specify a priority
> >> order; they identify (locally) a PHB, which is essentially a queuing
> >> disciplime.
> >> Suggesting that EF is "greater" than an AF behaviour is just wrong.
> >>
> >>    Brian
> >>
> >
> >
> >
>



-- 
Andrew McGregor | SRE | andrewmcgr@google.com | +61 4 8143 7128