¿Qué es una Application Delivery Controller (ADC)?

Descargar como PDF  

Los ADC han ganado importancia en la última década, debido en gran medida a una mayor demanda de dispositivos de equilibrio de carga heredados para tratar los requisitos de entrega de aplicaciones más avanzados y mejorar el rendimiento de las aplicaciones.

Los controladores de entrega de aplicaciones son dispositivos de redes fabricados a medida, cuya función es mejorar el rendimiento, la seguridad y la flexibilidad de las aplicaciones entregadas a través de la web.

Entrega de aplicaciones

Las aplicaciones han evolucionado significativamente en los últimos años. Ahora, el término entrega está generalmente aceptado como el medio de entregar una aplicación al usuario en esta nueva era de movilidad y nube. En la empresa, las aplicaciones empresariales se han alejado del software asociado a un escritorio instalado en un servidor local al que los usuarios acceden a través de la LAN. Las aplicaciones modernas necesitan trabajar en todo tipo de redes y en ubicaciones más allá de los límites del lugar de trabajo físico.

Los controladores de entrega de aplicaciones, que se han implementado ampliamente como un elemento clave de la empresa, ayudan a las aplicaciones a adaptarse a las redes y protocolos instalados en la actualidad. También aseguran que las aplicaciones tienen un rendimiento óptimo, siempre están disponibles y no presentan ningún riesgo de seguridad para el usuario o el negocio.

Disponibilidad de aplicaciones

El consumidor medio espera que los dispositivos y aplicaciones interactúen diariamente para que estén siempre funcionando y que la información esté disponible inmediatamente a pedido. Estas expectativas se han trasladado al tipo de dispositivos y aplicaciones que utilizan. Para satisfacer a los trabajadores, las aplicaciones empresariales tienen que ser tan intuitivas y fáciles de usar como las que utilizan para realizar tareas y ocio personales.

Muchos empleados ya no están restringidos a usar equipo de la compañía bloqueado y pueden usar dispositivos personales para trabajar allí donde deseen. Con personas que trabajan a cualquier hora del día o de la noche, TI debe asegurarse que los servidores y aplicaciones del lugar de trabajo están disponibles en todo momento. Las empresas realizan grandes inversiones en infraestructura de TI para asegurar que los empleados siempre tienen acceso a aplicaciones e información cuando las necesiten.

Obviamente, los servidores pueden fallar por una serie de motivos que varían desde problemas mecánicos a sobreutilización y fallos de seguridad. Si un servidor se apaga, las aplicaciones que se ejecutan en él no podrán usarse o estarán inaccesibles.

Las organizaciones de TI pueden planificar estas ocurrencias incorporando la tolerancia a fallos en sus entornos. La implementación de servidores adicionales en el centro de datos o en un sitio de ubicación compartida son estrategias típicas de conmutación por error. Los ADC pueden ayudar a garantizar la alta disponibilidad de las aplicaciones proporcionando una conmutación por error sin inconvenientes. Esto se realiza  equilibrando las cargas de trabajo de la aplicación en un clúster de servidores activos en una o varias instalaciones.

Cómo ayuda el equilibrio de carga de servidores

El equilibrio de carga de servidores ayuda a distribuir el tráfico en un clúster de servidores para optimizar la utilización, mejorar la capacidad de respuesta y aumentar la disponibilidad.

Un controlador de entrega de aplicaciones emplea algoritmos y políticas para determinar cómo se distribuye el tráfico de aplicaciones de entrada. La operación por turnos, que reenvía las solicitudes de clientes a cada servidor por turnos, es una forma bastante rudimentaria de equilibrio de carga. Este método asume que todos los servidores son iguales: no tiene en cuenta la salud o capacidad de respuesta. Un administrador puede implementar políticas adicionales que indiquen a un ADC que compruebe una serie de criterios antes de determinar a qué servidor se debe enviar una solicitud de entrada. El controlador de entrega de aplicaciones puede inspeccionar los encabezados de paquete en busca de palabras clave o tipos de archivos solicitados, y dirigir la solicitud al servidor adecuado basándose en esta información.

Figura 1. ADC monitoriza activamente para garantizar que las solicitudes se envían a los servidores disponibles

También se confía mucho en las capacidades de monitorización de los controladores de entrega de aplicaciones. Pueden comprobar la salud y capacidad de operación de un servidor más allá de un ping estándar. Si la monitorización indica que un servidor tiene un problema, o que no se cumplen los criterios de salud específicos necesarios para asegurar la confiabilidad de un servidor, el ADC dirigirá el tráfico a un servidor alternativo, con lo que se evita una interrupción potencial (consulte la Figura 1).

Los controladores de entrega de aplicaciones también pueden proporcionar un análisis histórico y en tiempo real de todo el tráfico de red y usuarios, incluidas métricas de los tiempos de ida y vuelta, uso de ancho de banda y latencia del centro de datos y la WAN. Esta información puede ayudar al personal del servicio técnico al minimizar el tiempo que emplean identificando la causa de un problema y ayudar a los usuarios proporcionando una resolución más rápida.

Equilibrio de carga de servidores en varias instalaciones

El equilibrio de carga es un servicio crítico en cualquier centro de datos con gran tráfico, pero un controlador de entrega de aplicaciones también puede redirigir el tráfico a un clúster de servidores ubicados en un centro de datos completamente distinto. Esto se llama equilibrio de carga de servidores global. Los servidores en el otro centro de datos pueden estar controlados por otro ADC, que funciona en tándem con el primer aparato. Estas instalaciones pueden configurarse en modo activo-pasivo o activo-activo. En el último caso, ambas instalaciones admiten activamente el tráfico entrante. Cada controlador de entrega de aplicaciones detecta el centro de datos más cercano a un usuario dado y dirige la solicitud del cliente a un servidor en dicho centro de datos. Este proceso minimiza los tiempos de latencia y de ida y vuelta de la solicitud del usuario y asegura una mejor experiencia.

Esta configuración también apoya la continuidad del negocio si un centro de datos sufre una caída. Cuando el tráfico se dirige a dicho centro de datos, el ADC lo desviará a un ADC disponible en una instalación de ubicación compartida que pueda dirigir el tráfico a un recurso de servidor viable.

Rendimiento de la aplicación

Si las aplicaciones no tienen un rendimiento acorde a las expectativas de los usuarios, su productividad puede verse afectada gravemente. Un controlador de entrega de aplicaciones puede emplear una serie de mecanismos para mejorar el rendimiento de la aplicación, especialmente en redes móviles y de alta latencia.

El equilibrio de carga de la base de datos SQL es un mecanismo que puede ofrecer ganancias de rendimiento. El equilibrio de carga SQL utiliza muchas de las mismas técnicas empleadas para el equilibrio de carga de tráfico TCP, pero aplica esta inteligencia en el nivel de base de datos. Utiliza lógica impulsada por políticas para cada transacción SQL, con lo que se mejora el número de solicitudes y conexiones que pueden administrarse en el clúster de bases de datos.

Otros servicios habituales de rendimiento de aplicaciones que ofrece un controlador de entrega de aplicaciones son la descarga de tareas que hacen un uso intensivo del servidor, multiplexación de conexiones, compresión y almacenamiento en caché.

SSL y TLS son pilares para realizar negocios en la web. La administración del tráfico cifrado con nuevos códigos requiere un uso intensivo de la CPU. Los controladores de entrega de aplicaciones pueden manejar volúmenes muy altos de tráfico cifrado y sin cifrar. El ADC administra certificados y descifra el tráfico antes de que llegue al servidor.

La multiplexación de TCP es un método eficaz para manejar grandes volúmenes de solicitudes entrantes al servidor. La multiplexación de TCP mantiene activas las conexiones entre el ADC y los servidores. A medida que el tráfico llega al ADC, este dirige las solicitudes utilizando estos canales abiertos, lo que elimina la sobrecarga ineficaz “abrir-cerrar” de cada transacción que puede afectar negativamente el rendimiento del servidor.

Optimización de rendimiento en redes móviles

Los ADC también pueden proporcionar beneficios de rendimiento en las redes móviles. Las páginas web diseñadas para vínculos de Internet de alta velocidad a menudo no ofrecen la misma experiencia de usuario en un dispositivo móvil que se conecta a través de una red con un ancho de banda limitado.

Varios mecanismos creativos permiten que un controlador de entrega de aplicaciones optimice la entrega de contenido web a través de redes móviles. La fragmentación de dominios es un ejemplo. La optimización de la capa de conexiones se aplica a un único dominio. El contenido de cada página se desglosa en una secuencia de subdominios que permiten que un número más grande de canales se abra simultáneamente, lo que reduce el tiempo de carga de la página y mejora el rendimiento.

Los controladores de entrega de aplicaciones tienen visibilidad en dicho contenido que se está entregando y pueden optimizar aún más la entrega de páginas web que contengan imágenes grandes convirtiendo los archivos GIF en formatos PNG más eficientes.

El resto de componentes grandes de una página web incluyen scripts y archivos de hoja de estilo en cascada (CSS) grandes, que los ADC pueden comprimir eliminando caracteres innecesarios y espacios en   blanco.

Cuando se comprimen, los archivos atraviesan la red a una velocidad mucho mayor, por lo que los tiempos de descarga se reducen drásticamente.

Seguridad de usuarios y aplicaciones

La entrega a través de la web ha presentado nuevas amenazas y vulnerabilidades a las que las aplicaciones tradicionales basadas en LAN nunca tuvieron que enfrentarse. A medida que los trabajadores son más móviles y requieren acceso remoto a aplicaciones y datos, TI debe crear protecciones más exigentes contra ataques externos y fuga de datos.

Los controladores de entrega de aplicaciones sirven como el punto de entrada o gateway natural a la red. Autentican a cada usuario que intenta acceder a una aplicación. Si la aplicación está basada en SaaS, el ADC puede validar la identidad de un usuario utilizando el almacén de datos de Active Directory en las instalaciones que elimina la necesidad de guardar las credenciales en la nube. No solo el proceso es más seguro, también mejora la experiencia del usuario al proporcionar un único inicio de sesión en varias aplicaciones.

SAML, el protocolo basado en XML, ahora se usa ampliamente para simplificar el proceso de inicio de sesión de aplicaciones. El ADC puede actuar como un agente SAML, autorizando a los usuarios a través de cualquier almacén de datos en los que se pueda confirmar su identidad. Algunas aplicaciones permiten el uso de credenciales de sitios como Facebook o Google+ para validar la identidad antes de permitir el acceso. Los ADC pueden actuar como un proveedor de servicios o identidades SAML en este sentido.

Los ataques de denegación de servicios distribuida (DDoS) son cada vez más frecuentes.1 Específicamente, el objetivo son las propiedades web de la empresa, con la intención de saturar a sus servidores e interrumpir su capacidad para realizar actividades comerciales. Los ADC pueden implementar medidas de limitación de velocidad para proteger a los recursos internos de servidor de estos ataques diseñados especialmente. Cuando se produce un aumento masivo inusual de solicitudes entrantes, el ADC puede obturar estas solicitudes y minimizar la cantidad de ancho de banda disponible que consumen, o rechazar la solicitud por completo.

Los ADC cuentan con equilibrio de carga convergente y protección avanzada en la capa 7, que tradicionalmente solo estaban disponibles como soluciones independientes. Los firewalls de aplicaciones pueden inspeccionar los encabezados de paquetes de datos en busca de contenido sospechoso o scripts maliciosos que puedan no haber sido detectados por el firewall de la red (consulte la Figura 2).

Figura 2. Protección de capa 7 más allá de las capacidades del firewall de la red.

1 Jonathan Keane. Los ataques DDoS alcanzan un número récord en T2 2015. Digital Trends. 19 de agosto de 2015. http://www.digitaltrends.com/computing/ddos-attacks-hit-record-numbers-in-q2-2015/

Un controlador de entrega de aplicación puede admitir modelos de seguridad positivos y negativos. Cuando un ADC se coloca en el modo “aprendizaje”, puede analizar el tráfico para determinar patrones de uso que indiquen un comportamiento normal. Si se envía una solicitud entrante maliciosa, por ejemplo, con una inyección SQL o script de sitio cruzado, indicará automáticamente dicha solicitud y la bloqueará. También puede emplear una protección basada en firma mediante la integración con proveedores de seguridad externos como Qualys. Mediante la combinación de estos métodos de protección, el ADC puede usar un modelo de seguridad híbrido completo para aplicaciones y usuarios.

¿Qué es lo siguiente para los ADC?

Los ADC ya han proporcionado un tremendo valor a las organizaciones de TI al garantizar la entrega segura de aplicaciones y datos al usuario. Sin embargo, se espera que continúen avanzando a medida que evolucionan las aplicaciones. Las redes definidas por software han planteado mayores demandas sobre los controladores de entrega de aplicaciones para que funcionen “como un servicio”. A medida que los protocolos de red se centran cada vez más en aplicaciones, los ADC también deben adaptarse y ser más “auto-automatizados” para ofrecer una optimización y una protección sin inconvenientes para todos los tipos de aplicación.

Siguiente paso