Home

QoS (Quality of Service)

9 Comments

Kali ini kita bahas QoS…over IP Network (soalnya istilah QoS banyak…ga cuma di dunia IT, bisa di perhotelan, bisa di perdagangan, dll)

Apa sih QoS itu ?!?

Taken from Cisco Book, QoS is “The Capability of Network to provide better service to selected network traffic” (at expense of another type of traffic of course)

Alias kira2 begini….”kemampuan dari suatu Jaringan IP untuk memberikan layanan lebih bagus untuk suatu tipe data/traffic tertentu (biasanya yang penting), tentu saja dengan mengorbankan layanan untuk tipe data/traffic yang tidak terlalu penting

Kenapa sih ada QoS ?!?

Istilah QoS terjadi karena dalam suatu jaringan sering terdapat masalah yang berupa slow data rate transfer, suara putus2 (VoIP), bottleneck, bandwidth exhaustion, dll.

Solusi UTAMA untuk memecahkan masalah diatas Cuma satuTAMBAH BANDWIDTH

Tapi seperti yang kita duga…jarang ada yang mau meng-upgrade link nya, mungkin karena alasan biaya ataupun juga gara2 “gw tambah bandwidth…ini si tukang2 download makin menggila !!

So…we know the point of this Article…

==============================

Defining Requirement of QoS

  1. Identify Traffic (apa aja yang jalan di jaringan elo…Voice kah, Data Transfer kah, ato Data Critical seperti Banking dll)
  2. Divide Traffic into Classes
  3. Set Policy(-es) into every Class of traffic that you define earlier

Beberapa dari tipe data yang jalan dijaringan

Voice adalah tipe data sangat sensitive terhadap delay apalagi drop

Bayangkan klo gue ngomong “saya tidak suka pipis sembarangan…”…kata2 tidak nya drop(ilang)…BERABE…wkwkwk

Latency alias Delay (berdasarkan rekomendasi ITU-T G.114 untuk Transmisi 1 arah) adalah 150ms (0,15 detik…very short)

Cisco masi aga longgar, acceptable delay untuk Voice dalam IP network adalah 200-400ms (0,4 detik)

Video juga sama…bahkan lebih rakus bandwidth daripada Voice (makanya…kadang2 ada tulisan “DILARANG STREAMING” hahaha)

Minimal untuk streaming Video Conferencing ga putus2 itu harus menyediakan 20% extra bandwidth yang ada

Contoh…untuk 384kbps streaming (medium quality)…butuh minimal (384*20%) = 460 kbps

Nah…klo data…kita bisa analogikan…”yang penting nyampe dengan selamat

Klo drop…tinggal minta ulang paket nya, klo delay…lo maki2 aja ISP nya…wkwkkw

Pada dasarnya….tipe traffic berjenis data dibagi 4:

  • Mission-Critical: aplikasi2 yang jalan ga boleh putus (maksimal 0,5 detik) dari jaringan
  • Transactional: Interactive Traffic, Data Transfer
  • Best-Effort: E-mail, Internetan
  • Scavenger alias Less-than-best-effort: Peer-to-Peer application kek File Sharing over LAN dll

Caranya ngecek traffic kita apa aja gimana ?? pake NBAR kek, Wireshark kek, The Dude kek, Cacti kek, pokoknya software2 yang bisa baca SNMP

==================================================

QoS Model

  • Best-Effort (default)…”dah lah…yang penting nyampe”

    Best Effort adalah traffic TANPA QoS…

  • Integrated Service (IntServ)…”gue akan tiba dijakarta jam 10 pagi”

    IntServ lebih kearah “resource reservation”…uda mesen duluan bandwidthmya, traffic nya, jadi lo bisa analogikan kek lo naek pesawat, lo uda beli tiket…lo akan nyampe jam 10 malem…ya (kurang-lebih) nyampe jam 10 malem

    RSVP (Resource Reservation Protocol) adalah protocol layer 4 yang bekerja dengan metode IntServ

    CAC (Call Admission Control) juga sama, CAC adalah protocol Voice over IP yang bertugas untuk menghandle sesi telpon2an (klo link nya hanya sanggup menyediakan 2 sesi telpon2an, telpon yang akan masuk setelahnya akan dibuat queuing/antri)


  • Differentiated Service (DiffServ)…QoS akan dibedakan berdasarkan tipe kelas traffic nya (yang uda dijelasin diatas)

=======================================================

Factor that Affect QoS

  • Bandwidth

    Akar masalah dari segala problem yang ditimbulkan dalam “perebutan” jaringan

    Link-Speed yang berbeda akan menyebabkan terjadinya bottleneck

    Mengutip kata2 dari Arno Penzias (Mantan Kepala Bell Labs dan Nobel Prize Winner)Money and Sex = Storage and Bandwidth…only too much is never enough

  • Delay

    Waktu tempuh suatu data dari source ke destination disebut delay

    Delay terbagi 8 tipe:

    • Serialization Delay

      Waktu yang dibutuhkan untuk menjadikan data2 logical jadi bit2 yang dikirim ke media

      Dipengaruhi oleh kualitas bahan dari media…semakin bagus media (eq. Fiber) semakin minim delaynya

      So…Delay ini Fixed (kaga bisa dirubah dengan konfig)

    • Propagation Delay

      Ketika bit2 ini dikirim melalui media…waktu tempuh bit2 dari suatu node ke node lain inilah yang disebut propagation

      Jadi ini waktu yang dibutuhkan oleh bit2 untuk pindah dari source interface ke destination interface

      Satu2nya yang mempengaruhi delay ini adalah PANJANG dari media

      So…Delay ini Fixed

    • Queuing Delay

      Waktu yang dibutuhkan untuk data2 dikirimkan dari source interface (ngantri = queuing)

      System Ngantri ini bisa diutak-atik (contohnya dengan CBWFQ dan LLQ)

      So…Delay ini Non-Fixed (bisa diutak-atik pake konfig)

    • Forwarding (Processing) Delay

      Inget “Cut-Through, Fragment Free, dan Store-and-Forward” ga?!?, ini forwarding delay

      So… Delay ini Non-Fixed (bisa diutak-atik pake konfig)

    • Shaping Delay

      Ini delay karena bandwidth yang di “cekek” sama ISP (contohnya rate-limit)

      So… Delay ini Non-Fixed (bisa diutak-atik pake konfig)

    • Network Delay

      Delay yang disebabkan oleh Frame-Relay, ATM, dll (multi akses devices)

      So… Delay ini Non-Fixed (bisa diutak-atik pake konfig)…setting prioritas, setting bandwidth limit, dll

    • Codec Delay (and also Packetization Delay)

      Biasanya ini di Voice over IP…delay yang disebabkan oleh komponen jaringan untuk meng”konversi” suara jadi bit

      Codec G.711 lebih bagus kualitas suaranya, tapi besar di overhead (cocok di LAN), sedangkan G.729 biasa aja, kecil overheadnya (cocok di WAN)

      So…Delay ini Fixed (kaga bisa dirubah dengan konfig)

    • Compression Delay

      Waktu yang dibutuhkan untuk memperkecil bit yang dikirim (kek winRAR, winZIP gitu lah…di compress paket nya)

      So… Delay ini Non-Fixed (bisa diutak-atik pake konfig)

  • Jitter: yaitu perbedaan antar delay

    Contoh: paket pertama dikirim dengan delay 20ms, paket kedua dikirim dengan delay 30ms

    Nah..Jitter ini adalah 30-20 = 10 ms

  • Packet Loss

    Kalau satu link interface hanya bisa mengirim 10 frame perdetik, sedang kapasitas queuing nya sekitar 100 frame, nah frame ke 101, 102, dst. akan di drop

    Inilah yang di sebut Tail Drop

    Nah…klo antrian didalam interface di handle oleh Queuing

    Klo antrian diluar (yang mau masuk interface) dihandle oleh RED (Random Early Detection) dan WRED (Weighted RED) (mereka juga yang ngatur tail drop)

=======================================================

QoS Tools

Classification & Marking

Classification: identifikasi traffic yang lalu lalang di jaringan, dan dibagi2 jadi beberapa kelas (kelas Voice, Video, ato Data)

Almost all of QoS Tools use Classification to some degree…contohnya, untuk perform compression RTP (Real Time Protocl) Packets, tentu Device itu harus tau…mana paket yang ada RTP, mana yang engga

Marking: ngasih “stempel” ke setiap packet – Layer 3 (namanya Type of Service – ToS) ato Frame – Layer 2 (namanya Class of Service – CoS)…ini packet tipe Transactional, Critical, ato Voice

Classification dan marking diusahakan dikonfigur “as close as possible to the source (not destination)

CoS Field

ToS Field

*IP Presedence = IP Precedence provides the ability to classify network packets at Layer 3, analogous to the functionality of the 802.1P protocol at Layer 2. With IP Precedence configured, network packets traverse IP Precedence devices according to the priority you set. Priority traffic is always serviced before traditional traffic. (taken from Microsoft Documentation)

Nanti IP Presedence akan di “mapping” ke DSCP (Differentiated Service Code Point)

Apa itu CS0, AF13, CS2, dll !??!

Met puyeng gan…

Congestion Management (Queuing)

  • FIFO (First in First Out) – Default

  • Round-Robin..Ganti2an ngirimnya tiap kelas traffic…ga cocok buat Voice
  • WRR (Weighted Round Robin)…kelas A kirim 3 packet..kelas B kirim 2 paket…kelas C kirim 1 paket…tetep ganti2an
  • WFQ (Weighted Fair Queuing) – keluar packet nya bareng2 dan semua dapat bandwidth allocation yang sama (ga bisa nih buat Voice…dia kan harus duluan)
  • CBWFQ (Class Based WFQ) – WFQ yang tiap kelas bisa kita atur alokasi bandwidthnya (kurang cocok…Voice HARUS duluan…jgn di-interrupt ama kelas lain SAMA SEKALI)

  • PQ (Priority Queuing) – Kelas yang di “prioritaskan” akan selalu JALAN duluan, klo uda abis…baru kelas lain, bodo amat dapet berapa juga, paling bandwidth sisa…(Cocok buat Voice…tapi GA COCOK buat yang lain)
  • LLQ (Low Latency Queuing) – it is PQ combined with CBWFQ !! Cisco Punya…jadi kelas Voice PASTI di prioritaskan (PQ)…nah..kelas lainnya pake metode CBWFQ

RED, WRED, ato ECN (Explicit Congestion Notification) itu disebut Congestion Avoidance Method

Shaping and Policing

Shaping: nge-rubah data rate transfer suatu interface (FastEthernet yang 100mbps bisa jadi 20kpbs klo mau), ini yang sering dipake

Policing: nge-limit maksimum speed data rate transfer, klo lebih…di drop

Tergantung kebutuhan, kita bisa pake salah satu aja ato mau 2-2 nya

=============================================

QoS Queuing Best Practices (taken from Cisco QoS Exam Certification Guide – Cisco Press)

=========================================================

Masih banyak lagi yang bisa dibahas di QoS over IP Network, nanti gw update disini juga

Konfigurasi menyusul yaks..

Spanning Tree Protocol (STP) 802.1D

1 Comment

this is old article…ke yang baru aja

Back to be better than ever…this time we want to dig in is STP

okeh..back to Bahasa Indonesia

banyak switch (terutama yang mahal punya) mempunyai fitur STP alias Spanning Tree Protocol

so..klo ditanya dimanakah fitur STP itu bekerja..di Switch.

switch itu layer berapa si ?? layer 2 (walaupun high-level switch ada di OSI layer 3)

kegunaan STP ? untuk mencegah dan menghentikan terjadinya loop-loop network (di layer 2) lias mencegah frame broadcast storm,

switch klo ketemu frame ga dikenal destination port nya, defaultnya akan broadcast…gimana klo semua switch yang kena broadcast frame ikut2an ga kenal ?!?! STORMMM alias BADAIII ahaha

detailnya:
STP secara terus menerus memonitor network untuk menentukan semua link, memastikan bahwa tidak ada loop yang terjadi, dengan cara mematikan semua link yang redundant. STP menggunakan algoritma yang disebut spanning-tree algorithm (STA) untuk menciptakan sebuah topology database, kemudian mencari dan menghancurkan link2 redundant (link2 yg berlebih yg klo di telusuri, ga terlalu ada gunanya dan berpotensi menyebabkan loop). Dengan menjalankan STP, maka frame2 (lo bisa bilang : paket2 data yg lagi dikirim switch) hanya akan di teruskan ke link2 utama yang dipilih oleh STP

kita liat istilah2 dalam STP

BPDU (bridge protocol data unit): sebelum para ladies (baca: switch) menentukan siapa yang jadi ketua arisan (baca: root bridge) maka mereka akan membandingkan diri mereka satu sama lain (sapa yg lebih cantik.. 😛 ) melalui BPDU ini…isi nya apa BPDU ??? isinya ya mac address & bridge ID mereka masing2 (8 byte: 2 byte untuk Bridge ID…sisanya untuk MAC address =6 byte = 48 bit)….pertama2 yang diliat bridge ID…sapa yang lebih kecil yang akan jadi ketua (baca: root bridge)…kalau bridge ID sama, baru dilihat MAC addressnya…siapa yang lebih kecil (MAC address ga ada yang sama)

STP : (of course) adalah sebuah protokol switch/bridge yang menggunakan STA (spanning tree algorithm) untuk menemukan link-link redundant (cadangan) secara dinamis dan menciptakan sebuah topology database spanning-tree. Bridge/Switch bertukar pesan BPDU (Bridge Protocol Data Unit) dengan Bridge/Switch Lain untuk mendeteksi loop dan kemudian menghilankan loop2 itu dengan cara mematikan interface2 (int fa 0/0 ..do you remember ?!?) bridge yang dipilihnya.

Root Bridge : adalah bridge dengan ID terbaik (best Bridge ID). dengan STP, kuncinya adalah agar semua switch di network memilih sebuah root bridge yang akan menjadi titik fokus di dalam network tersebut. semua keputusan lain–seperti port mana yang akan di blok dan port mana yang akan ditempatkan dalam mode forwarding (apaan lagi ni??ntar y..wkwkw)–keputusan2 ini dibuat berdasarkan perspektif switch/bridge yang akan menjadi root bridge

  • Protocol ID : indicate the protocol that being used (RSTP, PVST, MSTP, dll)
  • Version : protokol versi berapa
  • Message type : tipe message (apaan nee?…maap Gan….ane juga ga tau)
  • Flag : buat nandain klo ada topology change….jadi biar bisa tau switch2 lain…trus bikin kalkulasi ulang siapa yang jadi root port, designate port, blocked prot..eh port (TCA = Topology Change Acknowledge)
  • Root ID : untuk nandain yang mana root port
  • Cost : cost dari sebuah interface..liat gambar dibawah tentang port cost)
  • Bridge ID : value si switch untuk menentukan siapa yang jadi Root Bridge
  • Port ID : port mana tempat ngirim bpdu…port fa0/1, fa0/2, atau port yang mana
  •  Message Age : untuk melihat waktu yang berjalan setelah switch kirim2an BPDU
  • Max Age : waktu yang diperlukan untuk sebuat frame di drop
  • Hello Time : waktu yang diperlukan untuk kirim2an BPDU (2s by default)
  • Forward Delay : waktu yang diperlukan untuk switchport dari blocking sebuah frame ke forwarding (baca frame dulu…baca mac address dulu…belajar dulu lah..)

BPDU Field example (captured via wireshark)

Bridge ID : adalah bagaimana STP mengidentifikasikan semua switch dalam network. ID ini ditentukan oleh sebuah kombinasi dari apa yang disebut bridge priority (DEFAULT : 32.768) dan alamat MAC masing2 switch/bridge. Bridge dengan Bridge ID terendah akan menjadi root bridge dalam network

Root Port : adalah link yang terhubung SECARA LANGSUNG ke root bridge, atau JALUR TERPENDEK ke root bridge.

–>jika lebih dari satu link terhubung ke root bridge, maka sebuah cost dari port di tentukan dengan nge-cek bandwidth dari setiap link, cost yang paling rendah (bandwidth nya cepet) itu yang jadi root port.

–>jika banyak link yang sama, maka bridge dengan bridge ID yang lebih rendah akan digunakan .

–>DAN KARENA berbagai link dapat berasal dari device alias alat yang samaaaaa…..makaaaa nomor port yang PALING KECIL yang akan digunakan.

Designated Port : sebuah port yang telah ditentukan yang memiliki cost terbaik (baca : terendah) daripada port yang lain. sebuah Designated Port akan ditandai dengan sebuah forwarding port (“oi..apaan nih..blum dijelasin!!” …wkwkw..sabar)

Forwarding Port :  nah…wkwkkw..gampang lah..yaitu PORT yang tugasnya MENERUSKAN atau MEMFORWARD FRAME 😛

Blocked Port : klo lo liat gambar diatas..ada path alias garis yang di tanda silang ( X ) , yaitu port yang tidak meneruskan frame…kenapa ??? untuk menghindari loop pada network..kenapa ??? biar ga lelet alias lag alias patah2 klo lagi maen game online…hahaha

Cara Memilih Root  Bridge

  1. dipilih berdasarkan bridge priority (yg mana nilai default 32.768)
  2. klo sama, dipilih berdasarkan alamat MAC terkecil

oh iya…BPDU dikirimkan tiap 2 detik, keluar dari setiap port yang aktif pada bridge/switch

Choosing Designated Port

look into that port bandwidth !!

Status2 port di STP

Blocking : port yang tidak akan meneruskan frame, just listen to BPDU, tujuan : untuk mencegah penggunaan jalur yang mengakibatkan loop. SEMUA PORT BERADA PADA STATUS INI KETIKA SWITCH BARU NYALA !

Listening : mendengar…(ya ela..gw jg tau klo itu). port mendengar BPDU-BPDU untuk memastikan dari BPDU-BPDU itu tidak ada loop yang terjadi di network SEBELUM mengirimkan frame2 data. dalam kondisi/state ini…port mempersiapkan diri untuk memforward frame TANPA mengisi tabel MAC address

Learning : mempelajari…( -_-; )  mendengarkan BPDU dan mempelajari semua jalur2 / path di network switch. sebuah port dalam status learning MENGISI tabel MAC address TANPA memforward frame2 data

Forwarding : uda jelas…forwarding port ditentukan dari cost yang paling rendah (terbaik) ke root bridge

Disabled : uda jelas…dan biasanya administratif alias kita yg memutuskan sebuah port “dibunuh” atau tidak biar itu port ga ikut2an dalam STP

 

Cisco PortFast Technology

kalau kita lihat..berarti setelah switch baru nyala….dia butuh 50 detik untuk bisa forward frame seperti biasanya…

tapi kalau ga mau 50 detik ?!?!? ah..kelamaan ?!?!?

di Cisco, dengan bantuan command dibawah ini….

Switch(config)#interface <nomor port>

Switch(config-if)#spanning-tree portfast

makanya….waktu menunggunya jadi 0 !!…alias ga nunggu2 listening…learning…baru forwarding…dengan metode portfast, port itu akan langsung dari Blocking ke Forwarding

note: jgn dipakai di port yang menghubungkan switch dan switch…karena akan menimbulkan loop (listening dan learningnya kandiilangin pake portfast, sedangkan itu yang krusial dalam STP malah)…hubungkan interface switch yang dipasang portfast hanya ke komputer/akses device saja

===================================================

STP Variant

Per-VLAN Spanning Tree (PVST) plus

PVST+ value dari Cisco Switch 2960

—————————————————————————-

RSTP (Rapid Spanning-Tree Protocol) alias 802.1w

developed by IEEEE

inti dari RSTP adalah “RSTP is able to actively confirm that a port can safely transition to the forwarding state without having to rely on any timer configuration.

RTSP BPDU

RSTP (802.1w) menggunakan BPDU tipe 2, yang mana memungkinkan dia untuk berkomunikasi dengan switch yang menggunakan STP biasa.

RSTP BPDU

Note: Like STP, an RSTP bridge sends a BPDU with its current information every hello time period (2 seconds by default), even if the RSTP bridge does not receive any BPDUs from the root bridge.

RSTP uses the flag byte of version 2 BPDU as shown in the figure:

Bits 0 and 7 are used for topology change notification and acknowledgment as they are in 802.1D.
Bits 1 and 6 are used for the Proposal & Agreement process (used for rapid convergence).
Bits 2-5 encode the role and state of the port originating the BPDU.
Bits 4 and 5 are used to encode the port role using a 2-bit code.

*ngerti ga ??? KAGAAA….

*ya wes gpp, intinya RSTP itu di kata RAPID nya, jadi transisi dari port berwarna orange ke hijau alias green lebih cepat dari STP biasa

jika dalam 3x timer (2 x 3 = 6 seconds), hello ga diterima, maka informasi BPDU akan dinyatakan aged / obsolete, atau jika max age timer expires.
Because BPDUs are used as a keepalive mechanism, three consecutively missed BPDUs indicate lost connectivity between a bridge and its neighboring root or designated bridge. The fast aging of the information allows failures to be detected quickly.

EDGE PORT

dalam RSTP dikenal namanya edge port….yaitu port yang never intended to be connected to another switch device, itu loooh…PortFast technology. RSTP memang ngambil konsep nya Cisco ini

Unlike PortFast, an RSTP edge port that receives a BPDU loses its edge port status immediately and becomes a normal spanning-tree port

——————————————————————————–

MSTP (Multiple Spanning Tree Protocol)

apa yang terjadi kalau 1 switch buat BANYAAAK vlan…dan harus mentransfer frame data ke switch-switch yang banyaaaaakkk vlan xd

MSTP digunakan untuk membuat grup untuk vlan2 sehingga bisa di manage dengan baik…jadi misal untuk vlan 10 sampai 90 pake MSTP grup 1, vlan 100 sampe 200 pake MSTP grup 2….jadi STP nya kaga keder @_@

untuk konfigurasinya…nanti akan kita bahas detail tentang konfigurasi STP berikut varian-variannya