Are you trying to slow down the IPTV or to give it absolute priority over everything? I assume the latter.Hi, i was trying simple queues, also queue tree to ensure constant bit rates for IPTV with no success. Do you have any ideas, how to correctly configure QoS?
The time-critical IPTV packets come from the network to your Set-Top Box or TV set, so your only task is not to delay or even drop them. You cannot affect the priority your ISP has given them, so if you experience issues, it is because your Mikrotik is unable to forward all of them.I have to mention, that I replaced ISP router by my Mikrotik router to save some cost. I don't know if the ISP was doing any prioritization on the last router (or this should not be the problem?)
But anyway, i will try to reconfigure these brigdes and switches as you suggested.
Please paste here the output ofI'm using hAP lite.
I changed config according to sindy.
Now cpu reduced from 11-13% till 3-4% when watching IPTV.
But i'm not able to browse internet. Do i need to replace everything to vlan40 instead of ether 1, or to bridge interface?
I'm not getting IP address on vlan40. Does that mean, that i should change vlan number, because it is used already by ISP?
My wlan client even get public IP address.
/export hide-sensitive
public.ip.addr.A
As expected, there is a small mess.But i'm not able to browse internet. Do i need to replace everything to vlan40 instead of ether 1, or to bridge interface?
I'm not getting IP address on vlan40. Does that mean, that i should change vlan number, because it is used already by ISP?
My wlan client even get public IP address.
ether2
ether4
ether5
ether1
/interface ethernet switch port
/interface ethernet switch vlan
bridge-lan
hw=no
/interface bridge port
ether2
ether4
ether5
bridge-wan-iptv
/interface bridge port
ether1
ether3
hw=yes bridge=bridge-wan-iptv
/ip dhcp-client interface
vlan40
bridge-wan-iptv
bridge-wan-iptv
/interface list list=WAN
vlan40
in-interface=vlan40
in-interface-list=WAN
out-interface
out-interface-list
ether1
ether1
bridge-wan-iptv
ether1
ether3
bridge-lan
We do not need VLAN 40, it is a zombie information from the other thread where it was just one of the ideas. I haven't written explicitly that you may delete it, sorry.Why do we need dummy vlan 40 and VLAN 0 on switchports?
Without VLAN 0 there is no internet. Without vlan 40 everything works as before.![]()
I wouldn't say it is the only thing that matters - the STB can opt to switch over to the SD stream and unsubscribe the HD one if it notices too many lost packets in the HD one, which is what I've called switching codec bitrate to simplify it. And the unicast retransmission mechanism contributes to clogging the download bandwidth as effectively the same packet gets sent twice, once as multicast and later as a unicast one. What I'm not sure, though, is how the playback of "recorded programs" is done, whether they are always unicast or whether multicast groups are created also for them so that multiple viewers of a recorded program can be served the same stream to save network bandwidth (so you have to wait to next whole minute or so when you order the playback).Many TV channels have two variations (HD and SD), but those variations are actually two distinct multicast streams with distinct mcast addresses. The only thing that matters in this case is that there's an unicast retransmission mechanism in place so that even in case of error in multicast reception set-top box can fetch correct data.
According to wikidevi, the two MIPS processors used do not differ dramatically in performance:I assume that RB951G is "strong" enough to deal with all the traffic. It's not the hAP ac lite that I use for the "main" router.
Time-shift is strictly unicast. And no, STB doesn't switch over to SD bitstream, as I said it's a different multicast address and playlist doesn't mix those.What I'm not sure, though, is how the playback of "recorded programs" is done, whether they are always unicast or whether multicast groups are created also for them so that multiple viewers of a recorded program can be served the same stream to save network bandwidth (so you have to wait to next whole minute or so when you order the playback).
I'm using Innbox V60U in bridged config (bridged in my case simply means that "internet" connection on modem is unconfigured). I have a port configured as "trunk" which forwards data as untagged and IPTV as tagged with VLAN ID 3999. On RB I use all ports switched, hence ether port connecting modem is hybrid (for data it's untagged access port for VLAN ID 2, for IPTV it's tagged). That's port number 4 aka ether5-DSL below.mkx, you mentioned in some other threads that you are using only one WAN facing port, untagged traffic to the modem and tagged traffic (3999) for IPTV.
/interface ethernet switch port
set 0 vlan-mode=secure
set 1 vlan-mode=secure
set 2 default-vlan-id=42 vlan-header=always-strip vlan-mode=secure
set 3 vlan-mode=secure
set 4 default-vlan-id=2 vlan-header=always-strip vlan-mode=secure
set 5 vlan-mode=secure
/interface ethernet switch vlan
add independent-learning=yes ports=switch1-cpu,ether1-lan,ether2-rbDS,ether3-pilatus,ether4-pilatusMcast switch=switch1 vlan-id=42
add independent-learning=yes ports=ether1-lan,ether2-rbDS,ether5-DSL,ether4-pilatusMcast switch=switch1 vlan-id=3999
add independent-learning=yes ports=switch1-cpu,ether1-lan,ether2-rbDS switch=switch1 vlan-id=41
add independent-learning=yes ports=switch1-cpu,ether1-lan,ether2-rbDS switch=switch1 vlan-id=40
add independent-learning=yes ports=switch1-cpu,ether1-lan,ether2-rbDS,ether5-DSL,ether4-pilatusMcast switch=switch1 vlan-id=2
/interface bridge
add admin-mac=E6:8D:8C:C6:11:C4 auto-mac=no fast-forward=no name=bridge priority=0x4000
/interface vlan
add interface=bridge name=vlan-2 vlan-id=2
add interface=bridge name=vlan-40 vlan-id=40
add interface=bridge name=vlan-41 vlan-id=41
add interface=bridge name=vlan-42 vlan-id=42
/interface pppoe-client
add add-default-route=yes disabled=no interface=vlan-2 keepalive-timeout=disabled name=pppoe-siol password=<password> user=<username>
If so, the behaviour @eftomi describes is even more strange. Because what you say would mean that there is no way for the bandwidth of the incoming IPTV streams themselves to be automatically reduced, so dropping more IPTV packets cannot lead to such reduction, whereas running the packet sniffer just causes more load to the CPU.STB doesn't switch over to SD bitstream, as I said it's a different multicast address and playlist doesn't mix those.
/interface ethernet switch port
set 4 default-vlan-id=2 vlan-header=leave-as-is vlan-mode=secure
RB951G features AR8327 which is capable of stripping select VLAN tags needed by hybrid ports. Hence my setup is quite right and vlan-header=always-strip means "strip VLAN header on egress for packets with VLAN ID matching default-vlan-id for ingress".Thanks, mkx! As I understand hybrid ports, in gigabit switch chips the setting vlan-header is ignored (with vlan-mode=secure), so your vlan-header=always-strip becomes vlan-header=leave-as-is, but on Atheros 8227 you have to be strict, putting for instance:
In my post, I was quoting the wording from my DSL modem. In practice it means PPPoE client is not running.Other than that, until now I've always thought that the "bridge mode" of a modem was a synonyme to having no PPPoE on it; what you wrote has shown me that at least on some modem models "bridge mode" means that only the L3 part is disabled while the PPPoE one is working.
/interface ethernet switch port
set 0 vlan-header=add-if-missing vlan-mode=secure #trunk
set 1 default-vlan-id=500 vlan-header=always-strip vlan-mode=secure #WAN
set 2 default-vlan-id=3999 vlan-header=always-strip vlan-mode=secure #IPTV
set 3 vlan-header=add-if-missing vlan-mode=secure #trunk
set 4 vlan-header=add-if-missing vlan-mode=secure #trunk
set 5 vlan-mode=secure
/interface ethernet switch vlan
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether5-trunk,switch1-cpu switch=switch1 vlan-id=100
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether5-trunk,switch1-cpu switch=switch1 vlan-id=150
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether4-iptv,ether5-trunk switch=switch1 vlan-id=3999
/interface bridge
add admin-mac=4C:5E:0C:0D:EA:6C auto-mac=no fast-forward=no name=bridge-for-switch protocol-mode=none
add fast-forward=no name=bridge-lan protocol-mode=none
/interface vlan
add comment=lan interface=bridge-for-switch name=vlan-100-bridge-switch vlan-id=100
/interface bridge port
add bridge=bridge-lan interface=vlan-100-bridge-switch
add bridge=bridge-for-switch interface=ether1-trunk
add bridge=bridge-for-switch interface=ether2-trunk
add bridge=bridge-for-switch interface=ether3-wan
add bridge=bridge-for-switch interface=ether4-iptv
add bridge=bridge-for-switch interface=ether5-trunk
/interface ethernet switch vlan
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether5-trunk,switch1-cpu switch=switch1 vlan-id=100
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether5-trunk,switch1-cpu switch=switch1 vlan-id=150
#added switch1-cpu:
add independent-learning=yes ports=ether1-trunk,ether2-trunk,ether4-iptv,ether5-trunk,switch1-cpu switch=switch1 vlan-id=3999
/interface bridge
add admin-mac=4C:5E:0C:0D:EA:6C auto-mac=no fast-forward=no name=bridge-for-switch protocol-mode=none
#bridges added:
add fast-forward=no name=bridge-lan protocol-mode=none
add fast-forward=no name=bridge-iptv protocol-mode=none
add fast-forward=no name=bridge-iptv-lan protocol-mode=none
/interface vlan
add comment=lan interface=bridge-for-switch name=vlan-100-bridge-switch vlan-id=100
#vlan interfaces added:
add interface=wds1 name=vlan-100-wds1 vlan-id=100
add comment=lan-iptv interface=bridge-for-switch name=vlan-150-bridge-switch vlan-id=150
add interface=wds1 name=vlan-150-wds1 vlan-id=150
add comment=iptv disabled=yes interface=bridge-for-switch name=vlan-3999-bridge-switch vlan-id=3999
add interface=wds1 name=vlan-3999-wds1 vlan-id=3999
/interface bridge port
add bridge=bridge-lan interface=vlan-100-bridge-switch
add bridge=bridge-for-switch interface=ether1-trunk
add bridge=bridge-for-switch interface=ether2-trunk
add bridge=bridge-for-switch interface=ether3-wan
add bridge=bridge-for-switch interface=ether4-iptv
add bridge=bridge-for-switch interface=ether5-trunk
#ports on bridges added:
add bridge=bridge-lan interface=vlan-100-wds1
add bridge=bridge-iptv-lan interface=vlan-150-bridge-switch
add bridge=bridge-iptv-lan interface=vlan-150-wds1
add bridge=bridge-iptv interface=vlan-3999-bridge-switch
add bridge=bridge-iptv interface=vlan-3999-wds1
The problem is that the 8327 ignores the vlan-header setting completely as it dynamically chooses between leave-as-is for tagged egress frames whose VID doesn't match the port's default-vlan-id and always-strip for tagged egress frames whose VID matches it. So for a hybrid port none of the available settings is "close to what the chip does". And 8227 is unable to handle a hybrid port because none of the available handlings can choose the tag handling on egress depending on the default-vlan-id value. So the idea that it is easier to migrate a configuration if settings unused by one type of hardware are kept close to what is required somehow fails on the fact that the hardware which requires that setting cannot fully substitute the original one.My opinion is that it's best to configure settings as close to how it's done as it gets even if some setting is ignored by particular switch chip ... it helps to understand the working and it helps when replicating setup on different type of hardware.
I can only agree with your words.In another words, I see it rather as a fault of RouterOS that it even shows a configuration parameter which has no effect on the actual hardware.
Most Mikrotik devices are built around SoC chips intended for SOHO devices for budget reasons. Nevertheless, already with 8327 it would be possible to redirect MSTP frames to the CPU port while dealing with the rest autonomously, so you could have a full MSTP handling in software along with "hardware accelerated" forwarding. The switch chip already supports independent forwarding tables for individual VLANs (maybe even for groups of VLANs to conserve memory, I haven't seen the programmer's guide), so all that would be needed would be to dynamically include and exclude the switch chip ports from VLANs to facilitate the topology changes. But either it would be too much effort for too little outcome, or gents in Riga are secretly working on it but don't tell anyone before finishing.It seems that most RB devices are equipped with switch chips that are more or less useless for anything more complex than basic ethernet switching. While bridge vlan filtering solves problem about features, it becomes major bottleneck (even if CPU is powerful enough, interconnection between switch chip and CPU is not adequate).
I haven't seen the programmer's guide), so all that would be needed would be to dynamically include and exclude the switch chip ports from VLANs to facilitate the topology changes. But either it would be too much effort for too little outcome, or gents in Riga are secretly working on it but don't tell anyone before finishing.
... or gents in Riga are secretly working on it but don't tell anyone before finishing.