REDES DE INTERCONEXIÓN

43
REDES DE INTERCONEXIÓN José M. Cámara ([email protected]) v. 2.0

Transcript of REDES DE INTERCONEXIÓN

Page 1: REDES DE INTERCONEXIÓN

REDES DE INTERCONEXIÓN

José M. Cámara ([email protected])

v. 2.0

Page 2: REDES DE INTERCONEXIÓN

Redes de interconexión

• Estáticas o directas: formadas por enlaces permanentes, punto a punto, entre los diferentes nodos de la red.

• Dinámicas o indirectas: formadas por enlaces no permanentes que se reconfiguran en función de la demanda.

Page 3: REDES DE INTERCONEXIÓN

Conceptos

• Número de nodos de la red • Grado: número de enlaces por nodo • Diámetro: máxima distancia mínima entre dos nodos • Ancho de bisección: número mínimo de enlaces rotos al

dividir la red en dos partes iguales • Coste: número de enlaces de la red

Page 4: REDES DE INTERCONEXIÓN

Coste del mensaje • Tiempo de procesamiento: en el nodo fuente y destino. Es el

tiempo que se tarda en procesar un mensaje de salida y en recoger un mensaje de entrada.

• Retardo de propagación: es el tiempo que tarda en desplazarse de un nodo a otro la cabecera del mensaje

• Tiempo de transmisión: determinado por el ancho de banda del canal.

• Tiempo de almacenamiento: en buffers intermedios (si no hay flits)

• Grado de solapamiento (si hay flits) • Tiempo de contención: por falta de disponibilidad de recursos • Latencia: tiempo que invierte un paquete (mensaje) en

trasladarse del nodo fuente al destino. • Throughput: capacidad del procesamiento del la red paquetes

(mensajes) por unidad de tiempo.

Page 5: REDES DE INTERCONEXIÓN

TOPOLOGÍAS ESTÁTICAS

Page 6: REDES DE INTERCONEXIÓN

Grado=2

Diámetro = N-1= Coste

Array lineal

1 2 N 1 2 N-1

Ancho de bisección=1

Page 7: REDES DE INTERCONEXIÓN

Anillo

Grado=2

Diámetro = int (N/2) Coste = N

B= 2

1 2

1

2 3 3 4 4

Page 8: REDES DE INTERCONEXIÓN

Anillo cordal de grado 4

Grado=4 Coste = 2N

Diámetro y bisección dependen del número de nodos y longitud de las cuerdas

Page 9: REDES DE INTERCONEXIÓN

Barrell Shifter Barrell shifter de 8 nodos nN 2=

( )12

−+= nNNC

2=D

22 NNB +−=

12 −= nG

Barrell shifter de 16 nodos

Page 10: REDES DE INTERCONEXIÓN

Árbol binario

12 −= nN3=G

1=B )1(2 −= nD

1−= NC

Page 11: REDES DE INTERCONEXIÓN

Árbol Grueso

12 −= nN12 −= nG

2GB = )1(2 −= nD

12)1( −⋅−= nnC

Page 12: REDES DE INTERCONEXIÓN

Malla ndN =

)1()1()1( 21 −+⋅⋅⋅⋅+−+−= ndddD

1−= ndB)1()1( −⋅= − ddnC n

nG 2=

En mallas rectangulares:

ndddN ∗⋅⋅⋅⋅∗∗= 21

)1( −= dnD

Page 13: REDES DE INTERCONEXIÓN

Toro ndN =

( )2int dnD ⋅=12 −= ndB

nndC =

nG 2=

En toros rectangulares:

ndddN ∗⋅⋅⋅⋅∗∗= 21

++

+

= 2int....2int2int 21 ndddD

Page 14: REDES DE INTERCONEXIÓN

Malla Illiac

≡ anillo cordal de grado 4

Page 15: REDES DE INTERCONEXIÓN

Hipercubo nN 2=

nD =nk =

12 −= nBw12 −⋅= nnC

4=n

5=n

Page 16: REDES DE INTERCONEXIÓN

Ciclos conectados en cubo nnN 2⋅=

nD 2=

3=G12 −= nB

123 −⋅= nnC

Page 17: REDES DE INTERCONEXIÓN

Topologías Dinámicas • Bloqueantes/No bloqueantes: una vez establecida una

determinada configuración, en las redes bloqueantes habrá ciertas posibilidades de conexión que queden bloqueadas.

• Monoetapa/Multietapa: en función del número de etapas de conmutación que se deban atravesar para llegar a destino.

Page 18: REDES DE INTERCONEXIÓN

Bus

Page 19: REDES DE INTERCONEXIÓN

Crossbar

Page 20: REDES DE INTERCONEXIÓN

Crosbar: Punto de conexión

Módulo de memoria compartida

Mux. de datos

Mux. de direcciones

Arbitraje Mux. de control

Pet. A

cep.

Pet. A

cep.

Pet. A

cep.

R/W

R/W

R/W

Sel.

R/W

Page 21: REDES DE INTERCONEXIÓN

Red Omega

Page 22: REDES DE INTERCONEXIÓN

Ejemplo de contacto binario

E1

E2

SEL

S1

S2

Page 23: REDES DE INTERCONEXIÓN

Ejemplo de contacto binario

E1

E2

0

S1

S2

Page 24: REDES DE INTERCONEXIÓN

Ejemplo de contacto binario

E1

E2

1

S1

S2

Page 25: REDES DE INTERCONEXIÓN

Red Omega: Rutado

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

Page 26: REDES DE INTERCONEXIÓN

Red Omega: Rutado

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

Page 27: REDES DE INTERCONEXIÓN

Red Omega: Rutado

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

100

Page 28: REDES DE INTERCONEXIÓN

Red Omega: Rutado

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

100

Page 29: REDES DE INTERCONEXIÓN

Red Omega: Rutado

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

100

000

001

010

011

100

101

110

111

000

001

010

011

100

101

110

111

Etapa 0 Etapa 1 Etapa 2

100

Page 30: REDES DE INTERCONEXIÓN

Mariposa

4x4

4x4

4x4

4x4

4x4

4x4

4x4

4x4

Page 31: REDES DE INTERCONEXIÓN

Mariposa: Rutado

4x4

4x4

4x4

4x4

4x4

4x4

4x4

4x4

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

Page 32: REDES DE INTERCONEXIÓN

Mariposa: Rutado

1001

4x4

4x4

4x4

4x4

4x4

4x4

4x4

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

Page 33: REDES DE INTERCONEXIÓN

Mariposa: Rutado

1001

4x4

4x4

4x4

4x4

4x4

4x4

4x4

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

0000 0001 0010 0011

0100 0101 0110 0111

1000 1001 1010 1011

1100 1101 1110 1111

Page 34: REDES DE INTERCONEXIÓN

Árbol grueso conmutado

Switches Nivel 2

Switches Nivel 1

Nodos

Page 35: REDES DE INTERCONEXIÓN

Hipercubo conmutado

Page 36: REDES DE INTERCONEXIÓN

Encaminadores modernos

• Disponen de 3 elementos principales: • Colas de almacenamiento:

• De inyección: permiten al nodo local colocar paquetes en la red. • De tránsito: almacenan paquetes que no tienen origen ni destino en

el nodo local. • De consumo: entregan paquetes al nodo local.

• Interconexión (crossbar limitado). • Árbitro: toma las sobre encaminamiento y resolución de

conflictos.

Page 37: REDES DE INTERCONEXIÓN

Encaminadores modernos - colas

Lógica de canal oeste

Lógica de canal sur

Lógica de canal norte

Lógica de canal este

Page 38: REDES DE INTERCONEXIÓN

Encaminadores modernos - colas Su espacio de almacenamiento se establece en función del mecanismo de control de flujo:

Store & forward: paquetes. Wormhole: flits. Virtual cut through: paquetes.

Se trata por defecto de colas FIFO -> problemas de bloqueo de cabeza de línea (HLB). Si la unidad de cabeza no puede ser atendida, las siguientes quedan bloqueadas aunque no entren en conflicto. Hay tantas colas de tránsito como canales virtuales.

HLB El coche rojo podría girar pero está bloqueado por el blanco.

El semáforo impide al blanco avanzar recto. Google Earth

Page 39: REDES DE INTERCONEXIÓN

Encaminadores modernos - arbitraje • Selección: criterio empleado por el árbitro para

seleccionar el puerto de salida de entre los que permitan avanzar a un paquete cumpliendo con su protocolo de encaminamiento. Si el encaminamiento es estático, no existe política de selección posible.

• Arbitraje: criterio empleado por el árbitro para asignar un determinado puerto de salida entre varias colas de entrada que compiten por él.

• Objetivo: combinar la eficiencia con la ausencia de problemas fatales; típicamente la inanición.

Page 40: REDES DE INTERCONEXIÓN

Encaminadores modernos – arbitraje

Page 41: REDES DE INTERCONEXIÓN

Encaminadores modernos – políticas de selección • Aleatoria: se asigna una salida al azar de entre las posibles.

• Cola más corta: se elige el puerto de salida con más espacio en la cola de entrada del nodo destino.

• Smart: se realizan sucesivos intentos. Tiene sentido si el encaminamiento es adaptativo. Primero se intenta continuar por el mismo canal de entrada; si no está disponible, se solicita cambiar de dirección.

Page 42: REDES DE INTERCONEXIÓN

Encaminadores modernos – políticas de arbitraje • Aleatoria: se da servicio a uno de los competidores

seleccionado al azar. • Roundrobin: se sigue una lista ordenada para dar servicio

a todos. • Más antiguo: se da servicio al que más tiempo lleve en

espera. • Cola más larga: se da servicio al canal que mantenga la

cola más larga.

Page 43: REDES DE INTERCONEXIÓN

Referencias • W. J. Dally & B. Towles. Principles and Practices of

Interconnection Networks. Morgan Kaufmann, 2004. • José Miguel Alonso. Redes de interconexión para

sistemas masivamente paralelos. Informe de investigación EHU-KAT-IK-05-04.