Ethernet QOS and prioritization

Hello everyone
my senario is as follows and problem is about QOS, thanks for any solution. suppose Eth2 is for voip!

I have a 1100 X4
Eth1 → running pppoe client for internet connection
Eth2 → 192.168.20.1
Eth3 → Disconnected
Eth4 → Disconnected
when I ping 8.8.8.8 from 192.168.20.100 pc that is connected to Eth2, ping time is about 40-50 ms

now I connect another pc to Eth3 and start to download and consume internet …
Eth1 → running pppoe client for internet connection
Eth2 → 192.168.20.1
Eth3 → 192.168.30.1
Eth4 → Disconnected
in this step when I ping 8.8.8.8 from 192.168.20.100 pc that is connected to Eth2, ping time is about 70-80 ms

now I connect another pc to Eth4 and start to download and consume internet …
Eth1 → running pppoe client for internet connection
Eth2 → 192.168.20.1
Eth3 → 192.168.30.1
Eth4 → 192.168.40.1
in this step when I ping 8.8.8.8 from 192.168.20.100 pc that is connected to Eth2, ping time is about 90-100 ms

how can I prioritize Eth2 traffic to internet over other interface and have ping about 40-50 ms !!?

I’ve tried many ways like marking in mangle and then queues … but seems they work only when bandwidth is limited and there is some kind of competition …

Sorry for my bad english.
thanks in advanced