Algoritme voor Azure Load Balancer

Azure Load Balancer is de meest presterende Load Balancer van Azure en houdt de latentie ultra-laag. Voor meer informatie over Azure Load Balancer gaat u naar het overzicht van Azure Load Balancer of onderdelen van Azure Load Balancer.

Azure Load Balancer maakt gebruik van op tuples gebaseerde hashing als het algoritme voor taakverdeling.

Algoritme voor taakverdeling

Door een load balancer-regel te maken, kunt u binnenkomende verkeersstromen van de front-end van een load balancer naar de back-endpools distribueren. Azure Load Balancer maakt gebruik van een hash-algoritme met vijf tuples voor de distributie van binnenkomende stromen (niet bytes). Load balancer herschrijft de headers van TCP/UDP-headersstromen bij het omleiden van verkeer naar de exemplaren van de back-endpool (load balancer herschrijft geen HTTP/HTTPS-headers). Wanneer de statustest van de load balancer aangeeft dat er een goed back-endeindpunt is, zijn back-endinstanties beschikbaar om nieuwe verkeersstromen te ontvangen.

Azure Load Balancer maakt standaard gebruik van een hash met vijf tuples.

De vijf tuple bevat:

  • IP-adres van bron
  • Bronpoort
  • IP-adres van doel
  • Doelpoort
  • IP-protocolnummer voor het toewijzen van stromen aan beschikbare servers

U kunt ook de sessieaffiniteitsdistributiemodus gebruiken die gebruikmaakt van taakverdeling op basis van twee tuples of drie tuples.

Azure Load Balancer ondersteunt elk TCP/UDP-toepassingsscenario en sluit stromen niet af of afkomstig zijn. Load balancer communiceert ook niet met de nettolading van een stroom. Toepassingsnettoladingen zijn transparant voor de load balancer. Elke UDP- of TCP-toepassing kan worden ondersteund.

Load balancer werkt op laag 4 en biedt geen gatewayfunctionaliteit voor toepassingslagen. Protocol-handshakes vinden altijd rechtstreeks plaats tussen de client en het exemplaar van de back-endpool. Omdat de load balancer niet communiceert met de TCP-nettolading en tls-offload biedt, kunt u uitgebreide versleutelde scenario's bouwen. Door load balancer te gebruiken, wordt grote scale-out voor TLS-toepassingen mogelijk door de TLS-verbinding op de VM zelf te beëindigen. De sleutelcapaciteit van de TLS-sessie wordt bijvoorbeeld alleen beperkt door het type en het aantal VM's dat u aan de back-endpool toevoegt.

Een reactie op een inkomende stroom is altijd een reactie van een virtuele machine. Als de stroom op de virtuele machine aankomt, blijft het oorspronkelijke bron-IP-adres ook behouden. Elk eindpunt wordt beantwoord door een virtuele machine. Een TCP-handshake vindt bijvoorbeeld plaats tussen de client en de geselecteerde back-end-VM. Een reactie op een aanvraag naar een front-end is een antwoord dat wordt gegenereerd door een back-end-VM. Wanneer u de connectiviteit met een front-end hebt gevalideerd, valideert u de connectiviteit met ten minste één virtuele back-endmachine.

Volgende stappen