how do you get the url for dnsmasq ??
Hi,
I'm experimenting with this script. I'm using the non-veth method. Just wanted to verify if I set it up correctly. Here's what my interfaces look like:
My sqm settings:
config queue 'eth1'
option debug_logging '0'
option verbosity '5'
option qdisc 'cake'
option interface 'eth4'
option linklayer 'ethernet'
option overhead '26'
option qdisc_advanced '1'
option squash_dscp '0'
option ingress_ecn 'ECN'
option upload '15000'
option download '85000'
option enabled '1'
option script 'layer_cake.qos'
option egress_ecn 'ECN'
option squash_ingress '0'
option qdisc_really_really_advanced '1'
root@OpenWrt:~# tc -s qdisc
qdisc noqueue 0: dev lo root refcnt 2
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc mq 0: dev eth0 root
Sent 314836078540 bytes 291251158 pkt (dropped 0, overlimits 0 requeues 1262)
backlog 0b 0p requeues 1262
qdisc fq_codel 0: dev eth0 parent :8 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 510413 bytes 1544 pkt (dropped 0, overlimits 0 requeues 1)
backlog 0b 0p requeues 1
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :7 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 45683292630 bytes 40747559 pkt (dropped 0, overlimits 0 requeues 76)
backlog 0b 0p requeues 76
maxpacket 1392 drop_overlimit 0 new_flow_count 5 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :6 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 51872476969 bytes 46000690 pkt (dropped 0, overlimits 0 requeues 64)
backlog 0b 0p requeues 64
maxpacket 1514 drop_overlimit 0 new_flow_count 7 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :5 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 51102475885 bytes 46774534 pkt (dropped 0, overlimits 0 requeues 95)
backlog 0b 0p requeues 95
maxpacket 1392 drop_overlimit 0 new_flow_count 9 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 48555566581 bytes 48044838 pkt (dropped 0, overlimits 0 requeues 925)
backlog 0b 0p requeues 925
maxpacket 1454 drop_overlimit 0 new_flow_count 5 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 43240690345 bytes 40525781 pkt (dropped 0, overlimits 0 requeues 42)
backlog 0b 0p requeues 42
maxpacket 2924 drop_overlimit 0 new_flow_count 19 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 38220117029 bytes 35317424 pkt (dropped 0, overlimits 0 requeues 28)
backlog 0b 0p requeues 28
maxpacket 1392 drop_overlimit 0 new_flow_count 3 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth0 parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 36160948688 bytes 33838788 pkt (dropped 0, overlimits 0 requeues 31)
backlog 0b 0p requeues 31
maxpacket 1514 drop_overlimit 0 new_flow_count 10 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc mq 0: dev eth1 root
Sent 33340576792 bytes 39677969 pkt (dropped 0, overlimits 0 requeues 50)
backlog 0b 0p requeues 50
qdisc fq_codel 0: dev eth1 parent :8 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 360473 bytes 2214 pkt (dropped 0, overlimits 0 requeues 1)
backlog 0b 0p requeues 1
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :7 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 6187911566 bytes 7058870 pkt (dropped 0, overlimits 0 requeues 5)
backlog 0b 0p requeues 5
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :6 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 4594355091 bytes 5069647 pkt (dropped 0, overlimits 0 requeues 4)
backlog 0b 0p requeues 4
maxpacket 1514 drop_overlimit 0 new_flow_count 2 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :5 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 5000053866 bytes 5451176 pkt (dropped 0, overlimits 0 requeues 7)
backlog 0b 0p requeues 7
maxpacket 3028 drop_overlimit 0 new_flow_count 2 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 3843807451 bytes 8184217 pkt (dropped 0, overlimits 0 requeues 22)
backlog 0b 0p requeues 22
maxpacket 60 drop_overlimit 0 new_flow_count 1 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 5102683792 bytes 4771349 pkt (dropped 0, overlimits 0 requeues 4)
backlog 0b 0p requeues 4
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 4340117955 bytes 4505577 pkt (dropped 0, overlimits 0 requeues 3)
backlog 0b 0p requeues 3
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth1 parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 4271286598 bytes 4634919 pkt (dropped 0, overlimits 0 requeues 4)
backlog 0b 0p requeues 4
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc mq 0: dev eth2 root
Sent 125789867499 bytes 182426556 pkt (dropped 0, overlimits 0 requeues 313)
backlog 0b 0p requeues 313
qdisc fq_codel 0: dev eth2 parent :8 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 12277347 bytes 85880 pkt (dropped 0, overlimits 0 requeues 3)
backlog 0b 0p requeues 3
maxpacket 3028 drop_overlimit 0 new_flow_count 2 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :7 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 27841332727 bytes 32039269 pkt (dropped 0, overlimits 0 requeues 50)
backlog 0b 0p requeues 50
maxpacket 4894 drop_overlimit 0 new_flow_count 16 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :6 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 30160681239 bytes 33620926 pkt (dropped 0, overlimits 0 requeues 24)
backlog 0b 0p requeues 24
maxpacket 3028 drop_overlimit 0 new_flow_count 3 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :5 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 23085917457 bytes 30195316 pkt (dropped 0, overlimits 0 requeues 21)
backlog 0b 0p requeues 21
maxpacket 429 drop_overlimit 0 new_flow_count 2 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 17675737002 bytes 28029617 pkt (dropped 0, overlimits 0 requeues 116)
backlog 0b 0p requeues 116
maxpacket 118 drop_overlimit 0 new_flow_count 4 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 11453431221 bytes 21313103 pkt (dropped 0, overlimits 0 requeues 53)
backlog 0b 0p requeues 53
maxpacket 7570 drop_overlimit 0 new_flow_count 6 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 9985821919 bytes 19225591 pkt (dropped 0, overlimits 0 requeues 17)
backlog 0b 0p requeues 17
maxpacket 36336 drop_overlimit 0 new_flow_count 4 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth2 parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 5574668587 bytes 17916854 pkt (dropped 0, overlimits 0 requeues 29)
backlog 0b 0p requeues 29
maxpacket 3028 drop_overlimit 0 new_flow_count 6 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc mq 0: dev eth3 root
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc fq_codel 0: dev eth3 parent :8 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :7 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :6 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :5 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :4 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :3 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :2 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc fq_codel 0: dev eth3 parent :1 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 0 drop_overlimit 0 new_flow_count 0 ecn_mark 0
new_flows_len 0 old_flows_len 0
qdisc htb 1: dev eth4 root refcnt 2 r2q 10 default 0x8000 direct_packets_stat 33 direct_qlen 1000
Sent 14042669150 bytes 11276413 pkt (dropped 86, overlimits 12225669 requeues 3)
backlog 0b 0p requeues 3
qdisc fq_codel 15: dev eth4 parent 1:8000 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 238874928 bytes 519547 pkt (dropped 9, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 20863 drop_overlimit 0 new_flow_count 60220 ecn_mark 0
new_flows_len 0 old_flows_len 1
qdisc fq_codel 14: dev eth4 parent 1:14 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 12963098121 bytes 9531235 pkt (dropped 77, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 27252 drop_overlimit 0 new_flow_count 137514 ecn_mark 0
new_flows_len 0 old_flows_len 1
qdisc fq_codel 12: dev eth4 parent 1:12 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 2523655 bytes 24111 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 590 drop_overlimit 0 new_flow_count 18309 ecn_mark 0
new_flows_len 1 old_flows_len 21
qdisc fq_codel 11: dev eth4 parent 1:11 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 344959 bytes 1825 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 2988 drop_overlimit 0 new_flow_count 492 ecn_mark 0
new_flows_len 1 old_flows_len 9
qdisc fq_codel 13: dev eth4 parent 1:13 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 837817364 bytes 1199660 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 1342 drop_overlimit 0 new_flow_count 26916 ecn_mark 0
new_flows_len 1 old_flows_len 3
qdisc ingress ffff: dev eth4 parent ffff:fff1 ----------------
Sent 3985698885 bytes 8938294 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc noqueue 0: dev br-lan root refcnt 2
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc htb 1: dev eth4-ifb root refcnt 2 r2q 70 default 0x8000 direct_packets_stat 42 direct_qlen 32
Sent 4119657079 bytes 8938284 pkt (dropped 7, overlimits 2369890 requeues 0)
backlog 0b 0p requeues 0
qdisc fq_codel 15: dev eth4-ifb parent 1:8000 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 1557651314 bytes 1523911 pkt (dropped 2, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 10598 drop_overlimit 0 new_flow_count 120768 ecn_mark 0
new_flows_len 0 old_flows_len 1
qdisc fq_codel 14: dev eth4-ifb parent 1:14 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 969703619 bytes 5211271 pkt (dropped 5, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 22710 drop_overlimit 0 new_flow_count 133989 ecn_mark 0
new_flows_len 0 old_flows_len 1
qdisc fq_codel 12: dev eth4-ifb parent 1:12 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 3254917 bytes 18811 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 479 drop_overlimit 0 new_flow_count 18624 ecn_mark 0
new_flows_len 1 old_flows_len 0
qdisc fq_codel 11: dev eth4-ifb parent 1:11 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 2267440 bytes 2295 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 9084 drop_overlimit 0 new_flow_count 430 ecn_mark 0
new_flows_len 1 old_flows_len 9
qdisc fq_codel 13: dev eth4-ifb parent 1:13 limit 10240p flows 1024 quantum 1514 target 5.0ms interval 100.0ms memory_limit 32Mb ecn
Sent 1586750040 bytes 2181944 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
maxpacket 1449 drop_overlimit 0 new_flow_count 218042 ecn_mark 0
new_flows_len 1 old_flows_len 7
qdisc cake 8029: dev ifb4eth4 root refcnt 2 bandwidth 85Mbit diffserv3 triple-isolate nonat nowash no-ack-filter split-gso rtt 100.0ms noatm overhead 26
Sent 1091 bytes 11 pkt (dropped 0, overlimits 4 requeues 0)
backlog 0b 0p requeues 0
memory used: 2176b of 4250000b
capacity estimate: 85Mbit
min/max network layer size: 46 / 309
min/max overhead-adjusted size: 72 / 335
average network hdr offset: 1
Bulk Best Effort Voice
thresh 5312Kbit 85Mbit 21250Kbit
target 5.0ms 5.0ms 5.0ms
interval 100.0ms 100.0ms 100.0ms
pk_delay 0us 15us 0us
av_delay 0us 0us 0us
sp_delay 0us 0us 0us
backlog 0b 0b 0b
pkts 0 11 0
bytes 0 1091 0
way_inds 0 0 0
way_miss 0 4 0
way_cols 0 0 0
drops 0 0 0
marks 0 0 0
ack_drop 0 0 0
sp_flows 0 4 0
bk_flows 0 0 0
un_flows 0 0 0
max_len 0 323 0
quantum 300 1514 648
I'm not an expert in any of this, but I'll try to provide any more info if needed.
Something doesn’t look right with your WAN and WAN6. Why does your WAN6 indicate it’s set up for IPv4 and have the same IP as WAN? You might want to validate that to start.
I was trying to figure out how to get ipv4 and ipv6 on the same interface similar to that of post #22, but I lose my internet connection when I change WAN6 to DHCP ipv6. I just removed WAN6 in the meantime. Maybe you can point me in the right direction on a side note. Here's my current network config:
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fd43:5253:2ee8::/48'
config interface 'lan'
option proto 'static'
option netmask '255.255.255.0'
option ipaddr '192.168.3.1'
option ip6assign '64'
list dns '192.168.3.1'
list dns '8.8.8.8'
option type 'bridge'
option ifname 'eth0 eth1 eth2 eth3'
config interface 'wan'
option proto 'dhcp'
option ifname 'eth4'
If I can move forward, I'd like to continue on with the testing the script.
As an example, here is my current config:
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option packet_steering '1'
config interface 'lan'
option ifname 'eth1'
option proto 'static'
option netmask '255.255.255.0'
option ip6assign '64'
option ipaddr '192.168.45.5'
list dns '192.168.45.5'
option ip6ifaceid '::5'
option ip6hint '45'
config interface 'WAN'
option proto 'dhcp'
option ifname 'eth0'
option broadcast '1'
option peerdns '0'
config interface 'WAN6'
option proto 'dhcpv6'
option ifname 'eth0'
option reqprefix '56'
option reqaddress 'force'
option peerdns '0'
...
Your configuration will likely differ because mine is on a dedicated OpenWrt host (x86_64 VM) and I have all my WAP functionality offloaded to an R7800 (hence no bridging in my config). Also, I have Spectrum cable, so a DHCPv6 PD /56 is available to me so I can provide each of my internal VLANs their own /64 from that delegated prefix.
But perhaps this gives you some ideas to try and investigate more.
My configuration is:
AT&T (DSL) -> Arris router -> x86 openwrt box -> LAN
I got a unifi lite AP connected after the x86 box. Actually, looking in the Arris router configurations, I don't have a DHCPv6.
Question how do you make this script for a network with multiple segments?
Hi there quick question for you, I am missing the command iptmark with my openwrt at present and I have been unable to figure out which packge provides this. Do you know I should install so I can run your script?
Hello everyone,
I have been searching this forum to find a way to play cs:go with no lag and I have created a post asking for help (SQM qos for cs:go)
Users of the forum was very helpfull, and told me to check this post to set DSCP on my router.
I use a wrt3200ACM and I have installed the David custom firmware : openwrt-mvebu-cortexa9-linksys_wrt3200acm-squashfs-factory.img
Firmware Version : OpenWrt SNAPSHOT r13342-e35e40ad82 / LuCI Master git-20.144.63033-62ed4e6
I have downloaded the package on github : https://github.com/hisham2630/Ultimate-SQM-settings-Layer_cake-DSCP-marks-New-Script
And I was following the old post to check the setup step before doing anything.
My first question is: is it mandatory to have the extroot ? Because if I'm right I then need to install the version 14.07 of OpenWrt ?
After that I will follow the different step and my second and last question will be concerning the /etc/config/sqm
What should I exactly add on it
This is mine :
config queue 'eth1'
option ingress_ecn 'ECN'
option debug_logging '0'
option verbosity '5'
option script 'piece_of_cake.qos' **> change to : option script 'layer_cake.qos'**
option qdisc_advanced '1'
option squash_dscp '1' **> change to 0**
option squash_ingress '1' **> change to 0**
option linklayer 'atm'
option overhead '44'
option interface 'eth1.2'
option qdisc 'cake'
option enabled '1'
option download '7480'
option upload '705'
option egress_ecn 'NOECN'
option qdisc_really_really_advanced '1'
option iqdisc_opts 'nat dual-dsthost ingress' **> change to : option iqdisc_opts 'diffserv4 nat dual-srchost'**
option eqdisc_opts 'nat dual-srchost ack-filter' **> change to : option eqdisc_opts 'diffserv4 nat dual-dsthost '**
Is that correct ?
Thanks
uhurujam
Hello everyone
Awesome work with this script! @hisham2630
Would this work together with vpn-policy-routing, 2 different wireguard clients etc?
Thank you
Just wondering, is something like this needed for a fibre connection? I'm new to openwrt and this all seems alien to me. Running the regular cake sqm I can max out my downloads and my ping is a stable 8-9ms while doing so. Would trying to set this up benefit me at all? I play FPS a lot and would like to learn more how to tweak my connection to give me a better gaming experience
upstream... ( learn lan-ips 6and4 via mac ) payload rules are up to you...
addconsoledynamicipsets() {
ipset create consoles4 hash:ip family inet 2>/dev/null
ipset create consoles6 hash:ip family inet6 2>/dev/null
ipset create consoles list:set 2>/dev/null
ipset add consoles consoles4 2>/dev/null
ipset add consoles consoles6 2>/dev/null
if [ ! -z "$DSCPCONSOLEMACS" ]; then
for cMAC in $DSCPCONSOLEMACS; do
echo "consolemac: $cMAC [learnips>dcsp5-6]"; sleep 1
#learndeviceaddresses>ipsets
echo "console $cMAC rule4"
iptables -t mangle -D PREROUTING -m conntrack --ctstate NEW -m mac --mac-source ${cMAC} -j SET --add-set consoles src --exist 2>/dev/null
iptables -t mangle -I PREROUTING -m conntrack --ctstate NEW -m mac --mac-source ${cMAC} -j SET --add-set consoles src --exist
echo "console $cMAC rule6"
ip6tables -t mangle -D PREROUTING -m conntrack --ctstate NEW -m mac --mac-source ${cMAC} -j SET --add-set consoles src --exist 2>/dev/null
ip6tables -t mangle -I PREROUTING -m conntrack --ctstate NEW -m mac --mac-source ${cMAC} -j SET --add-set consoles src --exist
############################ payload rules
#>ip4console4toCSbyproto
iptmark -p tcp -m set --match-set consoles4 src,dst -m multiport ! --ports 80,591,8008,8080,443 -j DSCP --set-dscp-class CS5 -m comment --comment "ConsolesCS5-TCPfrom4"
iptmark -p udp -m set --match-set consoles4 src,dst -m multiport ! --ports 80,591,8008,8080,443 -j DSCP --set-dscp-class CS6 -m comment --comment "ConsolesCS6-UDPfrom4"
#>ip6console6toCSbyproto
ipt6mark -p tcp -m set --match-set consoles6 src,dst -m multiport ! --ports 80,591,8008,8080,443 -j DSCP --set-dscp-class CS5 -m comment --comment "ConsolesCS5-TCPfrom6"
ipt6mark -p udp -m set --match-set consoles6 src,dst -m multiport ! --ports 80,591,8008,8080,443 -j DSCP --set-dscp-class CS6 -m comment --comment "ConsolesCS6-UDPfrom6"
done
else
echo "specialmac: CMACS [none]"; sleep 1
fi
}
#DSCPCONSOLEMACS="bb:bb:bb:bb:bb:bb cc:cc:cc:cc:cc:cc"
#addconsoledynamicipsets
what is non veth method for mikrotik rb750gr3 please my wan is eth0.2
thanks in advance
At the risk of sounding like a complete idiot, I need to ask what is this all about? isn't SQM supposed to work out of the box with minimal configurations? I mean I configured SQM with cake and I managed to beat bufferbloat, +A in dslreports test, so what are those scripts offering? what I'm missing here?
If you also want to use dedicated priority tiers to have important traffic bypass background traffic, you need to propetly assign dscp marks before sqm gets hold of the packets, and especially for ingress traffic that is a bit of a challenge. A challenge this thread accepted and found a solution for.
Ah I see, that's interesting! Actually I asked the question in the first place as I have a problem when playing some P2P games on Dolphin Emu, I get a high packet loss percentage while talking with my friends over any VoIP services, that lead the emulator to desync or worst disconnect completely.
I don't suffer from these symptoms if I don't use VoIP, so I thought that these scripts could help me in this situation.
Hi
I am using this configuration.
I have done it in my Rpi4. eth1 is my wan and eth0 is my lan. Do I need to change any value in the script? And how do I check this script is working?
Thanks
Badri M
I try to run this command - tc -s qdisc - and I see packet loss. Am I doing any mistake?
qdisc noqueue 0: dev lo root refcnt 2
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc cake 800d: dev eth0 root refcnt 6 bandwidth 680960Kbit besteffort dual-srchost nat nowash no-ack-filter split-gso rtt 100ms noatm overhead 44
Sent 13692257243 bytes 10536822 pkt (dropped 2, overlimits 2102947 requeues 957)
backlog 0b 0p requeues 957
memory used: 666454b of 15140Kb
capacity estimate: 680960Kbit
min/max network layer size: 28 / 1500
min/max overhead-adjusted size: 72 / 1544
average network hdr offset: 14
Tin 0
thresh 680960Kbit
target 5ms
interval 100ms
pk_delay 11us
av_delay 2us
sp_delay 1us
backlog 0b
pkts 10536824
bytes 13692260219
way_inds 393121
way_miss 44393
way_cols 0
drops 2
marks 0
ack_drop 0
sp_flows 2
bk_flows 1
un_flows 0
max_len 15140
quantum 1514
qdisc ingress ffff: dev eth0 parent ffff:fff1 ----------------
Sent 514871764 bytes 4031393 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc cake 8011: dev eth1 root refcnt 2 bandwidth 35840Kbit besteffort dual-srchost nat nowash no-ack-filter split-gso rtt 100ms noatm overhead 44
Sent 563488435 bytes 3974790 pkt (dropped 0, overlimits 696989 requeues 5)
backlog 0b 0p requeues 5
memory used: 77056b of 4Mb
capacity estimate: 35840Kbit
min/max network layer size: 28 / 1500
min/max overhead-adjusted size: 72 / 1544
average network hdr offset: 14
Tin 0
thresh 35840Kbit
target 5ms
interval 100ms
pk_delay 27us
av_delay 3us
sp_delay 2us
backlog 0b
pkts 3974790
bytes 563488435
way_inds 166811
way_miss 41609
way_cols 0
drops 0
marks 0
ack_drop 0
sp_flows 2
bk_flows 1
un_flows 0
max_len 1514
quantum 1093
qdisc ingress ffff: dev eth1 parent ffff:fff1 ----------------
Sent 13128931977 bytes 10478376 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc cake 800e: dev ifb4eth0 root refcnt 2 bandwidth 35840Kbit besteffort dual-dsthost nat wash ingress no-ack-filter split-gso rtt 100ms noatm overhead 44
Sent 571631446 bytes 4031386 pkt (dropped 7, overlimits 592111 requeues 0)
backlog 0b 0p requeues 0
memory used: 327488b of 4Mb
capacity estimate: 35840Kbit
min/max network layer size: 46 / 1500
min/max overhead-adjusted size: 90 / 1544
average network hdr offset: 14
Tin 0
thresh 35840Kbit
target 5ms
interval 100ms
pk_delay 173us
av_delay 9us
sp_delay 5us
backlog 0b
pkts 4031393
bytes 571638602
way_inds 165738
way_miss 68883
way_cols 0
drops 7
marks 0
ack_drop 0
sp_flows 3
bk_flows 1
un_flows 0
max_len 8964
quantum 1093
qdisc cake 8012: dev ifb4eth1 root refcnt 2 bandwidth 680960Kbit besteffort dual-dsthost nat wash ingress no-ack-filter split-gso rtt 100ms noatm overhead 44
Sent 13633185655 bytes 10478296 pkt (dropped 80, overlimits 2155173 requeues 0)
backlog 0b 0p requeues 0
memory used: 1782984b of 15140Kb
capacity estimate: 680960Kbit
min/max network layer size: 46 / 1500
min/max overhead-adjusted size: 90 / 1544
average network hdr offset: 14
Tin 0
thresh 680960Kbit
target 5ms
interval 100ms
pk_delay 258us
av_delay 101us
sp_delay 5us
backlog 0b
pkts 10478376
bytes 13633304009
way_inds 226773
way_miss 40821
way_cols 0
drops 80
marks 0
ack_drop 0
sp_flows 1
bk_flows 1
un_flows 0
max_len 68130
quantum 1514
Thanks
Badri M
Nope packet drops are normal, that is how congested links behave and hence what TCP waits for... That is TCP will slowly increase its transmission rate until it encounters packet drops, at which point it will scale back to classically 50% transmission rate and again slowly ramp up. The goal is that TCP will adapt to a link's capacity. AQMs like cake or fq_codel now selectively drop a few packets to signal individual flows to slow down with the aim to give each flow its fair share of the capacity.
This is a bit simplified, but in short a few drops are not only benign but essential for TCP to function.