Load balancing, Load sharing, rozloženie záťaže
Cieľom load balancingu je využitie potenciálnych liniek na smerovanie, pričom sa záťaž rozloží na všetky linky, ktorými sa pakety prenášajú.
Load balancing môže byť dvoch typov:
- Equal cost - rozloženie záťaže na rovnako dobrých linkách
- Unequal cost - rozloženie záťaže na nerovnako ohodnotených (dobrých) linkách
Equal cost load balancing podporuje každý smerovací protokol a realizuje sa v momente, kedy je
administratívna vzdialenosť? rovnaká pre všetky naučené smery a zároveň smery majú rovnaké ohodnotenie. Tj. aj
metrika? je rovnaká.
V prípade statického smerovania nie je k dispozícii možnosť nastavenia metriky, preto sa rozloženie záťaže zabezpečuje len manipuláciou
administratívnej vzdialenosti?.
Existujú 2 typy Load Balancingu:
- Per destination
- Per packet
Cieľom
per destination load balancingu je rozkladať prevádzku v závislosti od cieľov ku ktorým pakety smerujú. Buduje sa interná cache, v ktorej sa eviduje ktorou linkou bol daný cieľ dosiahnutý a všetky následné pakety k tomu istému cieľu idú podľa na-cachovanej informácie.
Cieľom
per packet load balancingu je rozkladať prevádzku rovnomerne pri príchode každého paketu. Tj. nevytvára sa cache, ale pri každom prichádzajúcom pakete sa vyberie trasa, ktorou bude paket preposlaný (možnosť výberu za každým inej linky).
Load sharing s CEF
Ak má zariadenie implementovaný Cisco Express Forwarding (
CEF?), štandardne používa
per destination load balancing, v bližšom priblížení je to kombinácia source-destination-port. Pre jeden konkrétny zdroj a konkrétny cieľ je vždy výstupné rozhranie rovnaké. V prípade inej zdrojovej adresy a rovnakého cieľa, môže byť výstupné rozhranie iné.
Spôsob load balancingu s využitím
CEF? je možné zmeniť na rozhraní (výstupnom) príkazmi:
- ip load-sharing per-destination pre per destination load-balancing
- ip load-sharing per-packet pre per packet load-balancing
Load sharing s Fast Switchingom
IOS vykonáva per destination load balancing na výstupných rozhraniach, ktoré sú nakonfigurované pre fast switching. Fast switching je štandardný mód podporovaný v IOSe niektorých routerov (bez podpory CEF)
Fast switching funguje následovne:
- Keď smerovač prvý krát zasmeruje paket ku konkrétnemu cieľu, vyberie sa cieľová trasa zo smerovacej tabuľky a výstupné rozhranie
- Aby bolo možné vybudovať rámec, zbehne potrebný proces na identifikáciu L2 adresy NEXT_HOP zariadenia (ARP?)
- Vybratý smer sa uloží vo fast-switching cache pamäti
- Ak následovné pakety sú smerované k tomu istému cieľu, najprv sa prehľadáva Fast switching cache a teda nie je potrebné prehľadávať znovu smerovaciu tabuľku a následne pomocou ARP získavať linkovú adresu
Fast switching sa dá na rozhraniach vypnúť príkazom
no ip route-cache
Process switching
Ak je vypnutý fast switching na rozhraniach príkazom
no ip route-cache, realizuje sa tzv. process switching.
Každý paket, ktorý je zasmerovaný sa prehľadáva voči smerovacej tabuľke a následne sa vyhľadáva L2 adresa NEXT_HOP zariadenia.
Sumarizácia
Pomocou process switchingu je možné docieliť iba per-packet load-balancing. Pomocou Fast switchingu je možné docieliť per-destination load-balancing. A jedine s CEF je možné si vybrať typ rozloženia záťaže.
Kedy sa použije ktorá metóda smerovania?
IOS sa rozhoduje v prvom rade podľa konfigurácie vstupného rozhrania. Ak je na vstupnom rozhraní nakonfigurovaný CEF, paket sa prepošle prostredníctvom CEF Switchingu v závislosti od konfigurácie výstupného rozhrania. V prípade, že na vstupnom rozhraní CEF nie je zapnuté, realizuje sa switching prostredníctvom konfigurácie výstupného rozhrania sa budú následne pakety preposielať buď fast-switchingom alebo process-switchingom.
Nasledovná tabuľka znázorňuje akým spôsobom sa bude realizovať preposielanie paketov (packet switching):