Algoritmo di Azure Load Balancer

Azure Load Balancer è il servizio di bilanciamento del carico più efficiente di Azure, che mantiene al tempo stesso una latenza estremamente bassa. Per altre informazioni su Azure Load Balancer, vedere panoramica di Azure Load Balancer o componenti di Azure Load Balancer.

Azure Load Balancer usa un algoritmo di hashing basato su tuple come algoritmo di bilanciamento del carico.

Algoritmo di bilanciamento del carico

Creando una regola di bilanciamento del carico, puoi distribuire i flussi di traffico in entrata dal frontend di un bilanciatore di carico ai suoi pool backend. Quando la probe di integrità del bilanciatore del carico indica che un endpoint back-end è integro, le istanze di back-end sono disponibili a ricevere nuovi flussi di traffico.

Distribuzione del flusso a cinque tuple

Di default, Azure Load Balancer utilizza un hash di cinque tuple per distribuire i flussi in entrata, anziché i singoli byte. I cinque campi sono:

  • Indirizzo IP di origine
  • Porta di origine
  • Indirizzo IP di destinazione
  • Porta di destinazione
  • Protocollo IP

Per altre modalità di distribuzione e maggiori dettagli sull'algoritmo, vedi distribuzione basata su hash.

È anche possibile usare la modalità di distribuzione per l'affinità di sessione, che usa il bilanciamento del carico a due o tre tuple.

Comportamento di livello 4 e TLS

Azure Load Balancer opera al Livello 4 e supporta applicazioni TCP e UDP. Non chiude né origina i flussi, non ispeziona i payload delle applicazioni, non riscrive le intestazioni HTTP o HTTPS, non fornisce funzionalità di gateway a livello applicativo e non esegue l'offload TLS. Riscrive le intestazioni di flusso TCP e UDP quando dirige il traffico verso istanze backend, mentre i protocolli e le handshake TLS avvengono direttamente tra il client e l'istanza backend selezionata. Terminare TLS sulle VM backend permette di scalare la capacità della sessione TLS con il tipo e il numero di VM nel pool backend.

Preservazione dell'indirizzo IP sorgente

Una VM backend genera una risposta a un flusso in entrata e l'indirizzo IP originale viene preservato quando il flusso raggiunge quella VM. Ad esempio, avviene un handshake TCP tra il client e la macchina virtuale di backend selezionata. Validare con successo la connettività con un frontend convalida quindi la connettività con almeno una VM backend.

Passaggi successivi