Calcolo dei requisiti degli IP NAT statici

Questa pagina si applica a Apigee, ma non a Apigee ibrido.

Visualizza documentazione di Apigee Edge.

Il traffico in uscita tra Apigee e un backend di destinazione con un indirizzo IP pubblico utilizza Cloud NAT per tradurre l'indirizzo IP privato dell'istanza Apigee in un indirizzo IP pubblico. Se il backend di destinazione richiede la lista consentita degli IP, puoi prenotare e attivare IP NAT statici per il traffico in uscita. Questo argomento descrive come calcolare il numero minimo di IP NAT statici necessari per supportare il traffico previsto.

Prima di iniziare

Se scegli di utilizzare l'allocazione di IP NAT statici per supportare la lista consentita, dovrai calcolare il numero minimo di IP statici necessari per supportare il traffico previsto. Per questo calcolo, avrai bisogno delle seguenti informazioni:

  • Tempo massimo per transazione: il tempo massimo, in secondi, richiesto da una transazione, dall'inizio della richiesta fino alla fine della risposta.
  • Numero massimo di transazioni al secondo (TPS): il numero massimo di transazioni al secondo che l'istanza Apigee può supportare.
  • TPS massimo per un singolo backend univoco: il numero massimo di transazioni al secondo che un singolo backend può supportare.
  • Numero massimo di ambienti: il numero massimo di ambienti in questa istanza Apigee.

Calcolare il numero di IP statici richiesti

Puoi utilizzare le seguenti formule per calcolare il numero minimo di IP NAT da assegnare in modo statico:

  1. Calcola il numero massimo di porte di origine NAT richieste per backend come $ S $.
    $$ S = \lceil (150 + T) \times B \rceil $$

    Dove:

    • $ T $ è il tempo massimo per transazione, in secondi.
    • $ B $ è il TPS massimo per qualsiasi singolo backend univoco.
    • $ \lceil \rceil $ è la funzione di soffitto (intero minimo), ovvero l'arrotondamento per eccesso al numero intero successivo
  2. Calcola le porte minime utilizzate dall'istanza Apigee come $ N $.
    $$ N = max(4096 \times E, \lceil {512 \over 75} \times R \rceil) + 6144 $$

    Dove:

    • "E $" è il numero di ambienti Apigee.
    • $ R $ è il TPS massimo per l'istanza Apigee.
    • $ \lceil \rceil $ è la funzione di soffitto (intero minimo), ovvero l'arrotondamento per eccesso al numero intero successivo
    • La funzione $ \mathit{max}() $ restituisce il massimo dei due valori.
  3. Prendi il numero massimo di porte richieste come $ P $.
    $$ P = max(S, N) $$

    Dove:

    • $ S $ è il numero massimo di porte di origine NAT richieste, calcolato nel passaggio 1.
    • $ N $ è il numero minimo di porte utilizzate dall'istanza Apigee, calcolato nel passaggio 2.
    • La funzione $ \mathit{max}() $ prende il massimo dei due valori.
  4. Calcola il numero minimo di IP NAT richiesti come $ I $.
    $$ I = \lceil P / 64512 \rceil $$

    Dove:

    • $ P $ è il numero massimo di porte richieste, calcolato nel passaggio 3.
    • $ \lceil\rceil $ è la funzione massimale (minimo numero intero), che indica l'arrotondamento al numero intero successivo

Esempi

Esempio 1

In questo esempio, prevediamo un massimo di 10.000 TPS in un ambiente. Le transazioni sono tutte richieste di tipo HTTP GET mentre la durata della transazione al 99° percentile è di 50 millisecondi (ms). Queste richieste vengono gestite in modo non uniforme da un pool di server dietro a 3 backend del bilanciatore del carico, con uno dei bilanciatori del carico che richiede 5000 TPS, un altro che richiede 3000 TPS e bilanciatore del carico con 2000 TPS.

Per questo esempio, i valori chiave sono i seguenti:

  • Tempo massimo per transazione: 50 ms
  • TPS massimo per l'istanza Apigee: 10.000
  • TPS massimo per un singolo backend: 5000
  • Numero di ambienti Apigee: 1

Utilizzando le formule descritte in precedenza, possiamo calcolare il numero di IP NAT richiesti:

  1. $$ \lceil (150 + 0.050) \times 5000 \rceil = \lceil 150.050 \times 5000 \rceil = \lceil 750250 \rceil = 750250 $$

    Il numero massimo di porte di origine NAT richieste per backend, supponendo che non venga riutilizzato alcun collegamento, è 750.250.

  2. $$ max(4096 \times 1, \lceil {512 \over 75} \times 10000 \rceil) + 6144 $$
    $$ max(4096, \lceil 6.827 \times 10000 \rceil) + 6144 $$
    $$ max(4096, \lceil 68270 \rceil) + 6144 $$
    $$ 68270 + 6144 = 74414 $$

    Il numero minimo di porte di origine NAT utilizzate dal runtime Apigee è 74.414.

  3. $$ max(750250, 74414) = 750250 $$

    Il numero massimo di porte di origine NAT richieste per istanza è 750.250.

  4. $$ \lceil 750250 / 64512 \rceil = \lceil 11.630 \rceil = 12 $$

    Il numero minimo di IP NAT necessari per supportare un massimo di 10.000 TPS di 50 ms ciascuno (o meno), con una singola coppia di porta e IP di backend che supporta un massimo di 5000 TPS, è 12.

Esempio 2

In questo esempio, prevediamo un massimo di 1000 TPS in 20 ambienti Apigee. La durata del 99° percentile di queste transazioni è di 5 secondi. Queste richieste verranno gestite da 8 con i backend di destinazione, con il traffico normalmente distribuito uniformemente tra tutti. Tenendo conto della manutenzione e delle interruzioni, non è mai previsto che un singolo backend gestisca più di 250 TPS.

Per questo esempio, le coppie chiave-valore sono i seguenti:

  • Tempo massimo per transazione: 5 secondi
  • Transazioni massime al secondo (TPS): 1000
  • TPS massimo per un singolo backend: 250
  • Numero di ambienti Apigee: 20

Utilizzando le formule descritte in precedenza, possiamo calcolare il numero di IP NAT richiesti:

  1. $$ \lceil (150 + 5) \times 250 \rceil = \lceil 155 \times 250 \rceil = \lceil 38750 \rceil = 38750 $$

    Il numero massimo di porte di origine NAT richieste per backend, supponendo che non vengano riutilizzate connessioni, è 38.750.

  2. $$ max(4096 \times 20, \lceil {512 \over 75} \times 1000 \rceil) + 6144 $$
    $$ max(81920, \lceil 6.827 \times 1000 \rceil) + 6144 $$
    $$ max(81920, \lceil 6827 \rceil) + 6144 $$
    $$ 81920 + 6144 = 88064 $$

    Il numero minimo di porte di origine NAT utilizzate dal runtime Apigee è 88.064.

  3. $$ max(38750, 88064) = 88064 $$

    Il numero massimo di porte di origine NAT richieste per istanza è 88.064.

  4. $$ \lceil 88064 / 64512 \rceil= \lceil 1.365 \rceil= 2 $$

    Il numero minimo di IP NAT richiesto per supportare un massimo di 1.000 TPS di 5 secondi ciascuno (o meno), con un singolo IP di backend e coppia di porte che supporta un massimo di 250 TPS, è 2.

Esempio 3

In questo esempio, vogliamo calcolare il TPS massimo ottenibile con 2 IP NAT in una singola backend di destinazione. Il tempo massimo per transazione è stimato in 100 ms.

Per questo esempio, i valori chiave sono i seguenti:

  • Tempo massimo per transazione: 100 ms
  • Numero di IP NAT: 2

In questo caso, possiamo utilizzare le formule del passaggio 4 e del passaggio 1 per calcolare il numero massimo di porte di origine NAT fornite e il numero di TPS che queste porte di origine possono supportare:

  1. $$ 2 = \lceil P / 64512 \rceil $$
    $$ 129024 = P $$

    Il numero massimo di porte di origine NAT fornito è 129.024.

  2. $$ 129024 = \lceil (150 + 0.100) \times B \rceil $$
    $$ 129024 = \lceil 150.1 \times B \rceil $$
    $$ \lfloor 129024 / 150.1 \rfloor = B $$
    $$ \lfloor 859.587 \rfloor = B $$
    $$ 859 = B $$

    Il TPS massimo è 859 con 2 indirizzi IP NAT a un singolo backend, supponendo che non venga riutilizzato alcun collegamento.