Consideraciones sobre el rendimiento de Cloud NAT de Apigee

Esta página se aplica a Apigee, pero no a Apigee Hybrid.

Consulta la documentación de Apigee Edge.

El tráfico de salida entre Apigee y un backend de destino con una dirección IP pública usa Cloud NAT para traducir la dirección IP privada de la instancia de Apigee en una dirección IP pública. Cada instancia de Apigee tiene su propia pasarela de Cloud NAT. En este tema se explican los factores que influyen en el rendimiento de Apigee al usar Cloud NAT.

Información general

Cada nueva sesión TCP formada entre una instancia de Apigee y un backend de destino debe asignarse a una tupla de 4 elementos única que incluya lo siguiente:

  • La dirección IP de NAT
  • El puerto NAT
  • La dirección IP del backend
  • Puerto backend

Hay tres factores clave que determinan las transacciones por segundo (TPS) que Cloud NAT puede admitir en una instancia de Apigee:

  1. Número de IPs de NAT asignadas (de forma dinámica o estática)
  2. Número de combinaciones únicas de direcciones IP y puertos de backend configuradas.
  3. Si el backend de destino permite o no la reutilización de la conexión

En este tema se explica cómo influye cada uno de estos factores en el rendimiento de Apigee al usar Cloud NAT y se describe cómo calcular el número de IPs estáticas que pueden ser necesarias para admitir el tráfico previsto.

Asignaciones de IPs de NAT

El número de IPs de NAT asignadas variará en función del uso de IPs efímeras o estáticas en la configuración de NAT. Consulta la sección Direcciones IP de NAT por pasarela de la página Límites de Cloud NAT para obtener más información.

IPs efímeras

En la configuración de NAT predeterminada que usa IPs efímeras, las IPs se asignan automáticamente según sea necesario para proporcionar puertos de origen únicos para las conexiones a los back-ends de destino.

IP estáticas

Si se necesitan IPs estáticas para que se puedan incluir en la lista de permitidas del backend de destino, las IPs se reservan manualmente para una instancia de Apigee.

Combinaciones únicas de IP y puerto de backend

Puedes aumentar las TPS incrementando el número de combinaciones únicas de IP y puerto de backend de destino. Se pueden usar la misma IP NAT y el mismo puerto de origen para cada una de las IPs y los puertos de backend de destino. De esta forma, se consigue el mismo resultado que al añadir más IPs de NAT sin necesidad de añadir IPs adicionales que deban incluirse en la lista de permitidas.

Para crear un par de IP y puerto de backend de destino único, la IP o el puerto deben ser diferentes. Por ejemplo, es posible tener un solo balanceador de carga con una dirección IP, pero que escuche en 4 puertos diferentes, para crear 4 combinaciones únicas de IP y puerto de backend para Apigee.

Reutilización de la conexión

Reutilizar las conexiones HTTP también aumenta el uso eficiente de NAT, ya que no es necesario abrir una nueva conexión TCP. Los back-ends de destino pueden usar esta función configurando el encabezado Connection con el valor keep-alive en la respuesta, que es el ajuste predeterminado de HTTP/1.1. El servidor backend de destino también puede definir los parámetros connection timeout y max reuse para mejorar la eficiencia.

Aunque, en teoría, se puede admitir la reutilización de la conexión habilitando keep-alive en la respuesta, en la práctica, depende de lo siguiente:

  • Si la instancia de Apigee tiene una conexión con el backend de destino
  • Si la conexión tiene respuestas pendientes
  • Si la conexión actual está cerca del final de su ciclo de vida

Cada uno de estos factores afectará al grado en que el backend de destino pueda reutilizar las conexiones.