Product SiteDocumentation Site

10.4. Kualitas Layanan

10.4.1. Prinsip dan Mekanisme

Quality of Service (Kualitas Layanan atau disingkat QoS) mengacu ke sekumpulan teknik yang menjamin atau memperbaiki kualitas layanan yang disediakan ke aplikasi. Teknik paling populer melibatkan penggolongan trafik jaringan ke dalam kategori-kategori, dan membedakan penanganan trafik sesuai dengan kategori yang menaunginya. Penerapan utama dari konsep layanan terdiferensiasi ini adalah traffic shaping, yang membatasi laju transmisi data untuk koneksi yang terkait dengan beberapa layanan dan/atau host agar tidak membuat jenuh lebar pita yang tersedia dan mencekik layanan penting lain. Traffic shaping khususnya sangat cocok bagi trafik TCP, karena protokol ini secara otomatis menyesuaikan ke lebar pita yang tersedia.
Mungkin juga untuk mengubah prioritas pada lalu lintas, yang memungkinkan memprioritaskan paket-paket yang berhubungan dengan layanan interaktif (seperti ssh dan telnet) atau ke layanan yang hanya berhubungan dengan blok-block kecil data.
Kernel Debian menyertakan fitur-fitur yang diperlukan untuk QoS bersama dengan modul-modul terkait. Modul ini banyak, dan masing-masing menyediakan layanan berbeda, terutama skeduler khusus untuk antrian paket IP; berbagai macam perilaku skeduler tersedia mencakup seluruh kemungkinan persyaratan.

10.4.2. Mengkonfigurasi dan Mengimplementasi

Parameter QoS ditetapkan melalui perintah tc (yang disediakan oleh paket iproute ). Karena antarmukanya cukup kompleks, dianjurkan menggunakan alat-alat dengan tingkat lebih tinggi.

10.4.2.1. Mengurangi Latensi: wondershaper

Tujuan utama dari wondershaper (dalam paket yang bernama sama) adalah untuk meminimalkan latensi independen dari beban jaringan. Hal ini dicapai dengan membatasi total lalu lintas ke nilai yang sedikit kurang dari nilai saturasi link.
Sekali suatu antarmuka jaringan dikonfigurasi, menyiapkan pembatasan trafik ini dicapai dengan menjalankan wondershaper antarmuka laju_unduh laju_unggah. Antarmuka bisa berupa enp1s0, eth0, atau ppp0 misalnya, dan kedua kecepatan dinyatakan dalam kilobit per detik. Perintah wondershaper remove antarmuka menonaktifkan kendali trafik pada antarmuka yang dinyatakan.
Untuk sambungan Ethernet, secara historis skrip ini terbaik dipanggil tepat setelah antar muka dikonfigurasi. Hal ini dilakukan dengan menambahkan direktif up dan down ke berkas /etc/network/interfaces yang memungkinkan perintah-perintah yang dideklarasikan dijalankan, masing-masing, setelah antar muka dikonfigurasi dan sebelum itu di-dekonfigurasi. Atau dalam kasus PPP, membuat skrip yang memanggil wondershaper di /etc/ppp/ip-up.d/ akan mengaktifkan kontrol lalu lintas segera setelah koneksi hidup. Di bawah ini adalah contoh menggunakan metode pertama ini:

Contoh 10.9. Perubahan dalam berkas /etc/network/interfaces

iface eth0 inet dhcp
    up /sbin/wondershaper eth0 500 100
    down /sbin/wondershaper remove eth0

10.4.2.2. Konfigurasi Standar

Kecuali konfigurasi QoS tertentu, kernel Linux menggunakan penjadwal antrian pfifo_fast, yang menyediakan beberapa fitur menarik. Prioritas dari setiap paket IP yang diproses didasarkan pada ruas DSCP (Differentiated of Services Code Point) paket ini; memodifikasi ruas 6 bit ini cukup untuk mengambil keuntungan dari fitur penjadwalan. Lihat https://en.wikipedia.org/wiki/Differentiated_services#Class_Selector untuk informasi lebih lanjut.
Ruas DSCP dapat diatur oleh aplikasi yang menghasilkan paket IP, atau diubah sambil jalan oleh netfilter. Aturan berikut cukup untuk meningkatkan responsivitas untuk server layanan SSH, perhatikan bahwa ruas DSCP mesti ditata dalam heksadesimal:
nft add table ip mangle
nft add rule ip mangle PREROUTING tcp sport 22 counter ip dscp set 0x04
nft add rule ip mangle PREROUTING tcp dport 22 counter ip dscp set 0x04