Citrix ADC

Configuraciones TCP

Las configuraciones TCP para un dispositivo Citrix ADC se pueden especificar en una entidad denominada perfil TCP, que es un conjunto de configuraciones TCP. El perfil TCP se puede asociar a servicios o servidores virtuales que desean utilizar estas configuraciones TCP.

Se puede configurar un perfil TCP predeterminado para establecer las configuraciones TCP que se aplicarán de forma predeterminada, globalmente a todos los servicios y servidores virtuales.

Nota:

Cuando un parámetro TCP tiene valores diferentes para el servicio, el servidor virtual y globalmente, el valor de la entidad más específica (el servicio) tiene la prioridad más alta. El dispositivo Citrix ADC también proporciona otros enfoques para configurar TCP. Sigue leyendo para obtener más información.

Configuración TCP compatible

El dispositivo Citrix ADC admite las siguientes capacidades TCP:

Defensa de TCP contra ataques de falsificación

La implementación de atenuación de ventanas de Citrix ADC cumple con RFC 4953.

Notificación explícita de congestión (ECN)

El dispositivo envía una notificación del estado de congestión de la red al remitente de los datos y toma medidas correctivas para la congestión de datos o la corrupción de datos. La implementación de ECN de Citrix ADC cumple con RFC 3168.

Medición del tiempo de ida y vuelta (RTTM) mediante la opción de marca de tiempo

Para que funcione la opción TimeStamp, al menos un lado de la conexión (cliente o servidor) debe admitirla. La implementación de Citrix ADC de la TimeStamp opción cumple con RFC 1323.

Detección de retransmisiones falsas

Esto se puede hacer mediante el reconocimiento selectivo duplicado TCP (D-SACK) y reenvío RTO-Recovery (F-RTO). Si hay retransmisiones falsas, las configuraciones de control de congestión se vuelven a su estado original. La implementación de Citrix ADC de D-SACK cumple con RFC 2883 y F-RTO cumple con RFC 5682.

Control de congestión

Esta funcionalidad utiliza algoritmos New-Reno, BIC, CUBIC, Nile y TCP Westwood.

Escala de ventanas

Esto aumenta el tamaño de la ventana de recepción TCP más allá de su valor máximo de 65.535 bytes.

Puntos a tener en cuenta antes de configurar el escalado de ventanas

  • No establece un valor elevado para el factor de escala, porque esto podría tener efectos adversos en el dispositivo y la red.
  • No se configura el escalado de ventanas a menos que sepa claramente por qué desea cambiar el tamaño de la ventana.
  • Ambos hosts de la conexión TCP envían una opción de escala de ventana durante el establecimiento de la conexión. Si solo un lado de una conexión establece esta opción, no se utiliza la escala de la ventana para la conexión.
  • Cada conexión de la misma sesión es una sesión de escalado de ventanas independiente. Por ejemplo, cuando la solicitud de un cliente y la respuesta del servidor fluyen a través del dispositivo, es posible tener escalado de ventana entre el cliente y el dispositivo sin escalarlo entre el dispositivo y el servidor.

Ventana de máxima congestión TCP

El tamaño de la ventana es configurable por el usuario. El valor predeterminado es 8190 bytes.

Reconocimiento selectivo (SACK)

Utiliza el receptor de datos (ya sea un dispositivo Citrix ADC o un cliente) notifica al remitente sobre todos los segmentos que se han recibido correctamente.

Reconocimiento de reenvío (FACK)

Esta funcionalidad evita la congestión de TCP al medir explícitamente el número total de bytes de datos pendientes en la red y ayuda al remitente (ya sea un Citrix ADC o un cliente) a controlar la cantidad de datos inyectados en la red durante los tiempos de espera de retransmisión.

Multiplexación de conexiones TCP

Esta funcionalidad permite reutilizar las conexiones TCP existentes. El dispositivo Citrix ADC almacena conexiones TCP establecidas al grupo de reutilización. Cada vez que se recibe una solicitud de cliente, el dispositivo comprueba si hay una conexión disponible en el grupo de reutilización y sirve al nuevo cliente si la conexión está disponible. Si no está disponible, el dispositivo crea una conexión para la solicitud del cliente y almacena la conexión en el grupo de reutilización. Citrix ADC admite la multiplexación de conexiones para los tipos de conexión HTTP, SSL y DataStream.

Almacenamiento en búfer de recepción dinámico

Esto permite ajustar el búfer de recepción dinámicamente en función de las condiciones de la memoria y de la red.

Conexión MPTCP

Conexiones MPTCP entre el cliente y Citrix ADC. Las conexiones MPTCP no se admiten entre Citrix ADC y el servidor back-end. La implementación de Citrix ADC de MPTCP cumple con RFC 6824.

Puede ver estadísticas MPTCP, como conexiones MPTCP activas y conexiones de subflujo activas mediante la interfaz de línea de comandos.

En el símbolo del sistema, escriba uno de los siguientes comandos para mostrar un resumen o un resumen detallado de las estadísticas MPTCP, o para borrar la visualización de estadísticas:

  1. Stat MPTCP
  2. Stat mptcp –detail
  3. Clearstats basic

Nota:

Para establecer una conexión MPTCP, tanto el cliente como el dispositivo Citrix ADC deben admitir la misma versión MPTCP. Si utiliza el dispositivo Citrix ADC como puerta de enlace MPTCP para sus servidores, los servidores no tienen que admitir MPTCP. Cuando el cliente inicia una nueva conexión MPTCP, el dispositivo identifica la versión MPTPC del cliente a partir de la opción MP_CAPABALE del paquete SYN. Si la versión del cliente es superior a la admitida en el dispositivo, el dispositivo indica su versión más alta en la opción MP_CAPABALE del paquete SYN-ACK. A continuación, el cliente vuelve a una versión inferior y envía el número de versión en la opción MP_CAPABALE del paquete ACK. Si esa versión es compatible, el dispositivo continúa la conexión MPTCP. De lo contrario, el dispositivo vuelve a tener un TCP normal. El dispositivo Citrix ADC no inicia subflujos (MP_JOIN). El dispositivo espera que el cliente inicie subflujos.

Compatibilidad con anuncios de direcciones adicionales (ADD_ADDR) en MPTCP

En una implementación MPTCP, si tiene un servidor virtual vinculado con un conjunto de IP que tiene direcciones IP de servidor virtual adicionales, la funcionalidad de anuncio de direcciones adicional (ADD_ADDR) anuncia la dirección IP de los servidores virtuales enlazados al conjunto de IP. Los clientes pueden iniciar MP-JOIN subflujos adicionales a las direcciones IP anunciadas.

Puntos que debe recordar acerca de la funcionalidad MPTCP ADD_ADDR

  • Puede enviar un máximo de 10 direcciones IP como parte de la ADD_ADDR opción. Si hay más de 10 direcciones IP con el mptcpAdvertise parámetro habilitado, después de anunciar la dirección IP 10, el dispositivo ignora el resto de las direcciones IP.
  • Si el subflujo APTO PARA MP se realiza en una de las direcciones IP del conjunto de IP en lugar de la dirección IP del servidor virtual principal, la dirección IP del servidor virtual se anuncia si el mptcpAdvertise parámetro está habilitado para la dirección IP del servidor virtual.

Configurar más publicidad de direcciones (ADD_ADDR) para anunciar direcciones VIP adicionales mediante la CLI

Puede configurar la MPTCP ADD_ADDR funcionalidad para los tipos de direcciones IPv4 e IPv6. En general, se pueden conectar varias IP IPv4 e IPv6 a un único conjunto de IP y el parámetro se puede habilitar en cualquier subconjunto de direcciones IP. En la función ADD_ADDR, solo se anuncian las direcciones IP que tienen activada la opción “MPTCPAdvertise” y se ignoran las direcciones IP restantes del conjunto de IP. Siga los siguientes pasos para configurar la ADD_ADDR función:

  1. Agregue un conjunto de IP.
  2. Agregue una dirección IP de tipo IP de servidor virtual (VIP) con la publicidad MPTCP habilitada.
  3. Vincule la dirección IP con el conjunto de IP.
  4. Configure el conjunto de IP con el servidor virtual de equilibrio de carga.

Agregar un conjunto de IP

En el símbolo del sistema, escriba:

add ipset <name> [-td <positive_integer>]
<!--NeedCopy-->

Ejemplo:

add ipset ipset_1
<!--NeedCopy-->

Agregar una dirección IP de tipo IP de servidor virtual (VIP) con la publicidad MPTCP habilitada

En el tipo de comando:

add ns ip <IPAddress>@ <netmask> [-mptcpAdvertise ( YES | NO )] -type <type>
<!--NeedCopy-->

Ejemplo:

add ns ip 10.10.10.10 255.255.255.255 -mptcpAdvertise YES -type VIP

Vincular direcciones IP al conjunto de IP

En el símbolo del sistema, escriba:

bind ipset <name> <IPAddress>
<!--NeedCopy-->

Ejemplo:

bind ipset ipset_1 10.10.10.10

Configurar el conjunto de IP para servidor virtual de equilibrio de carga

En el símbolo del sistema, escriba:

set lb vserver <name> [-ipset  <string>]
<!--NeedCopy-->

Ejemplo:

set lb vserver lb1 -ipset ipset_1
<!--NeedCopy-->

Configuración de ejemplo:

Add ipset ipset_1
add ns ip 10.10.10.10 255.255.255.255 -mptcpAdvertise YES -type VIP
bind ipset ipset_1 10.10.10.10
set lb vserver lb1 -ipset ipset_1
<!--NeedCopy-->

Configurar la dirección IP externa de publicidad mediante la funcionalidad ADD_ADDR

Si la dirección IP anunciada es propiedad de la entidad externa y el dispositivo Citrix ADC necesita anunciar la dirección IP, el parámetro “MPTCPAdvertise” debe habilitarse con los parámetros de estado y ARP inhabilitados.

Siga los siguientes pasos ADD_ADDR para configurar la publicidad de la dirección IP externa.

  1. Agregue una dirección IP de tipo IP de servidor virtual (VIP) con la publicidad MPTCP habilitada.
  2. Vincule la dirección IP con el conjunto de IP.
  3. Vincular conjunto de IP con el servidor virtual de equilibrio de carga

Agregar dirección IP externa de tipo IP de servidor virtual (VIP) con la publicidad MPTCP habilitada

En el símbolo del sistema, escriba:

add ns ip <IPAddress>@ <External-IP-mask -type VIP> [-mptcpAdvertise ( YES | NO )] -type <type> -state DISABLED -arp DISABLED
<!--NeedCopy-->

Ejemplo:

add ns ip 10.10.10.10 255.255.255.255 -mptcpAdvertise YES -type VIP -state DISABLED -arp DISABLED

Vincular direcciones IP al conjunto de IP

En el símbolo del sistema, escriba:

bind ipset <name> <IPAddress>
<!--NeedCopy-->

Ejemplo:

bind ipset ipset_1 10.10.10.10

Configurar el conjunto de IP para servidor virtual de equilibrio de carga

En el símbolo del sistema, escriba:

set lb vserver <name> [-ipset  <string>]
<!--NeedCopy-->

Ejemplo:

set lb vserver lb1 -ipset ipset_1

Configuración de ejemplo:

add ns ip 10.10.10.10 255.255.255.255 -mptcpAdvertise YES -type VIP state DISABLED -arp DISABLED
bind ipset ipset_1 10.10.10.10
set lb vserver lb1 -ipset ipset_1
<!--NeedCopy-->

Anuncie la dirección IP a clientes habilitados para MPTCP mediante la GUI de Citrix ADC

Complete el siguiente paso para anunciar la dirección IP a los clientes habilitados para MPTCP:

  1. Vaya a Sistema > Red > IP.
  2. En el panel de detalles, haga clic en Agregar.
  3. En la página Crear dirección IP, active la casilla de verificación Publicidad MPTCP para establecer el parámetro. De forma predeterminada, está inhabilitada.

Procedimiento GUI para anunciar la dirección IP a los clientes MPTCP

Extracción de la opción de superposición de ruta TCP/IP e inserción del encabezado HTTP Client-IP

Extracción de superposición de ruta TCP/IP e inserción de encabezado HTTP Client-IP. El transporte de datos a través de redes superpuestas a menudo utiliza la terminación de la conexión o la traducción de direcciones de red (NAT), en las que se pierde la dirección IP del cliente de origen. Para evitar esto, el dispositivo Citrix ADC extrae la opción de superposición de rutas TCP/IP e inserta la dirección IP del cliente de origen en el encabezado HTTP. Con la dirección IP en el encabezado, el servidor web puede identificar el cliente de origen que realizó la conexión. Los datos extraídos son válidos durante toda la vida de la conexión TCP y, por lo tanto, evita que el host de salto siguiente tenga que interpretar la opción de nuevo. Esta opción solo se aplica a los servicios web que tienen habilitada la opción de inserción de IP de cliente.

Descarga de segmentación TCP

Descarga la segmentación TCP a la NIC. Si establece la opción como «AUTOMÁTICA», la segmentación TCP se descarga a la NIC, si se admite la NIC.

Esto se utiliza para resistir ataques de inundación SYN. Puede habilitar o inhabilitar el SYNCOOKIE mecanismo para el intercambio de manos TCP con los clientes. La desactivación SYNCOOKIE evita la protección contra SYN ataques en el dispositivo Citrix ADC.

Aprendizaje de MSS para habilitar el aprendizaje de MSS para todos los servidores virtuales configurados en el dispositivo

Parámetros TCP compatibles

En la tabla siguiente se proporciona una lista de los parámetros TCP y su valor predeterminado configurado en un dispositivo Citrix ADC.

Parámetro Valor predeterminado Descripción
Administración de ventanas    
Temporizador de retraso TCP 100 miliseg Tiempo de espera para TCP retrasado ACK, en milisegundos.
Tiempo de espera mínimo de retransmisión (RTO) TCP en millones de segundos 1000 millones seg Tiempo de espera mínimo de retransmisión, en milisegundos, especificado en incrementos de 10 milisegundos (el valor debe generar un número entero si se divide por 10)
Tiempo de inactividad de la conexión antes de iniciar sondas keepalive 900 segundos Desconecte silenciosamente las conexiones establecidas por TCP en tiempos de espera inactivos, conexiones establecidas en tiempo de espera de inactividad
Opción de marca de hora TCP INHABILITADO La opción de marca de tiempo permite una medición RTT precisa. Habilitar o deshabilitar la opción de marca de tiempo TCP.
Tiempo de espera de sesión TCP de varias rutas 0 segundos Tiempo de espera de la sesión MPTCP en segundos. Si este valor no está establecido, inactivo. Las sesiones MPTCP se vacían después del tiempo de espera de inactividad del cliente del servidor virtual.
Suelte silenciosamente las conexiones semicerradas en tiempo de espera inactivo 0 segundos Suelte silenciosamente las conexiones TCP semicerradas en tiempo de espera inactivo.
Suéltalo silencioso Conexiones establecidas en tiempo de espera de inactividad INHABILITADO Suéltalo silenciosamente las conexiones establecidas por TCP en tiempo de espera de inactividad
Administración de la memoria    
Tamaño del búfer TCP 131072 octetos El tamaño del búfer TCP es el tamaño del búfer de recepción en Citrix ADC. Este tamaño de búfer se anuncia a clientes y servidores desde Citrix ADC y controla su capacidad para enviar datos a Citrix ADC. El tamaño del búfer predeterminado es 8K y, por lo general, es seguro incrementarlo cuando se habla con granjas de servidores internos. El tamaño del búfer también se ve afectado por la capa de aplicación real de Citrix ADC, como para los casos de endpoints SSL, se establece en 40 K y para Compresión se establece en 96 K. Nota: El argumento de tamaño del búfer debe establecerse para que se realicen ajustes dinámicos.
Tamaño del búfer de envío TCP 8190 bytes Tamaño del búfer de envío TCP
Almacenamiento en búfer de recepción dinámico TCP INHABILITADO Habilitar o deshabilitar el almacenamiento en búfer de recepción dinámico. Cuando está habilitado, permite ajustar dinámicamente el búfer de recepción en función de las condiciones de la memoria y de la red. Nota: El argumento de tamaño del búfer debe establecerse para que se realicen ajustes dinámicos
Ventana de congestión TCP Max (CWND) 524288 bytes Ventana de máxima congestión TCP
Estado de escalado de ventanas ENALBIZADO Habilitar o deshabilitar el escalado de ventanas.
Factor de escalado de ventanas 8 Factor utilizado para calcular el nuevo tamaño de ventana. Este argumento solo es necesario cuando el escalado de ventanas está habilitado.
Configuración de conexión    
Sondas Keep-alive INHABILITADO Envíe sondeos TCP Keep-alive (KA) periódicos para comprobar si el par sigue activo.
Tiempo de inactividad de la conexión antes de iniciar sondas keepalive 900 segundos Duración, en segundos, de que la conexión esté inactiva, antes de enviar un sondeo keep-alive (KA).
Intervalo de sonda Keep-alive 75 segundos Intervalo de tiempo, en segundos, antes de la próxima sonda de mantenimiento vivo (KA), si el par no responde.
Se perderán las sondas de mantenimiento máximas antes de soltar la conexión. 3 Número de sondas keep-alive (KA) que se enviarán cuando no se reconozcan, antes de asumir que el par está caído.
Atenuación de ventanas RST (protección contra falsificación). INHABILITADO Habilite o inhabilite la atenuación de la ventana de RST para protegerse contra la suplantación de identidad. Cuando está habilitada, la respuesta es con ACK correctivo cuando un número de secuencia no es válido.
Acepte RST con el último número de secuencia reconocido. HABILITADO  
Transferencia de datos    
ACK inmediato en paquete PUSH HABILITADO Envíe acuse de recibo positivo inmediato (ACK) al recibir paquetes TCP con marca PUSH.
Paquetes máximos por MSS 0 Número máximo de octetos que se pueden permitir en un segmento de datos TCP
Algoritmo de Nagle INHABILITADO El algoritmo de Nagle lucha contra el problema de los paquetes pequeños en la transmisión TCP. Las aplicaciones como Telnet y otros motores en tiempo real que requieren que cada pulsación de tecla se pase al otro lado a menudo crean paquetes pequeños. Con el algoritmo de Nagle, Citrix ADC puede almacenar en búfer esos paquetes pequeños y enviarlos juntos para aumentar la eficiencia de la conexión. Este algoritmo debe funcionar junto con otras técnicas de optimización TCP en Citrix ADC.
Máximo de segmentos TCP permitidos en una ráfaga 10 MSS Número máximo de segmentos TCP permitidos en ráfagas
Máximo de paquetes fuera de servicio que se van a poner en cola 300 Tamaño máximo de la cola de paquetes fuera de orden. Un valor de 0 significa que no hay límite
Control de congestión    
Sabor TCP CÚBICO  
Configuración de la ventana de congestión inicial (cwnd) 4 MSS Límite superior máximo inicial del número de paquetes TCP que pueden estar pendientes en el enlace TCP al servidor
Notificación de congestión explícita TCP (ECN) INHABILITADO La notificación explícita de congestión (ECN) proporciona una notificación de extremo a extremo de la congestión de la red sin dejar caer paquetes.
Ventana de congestión TCP Max (CWND) 524288 bytes TCP mantiene una ventana de congestión (CWND) que limita el número total de paquetes no confirmados que pueden estar en tránsito de extremo a extremo. En TCP, la ventana de congestión es uno de los factores que determina el número de bytes que pueden estar pendientes en cualquier momento. La ventana de congestión es un medio para impedir que un enlace entre el remitente y el receptor se sobrecargue con demasiado tráfico. Se calcula calculando cuánta congestión hay en el enlace.
Inicio híbrido TCP (HyStart) 8 bytes  
Tiempo de espera mínimo de retransmisión (RTO) TCP en millones de segundos 1000 Tiempo de espera mínimo de retransmisión, en milisegundos, especificado en incrementos de 10 milisegundos (el valor debe producir un número entero si se divide por 10).
Umbral de dupack TCP INHABILITADO  
Control de velocidad de ráfaga 3 Control de velocidad de ráfaga TCP DESHABILITADO/FIJO/DINÁMICO. FIXED requiere que se establezca una velocidad TCP
Tasa TCP INHABILITADO Velocidad de envío de carga útil de conexión TCP en KB/s
Cola máxima de velocidad TCP 0 Tamaño máximo de cola de conexión en bytes, cuando se utiliza BurstrateControl.
MPTCP    
TCP multiruta INHABILITADO TCP multirruta (MPTCP) es un conjunto de extensiones a TCP normal para proporcionar un servicio TCP multirruta, que permite que una conexión de transporte funcione a través de múltiples rutas simultáneamente.
Datos de caída TCP de varias rutas en un subflujo preestablecido INHABILITADO Habilita o deshabilita la caída silenciosa de los datos en el subflujo preestablecido. Cuando se habilita, los paquetes de datos DSS se descartan silenciosamente en lugar de eliminar la conexión cuando se reciben datos en un subflujo preestablecido.
TCP multirruta de apertura rápida INHABILITADO Habilite o deshabilite la apertura rápida TCP multiruta. Cuando se habilita, se aceptan paquetes de datos DSS antes de recibir la tercera parte de un protocolo de acceso SYN.
Tiempo de espera de sesión TCP de varias rutas 0 segundos Tiempo de espera de la sesión MPTCP en segundos. Si no se establece este valor, las sesiones MPTCP inactivas se vacían después del tiempo de espera de inactividad del cliente del servidor virtual.
Seguridad    
Protección contra falsificación SYN INHABILITADO Habilite o deshabilite la caída de paquetes SYN no válidos para protegerlos contra la suplantación. Cuando está deshabilitada, las conexiones establecidas se restablecen cuando se recibe un paquete SYN.
Cookie sincronizada TCP INHABILITADO Esto se utiliza para resistir ataques de inundación SYN. Habilite o deshabilite el mecanismo SYNCOOKIE para el protocolo de comunicación TCP con los clientes. La desactivación de SYNCOOKIE evita la protección contra ataques SYN en el dispositivo Citrix ADC.
Detección y recuperación de pérdidas    
Reconocimiento selectivo duplicado (DSACK) HABILITADO Un dispositivo Citrix ADC utiliza el reconocimiento selectivo duplicado (DSACK) para determinar si se ha enviado una retransmisión por error.
Recuperación de RTO hacia adelante (FRTO) HABILITADO Detecta tiempos de espera de retransmisión TCP falsos. Después de retransmitir el primer segmento no reconocido activado por un tiempo de espera, el algoritmo del remitente TCP supervisa los acuse de recibo entrantes para determinar si el tiempo de espera fue falso. A continuación, decide si envía nuevos segmentos o retransmite segmentos no confirmados. El algoritmo ayuda eficazmente a evitar otras retransmisiones innecesarias y, por lo tanto, mejora el rendimiento de TCP en caso de que se produzca un tiempo de espera falso.
Reconocimiento de reenvío TCP (FACK) HABILITADO Habilita o deshabilita FACK (Forward ACK).
Estado de acuse de recibo selectivo (SACK) HABILITADO TCP SACK soluciona el problema de pérdidas de varios paquetes, lo que reduce la capacidad de rendimiento general. Con un acuse de recibo selectivo, el receptor puede informar al remitente sobre todos los segmentos que se han recibido correctamente, lo que permite al remitente solo retransmitir los segmentos que se han perdido. Esta técnica ayuda a Citrix ADC a mejorar el rendimiento general y reducir la latencia de conexión.
Paquetes máximos por retransmisión 1 Permite a Citrix ADC controlar cuántos paquetes se van a retransmitir en un intento. Cuando Citrix ADC recibe un ACK parcial y tiene que retransmisión, se considera esta configuración. Esto no afecta a las retransmisiones basadas en RTO.
Temporizador de retraso TCP 100 miliseg Tiempo de espera para ACK retrasado de TCP, en milisegundos
Optimización del TCO    
Modo de optimización TCP TRANSPARENTE Modos de optimización TCP TRANSPARENT/ENDPOINT
Aplicar optimizaciones TCP adaptativas INHABILITADO Aplicar optimizaciones TCP adaptativas
Descarga de segmentación TCP AUTOMÁTICO Descarga la segmentación TCP a la NIC. Si se establece en AUTOMÁTICO, la segmentación TCP se descarga a la NIC, si la NIC la admite.
Agregación ACK INHABILITADO Habilitar o deshabilitar la agregación ACK
Tiempo de espera TCP (o Time_Wait) 40 segundos Tiempo de transcurrir antes de liberar una conexión TCP cerrada

Configuración de parámetros TCP globales

El dispositivo Citrix ADC le permite especificar valores para los parámetros TCP aplicables a todos los servicios Citrix ADC y servidores virtuales. Esto se puede hacer utilizando:

  • Perfil TCP predeterminado
  • Comando TCP global
  • Función de almacenamiento en búfer TCP

Nota:

El recvBuffSize parámetro del comando set ns tcpParam queda obsoleto a partir de la versión 9.2. En versiones posteriores, establezca el tamaño del búfer mediante el bufferSize parámetro del comando set ns tcpProfile. Si actualiza a una versión en la que el recvBuffSize parámetro está obsoleto, el bufferSize parámetro se establece en su valor predeterminado.

Perfil TCP predeterminado

Un perfil TCP, denominado como nstcp_default_profile, se utiliza para especificar las configuraciones TCP que se utilizan si no se proporcionan configuraciones TCP a nivel de servicio o servidor virtual.

Notas:

  • No todos los parámetros TCP se pueden configurar mediante el perfil TCP predeterminado. Algunas configuraciones deben realizarse mediante el comando TCP global (consulte la sección siguiente).

  • El perfil predeterminado no tiene que estar vinculado explícitamente a un servicio o servidor virtual.

Para configurar el perfil TCP predeterminado

  • Mediante la interfaz de línea de comando, en la solicitud de comando escriba:

     set ns tcpProfile nstcp_default_profile...
     <!--NeedCopy-->
    
  • En la GUI, vaya a Sistema > Perfiles, haga clic en Perfiles TCP y actualice nstcp_default_profile.

Comando TCP global

Otro enfoque que puede utilizar para configurar los parámetros TCP globales es el comando TCP global. Además de algunos parámetros únicos, este comando duplica algunos parámetros que se pueden establecer mediante un perfil TCP. Cualquier actualización realizada a estos parámetros duplicados se refleja en el parámetro correspondiente del perfil TCP predeterminado.

Por ejemplo, si el parámetro SACK se actualiza mediante este enfoque, el valor se refleja en el parámetro SACK del perfil TCP predeterminado (nstcp_default_profile).

Nota:

Citrix recomienda utilizar este enfoque solo para parámetros TCP que no están disponibles en el perfil TCP predeterminado.

Para configurar el comando TCP global

  • Mediante la interfaz de línea de comando, en la solicitud de comando escriba:

     set ns tcpParam …
     <!--NeedCopy-->
    
  • En la GUI, vaya a Sistema > Configuración, haga clic en Cambiar parámetros TCP y, a continuación, actualice los parámetros TCP necesarios.

Función de almacenamiento en búfer TCP

Citrix ADC proporciona una característica denominada almacenamiento en búfer TCP que puede utilizar para especificar el tamaño del búfer TCP. La función se puede habilitar globalmente o a nivel de servicio.

Nota:

El tamaño del búfer también se puede configurar en el perfil TCP predeterminado. Si el tamaño del búfer tiene valores diferentes en la función de almacenamiento en búfer TCP y en el perfil TCP predeterminado, se aplica el mayor valor.

Para configurar la función de almacenamiento en búfer TCP globalmente

  • En la solicitud de comando, escriba:

    habilitar el modo ns TCPB

    set ns tcpbufParam -size <positiveInteger> -memLimit <positiveInteger>

  • En la GUI, vaya a Sistema > Configuración, haga clic en Configurar modos y, a continuación, seleccione Almacenamiento en búfer TCP.

    Además, vaya a Sistema > Configuración, haga clic en Cambiar parámetros TCP, especifique valores para Tamaño de búfer y Límite de uso de memoria.

Configuración de parámetros TCP específicos del servicio o del servidor virtual

Con los perfiles TCP, puede especificar parámetros TCP para servicios y servidores virtuales. Debe definir un perfil TCP (o utilizar un perfil TCP integrado) y asociar el perfil al servicio y al servidor virtual adecuados.

Nota:

También puede modificar los parámetros TCP de los perfiles predeterminados según sus requisitos.

Puede especificar el tamaño del búfer TCP a nivel de servicio utilizando los parámetros especificados por la función de almacenamiento en búfer TCP.

Para especificar configuraciones TCP de nivel de servicio o servidor virtual mediante la interfaz de línea de comandos

En el símbolo del sistema, lleve a cabo lo siguiente:

  1. Configure el perfil TCP.

    set ns tcpProfile <profile-name>...
    <!--NeedCopy-->
    
  2. Enlazar el perfil TCP al servicio o al servidor virtual.

   set service <name> ....
   <!--NeedCopy-->

Ejemplo:

> set service service1 -tcpProfileName profile1

Para enlazar el perfil TCP al servidor virtual:

set lb vserver <name> ....
<!--NeedCopy-->

Ejemplo:

> set lb vserver lbvserver1 -tcpProfileName profile1
<!--NeedCopy-->

Para especificar configuraciones TCP de nivel de servidor virtual o de servicio mediante la interfaz gráfica de usuario

En la GUI, realice lo siguiente:

  1. Configure el perfil TCP.

    Vaya a Sistema > Perfiles > Perfiles TCPy cree el perfil TCP.

  2. Enlazar el perfil TCP al servicio o al servidor virtual.

    Vaya a Administración del tráfico > Equilibrio de carga > Servicios/Servidores virtualesy cree el perfil TCP, que debe estar vinculado al servicio o al servidor virtual.

Perfiles TCP integrados

Para facilitar la configuración, Citrix ADC proporciona algunos perfiles TCP integrados. Revise los perfiles integrados que aparecen en la lista siguiente y seleccione un perfil y utilícelo tal como está o modifíquelo para cumplir con sus requisitos. Puede vincular estos perfiles a los servicios o servidores virtuales requeridos.

Perfil incorporado Descripción
nstcp_default_profile Representa la configuración TCP global predeterminada del dispositivo.
nstcp_default_tcp_lan Útil para conexiones de servidor back-end, donde estos servidores residen en la misma LAN que el dispositivo.
NSTCP_Default_WAN útil para implementaciones WAN.
nstcp_default_tcp_lan_thin_stream Similar al perfil nstcp_default_tcp_lan. Sin embargo, la configuración se ajusta a flujos de paquetes de pequeño tamaño.
nstcp_default_tcp_interactive_stream Similar al perfil nstcp_default_tcp_lan. Sin embargo, tiene un temporizador ACK retrasado reducido y ACK en la configuración de paquetes PUSH .
nstcp_default_tcp_lfp Útil para redes de tuberías largas de grasa (WAN) en el lado del cliente. Las redes de tuberías largas y gruesas tienen líneas de largo retraso y ancho de banda alto con caídas mínimas de paquetes.
nstcp_default_tcp_lfp_thin_stream Similar al perfil nstcp_default_tcp_lfp. Sin embargo, la configuración se ajusta para flujos de paquetes de pequeño tamaño.
nstcp_default_tcp_lnp Útil para redes de tuberías largas y estrechas (WAN) en el lado del cliente. Las redes de tuberías largas y estrechas tienen una pérdida considerable de paquetes ocasionalmente.
nstcp_default_tcp_lnp_thin_stream Similar al perfil nstcp_default_tcp_lnp. Sin embargo, la configuración se ajusta para flujos de paquetes de pequeño tamaño.
nstcp_internal_apps Útil para aplicaciones internas del dispositivo (por ejemplo, sincronización de sitios GSLB). Contiene el escalado de ventanas ajustado y las opciones SACK para las aplicaciones deseadas. Este perfil no debe estar vinculado a aplicaciones distintas de las aplicaciones internas.
nstcp_default_mobile_profile Útil para dispositivos móviles.
nstcp_default_xa_xd_perfil Útil para una implementación de XenApp o XenDesktop.

Configuraciones TCP de ejemplo

Ejemplos de interfaz de línea de comandos de ejemplo para configurar lo siguiente:

Defensa de TCP contra ataques de falsificación

Habilite Citrix ADC para defender TCP contra ataques falsos. De forma predeterminada, el parámetro «RSTWindoWattEnuation» está deshabilitado. Este parámetro está habilitado para proteger el dispositivo contra la suplantación. Si lo habilita, responde con acuse de recibo correctivo (ACK) de un número de secuencia no válido. Los valores posibles son habilitado o inhabilitado.

Donde el parámetro de atenuación de ventana RST protege el dispositivo contra la suplantación. Cuando esté habilitada, responda con ACK correctivo cuando un número de secuencia no es válido.

    > set ns tcpProfile profile1 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED
    Done
    > set lb vserver lbvserver1 -tcpProfileName profile1
    Done
<!--NeedCopy-->

Notificación explícita de congestión (ECN)

Enable ECN on the required TCP profile

    > set ns tcpProfile profile1 -ECN ENABLED
    Done
    > set lb vserver lbvserver1 -tcpProfileName profile1
    Done
<!--NeedCopy-->

Reconocimiento selectivo (SACK)

Habilite SACK en el perfil TCP requerido.

    > set ns tcpProfile profile1 -SACK ENABLED
    Done
    > set lb vserver lbvserver1 -tcpProfileName profile1
    Done
<!--NeedCopy-->

Reconocimiento de reenvío (FACK)

Habilite FACK en el perfil TCP requerido.

> set ns tcpProfile profile1 -FACK ENABLED
> set lb vserver lbvserver1 -tcpProfileName profile1
<!--NeedCopy-->

Escala de ventanas (WS)

Habilite el escalado de ventanas y establezca el factor de escalado de ventanas en el perfil TCP requerido.

set ns tcpProfile profile1 –WS ENABLED –WSVal 9
Done
set lb vserver lbvserver1 -tcpProfileName profile1
Done
<!--NeedCopy-->

Tamaño máximo de segmento (MSS)

Actualice las configuraciones relacionadas con MSS.

> set ns tcpProfile profile1 –mss 1460 - maxPktPerMss 512
Done
> set lb vserver lbvserver1 -tcpProfileName profile1
Done
<!--NeedCopy-->

Citrix ADC para aprender el MSS de un servidor virtual

Habilite Citrix ADC para aprender el VSS y actualizar otras configuraciones relacionadas.

> set ns tcpParam -learnVsvrMSS ENABLED –mssLearnInterval 180 -mssLearnDelay 3600
Done
<!--NeedCopy-->

TCP keep-alive

Habilite TCP keep-alive y actualice otras configuraciones relacionadas.

> set ns tcpProfile profile1 –KA ENABLED –KaprobeUpdateLastactivity ENABLED -KAconnIdleTime 900 -KAmaxProbes 3 -KaprobeInterval 75 Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Tamaño del búfer: uso del perfil TCP

Especifique el tamaño del búfer.

> set ns tcpProfile profile1 –bufferSize 8190 Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Tamaño del búfer: uso de la función de almacenamiento en búfer TCP

Habilite la función de almacenamiento en búfer TCP (globalmente o para un servicio) y, a continuación, especifique el tamaño del búfer y el límite de memoria.

> enable ns feature TCPB Done > set ns tcpbufParam -size 64 -memLimit 64 Done

MPTCP

Habilite MPTCP y, a continuación, configure las configuraciones MPTCP opcionales.

> set ns tcpProfile profile1 -mptcp ENABLED Done > set ns tcpProfile profile1 -mptcpDropDataOnPreEstSF ENABLED -mptcpFastOpen ENABLED -mptcpSessionTimeout 7200 Done > set ns tcpparam -mptcpConCloseOnPassiveSF ENABLED -mptcpChecksum ENABLED -mptcpSFtimeout 0 -mptcpSFReplaceTimeout 10 -mptcpMaxSF 4 -mptcpMaxPendingSF 4 -mptcpPendingJoinThreshold 0 -mptcpRTOsToSwitchSF 2 -mptcpUseBackupOnDSS ENABLED Done

Control de congestión

Establezca el algoritmo de control de congestión TCP requerido.

set ns tcpProfile profile1 -flavor Westwood Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Almacenamiento en búfer de recepción dinámico

Habilite el búfer de recepción dinámico en el perfil TCP requerido.

> set ns tcpProfile profile1 -dynamicReceiveBuffering ENABLED Done > set lb vserver lbvserver1 -tcpProfileName profile1 Done

Soporte para TCP Fast Open (TFO) en TCP Multipath (MPTCP)

Un dispositivo Citrix ADC ahora admite el mecanismo TCP Fast Open (TFO) para establecer conexiones TCP de múltiples rutas (MPTCP) y acelerar las transferencias de datos. El mecanismo permite que los datos de subflujo se transportan durante el enlace inicial de conexión MPTCP en paquetes SYN y SYN-ACK y también permite que los datos sean consumidos por el nodo receptor durante el establecimiento de la conexión MPTCP.

Para obtener más información, consulte el tema TCP Fast Open .

Un dispositivo Citrix ADC permite ahora configurar una cookie TCP de apertura rápida (TFO) de longitud variable de un tamaño mínimo de 4 bytes y un tamaño máximo de 16 bytes en un perfil TCP. Al hacerlo, el dispositivo puede responder al cliente con el tamaño de cookie TFO configurado en el paquete SYN-ACK.

Para configurar la cookie TCP Fast Open (TFO) en un perfil TCP mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set tcpProfile nstcp_default_profile -tcpFastOpenCookieSize <positive_integer>

Ejemplo

set tcpProfile nstcp_default_profile -tcpFastOpenCookieSize 8

Para configurar la cookie TCP Fast Open (TFO) en un perfil TCP mediante la GUI

  1. Vaya a Configuración > Sistema > Perfiles.
  2. En el panel de detalles, vaya a la pestaña Perfiles TCP y seleccione un perfil TCP.
  3. En la página Configurar perfil TCP, establezca el tamaño de la cookie TCP Fast Open .
  4. Haga clic en Aceptar y Listo.

El TCPSyncookie parámetro está habilitado de forma predeterminada en los perfiles TCP para proporcionar una protección sólida (RFC 4987) contra ataques SYN. Si necesita acomodar clientes TCP personalizados que no son compatibles con esta protección pero que aún desean garantizar una reserva en caso de ataque, lo synAttackDetection maneja activando automáticamente el SYNCookie comportamiento internamente durante un período de tiempo determinado por el autosyncookietimeout parámetro.

Para configurar el umbral máximo de retransmisión SYN ACK mediante la interfaz de línea de comandos:

En el símbolo del sistema, escriba:

    set ns tcpparam [-maxSynAckRetx <positive_integer>]

    Set ns tcpparam [-maxSynAckRetx 150]
<!--NeedCopy-->

Para configurar el intervalo de tiempo de espera automático de cookies SYN mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba:

set ns tcpparam [-autosyncookietimeout <positive_integer>]

Set ns tcpparam [-autosyncookietimeout 90]

Configuraciones TCP