From: dE <de.techno@gmail.com>
To: lartc@vger.kernel.org
Subject: Re: pfifo_fast behavior.
Date: Thu, 16 May 2013 06:48:19 +0000 [thread overview]
Message-ID: <51947E63.1030808@gmail.com> (raw)
In-Reply-To: <518FA146.2070900@gmail.com>
On 05/13/13 23:19, Benjamin Kiessling wrote:
> On 05/12, dE wrote:
>> Hello everyone!
>>
>> I was trying to do some traffic shaping to make http pages more responsive
>> while torrenting. So I decided to modify TOS value of packets to have an
>> affect on the default pfifo_fast qdisc.
>>
>> I've the following iptable rules --
>>
>> #DNS request
>> iptables -t mangle -A OUTPUT -o eth1 -p udp -m multiport --dports 53 -j TOS
>> --set-tos 0x10
>>
>> #DNS response
>> iptables -t mangle -A PREROUTING -i eth1 -p udp -m multiport --sports 53 -j
>> TOS --set-tos 0x10
>>
>> #Incoming torrent connections
>> iptables -t mangle -A PREROUTING -i eth1 -p tcp -m multiport --dports 2000
>> -j TOS --set-tos 0x2
>> iptables -t mangle -A PREROUTING -i eth1 -p udp -m multiport --dports
>> 2000,1900,2001 -j TOS --set-tos 0x2
>>
>> #Mail server
>> iptables -t mangle -A OUTPUT -o eth1 -p tcp -d imap.googlemail.com -m
>> multiport --dports 993 -j TOS --set-tos 0x10
>>
>> #HTTP(S)
>> iptables -t mangle -A OUTPUT -o eth1 -p tcp -m multiport --dports 80,443 -j
>> TOS --set-tos 0x14
>> #iptables -t mangle -A OUTPUT -o eth1 -p tcp -m multiport --dports 80,443 -j
>> TOS --set-tos 0x10
>> iptables -t mangle -A PREROUTING -i eth1 -p tcp -m multiport --sport 80,443
>> -j TOS --set-tos 0x14
>> #iptables -t mangle -A PREROUTING -i eth1 -p tcp -m multiport --sport 80,443
>> -j TOS --set-tos 0x10
> There are several issues with your configuration. First, setting the
> (deprecated ToS) bits on incoming packets if you don't plan to forward
> these packets is senseless. Second, all *fifo* qdiscs are
> work-conserving, i.e. will dequeue packets at line speed. As the
> bandwidth of your local LAN is usually quite a bit higher than your
> internet uplink packets will still pile up at your DSL/cable/... modem.
> To actually prioritize services you need to own the queue by limiting
> your egress packet rate to slughtly lower than your modems rate. Be
> aware that most ISPs overcommit bandwidth in the order of 1:15-1:50 and
> your setup will still be ineffective if the shaped rate is higher than
> the modems rate.
>
>> But is there a difference between all TOS values which fall in a single
>> band?
> Nope.
>
>> I mean, does the behavior of pfifo_fast change if I change from 0x12 to
>> 0x16? Cause I thought the qdisc to be simple, and a different behavior for
>> all of the above TOS values means pfifo_fast does a lot more than just
>> placing packets in 3 different queues.
> Nope.
>
>> Another question -- how do you get these TOS values?
> They are derived from [0]. Again ToS bits are deprecated.
>
>> and what does -j TOS --set-tos <HEX/DEC> do? Does it modify the 4 bits
>> or the whole 8 bit TOS value in the header, or does something
>> completely different?
> Citing the manpage: "This module sets the Type of Service field in the
> IPv4 header (including the "precedence" bits) or the Priority field in
> the IPv6 header." It accesses the whole byte. Again ToS is deprecated.
> If you want to explicitely mark packet priorities in your network use
> DSCP (but don't forget admission control), otherwise just use iptables
> to match hosts/protocols directly to HTB/HFSC/DRR/... classes.
>
> Regards,
> Ben
>
> [0] https://tools.ietf.org/html/rfc1349
>
Thank you!
prev parent reply other threads:[~2013-05-16 6:48 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-12 14:15 pfifo_fast behavior dE
2013-05-13 17:49 ` Benjamin Kiessling
2013-05-15 2:33 ` dE
2013-05-16 6:48 ` dE [this message]
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=51947E63.1030808@gmail.com \
--to=de.techno@gmail.com \
--cc=lartc@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.