From: "Toke Høiland-Jørgensen" <toke@toke.dk>
To: Daniel Sterling <sterling.daniel@gmail.com>, bloat@lists.bufferbloat.net
Subject: Re: [Bloat] is extremely consistent low-latency for e.g. xbox possible on SoHo networks w/o manual configuration?
Date: Wed, 12 Feb 2020 12:41:35 +0100 [thread overview]
Message-ID: <87imkchw28.fsf@toke.dk> (raw)
In-Reply-To: <CAJZMiufvYa0L8Pqb67FmeyGRDojoaOC4O8U2gmi32Fh4Umfy4A@mail.gmail.com>
Daniel Sterling <sterling.daniel@gmail.com> writes:
> Good day list,
>
> I am looking for input / discussion on how to achieve:
>
> * on a "regular" SoHo network
>
> * first and foremost, to the exclusion of all other goals, consistent
> low-latency for non-bulk streams from particular endpoints; usually
> those streams are easily identified and differentiated from all other
> streams based on UDP/TCP port number,
>
> * and assuming the identified and prioritized streams behave
> themselves and stay non-bulk, decent throughput for all other traffic.
>
>
> That is to say, some endpoints are more important than others; and
> moreover some apps on some endpoints are most important.
>
>
> In my case the traffic that needs to be low-latency no matter what is
> xbox FPS gaming traffic (Call of Duty UDP traffic is especially easy
> to prioritize, as it typically uses port 3075).
>
>
> How would you customize your network to achieve those goals?
>
>
> Here is what I have done; please provide any and all feedback:
>
>
> I put a linux laptop between CPE (WAN) and LAN. AT&T fiber in my case,
> 100+ mbit up and down.
>
> I've a tc script that drastically limits bandwidth for non-prioritized
> traffic (where priority is based on UDP/TCP port number).
>
> The theory is that this ensures prioritized traffic always has plenty
> of available bandwidth to send / receive data, and will never
> experience latency unless it's misbehaved / incorrectly classified.
>
>
>
> Here is what I have NOT done:
>
> I didn't use tc_cake WITHOUT adding a layer of port-based
> prioritization. On a typical SoHo network, I don't see how it would be
> possible to ensure xbox traffic never experiences latency w/o
> prioritizing streams *before* cake sees them.
>
>
> Does this make sense?
First off, on a 100mbit+ link, my guess would be that just putting in
cake with nothing other than a bandwidth parameter would achieve the
gaming performance you want. You'd need a *lot* of other bulk flows to
saturate the link to a point where the gaming traffic would no longer be
considered "sparse" (and thus get automatic priority).
That being said, if you do want to prioritise based on port numbers,
CAKE has its own built-in priority tiers (if you don't run it in
'besteffort' mode), and that does support filtering based on TC rules.
So you don't need the prio qdisc, you can just steer the traffic into
the high-prio cake tin...
-Toke
next prev parent reply other threads:[~2020-02-12 11:41 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-12 4:55 Daniel Sterling
2020-02-12 11:41 ` Toke Høiland-Jørgensen [this message]
2020-02-12 15:51 ` Jonathan Morton
2020-02-14 14:18 ` Michael Richardson
2020-02-20 1:02 ` Daniel Sterling
2020-02-20 10:23 ` Toke Høiland-Jørgensen
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
List information: https://lists.bufferbloat.net/postorius/lists/bloat.lists.bufferbloat.net/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87imkchw28.fsf@toke.dk \
--to=toke@toke.dk \
--cc=bloat@lists.bufferbloat.net \
--cc=sterling.daniel@gmail.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