Conmutación vermiforme

Se propuso para mejorar el rendimiento en sistemas multicomputadores, segmentando el camino entre los nodos origen y destino de modo que cada paquete pudiera transferirse por varios componentes de la red al mismo tiempo.[1]​ En rigor, conmutación es un término más adecuado que encaminamiento.El encaminamiento o "enrutamiento" consiste en planear la ruta o itinerario a seguir por un paquete de datos para alcanzar el punto de destino.El primer flit, llamado "flit de cabecera", porta información relativa a la ruta del paquete (concretamente la dirección de destino) y configura el encaminamiento para los demás flits asociados al paquete.El flit de cabecera es seguido por los flits restantes, que son los que transportan el contenido del mensaje (ver vídeo).Una vez encaminado el flit de cabecera, los demás flits llegan en orden a cada conmutador, siguiendo la ruta del flit de cabecera.El camino a recorrer por los flits del paquete se segmenta en etapas.Si cada conmutador dispone de almacenamiento tanto en las entradas como en las salidas, en unas etapas del cauce se atraviesa el conmutador y en otras el enlace.) es siempre uniforme, la latencia de transporte en conmutación vermiforme viene dada por la siguiente expresión:[1]​ (1)Donde: En la expresión simplificada (2) vemos con mayor claridad que hay dos términos.La principal ventaja de esta técnica es que las distintas unidades en que se divide el mensaje pueden transferirse al mismo tiempo, siguiendo el mismo camino.Sin embargo, un posible contratiempo es que los paquetes de poca longitud pueden verse notablemente penalizados si se producen bloqueos causados por paquetes largos.Si en un momento dado un paquete no puede acceder a un recurso (i.e.Estos enlaces ocupados pueden a su vez provocar el bloqueo de otros paquetes y, en última instancia, causar un bloqueo en cadena y saturar la red.[2]​ Nótese que, con un almacenamiento en cada puerto de entrada mínimo (1 flit), un paquete puede ocupar tantos enlaces como flits tenga desde el punto de bloqueo hasta el nodo fuente.Los paquetes destinados a cada CPU incluyen el número correspondiente en su cabecera.Cuando un paquete en tránsito llega a un nodo intermedio, éste examina la cabecera del paquete, determina por qué canal debe reenviarlo hasta el siguiente nodo y luego se desentiende de él.Este esquema reduce sensiblemente la latencia (retardo) en la transmisión con respecto al enfoque de "almacenamiento y reenvío" («Store-and-forward»), que requiere esperar a obtener el paquete completo antes de poder retransmitirlo al siguiente nodo.Estos sistemas integran varios núcleos (cores) de procesamiento –o, a más bajo nivel, varias unidades funcionales– que pueden conectarse en red dentro de un mismo circuito integrado (IC).