Windows 2012–DHCP Load Balancing
Intr-un articol precedent am descris functionalitatea de Hot Standby din serviciul DHCP prezent in Windows Server 2012 si cu toate ca scenariul Load Balancing nu este foarte diferit sau complicat de inteles vroiam sa lamuresc cateva aspecte despre modul de functionare.
In acest scenariu exista doua servere ce deservesc aceleasi subneturi iar incarcarea este distribuita intre ele. Este de fapt scenariul Activ/Activ.
Serverele isi replica informatiile din scopuri, astfel ca fiecare stie ce adrese au fost utilizate din scop dar in afara de asta mai exista algoritmul prin care se decide cine emite adresa IP pentru client.
Cand unul dintre servere primeste o cerere de adresa IP, va aplica o formula hash pe adresa MAC de la care a primit cererea. Formula hash folosita (descrisa in RFC 3074) are ca rezultat un numar cuprins intre 1 si 256. In cazul unui scop configurat 50/50 ca in imaginea de mai jos, primul server va prelua cererile ce au ca rezultat intre 1 si 129 iar cel de-al doilea intre 129 si 255.
Nota: Exista si o exceptie aici. Daca acelasi server primeste aceeasi cerere la un interval mai mare de 6 secunde atunci indiferent de formula de mai sus va aloca o adresa IP. Este cazul in care celalalt nod a picat insa starea clusterului nu s-a actualizat.
Daca procentajul de Load Balance se modifica atunci fiecare server isi modifica plaja din care va da IP-uri in functie de formula descrisa mai sus.
Bineinteles ca modul acesta de alocare poate duce la utilizarea mai rapida a plajei de adrese de pe un anumit server insa cei ce au proiectat acest serviciu s-au gandit si la asta. La anumite intervale (5 minute) serverele comunica intre ele si fac o rebalansare a adreselor inchiriate astfel incat utilizarea sa fie egala.
Daca sunteti pasionati puteti gasi mai multe detalii in articolele urmatoare:
http://tools.ietf.org/html/rfc3074
http://blogs.technet.com/b/teamdhcp/archive/2012/08/06/dhcp-failover-load-balancing-mode.aspx