Mengoptimalkan Bandwidth VOIP di Mikrotik

Membuat prioritas terbaik untuk akses voip menggunakan mangle dan queue tree

Advertisements

Berawal dari kebutuhan akses internet dikantor sudah dipastikan kita memerlukan akses internet dari provider dengan cara berlangganan atau yang lainnya. Namun yang namanya internet pasti sangat banyak jenis paket yang berjalan diatasnya maka diperlukan adanya QoS untuk memprioritaskan paket mana yang bisa lewat duluan dan mana yang belakangan, ada 2 protocol disini yang akan dibahas yaitu TCP dan UDP, sesuai judul artikel disini akan mengoptimalkan bandwidth untuk akses voip yang mana voip ini menggunakan protocol UDP  sedangkan akses untuk browsing download dan sebagainya menggunakan protocol TCP masuk prioritas setelah voip.

Tujuan memprioritaskan akses voip adalah untuk memberikan kenyamanan berkomunikasi via internet protocol (IP), bisa anda bayangkan jika tidak dilakukan prioritas pada akses voip, ketika sedang asik telepon tiba-tiba suara yang didapat dari lawan bicara terputus-putus dan ternyata suspectnya karena ada rekan kerja yang lagi asik streaming bahkan download

VOIP Bandwidth Optimation
Topologi Jaringan SOHO

Kehadiran router yang murah meriah dan handal ini, mikrotik bisa menjawab atas masalah yang ada diatas. Meskipun harga murah menurut saya mikrotik ini sangat handal dan banyak mencukupi berbagai kebutuhan seperti fitur Firewal, NAT, DHCP, Hotspot, Wifi itu semua yang saya gunakan hanyak dengan 1 perangkat yaitu Mikrotik RB951-2n.

Biar gak bikin penasaran, langsung saja tancap gass.

Pertama, buat mangle untuk DNS karena DNS request dilakukan oleh si mirkotik itu sendiri maka kita memerlukan prerouting dan postrouting dengan menandai connection dan packet nya.

add chain=prerouting action=mark-connection protocol=udp port=53 connection-state=new new-connection-mark="DNS" comment="DNS"

add chain=prerouting action=mark-packet passthrough=no connection-mark="DNS" new-packet-mark="DNS"

add chain=postrouting action=mark-connection protocol=udp port=53 connection-state=new new-connection-mark="DNS"

add chain=postrouting action=mark-packet passthrough=no connection-mark="DNS" new-packet-mark="DNS"

Kedua, Menandai trafik voip yang lewat dari jaringan LAN dengan prerouting. Pastikan sebelumnya bahwa peralatan yang anda gunakan menggunakan protocol SIP port 5060,5061 dan RTP 10.000-20.000. Sama seperti DNS sebelumnya trafik ini kita tandai connection dan packet nya.

add chain=prerouting action=mark-connection protocol=udp port=5060,5061,10000-20000 new-connection-mark="VOIP" comment="VOIP"

add chain=prerouting action=mark-packet passthrough=no connection-mark="VOIP" new-packet-mark="VOIP"

Ketiga, buat mangle untuk menandai trafik UDP dari sisi LAN.

add chain=prerouting action=mark-connection protocol=udp connection-state=new new-connection-mark="UDP" comment="UDP"

add chain=prerouting action=mark-packet passthrough=no connection-mark="UDP" new-packet-mark="UDP"

Keempat, buat mangle untuk menandai trafik ICMP dari sisi LAN dan dari sisi WAN.

add chain=prerouting action=mark-connection protocol=icmp connection-state=new new-connection-mark="ICMP" comment="ICMP"

add chain=prerouting action=mark-packet passthrough=no connection-mark="ICMP" new-packet-mark="ICMP"

add chain=postrouting action=mark-connection protocol=icmp connection-state=new new-connection-mark="ICMP"

add chain=postrouting action=mark-packet passthrough=no connection-mark="ICMP" new-packet-mark="ICMP"

Kelima, buat mangle untuk menandai paket ACK dari sisi LAN dan WAN, karena Server PABX ada diluar network mikrotik itu sendiri.

add chain=postrouting action=mark-packet passthrough=no protocol=tcp tcp-flags=ack packet-size=0-123 new-packet-mark="ACK" comment="ACK"

add chain=prerouting action=mark-packet passthrough=no protocol=tcp tcp-flags=ack packet-size=0-123 new-packet-mark="ACK"

Keenam, buat mangle untuk menandai koneksi dari jaringan local ke HTTP, jika transfer lebih besar dari 5MB maka akan ditandai sebagai HTTP_BIG.

add chain=prerouting action=mark-connection protocol=tcp connection-mark=!"HTTP_BIG" new-connection-mark="HTTP" connection-state=new port=80,443 comment="HTTP"

add chain=prerouting action=mark-connection protocol=tcp connection-mark="HTTP" new-connection-mark="HTTP_BIG" connection-bytes=500000-0 connection-rate=200k-100M

add chain=prerouting action=mark-packet passthrough=no connection-mark="HTTP_BIG" new-packet-mark="HTTP_BIG" 

add chain=prerouting action=mark-packet passthrough=no connection-mark="HTTP" new-packet-mark="HTTP"

Ketujuh, buat mangle untuk menandai semua trafik dari LAN yang tidak ditandai pada trafik sebelumnya diatas.

add chain=prerouting action=mark-connection connection-mark=no-mark new-connection-mark="OTHER" comment="OTHER"

add chain=prerouting action=mark-packet passthrough=no connection-mark="OTHER" new-packet-mark="OTHER"
Mangle QoS
Mangle

Sampai disini untuk penandaan koneksi dan paket sudah selesai, selanjutnya kita akan buat rule priority menggunakan Queue Tree.
Sebagai catatan, prioritas yang akan saya buat disini dibagi menjadi 3 yaitu Prioritas Level 1, Level 2, dan Level 3 untuk lebih jelasnya masing-masing level isinya seperti berikut :

Prioritas Level 1,
dimana trafik untuk level ini akan selalu dijaga prioritasnya dan tidak akan pernah penuh karena trafik yang lainnya.
Prioritas #1
: Semua paket VoIP baik itu download maupun upload

add name="LEVEL_1_UP" parent=ether-WAN-1 queue=default max-limit=30M
add name="LEVEL_1_DOWN" parent=Hotspot queue=default max-limit=30M

add name="VOIP_U" parent="LEVEL_1_UP" packet-mark="VOIP" queue=default priority=1

add name="VOIP_D" parent="LEVEL_1_DOWN" packet-mark="VOIP" queue=default priority=1

Prioritas Level 2, Merupakan prioritas tertinggi setelah trafik voip, dimana ada 4 trafik yang masuk pada level 2 ini.
Prioritas #1 : Semua paket ACK yang banyak menunjang interkoneksi antara client VoIP dengan server VoIP.

add name="LEVEL_2_UP" parent=ether-WAN-1 queue=default max-limit=30M
add name="LEVEL_2_DOWN" parent=Hotspot queue=default max-limit=30M

add name="ACK_U" parent="LEVEL_2_UP" packet-mark="ACK" queue=default priority=1

add name="ACK_D" parent="LEVEL_2_DOWN" packet-mark="ACK" queue=default priority=1

Prioritas #2 : Semua paket DNS

add name="DNS_U" parent="LEVEL_2_UP" packet-mark="DNS" queue=default priority=2

add name="DNS_D" parent="LEVEL_2_DOWN" packet-mark="DNS" queue=default priority=2

Prioritas #3 : Semua paket UDP

add name="UDP_U" parent="LEVEL_2_UP" packet-mark="UDP" queue=default priority=3

add name="UDP_D" parent="LEVEL_2_DOWN" packet-mark="UDP" queue=default priority=3

Prioritas #4 : Semua trafik ICMP

add name="ICMP_U" parent="LEVEL_2_UP" packet-mark="ICMP" queue=default priority=4

add name="ICMP_D" parent="LEVEL_2_DOWN" packet-mark="ICMP" queue=default priority=4

Prioritas Level 3
Prioritas #1 : Semua trafik HTTP (s) dengan trafik < 5MB

add name="LEVEL_3_UP" parent=ether-WAN-1 queue=default max-limit=30M
add name="LEVEL_3_DOWN" parent=Hotspot queue=default max-limit=30M

add name="HTTP_U" parent="LEVEL_3_UP" packet-mark="HTTP" queue=default priority=1

add name="HTTP_D" parent="LEVEL_3_DOWN" packet-mark="HTTP" queue=default priority=1

Prioritas #2 : Semua trafik HTTP (s) dengan trafik > 5MB

add name="HTTP_BIG_U" parent="LEVEL_3_UP" packet-mark="HTTP_BIG" queue=default priority=2

add name="HTTP_BIG_D" parent="LEVEL_3_DOWN" packet-mark="HTTP_BIG" queue=default priority=2

Prioritas #3 : Semua trafik yang tidak ditandai pada rule prioritas diatas.

add name="OTHER_U" parent="LEVEL_3_UP" packet-mark="OTHER" queue=default priority=3

add name="OTHER_D" parent="LEVEL_3_DOWN" packet-mark="OTHER" queue=default priority=3
QoS Hotspot
QoS Menggunakan Queue Tree

Sekarang kita test dari konfigurasi diatas,
Test pertama coba menjalakan prioritas level 3 down yaitu HTTP_BIG dengan membuka banyak tab untuk streaming dan dilanjutkan dengan browsing dengan membuka detik masih lancar dilanjutkan dengan ping ke gateway masih baik dan terahir dilanjutkan dengan telpon dengan voip suara masih jernih, padahal semuanya masih berjalan secara bersamaan.

Simulasi QoS

Alhamdulillah selesai juga untuk artikel mengoptimalkan bandwidth voip menggunakan mikrotik dengan memanfaatkan mangle dan queue tree. Semoga bermanfaat 🙂

 

Sumber : Forum Mikrotik http://forum.mikrotik.com/viewtopic.php?t=73214

Author: admin@khsnndzf

Good People

6 thoughts on “Mengoptimalkan Bandwidth VOIP di Mikrotik”

  1. Mohon maaf gan sebelumnya, saya mau izin bertanya

    add name=”LEVEL_1_UP” parent=ether-WAN-1 queue=default max-limit=30M
    add name=”LEVEL_1_DOWN” parent=Hotspot queue=default max-limit=30M

    gan, itu bisa di jelaskan lebih rinci posisi “parent=ether-WAN-1” sama “parent=Hotspot” , soalnya saya mau sesuaikan dengan interface di jaringan saya.

    maaf gan, saya newnie banget soalnya, hehehe
    terimakasih,
    salam,
    Egi

    Like

    1. Dear Egi Firmani,

      Posisi “parent=ether-WAN-1” adalah akses uplink yang saya gunakan ke Internet/Server VoIP, sedangkan untuk “parent=Hotspot” itu gateway client yang akan saya terapkan QoS dalam hal ini jaringan via Hotspot (Wireless), silahkan disesuaikan jika disisi client akses gateway nya menggunakan Switch/Hub setting interface nya di ether berapa pada mikrotiknya.

      Semoga bisa dimengerti. 🙂

      Like

      1. Kalau coba dibuat bridge gimana bro? 2 jalur itu dimasukkan dalam 1 interface bridge, jadi yang dipasang di parent =Interface-Bridge nya

        Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s