Well, you all know that I think of diffserv as an abortion. It's based on 
thinking that assumes central, hierachical adminstrative agreements among what 
should be autonomous systems.

Yeah, at layer 2 for packets that stay within an administratively uniform 
domain, diffserv can be useful.

But even "Paris Metro" scheduling (2 classes, priced dynamically) is highly 
unstable.

And the nature of networks is that they MUST operate almost all the time well 
below their capacity. (This is true of packet nets, railroads, highways, ...). 
It's called the "Mother's Day problem". When Mother's Day happens, you should 
have enough capacity to absorb vast demand. Therefore what you do all the other 
days doesn't matter. And on Mother's Day, if you have congestion, there's no 
way in hell that anybody is happy.

This fairy story about traffic giving way to higher priority traffic being a 
normal mode of operation is just that. A made up story, largely used by folks 
who want to do selective pricing based on what customers are willing to pay, 
not on value received. (that's a business story, thouhg - like the Xerox 
machines that were supposed to charge more for billion dollar real estate 
contract copies and less for notices to put up near coffee machines - Xerox 
wanted a share of the real-estate business cash flow).

Which doesn't mean that there might not be better ways to do large scale 
traffic engineering balancing of flows - but that's not an end-to-end problem. 
It's a network management problem that involves changing routing tables.

-----Original Message-----
From: "Dave Taht" <[email protected]>
Sent: Sunday, February 3, 2019 1:39pm
To: "cerowrt-devel" <[email protected]>, "Cake List" 
<[email protected]>
Subject: [Cerowrt-devel] https://tools.ietf.org/html/draft-ietf-tsvwg-le-phb-06 
is in last call

And seems likely to be adopted.

There seems to be an urge to make this codepoint starvable, which
since I ascribe to nagle's dictum "every application has a right to
one packet in the network" - doesn't work for me - but the draft is
vaguely worded enough to just start dumping this codepoint into the
background queue of both sqm and cake and worry about it in a decade
or three.

it's 000001 which I guess is:

diff --git a/sch_cake.c b/sch_cake.c
index 3a26db0..67263b3 100644
--- a/sch_cake.c
+++ b/sch_cake.c
@@ -343,7 +343,7 @@ static const u8 diffserv4[] = {
 };

 static const u8 diffserv3[] = {
-       0, 0, 0, 0, 2, 0, 0, 0,
+       0, 1, 0, 0, 2, 0, 0, 0,
        1, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0,
        0, 0, 0, 0, 0, 0, 0, 0,

(or is that reversed? my big endian/little endian chops scuks, and
nobody modified the gen_cake_const tool to match what cake expects
now)

on my off days I kind of wish the diffserv lookup we do in cake had
managed to make it into the linux mqprio/prio stuff by default.

-- 

Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-205-9740
_______________________________________________
Cerowrt-devel mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cerowrt-devel


_______________________________________________
Cake mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cake

Reply via email to