Page 1 of 1

VOiP priority is it ok??

Posted: Wed Feb 15, 2006 1:29 pm
by georgevio
[georgevio@LiLoMagnifico] > ip firewall mangle add chain=forward src-port=3830 dst-port=3830 action=mark-connection new-connection-mark=voice_buster

[georgevio@LiLoMagnifico] > queue tree add parent=public packet-mark=voice_buster priority=1

what does everybody think ??
is this the right way to give top priority to VoiP calls??
port 3830 is the port thw pecific VoiP program (Voice Buster) is using...
if not plz advice with a more effective rule......

Posted: Wed Feb 15, 2006 2:59 pm
by djape
Hmm, your rules are wrong if you ask me. You must be sure that this is the only port. I would do it this way:
ip firewall mangle >
add chain=prerouting protocol=udp src-port=3830 action=mark-packet new-packet-mark=voice_buster-in passthrough=yes

add chain=prerouting protocol=udp src-port=3830 action=mark-connection new-connection-mark=voice_buster-in passthrough=yes

add chain=prerouting protocol=udp src-port=3830 action=change-tos new-tos=min-delay

add chain=prerouting protocol=udp src-port=3830 action=accept

add chain=prerouting protocol=udp dst-port=3830 action=mark-packet new-packet-mark=voice_buster-out passthrough=yes

add chain=prerouting protocol=udp dst-port=3830 action=mark-connection new-connection-mark=voice_buster-out passthrough=yes

add chain=prerouting protocol=udp dst-port=3830 action=change-tos new-tos=min-delay

add chain=prerouting protocol=udp dst-port=3830 action=accept

THEN queue tree >
add name="voice_buster-in" parent=global-in packet-mark=voice_buster-in limit-at=0 queue=default priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s

add name="voice_buster-out" parent=global-out packet-mark=voice_buster-out limit-at=0 queue=default priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s

Cheers...

Posted: Wed Feb 15, 2006 5:00 pm
by maximan
Check the archive of part15.org

you can set tos 184 too.
From the history...
The TOS bits are not mutually exclusive as I understand them. The
various bits can be OR'ed together to make the value. The TOS=184 or
$B8 is as follows:

1 0 1 1 1 0 0 0

In long form it's:

1*2^7 + 0*2^6 + 1*2^5 + 1*2^4 + 1*2^3 + 0*2^2 + 0*2^1 + 0*2^0

Or:

1*128 + 0*64 + 1*32 + 1*16 + 1*8 + 0*4 + 0*2 + 0*1

Which is 184.

The left-most three bits are used for Precedence and the other five bits
for TOS. That doesn't mean much really. What's important is to match
the TOS values in the RTP packets. If you do a packet sniff and look,
you should see the RTP from most VoIP adapters as having the value 184.
I believe Mikrotik is using an equal comparison and not an OR comparison
in their TOS matching code, so you have to hit the exact value of the
entire TOS byte in the rule, else it will not match. That's why we use
184 in the field and not 16.

Maximiliano Dobladez
Intercity SRL
Rio Cuarto - Argentina
The biggest canopys implementation of sudamerica