Considerações de desempenho para o Cloud NAT da Apigee

Esta página se aplica à Apigee, mas não à Apigee híbrida.

Confira a documentação da Apigee Edge.

O tráfego sul entre a Apigee e um back-end de destino com um endereço IP público usa o Cloud NAT para converter o endereço IP particular da instância da Apigee em um endereço IP público. Cada instância da Apigee tem seu próprio gateway do Cloud NAT. Neste tópico, explicamos os fatores que afetam o desempenho da Apigee ao usar o Cloud NAT.

Informações gerais

Cada nova sessão TCP formada entre uma instância da Apigee e um back-end de destino precisa ser mapeada para uma tupla 4 exclusiva que inclui o seguinte:

  • O endereço IP NAT
  • A porta NAT
  • O endereço IP do back-end
  • A porta de back-end

Há três fatores principais que determinam as transações por segundo (TPS) compatíveis com o Cloud NAT em uma instância da Apigee:

  1. O número de IPs NAT alocados (de maneira dinâmica ou estática)
  2. O número de combinações únicas de endereço IP e porta de back-end configuradas
  3. Se a reutilização de conexão é permitida ou não pelo back-end de destino

Neste tópico, explicamos como cada um desses fatores afeta o desempenho da Apigee ao usar o Cloud NAT e descrevemos como calcular o número de IPs estáticos necessários para suportar o tráfego previsto.

Alocação de IPs NAT

O número de IPs NAT alocados varia de acordo com o uso de IPs temporários ou estáticos na configuração NAT.

IPs temporários

Na configuração NAT padrão usando IPs temporários, os IPs são alocados automaticamente conforme necessário para fornecer portas de origem exclusivas para conexões com back-ends de destino. É possível alocar no máximo 300 IPs temporários para uma instância da Apigee.

IPs estáticos

Se forem necessários IPs estáticos para que possam ser incluídos na lista de permissões do back-end de destino, os IPs serão reservados manualmente para uma instância da Apigee. É possível alocar no máximo 50 IPs estáticos para uma instância da Apigee.

Combinações exclusivas de porta e IP de back-end

É possível aumentar o TPS aumentando o número de combinações únicas de porta e IP de back-end de destino. O mesmo IP e a mesma porta NAT podem ser usados para cada um dos IPs e portas de back-end de destino. Isso gera o mesmo resultado de adicionar outros IPs NAT sem precisar de outros IPs que precisam ser incluídos na lista de permissões.

Para criar um par de portas e IP de back-end de destino exclusivos, o IP ou a porta precisa ser diferente. Por exemplo, é possível ter um único balanceador de carga com um endereço IP, mas escutando em quatro portas diferentes, para fazer quatro combinações exclusivas de IP e porta de back-end para a Apigee.

Reutilização de conexão

A reutilização de conexões HTTP também aumenta o uso eficiente da NAT removendo a necessidade de abrir uma nova conexão TCP. Os back-ends de destino podem usar esse recurso definindo o cabeçalho Connection como keep-alive na resposta, que é a configuração padrão para HTTP/1,1. O servidor de back-end de destino também pode definir os parâmetros connection timeout e max reuse para melhorar a eficiência.

Embora a reutilização de conexão possa ser teoricamente compatível com a ativação de keep-alive na resposta, na prática, a reutilização depende do seguinte:

  • Se a instância da Apigee tiver uma conexão com o back-end de destino
  • Se a conexão tiver respostas pendentes
  • Se a conexão estiver próxima do fim do ciclo de vida

Cada um desses fatores afetará a extensão em que o back-end de destino pode reutilizar conexões.