Thursday, August 09, 2007

Kapan Kita Perlu Memakai SNMP versi 2?

Kita biasa mengukur trafik sebuah interface dengan konfigurasi MRTG berikut:

Target[nama_target]nomor_interface:community@target:
MaxBytes[nama_target]: 1234567
dst ...
Pengukuran biasa dilakukan dengan selang waktu 5 menit. Apabila interface yang diukur adalah fast ethernet (100Mbps), maka selama 5 menit, data yang lewat maksimum sebesar ~3.5 giga bytes. Dengan sebuah pencacah (counter) 32 bit, yang mampu menyimpan nilai sampai dengan 2^32-1 (4.294.967.295), setiap 5 menit pencacah tersebut hanya mungkin overflow dua kali. MRTG mampu mengkoreksi overflow tunggal, sedangkan untuk kasus overflow ganda, kita hanya bisa berdoa semoga tidak terjadi :D.

Bagaimana kalau interface yang diukur bertipe ethernet gigabit? Data yang lewat bisa mencapai ~35 GB, dan pencacah 32 bit bisa mengalami overflow sampai dengan 9(?) kali. Dan anda akan memperoleh grafik trafik yang aneh: seolah-olah link gigabit anda masih lengang karena trafik jarang lebih dari 120 Mbps. Apa solusinya? Apabila sampling dipersering, misalnya setiap 30 detik, maka overflow antar sampel maksimum hanya sekali, akan tetapi anda tidak lagi dapat memanfaatkan cron untuk men-drive MRTG, karena resolusi cron minimum 1 menit. Kalaupun ada metoda alternatif cron yang memiliki resolusi 30 detik, boleh jadi trafik query SNMP nilainya menjadi signifikan, karena berlipat 10 dari sebelumnya.

Solusi yang lebih elegan adalah memakai SNMP versi 2. Ada OID bertipe Counter64 (ifHCInOctets dan ifHCOutOctets, menggantikan ifInOctets dan ifOutOctets yang bertipe Counter32) yang tidak bakal mudah overflow walaupun dipakai untuk mencacah data yang lewat pada interface gigabit. Konfigurasi MRTG yang memanfaatkan SNMPv2 hanya sedikit berbeda dari konfigurasi default:
Target[nama_target]nomor_interface:community@target:::::2

1 comment:

Bimo Septyo Prabowo said...

oo kirain hanya ada monitoring bandwith