Minggu, 20 Mei 2018

Singkat Cerita tentang Burst dan Cara Menghitungnya

Burst adalah sebuah metode yang diterapkan pada bandwidth management dimana pengguna jaringan diizinkan untuk menggunakan bandwidth melebihi batas yang telah ditentukan sebelumnya dalam kurun waktu tertentu.

KENAPA HARUS MENGGUNAKAN BURST? Langkah ini dipercaya akan meningkatkan user experience. Karena jika dirasakan, pengguna akan mendapatkan bandwidth lebih untuk beberapa detik (terutama pada detik awal) kemudian melambat secara perlahan dan konsisten. Anda dapat menganalogikan burst ini seperti ketika menyalakan obor yang bahan bakarnya mulai menipis. Kemudian anda menambahkan bahan bakar pada obor tersebut. Maka seketika api akan membara dan beberapa saat kemudian meredup secara perlahan ketika bahan bakar mulai habis lagi.

Untuk melakukan bursting, kondisi berikut harus terpenuhi diantaranya:
- Burst dilakukan jika masih tersedia bandwidth (tentunya setelah sistem QoS telah memberikan alokasi CIR pada seluruh client)
- Burst data rate yang didapatkan pengguna harus lebih kecil dari data rate yang menjadi patokan (burst threshold).
- Beberapa kententuan lainnya.

Pada MikroTik, burst memiliki 3 parameter yang konfigurasinya tidak boleh dibiarkan kosong. Parameter tersebut adalah:
- burst-limit (bps) = adalah jumlah bandwidth maksimal yang akan didapatkan pengguna ketika burst sedang aktif.
- burst-time (second) = waktu yang digunakan untuk menghitung rata-rata data rate (beberapa orang mengira bahwa burst-time merupakan waktu yang digunakan untuk bursting. Padahal bukanlah seperti itu)
- burst-threshold (bps) = nilai ini akan menjadi patokan kapan bursting akan diaktifkan dan dinonaktifkan.

KAPAN BURST AKAN DIJALANKAN? Bursting akan berjalan ketika sebagaimana analogi obor diatas. Obor akan menyala sangat terang saat pertama kali karena bahan bakar masih banyak (utuh). Hal ini sama dengan ketika pengguna pertama kali menggunakan jaringan untuk download misalkan. Pengguna akan mendapatkan burst yaitu lonjakan kecepatan dengan batas tertentu (burst-limit) untuk pertama kali. Kecepatan dari bursting tersebut akan bertahan sampai beberapa detik yang dipengaruhi oleh burst-time.

Ketika bahan bakar sudah menipis, obor akan mulai meredup namun tidak padam. Analoginya, ketika bursting sudah mencapai batas waktunya, maka router tidak akan memberikan burst lagi. Pada saat itulah, kecepatan mulai menurun secara perlahan. Lalu pada titik tertentu, walaupun obor masih menyala dia tidak mampu menerangi sekitarnya, sehingga kita harus menambahkan bahan bakar. Hal tersebut dapat digambarkan, ketika data  rate sudah mencapai titik tertentu (burst-threshold) atau bahkan lebih kecil, maka burst akan diaktifkan lagi. Siklus ini akan berlanjut secara terus-menerus selama bandwidth total masih tersedia.

CALCULATION. Banyak referensi yang menyatakan tentang bagaimana menentukan jumlah max-limit, burst-limit, burst-threshold dan burst-time. Yang jelas, pada manual RouterOS atau wiki MikroTik menyatakan bahwa burst-threshold harus lebih kecil dari pada max-limit dan max-limit harus lebih kecil juga dari burst-limit.
burst-threshold < max-limit < burst-limit

Anda dapat menggunakan rasio:
burst-threshold : max-limit : burst-limit = 1 : 2 : 4

Formula tersebut dapat mempermudah anda dalam melakukan perhitungan serta menghindari bilangan yang tidak bisa dibagi.
Bagaimana dengan burst-time?. Pada keterangan diatas sudah disampaikan bahwa burst-time bukanlah waktu sesungguhnya burst dijalankan. Lamanya burst dapat dipengaruhi oleh perbandingan antara burst-threshold dan burst-limit serta juga dipengaruhi oleh data rate yang berjalan pada saat itu juga. Untuk lebih jelasnya, pengaruh lamanya burst berjalan berdasarkan perbandingan antara burst-threshold dan burst-limit dapat dihitung dengan melihat rasio:
client burst : burst time = burst threshold : burst limit .

Dengan persamaan tersebut, maka didapatkan:
burst time = client burst / (burst threshold/burst limit)

Contoh: Terdapat sebuah konfigurasi QoS sebagai berikut:
- burst-limit = 64kbps
- max-limit = 32kbps
- burst-threshold = 16kbps

Berapakah nilai yang harus diisikan pada burst-time jika ingin mengaktifkan burst selama 5 detik?
burst time = 2s / (128kbps/512kbps)
burst time = 2s / 0.25
burst time = 8s

Pembuktian:
- Pada detik 0 nilai data rate juga 0.
(0 + 0 + 0 + 0 + 0 + 0 + 0 + 0) / 8s = 0kbps.
- Pada detik 1 data rate naik menjadi burst-limit (64kbps) karena mendapatkan burst. 0kbps < 16kbps, maka burst akan diaktifkan.
(0 + 0 + 0 + 0 + 0 + 0 + 0 + 64kbps) / 8s = 8kbps.
- Pada detik 2 nilai data rate masih pada burst-limit (64kbps). 8kbps < 16kbps, maka burst akan diaktifkan.
(0 + 0 + 0 + 0 + 0 + 0 + 64kbps + 64kbps) / 8s 16kbps.
- Pada detik 3 karena 16kbps tidak lebih kecil dari 16kbps, maka burst dimatikan.  Kecepatan yang digunakan turun menjadi max-limit (32kbps).

Burst diaktifkan selama 2 kali (2 detik) sesuai dengan perhitungan sebelumnya. Formula tersebut hanya berlaku saat hitungan dimulai dari detik 0. Karena pada detik selanjutnya, kita tidak dapat memprediksikan kapan burst diaktifkan kembali. Hal tersebut bisa disebabkan oleh ketersediaan bandwidth

Terima kasih semoga bermanfaat.

______________
reference:
- Chris, Novan.Bandwidth Management - Burst.November 2016.Presentasi Indonesia Internet Expo & Summit.Balai Kartini, Jakarta.
- Discher, S. R. (2011). RouterOS by example. Learn Mikrotik.


Sabtu, 12 Mei 2018

Instalasi Apache dari Source (Debian Version)

Apache merupakan sebuah webserver yang banyak sekali digunakan. Kurang lebih 65% web server yang berjalan di seluruh dunia menggunakan Apache. Hal yang membuatnya menduduki peringkat teratas penggunaan adalah dia (Apache) memiliki sejarah yang panjang karena memang sudah dikembangkan sejak tahun 1995. Pesaingnya saat ini adalah Nginx (red: engine X) yang memiliki market share sebesar 20%.

Pemasangan aplikasi Apache webserver dapat menggunakan binary package melalui package manager atau compile secara manual. Compile secara manual memang dikenal lebih rumit dari pada melalui package manager. Namun ada beberapa keuntungan ketika sebuah aplikasi dipasang dan di-compile secara manual, diantaranya:

  1. Aplikasi yang dipasang adalah aplikasi dengan versi terbaru. Berbeda dengan aplikasi berbasis package yang akan membutuhkan sedikit banyak waktu untuk perilisan update.
  2. Dapat memilih fitur-fitur yang akan diterapkan pada aplikasi tersebut

Dengan kata lain, apabila Apache webserver ingin dalam kondisi paling update, maka harus dilakukan pemasangan dengan compile secara manual. Berikut adalah langkah-langkah compile Apache webserver secara manual:
  1. Sofware Requirement
    - Apache via Github atau Official
    - APR (Apache Portable Runtime)
    - APR-Utils
    - PCRE (Perl Compatible Regular Expressions) - site 1 | site 2
  2. Ekstrak APR
    Buat sebuah direktori (misalkan /tmp/apache2) dan pindahkan file yang telah di download ke dalamnya. Kemudian ekstrak file utama Apache pada /tmp/apache2. Untuk file APR, ekstrak ke dalam direktori /tmp/apache2/apr dan APR-Utils ke dalam direktori /tmp/apache2/apr-util. 
  3. Ekstrak PCRE
    Buat sebuah direktori (misalkan /tmp/PCRE) dan pindahkan file PCRE ke dalamnya. PCRE merupakan depedensi dari Apache, maka PCRE harus di-compile terlebih dahulu. Masuk ke direktori /tmp/PCRE kemudian berikan perintah berikut:
    ./configure --prefix=/usr/local/pcre
    make j -5
    make j -5 test
    make j -5 install
  4. Let's COMPILE!!!
    Masuk ke direktori Apache yang ada di dalam /tmp/apache2. Berikan perintah berikut:
    ./configure --with-included-apr --with-pcre=/usr/local/pcre --enable-layout=Debian --with-mpm=prefork --prefix=/usr/local/apache2 --with-program-name=apache2 --enable-so --enable-mods-shared=all

Artikel ini masih dalam penulisan lebih lanjut. Dari pada tidak dirilis, mungkin lebih baik jika dirilis sambil dikembangkan lebih lanjut.









Selasa, 20 Februari 2018

Bypass Download dengan JDownloader Tanpa Direct Link



Jika mendengar kata Downloader, mungkin yang terbayang pertama kali adalah Internet Download Manager atau sangat familiar sekali dengan sebutan IDM. IDM merupakan aplikasi shareware yang dipergunakan sebagai download manager (pengatur download) yang hanya tersedia untuk sistem operasi Windows.