[Cake] Frontier FIOS Framing
Marco Belmonte
marco at heavenlysanctuary.com
Sun Sep 22 23:37:01 EDT 2019
Esteemed Colleagues, Researchers and Noobs (the category I fall under),
I have searched every nook and cranny of the bloated internet looking
for any information I can find on whether Frontier/Verizon FIOS
(assuming the only difference between the service offered by both
Frontier and Verizon is in name only) requires any special framing
parameters passed on to sch_cake's overhead settings. Most mentions of
cake/fq/scm/etc and FIOS are ether very dated and inconclusive or I find
messages and forum posts asking questions a lot like this one.
Currently this is what I have and am also curious if I should be using
the "nat" keyword for both ingress and egress? I'm not entirely sure -
see below:
--- CUT HERE ---
# BufferBarf.sh
cpupower frequency-set -g performance
cpupower idle-set -D 0
sysctl -w net.core.default_qdisc=fq
sysctl -w net.ipv4.tcp_congestion_control=bbr
sysctl -w net.ipv4.tcp_ecn=1
sysctl -w net.ipv4.tcp_sack = 1
sysctl -w net.ipv4.tcp_dsack = 1ethtool -A eth1 autoneg off rx off tx off
ethtool -A eth2 autoneg off rx off tx off
ethtool -K eth1 tso off gso off gro off rx off tx off sg off rxvlan off
txvlan off \
rx-vlan-filter off rxhash off tx-esp-segmentation off
tx-gso-partial off \
esp-hw-offload off esp-tx-csum-hw-offload on
rx-udp_tunnel-port-offload off ntuple off
ethtool -K eth2 rx off tx off sg off tso off gso off gro off rxvlan off
txvlan off rxhash off \
hw-tc-offload off tx-gre-segmentation off
tx-gre-csum-segmentation off \
tx-ipxip4-segmentation off tx-ipxip6-segmentation off
tx-udp_tnl-segmentation off \
tx-udp_tnl-csum-segmentation off tx-gso-partial off
ntuple off
ethtool -L eth1 combined 4
ethtool -L eth2 combined 4
ethtool -C eth1 rx-usecs 0 tx-usecs 0
ethtool -C eth2 rx-usecs 0 tx-usecs 0
/usr/sbin/network-irq-affinity # custom script that pins four RSS
queues from eth1 to there own IRQs and four RSS queues from eth2 to
their own with no overlapping of cores.
### egress
tc qdisc add dev eth2 root cake bandwidth 450mbit nat
### ingress
ip link add name ifb4eth2 type ifb
tc qdisc add dev eth2 handle ffff: ingress
tc qdisc add dev ifb4eth2 root cake bandwidth 450mbit nat
ip link set ifb4eth2 up
tc filter add dev eth2 parent ffff: protocol all prio 10 u32 match u32 0
0 flowid 1:1 action mirred egress redirect dev ifb4eth2
--- CUT HERE ---
eth1 is 1 Gbit LAN, eth2 is 500/500 mbit fiber
In absence of framing compensation I figured I should just go extreme by
reserving more bandwidth than the qdisc needs because I also read
somewhere I think that mentioned that if you don't compensate and are
incorrect everything stops working as opposed to if you over compensate
you might lose out on bandwidth but you'll still win in the latency
department. But now that I type this out I just realized I think the
compensation was referring to using the "mpu <bytes>" option... This
would also substantiate my initial greeting announcing my noob status.
Any help would be appreciated and thanks in advance!
Marco
More information about the Cake
mailing list