Could you explain your set up a bit? Post your switch config? Thanks.
I have set ether4(stb port) to be a slave of ether5(ISP port).
this way STB can talk to iptv service without any configuration from my side, and without any CPU interaction.
I also added the following:
/interface ethernet switch rule
add dst-port=5050 new-dst-ports=ether4 ports=ether5
obviously this forwards any traffic coming from ISP(ether5) on port 5050 to ether4 (STB).
This prevents this traffic from hitting the CPU port, lowering your system load.
my ISP broadcasts media streams on this port, yours might differ, so, use the torch or packet sniffer to find out yours.
Also I noticed some garbage traffic not meant for me, so, filtered that out as well:
add dst-mac-address=01:00:5E:7F:FF:FA/01:00:5E:7F:FF:FA new-dst-ports="" \
ports=ether5
add dst-mac-address=CF:00:00:00:00:00/CF:00:00:00:00:00 new-dst-ports="" \
ports=ether5
in your situation this might be different as well, so, again, torch is your friend.
After doing this I see no iptv-related or packets on the CPU, and the STB works flawlessly for almost 2 years so far.
These switch rules, along with ability to create virtual "switches" by setting master ports is really a gem that makes routerboards shine IMO.