Colas justas


La cola justa es una familia de algoritmos de programación que se utilizan en algunos programadores de procesos y redes . El algoritmo está diseñado para lograr la equidad cuando se comparte un recurso limitado, por ejemplo, para evitar que los flujos con paquetes grandes o procesos que generan trabajos pequeños consuman más rendimiento o tiempo de CPU que otros flujos o procesos.

El término cola justa fue acuñado por John Nagle en 1985 al proponer la programación por turnos en la puerta de enlace entre una red de área local e Internet para reducir la interrupción de la red por hosts que se comportan mal. [1] [2] [3]

Alan Demers, Srinivasan Keshav y Scott Shenker propusieron una versión ponderada por bytes en 1989, y se basó en el anterior algoritmo de cola justa de Nagle. [4] [5] El algoritmo de puesta en cola equitativa ponderada por bytes tiene como objetivo imitar una multiplexación bit por bit calculando la fecha de salida teórica para cada paquete.

El concepto se ha desarrollado aún más en colas equitativas ponderadas y el concepto más general de configuración del tráfico , donde las prioridades de las colas se controlan dinámicamente para lograr la calidad de flujo deseada de los objetivos de servicio o acelerar algunos flujos.

La puesta en cola justa utiliza una cola por flujo de paquetes y los atiende en rotación, de modo que cada flujo puede "obtener una fracción igual de los recursos". [1] [2]

La ventaja sobre el primero en entrar, primero en salir (FIFO) convencional o la cola de prioridad es que un flujo de alta velocidad de datos, que consiste en paquetes grandes o muchos paquetes de datos, no puede ocupar más que su parte justa de la capacidad del enlace.