El bloqueo de cabecera de línea ( bloqueo HOL ) en las redes informáticas es un fenómeno que limita el rendimiento que se produce cuando el primer paquete retiene una línea de paquetes . Los ejemplos incluyen conmutadores de red con búfer de entrada , entrega fuera de orden y múltiples solicitudes en canalización HTTP .
Interruptores
![](http://wikiimg.tojsiabtv.com/wikipedia/en/e/e2/HOL_blocking.png)
Un conmutador puede estar compuesto por puertos de entrada con búfer , una estructura de conmutador y puertos de salida con búfer. Si se utilizan búferes de entrada primero en entrar, primero en salir (FIFO), solo el paquete más antiguo está disponible para reenvío. Las llegadas más recientes no se pueden reenviar si el paquete más antiguo no se puede reenviar porque su salida de destino está ocupada. La salida puede estar ocupada si hay contención de salida .
Sin el bloqueo HOL, los recién llegados podrían reenviarse potencialmente alrededor del paquete más antiguo atascado a sus respectivos destinos. El bloqueo HOL puede producir efectos que degraden el rendimiento en sistemas con búfer de entrada.
Este fenómeno limita el rendimiento de los conmutadores. Para los búferes de entrada FIFO, un modelo simple de celdas de tamaño fijo para destinos distribuidos uniformemente, hace que el rendimiento se limite al 58,6% del total a medida que aumenta el número de enlaces. [1]
Una forma de superar esta limitación es mediante el uso de colas de salida virtuales . [2]
Solo los interruptores con búfer de entrada pueden sufrir bloqueo HOL. Con suficiente ancho de banda interno, el almacenamiento en búfer de entrada es innecesario; todo el almacenamiento en búfer se maneja en las salidas y se evita el bloqueo HOL. Esta arquitectura sin búfer de entrada es común en conmutadores Ethernet de tamaño pequeño a mediano .
Entrega fuera de orden
La entrega fuera de orden ocurre cuando los paquetes secuenciados llegan fuera de orden. Esto puede suceder debido a diferentes rutas tomadas por los paquetes o porque los paquetes se descartan y se reenvían. El bloqueo HOL puede aumentar significativamente el reordenamiento de paquetes. [3] [4]
Transmitir mensajes de manera confiable a través de una red con pérdidas entre un gran número de pares es un problema difícil. Si bien los algoritmos de transmisión atómica resuelven el problema del punto único de falla de los servidores centralizados, esos algoritmos introducen un problema de bloqueo de cabeza de línea. [5] El algoritmo Bimodal Multicast, un algoritmo aleatorio que utiliza un protocolo de chismes , evita el bloqueo de cabecera al permitir que algunos mensajes se reciban desordenados . [6]
En HTTP
Una forma de bloqueo HOL en HTTP / 1.1 es cuando se agota el número de solicitudes paralelas permitidas en el navegador y las solicitudes posteriores deben esperar a que se completen las anteriores. HTTP / 2 aborda este problema mediante la multiplexación de solicitudes, que elimina el bloqueo HOL en la capa de aplicación, pero HOL todavía existe en la capa de transporte (TCP). [7] [8]
Ver también
Referencias
- ^ M. Karo; M. Hluchyj; S. Morgan (diciembre de 1987). "Cola de entrada frente a salida en un conmutador de paquetes de división de espacio". Transacciones IEEE sobre comunicaciones . 35 (12): 1347-1356. doi : 10.1109 / TCOM.1987.1096719 .
- ^ Nick McKeown ; Adisak Mekkittikul ; Venkat Anantharam; Jean Walrand (agosto de 1999). "Lograr un rendimiento del 100% en un conmutador de entrada en cola" (PDF) . Transacciones IEEE sobre comunicaciones . 47 (8): 1260-1267. CiteSeerX 10.1.1.18.7529 . doi : 10.1109 / 26.780463 .
- ^ Jon CR Bennett; Craig Partridge; Nicholas Shectman (diciembre de 1999). "El reordenamiento de paquetes no es un comportamiento patológico de la red". Transacciones IEEE / ACM sobre redes . 7 (6): 789–798. CiteSeerX 10.1.1.461.7629 . doi : 10.1109 / 90.811445 .
- ^ Bennett, JCR; Partridge, C .; Shectman, N. (abril de 2000). Sarisky, Dan (ed.). "El reordenamiento de paquetes no es un comportamiento patológico de la red [diapositivas]" (PDF) . SC N Research . Archivado desde el original (PDF) el 20 de agosto de 2017 . Consultado el 19 de agosto de 2017 .
- ^ Defago, X .; Schiper; A., Urban, P. (2004). "Algoritmos de difusión y multidifusión de orden total: taxonomía y encuesta". Encuestas de computación ACM 36 (4) : 372-421. doi : 10.1145 / 1041680.1041682 .CS1 maint: varios nombres: lista de autores ( enlace )
- ^ Tyler McMullen. "Probablemente funcione" . acmqueue 2015.
- ^ Grigorik, Ilya (octubre de 2013). "Haciendo la Web más rápida con HTTP 2.0" . Cola de ACM . 11 (10): 40 . Consultado el 10 de junio de 2019 .
- ^ Javier Garza (octubre de 2017). "¿Cómo resuelve HTTP / 2 el problema de bloqueo de cabecera de línea (HOL)" .