stringtranslate.com

Limitación de velocidad

En las redes informáticas , la limitación de velocidad se utiliza para controlar la velocidad de las solicitudes enviadas o recibidas por un controlador de interfaz de red . Se puede utilizar para evitar ataques DoS [1] y limitar el web scraping [2] .

Las investigaciones indican que las tasas de inundación de una máquina zombie superan las 20 solicitudes HTTP GET por segundo [3] , las tasas legítimas son mucho menores.

La limitación de velocidad se debe utilizar junto con el patrón de limitación para minimizar la cantidad de errores de limitación. [4]

Dispositivos de hardware

Los dispositivos de hardware pueden limitar la tasa de solicitudes en la capa 4 o 5 del modelo OSI .

La limitación de velocidad puede ser inducida por la pila de protocolos de red del remitente debido a un paquete marcado ECN recibido y también por el programador de red de cualquier enrutador en el camino.

Si bien un dispositivo de hardware puede limitar la velocidad para un rango determinado de direcciones IP en la capa 4, corre el riesgo de bloquear una red con muchos usuarios que están enmascarados por NAT con una única dirección IP de un ISP .

La inspección profunda de paquetes se puede utilizar para filtrar en la capa de sesión, pero desarmará eficazmente los protocolos de cifrado como TLS y SSL entre el dispositivo y el servidor de protocolo (es decir, el servidor web).

Servidores de protocolo

Los servidores de protocolo que utilizan un modelo de solicitud/respuesta, como los servidores FTP o, por lo general, los servidores web, pueden utilizar una base de datos de clave-valor central en memoria , como Redis o Aerospike , para la gestión de sesiones. Se utiliza un algoritmo de limitación de velocidad para comprobar si la sesión del usuario (o la dirección IP) debe limitarse en función de la información de la memoria caché de la sesión.

En caso de que un cliente realice demasiadas solicitudes dentro de un período de tiempo determinado, los servidores HTTP pueden responder con el código de estado 429: Demasiadas solicitudes .

Sin embargo, en algunos casos (por ejemplo, servidores web), el algoritmo de gestión de sesiones y limitación de velocidad se debe integrar en la aplicación (usada para contenido dinámico) que se ejecuta en el servidor web, en lugar de en el servidor web en sí.

Cuando un servidor de protocolo o un dispositivo de red detecta que se ha alcanzado el límite de solicitudes configurado, descarga las nuevas solicitudes y no las responde. A veces, pueden añadirse a una cola para procesarse una vez que la tasa de entrada alcance un nivel aceptable, pero en los momentos de mayor demanda, la tasa de solicitudes puede incluso superar la capacidad de dichas colas y las solicitudes deben descartarse.

Centros de datos

Los centros de datos utilizan ampliamente la limitación de velocidad para controlar la proporción de recursos que se asignan a diferentes usuarios y aplicaciones según su acuerdo de nivel de servicio. [5] En los centros de datos se aplican diversas técnicas de limitación de velocidad mediante software y hardware. Los centros de datos virtualizados también pueden aplicar la limitación de velocidad en la capa de hipervisor. Dos métricas de rendimiento importantes de los limitadores de velocidad en los centros de datos son la huella de recursos (memoria y uso de CPU), que determina la escalabilidad, y la precisión. Por lo general, existe una compensación, es decir, se puede lograr una mayor precisión dedicando más recursos a los limitadores de velocidad. Existe un considerable cuerpo de investigación centrado en mejorar el rendimiento de la limitación de velocidad en los centros de datos. [5]

Véase también

Algoritmos
Bibliotecas

Referencias

  1. ^ Richard A. Deal (22 de septiembre de 2004). "Seguridad del firewall del enrutador Cisco: protección contra ataques DoS". Cisco Press . Consultado el 16 de abril de 2017 .
  2. ^ Greenberg, Andy (12 de enero de 2021). «Un error absurdamente básico permitió que cualquiera se apoderara de todos los datos de Parler» . Wired . Archivado desde el original el 12 de enero de 2021. Consultado el 12 de enero de 2021 .
  3. ^ Jinghe Jin; Nazarov Nodir; Chaetae Im; Seung Yeob Nam (7 de noviembre de 2014). "Mitigación de ataques de inundación HTTP GET mediante un enrutador de referencia NetFPGA modificado". pág. 1. Archivado desde el original el 6 de marzo de 2023. Consultado el 19 de diciembre de 2021 a través de ResearchGate.
  4. ^ Nativo de la nube: uso de contenedores, funciones y datos para crear aplicaciones de última generación . O'Reilly Media. 2019. ISBN 9781492053798.
  5. ^ ab Noormohammadpour, M.; Raghavendra, CS (mayo de 2018). "Control de tráfico de centros de datos: comprensión de técnicas y compensaciones". IEEE Communications Surveys & Tutorials . 20 (2): 1. arXiv : 1712.03530 . doi :10.1109/COMST.2017.2782753. Archivado desde el original el 16 de enero de 2024 – vía ResearchGate.
  6. ^ abcd Nikrad Mahdi (12 de abril de 2017). "Un enfoque alternativo a la limitación de velocidad". Medium . Consultado el 16 de abril de 2017 .