Re: [tsvwg] draft diffserv-intercon: Handling of a scavenger class / CS1

"Bless, Roland (TM)" <roland.bless@kit.edu> Thu, 02 July 2015 14:41 UTC

Return-Path: <roland.bless@kit.edu>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 735271A8938 for <tsvwg@ietfa.amsl.com>; Thu, 2 Jul 2015 07:41:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.951
X-Spam-Level:
X-Spam-Status: No, score=-1.951 tagged_above=-999 required=5 tests=[BAYES_20=-0.001, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-2.3] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5GIMQNyCj64b for <tsvwg@ietfa.amsl.com>; Thu, 2 Jul 2015 07:41:44 -0700 (PDT)
Received: from iramx2.ira.uni-karlsruhe.de (iramx2.ira.uni-karlsruhe.de [141.3.10.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B634C1A891A for <tsvwg@ietf.org>; Thu, 2 Jul 2015 07:41:43 -0700 (PDT)
Received: from i72vorta.tm.uni-karlsruhe.de ([141.3.71.26] helo=i72vorta.tm.kit.edu) by iramx2.ira.uni-karlsruhe.de with esmtp port 25 iface 141.3.10.81 id 1ZAfgL-0003hg-1e; Thu, 02 Jul 2015 16:41:41 +0200
Received: from [IPv6:::1] (ip6-localhost [IPv6:::1]) by i72vorta.tm.kit.edu (Postfix) with ESMTPS id F1341B00EEC; Thu, 2 Jul 2015 16:41:40 +0200 (CEST)
Message-ID: <55954DA4.3020304@kit.edu>
Date: Thu, 02 Jul 2015 16:41:40 +0200
From: "Bless, Roland (TM)" <roland.bless@kit.edu>
Organization: Institute of Telematics, Karlsruhe Institute of Technology
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: Mikael Abrahamsson <swmike@swm.pp.se>, Ruediger.Geib@telekom.de
References: <CA7A7C64CC4ADB458B74477EA99DF6F50513613DD9@HE111643.EMEA1.CDS.T-INTERNAL.COM> <alpine.DEB.2.02.1505291422130.9487@uplift.swm.pp.se> <5568CF68.9020406@gmail.com> <alpine.DEB.2.02.1505292256170.9487@uplift.swm.pp.se> <CA7A7C64CC4ADB458B74477EA99DF6F505136148FE@HE111643.EMEA1.CDS.T-INTERNAL.COM> <CE03DB3D7B45C245BCA0D243277949360B3798B8@MX104CL02.corp.emc.com> <5580C588.9070008@gmail.com> <538a059f43eb8a2c2bd42453de21d6f2.squirrel@erg.abdn.ac.uk> <alpine.DEB.2.02.1506260829330.9487@uplift.swm.pp.se> <CA7A7C64CC4ADB458B74477EA99DF6F505290F292B@HE111643.EMEA1.CDS.T-INTERNAL.COM> <alpine.DEB.2.02.1506261011340.9487@uplift.swm.pp.se> <CA7A7C64CC4ADB458B74477EA99DF6F505290F2B1C@HE111643.EMEA1.CDS.T-INTERNAL.COM> <alpine.DEB.2.02.1506261438350.9487@uplift.swm.pp.se> <CA7A7C64CC4ADB458B74477EA99DF6F505290F2DFB@HE111643.EMEA1.CDS.T-INTERNAL.COM> <alpine.DEB.2.02.1506290904460.9487@uplift.swm.pp.se>
In-Reply-To: <alpine.DEB.2.02.1506290904460.9487@uplift.swm.pp.se>
Content-Type: text/plain; charset="windows-1252"
Content-Transfer-Encoding: 8bit
X-ATIS-AV: ClamAV (iramx2.ira.uni-karlsruhe.de)
X-ATIS-Timestamp: iramx2.ira.uni-karlsruhe.de 1435848101.
Archived-At: <http://mailarchive.ietf.org/arch/msg/tsvwg/WlZh-ZeCTTS7iO9dnvjfhPsWfJQ>
Cc: tsvwg@ietf.org
Subject: Re: [tsvwg] draft diffserv-intercon: Handling of a scavenger class / CS1
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.15
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: <https://mailarchive.ietf.org/arch/browse/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: Thu, 02 Jul 2015 14:41:47 -0000

Hi Mikael,

Am 29.06.2015 um 09:37 schrieb Mikael Abrahamsson:
> As far as I read your document, it has nothing in it about how to
> incrementally get an Internet-wide scavenger class operationally
> deployed over time. To me it reads more like a document for business VPN
> Carriers-Carrier services style interconnect/interworking. It has no
> operational advice at all in it on how to deal with DDoS, how to
> configure access equipment, how to set up queuing strategies on
> different kinds of equipment, listing what equipment might do what, etc.

Normally, RFC 4594 (https://datatracker.ietf.org/doc/rfc4594/)
defines many of such aspects, however, mainly conceptually, not
by concrete network gear and focusing on a single DS domain.

> I suggested how to actually make this incrementally and widely
> deployable across the world, and that is to aim for a 000xxx style
> scavenger class. This seems to not work for some reason that is unclear
> to me, your document doesn't seem to be operational at all, it doesn't
> propose something that is operationally deployable on the wider
> Internet, so that's why I think we would need another document for this
> purpose. If that is not a goal we can agree on, then there is no need to
> write one.

RFC 3662 (https://datatracker.ietf.org/doc/rfc3662/) normally gives
enough hints how to implement a lower effort (LE) PDB. A simple priority
scheduler and two queues are sufficient to support LE and BE
(Best-effort). The good thing is that you don't need any traffic
conditioning
mechanisms in place, thus not much configuration required, except for
the queue, scheduling and DSCP classifier.

> So just to sum up: I'm sure your document is fine for what it intends to
> do, it just doesn't answer any of the concerns an IP network
> engineer/architect might have about implementing this on an Internet
> peering link where there is little or no control over what traffic will
> pass or what this traffic might do to the rest of their network. It
> suggests a way to do something with no operational analysis or risk
> mitigation at all.

The basic concept of DiffServ is intentionally held very flexible and
every operator may do his own things. However, if the implementations
are very different, services may become inconsistent across different
DS domains, i.e., within a DS region. Therefore, recommendations for
some of those behaviors would be good.

> The first thing that will pop into any good IP architects head nowadays
> will be "oh, what happens to my network when I get 200 gigabits/s of 64
> byte packets marked EF from that 5 million strong DDoS-drone network all
> across the world, aimed for my customer base?"

DiffServ depends very much on the correct operation of the boundary
nodes, i.e., they represent a trust boundary. For example, EF requires
admission control prior use and if this is missing, but EF traffic
enters a DS domain, violations of SLAs may follow.

> The answer to that is "I'll bleach DSCP it because that's the only way
> to handle it". So in order to get a scavenger class actually deployable,

Yes, because DS boundary nodes are located at the trust boundaries and
thus need to enforce a provider's policies. If two DS domains trust each
others markings (and thus policing at their respective boundaries), then
there is no need for bleaching/remarking to other PHBs.

> you have to come up with something that means they can relax the
> bleaching a little bit by some operators, but their infrastructure would
> still treat the traffic the same. You also have to take into account
> that a lot of core IP network equipment can't do DSCP mapping very well.
> This kind of functionality makes equipment more expensive and thus less
> likely to exist widely. 

The very good thing about Lower Effort traffic is that it does no
harm to ordinary BE traffic. That was one of its design goals. So
letting in LE traffic is "always safe", no requirement for bleaching.
More precisely, LE traffic from domain A may affect LE traffic within
domain B while traversing it, but it will never cause harm to BE traffic
carried in domain B. Moreover, LE traffic is also quite well suited to
fill up any protection/overprovisioned capacity.
The currently problem is the ambiguity of using CS1 as DSCP for LE.
If CS1 is handled as in RFC 2474, it may adversely affect BE traffic,
if CS1 is handled as in RFC 3662 there shouldn't be any problem.

Regards,
 Roland