الخميس، 10 سبتمبر 2015

Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan

Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan - Tulisan Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan dokumentasi saya lagi, sejak hosting blog jasa setting mikrotik hilang lari ntah kelaut mana pengelolanya. Loadbalancing adalah teknik menggabungkan beberapa source koneksi didalam satu router.

Teknik loadbalancing sering kali di salah artikan, dengan menganggap bahwa dengan loadbalancing 2 buah koneksi dengan bandwidth yang berbeda akan terakumulasi menjadi satu kesatuan. Kalau di ibaratkan dalam hitungan matematikanya kesalahan itu kira kira begini:

2mbps + 1mbps = 3mbps

Pemikiran tersebut merupakan pemikiran dan pemahaman yang salah terhadap loadbalancing, teknik loadbalancing sendiri bukan menggabungkan bandwidth menjadi satu kesatuan, namun membagi beban keneksi terhadap beberapa source koneksi yang ada, kalau di matematika kan mungkin seperti berikut

2mbps + 1mbps = 1/2mbps +1/2mbps +1/2mbps +1/2mbps+1/2mbps+1/2mbps

Seperti itulah sebenernya konsep sederhana loadbalancing. membagi beban trafik ke beberapa source koneksi yang ada, sehingga terjadi keseimbangan penggunaan pada masing-masing source koneksi internet yang di gunakan, dalam arti paket di bagi rata, dan menghindari overload terhadap satu jalur koneksi.


Teknik loadbalancing Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan banyak jenisnya, pertama kali yang populer dengan konsep loadbalancing NTH, saya juga tidak tahu, mungkin tulisan yang di ambil dari forum mikrotik tentang loadbalancing dapat sedikit memberi pencerahan buat anda, apa itu nth berikut saya cuplik sebagian dari --> http://baratev.sourceforge.net/stuff/mt.nthloadbalance.txt

#######################################################
Konsep dan Terapan NTH utk Loadbalancing pada Mikrotik
#######################################################

I N T R O
---------

O-----------------------------------------------------------------------------------

nth (integer,integer: 0..15,integer{0,1}) - match a particular Nth packet received
by the rule. One of 16 available
counters can be used to count packets

Every - match every Every+1th packet. For example, if Every=1 then the rule matches
every 2nd packet
Counter - specifies which counter to use. A counter increments each time the rule
containing nth match matches
Packet - match on the given packet number. The value by obvious reasons must be
between 0 and Every. If this option is used for a given counter, then
there must be at least Every+1 rules with this option, covering all values
between 0 and Every inclusively.
O-----------------------------------------------------------------------------------

nth ada 3 bagian

bilang lah A,B,C
A = every
B = counter
C = packet

setelah gw baca lagi dan lagi dan lagi manual diatas

sampe sekarang gw gak ngerti2 dari ketiga bagian diatas.

jika pake 2 line load balance ada yang buat :
every 1 counter 1 packet 0 <-- line 1
every 1 counter 1 packet 1 <--- line 2

ada juga yang buat : 1,2,0 - 1,2,1


Pemahaman Saya Mengenai Nth:

Pada dasarnya koneksi yang masuk ke proses di router akan menjadi satu arus yang sama,
walaupun mereka datang dari interface yang berbeda. (well, this one is debatable)

Saat kita ingin menerapkan metode Nth, tentunya kita juga memberikan batasan ke router
untuk hanya mem-proses koneksi dari sumber tertentu saja (ex. dari IP lokal).

Nah, begitu router telah membuat semacam 'antrian' baru untuk batasan yang kita
berikan diatas, baru proses Nth dimulai.


#Every

Angka Every adalah jumlah kelompok yang ingin dihasilkan. Jadi bila kita ingin
membagi alur koneksi yang ada menjadi 4 kelompok yang nantinya akan di load balance
ke 4 koneksi yang ada, maka angka Every = 4.

Namun, setelah saya bandingkan manual yang ada di Mikrotik dengan penjelasan tentang
penerapan Nth di Linux, ada perbedaan disini.

Pada Mikrotik, angka Every harus dikurangkan 1, hingga bila mengikuti contoh diatas,
maka kita harus mengisikan Every = 3. Hal ini mungkin dikarenakan proses Nth di
Mikrotik akan menerapkan Every+1 (lihat manual) pada pengenalan koneksinya.

Jadi, kesimpulan sementara saya, bila kita ingin membagi 2 kelompok, maka :

- Pada Linux, Every = 4
- Pada Mikrotik, Every = 3


#Counter

Angka Counter dapat diisikan angka 0-15. Maksudnya adalah menentukan counter mana
yang akan kita pakai. Pada Mikrotik terdapat 16 Counter yang dapat dipakai, hal
ini juga sama dengan penerapan yang ada di Linux.

Setelah Diskusi dengan bro D3V4, ternyata penerapan counter cukup berpengaruh.
Jadi kesimpulan sementara, counter sebaiknya diset ke every+1 untuk Mikrotik


#Packet

Nah, kita sampe ke parameter terakhir. Parameter terakhir cukup menentukan.

Bila kita ingin membuat 4 kelompok, tentunya kita harus membuat 4 mangle rules.
Nah, pada rules tersebut, angka untuk Every dan Counter haruslah sama. Namun untuk
angka packet harus berubah.

Untuk 4 kelompok, berarti angka packet untuk 4 rules tersebut adalah 0,1,2 dan 3.
Angka tersebut ditentukan dari 0 ... (n-1).

Penerapan angka Packet untuk Linux dan Mikrotik sama.

Contoh

Mari kita ambil contoh untuk penerapan Nth untuk 4 koneksi. Maka Angka Nth untuk
masing2 rule di Mikrotik adalah (counter yg dipakai adalah 4) :

Rule 1 = 3,4,0
Rule 2 = 3,4,1
Rule 3 = 3,4,2
Rule 4 = 3,4,3


T E O R I
---------

tcp connections 3 way handshake

1. connection establishment
2. data transfer
3. connection termination

dengan tahapan sbb :
1. LISTEN
2. SYN-SENT
3. SYN-RECEIVED
4. ESTABLISHED
5. FIN-WAIT-1
6. FIN-WAIT-2
7. CLOSE-WAIT
8. CLOSING
9. LAST-ACK
10. TIME-WAIT
11. CLOSED

jika teori gw bener (CMIIW lagi ) proses mangle itu memotong di nomer 4

alias connection nya belum ketutup tapi udah request baru lagi (new connections state)
jadi dengan kata lain :

kenoksi masih kebuka udah ngerequest ke gateway yang lainnya ... jadi semua speedy
yang kita punay kebuka dan di gunakan.

jadi walaupun kedetek ip speedy 1 tetapi bebannya masih kebagi ke sebanyak n-th
yang kita punya.. ROUND ROBIN !


Nah Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan, loadbalancing nth yang saya gunakan di SMK Swasta Teruna Padangsidimpuan.

/ip firewall mangle

add action=jump chain=prerouting connection-state=new jump-target=lb
add action=mark-connection chain=lb connection-state=new dst-port=80,8080 in-interface=WIFI new-connection-mark=1-CN nth=2,2 protocol=tcp
add action=mark-routing chain=lb connection-mark=1-CN in-interface=WIFI new-routing-mark=1 passthrough=no
add action=mark-connection chain=lb connection-state=new dst-port=80,8080 in-interface=WIFI new-connection-mark=2-CN nth=2,1 protocol=tcp
add action=mark-routing chain=lb connection-mark=2-CN in-interface=WIFI new-routing-mark=2 passthrough=no
add action=mark-connection chain=prerouting disabled=yes layer7-protocol=download new-connection-mark=lab-con src-address-list=IP
Semoga bermanfaat dan dapat memahami nthnya - Loadbalancing NTH Mikrotik 2 Line Smk Teruna Padangsidimpuan