estrategias de conmutación conmutación de circuito w se establece un camino completo entre origen...

30
Estrategias de Conmutación Conmutación de Circuito ece un camino completo entre origen y destino, transfir nuación los datos (libre de conflicto y con baja latenci l camino finalmente. da cuando el tiempo de establecimiento del circuito es ue el tiempo de transmisión (mensajes largos) el camino origen-destino está reservado, el ancho de b fectado negativamente , pero la latencia se minimiza. Conmutación de Paquetes formación se agrupa en pequeños paquetes, que compiten mente por el acceso al camino entre origen y destino. odos/conmutadores deben incluir buffers para almacenar l es en tránsito. cho de banda es superior que en la conmutación de circui atencia se ve afectada negativamente.

Upload: carla-rojo-castillo

Post on 23-Jan-2016

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Estrategias de ConmutaciónConmutación de Circuito Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre de conflicto y con baja latencia), liberán- dose el camino finalmente.

Es adecuada cuando el tiempo de establecimiento del circuito es mucho menor que el tiempo de transmisión (mensajes largos)

Como todo el camino origen-destino está reservado, el ancho de banda se ve afectado negativamente , pero la latencia se minimiza.

Conmutación de Paquetes La información se agrupa en pequeños paquetes, que compiten indivi- dualmente por el acceso al camino entre origen y destino.

Los nodos/conmutadores deben incluir buffers para almacenar los pa- quetes en tránsito.

El ancho de banda es superior que en la conmutación de circuito, pero la latencia se ve afectada negativamente.

Page 2: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Conmutación de PaquetesStore-and-Forward Cada paquete (o mensaje completo) contiene información completa so- bre su ruta (cabecera) y es transferido/almacenado en cada nodo inter- medio de su camino origen-destino.

Se necesitan buffers en cada nodo para almacenar paquetes (mensajes) completos.

Utilizado en las primeras generaciones de multicomputadores.

Cut-Through Cada paquete (mensaje) es descompuesto en flits (flow-control digits), con información de ruta (cabecera) sólo en el primero de ellos.

El primer flit establece el camino transitado de nodo a nodo, mientras que el resto de los flits siguen la misma ruta y en el mismo orden (seg- mentación de la transmisión).

Si una conexión bloquea el primer flit, el resto siguen el camino preesta- blecido, almacenándose todos ellos en el nodo bloqueado.

Page 3: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Conmutación de Paquetes

Wormhole:

Variante del cut-through que minimiza el tamaño de los buffers en los nodos (sólo deben almacenar un único flit)

Cuando el flit de cabecera se bloquea, el resto de los flits perma- necen almacenados en los buffers de los nodos previos.

Este esquema puede dar lugar a interbloqueos (deadlock)

Page 4: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Comparación

N1

N2

N3

N4

Time

N1

N2

N3

N4

Time

TSFL/W

Data

header packet D

TWH

L/W

D

a) Store-and-forward routing b) Wormhole routing

Latencia:

• Store-and-Forward:tcomm = ts + (mtw + th) l ≈ ts + mtwl

• Wormhole:tcomm = ts + thl + mtw ≈ ts + mtw

m: tamaño del mensaje (palabras) l: longitud del caminots: tiempo de confección del mensaje (startup) th: tiempo de tránsito entre dos nodostw: tiempo de tránsito por palabra y conexión

vecinos

Page 5: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Interbloqueos (Deadlock)Interbloqueo circular

D D D D D

Packet Buffer

C C C C C

Packet Buffer

A A A A A

Packet Buffer

B B B B B

Packet Buffer

Node C

Node DNode A

Node B

(a) Buffer deadlock among four nodes with store-and-forward routing.

Node A Node D

Node B Node C

Router A

Message 4

Message 3

Router D

Message 2

Router CMessage 1Flit buffer

( b) Channel deadlock among four nodes with wormhole routing; shaded boxes are flit buffers.

m4

m3

m2

m1

Page 6: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Resolución:

Uso de canales virtuales (multiplexación en tiempo de las conexiones físicas, situando varios buffers en cada nodo)

Uso de técnicas adecuadas para establecer el encamina- miento de los mensajes (ej.: E-cube en hipercubos y enca- minamiento XY en mallas)

Interbloqueos (Deadlock)

Page 7: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas: Bloqueos

Diferenciación entre canales físicos y virtuales:

PhysicalChannel

Flit buffers in source node Flit buffers in destination node

Four virtual channels sharing a physical channel with time-multiplexing on a flit-by-flit basis

Pueden existir varios canales virtuales por cada canal físico, con multiple-xación en el tiempo flit a flit.

Page 8: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas: BloqueosLos canales virtuales permiten resolver situaciones de bloqueo.

A D

B C

A D

B C

(a) Channel deadlock (b) Channel-dependence graph containing a cycle

(c) Adding two virtual channels (V3, V4) (d) A modified channel-dependence graph using the virtual channels.

Deadlock avoidance using virtual channels to convert a cycle to a spiral on a channel-dependence graph

C4

C2

C3C1

C4

C2

C3C1

V3

V4

C2

C4

C3C1

C2

V3 C3C1

V4

C4

Page 9: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento de mensajes

Estrategias de control de flujo: Resolución de una colisiónentre paquetes

Están presentes tres elementos en el envío de un mensaje (wormhole):

1) El nodo emisor contiene el flit a emitir en un buffer

2) El canal de conexión se aloca

3) El nodo receptor cuenta con un buffer donde aceptar el flit

Page 10: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento de mensajesCuando dos paquetes llegan simultáneamente a un nodo hayque arbritar:

1) A qué paquete se le aloca el canal

2) Qué hacer con el paquete al que se le niega el acceso

X

Packet buffer

Packet 1

flit

buffer channel

Outgoing

Packet 2

(a) Buffering in virtual cut-through routing (b) Blocking flow control

GatePacket 2

Control Packet 1

Packet 2

Packet 1

(c) Discard and retransmission (d) Detour after being blocked

Packet 2

Detour channel Packet 1

Outgoing

channel

Flow control methods for resolving a collision between two packets requesting the same outgoing channel (packet 1 being allocated the channel and packet 2 being denied)

Page 11: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento de mensajes

Estrategias para la selección de las conexiones (caminos) para el Tránsito de los mensajes a través de la red.

Tipos:

• Encaminamiento Determinístico: El camino depende solo del nodo origen y destino, y no de las condiciones de tráfico de la red.

• Encaminamiento Adaptivo: El camino depende de los nodos origen y destino y de las condiciones de la red.

Page 12: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento Determinístico XY en una Malla 2D

3,7 4,7 5,7 6,7 7,7

0,6 1,6 2,6 3,6 4,6 5,6 6,6 7,6

0,5 1,5 2,5 3,5 4,5 5,5 6,5 7,5

0,4 1,4 2,4 3,4 4,4 5,4 6,4 7,4

0,3 1,3 2,3 3,3 4,3 5,3 6,3 7,3

0,2 1,2 2,2 3,2 4,2 5,2 6,2 7,2

0,1 1,1 2,1 3,1 4,1 5,1 6,1 7,1

0,0 1,0 2,0 3,0 4,0 5,0 6,0 7,0

• Encaminamiento dimensional libre de interbloqueos

Four (Source; destination) pairs: (2,1,7,6) (0,7; 4,2)(5,4; 2,0) (6,3; 1,5)

x

y

i,j

0,7 1,7 2,7

N

ES

W

Page 13: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Patrones de Comunicación

Son posibles cuatro patrones de comunicaciones:

1.- Unicast uno a uno: Patrón de comunicaciones en que un procesador manda un mensaje a otro.

2.- Multicast: Un procesador fuente manda un mismo mensaje a múltiple destinos.

3.- Broadcast: Un procesador fuente manda el mismo mensaje a TODOS los procesadores restantes.

4.- Conference: Comunicaciones de todos con todos.

Page 14: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento Adaptativo en mallas

Objetivo:Impedir interbloqueos, así como maximizar los recursos de forma global.En general suele implicar consideraciones tanto sobre el diseño de los bufferesde los routeres, como sobre la decisión a tomar frente a paquetes en espera, losmecanismos alternativos de encaminamiento, o, finalmente, el uso de canalesvirtuales.

02

01

00

12

11

10

22

21

20

02

01

00

12

11

10

22

21

20

(a) Original mesh without virtual channel (b) Two pair of virtual channels in Y-dimension

(c) For a westbound message (d) For an eastbound message

Adaptive X-Y routing using virtual channels to avoid deadlock; only westbound and eastbound Traffic are deadlock-free. (Courtesy of Lionel Ni, 1991)

02

01

00

12

11

10

22

21

20

02

01

00

12

11

10

22

21

20

Page 15: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento Uno-a-Muchos (Multicast) en Mallas

D3D2

D1 S

D3D2

D4

D1 S D5

D3D2

D4

D1 S D5

3 2 43

2 1 32

1 S 21

(a) Five unicast with traffic = 13 (b) A multicast pattern with traffic and distance = 4 = 7 and distance = 4

(c)Another multicast patter with (d) Broadcast to all nodes via a tree traffic = 6 and distance = 5 (numbers in nodes correspond to

levels of the tree)

D4

D5

Page 16: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

(a): Uno-a-muchos mediante transferencias punto-a-punto

(b): Uno-a-muchos mediante replicación de paquetes en nodos intermedios (adecuado para redes store-and-forward)

(c): Uno-a-muchos lineal (adecuado para redes wormhole

(d): Radiación en árbol.

Encaminamiento Uno-a-Muchos (Multicast) en Mallas

Page 17: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento Uno-a-Muchos (Multicast) en Hipercubos

0011

0001

0011

0001

0011

0001

1011

1001

01110110

0010

0100

0000

0101

1110 1111

11011100

1000

01110110

0010

0101

0000

0100

(a) Broadcast tree for a 4-cube rooted at node 0000

(b) A multicast tree from node 0101 to seven destination nodes 1100,0111,1010,1110,1011,1000 and 0010

Page 18: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

• (a): Radiación en árbol (orden decreciente de la dimensión)

• (b): Uno-a-muchos en árbol avaro (greedy) (se manda el paquete a lo largo de la dimensión que permita alcanzar el mayor número de destinos pendientes.

Encaminamiento Uno-a-Muchos (Multicast) en Hipercubos

Page 19: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Conmutación de Paquetes Store-and-Forward

• Cada paquete (o mensaje completo) contiene información completa sobre su ruta (cabecera) y es transferido/almacenado en cada nodo intermedio de su camino origen-destino.• Se necesitan buffers en cada nodo para almacenar paquetes (mensajes) completos• Utilizado en las primeras generaciones de multicomputadores

Cut-Through

• Cada paquete (mensaje) es descompuesto en flits (flow-control digits), con información de ruta (cabecera) sólo en el primero de ellos.• El primer flit establece el camino transitado de nodo a nodo, mientras que el resto de los flits siguen la misma ruta y en el mismo orden (segmentación de la transmisión)• Si una conexión bloquea el primer flit, el resto siguen el camino preestablecido almacenándose todos ellos en el nodo bloqueado.

Page 20: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Conmutación de Paquetes

Wormhole:

• Variante del cut-through que minimiza el tamaño de los buffers en los nodos (sólo deben almacenar un único flit)

• Cuando el flit de cabecera se bloquea, el resto de los flits perma- necen almacenados en los buffers de los nodos previos.

• Este esquema puede dar lugar a interbloqueos (deadlock)

Page 21: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Encaminamiento Determinístico en la Red Omega

Se define un “barajamiento perfecto” como la función que mapeaEnteros entre o y N-1 en sí mismos definida como (xd-1 xd-2 … x0) = xd-2 … x0 x d-1

donde xd-1 x d-2 ... x0 es la representación binaria de x

Definimos también un mapa de cambios como (xd-1 x d-2 … x0) = xd-1 x d-2 … x0

*

donde el asterisco denota complemento binario

Finalmente, definimos una red de cambios por barajamiento comoaquella que contiene N nodos xd-1 x d-2 … x0, donde el nodo x está conectado al nodo y si

y = (x), x = (y), o y = (x)

Page 22: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas

Bus Compartido

P2 Pn

C1 C2 Cn

M1 M2 Mm

I/OSubsystem

P1

Secondary Storage(Disks, Tape Units)

….

….

….

Proccesors

Caches

Bus

MainMemory

• Colección de cables para la transferencia de datos multiplexados en el tiempo (tiempo compartido)• Su coste es muy reducido pero su ancho de banda es bajo (escalabilidad limitada)• Ampliamente utilizado cuando el número de nodos es reducido

• Ejemplos: - VME, IEEE Multibus II, IEEE Futurebus+, Encore Ultramax (1987; bus jerárquico), Sequent Symmetry, SGI Challenge (1993)

Page 23: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas Barras Cruzadas (Crossbar)

PE222

PE221

PE220

PE219

PE001

CP002

CP001

CP001 CP001 CP001 CP001 CP001 CP001 CP001OnOff

... . .

.

. . .

Transmit

Receive

(b) The interprocessor crossbar network built in the Fujitsu VPP500 vector parallel processor (1992)

P1

P2

P16

M1 M2 M16. . .

. . .....

.

(a) Interprocessor-memory cross- bar network built in the C.mmp multiprocessor at Carnegie- Mellon University (1972)

Page 24: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

• Red con máximo ancho de banda y capacidad de interconexión, pero poco escalable y muy costosa.

• Puede considerarse como una red dinámica de una sola etapa, donde cada punto de cruce es un conmutador que puede estar abierto o cerrado.

• Ejemplos:- C.mmp (1972; barras cruzadas entre procesadores y memorias),

Fujitsu VPP500 (1992; barras cruzadas entre nodos procesador- memoria)

Page 25: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas Redes Dinámicas Multietapa

Page 26: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

• Varias etapas de conmutadores (proyecciones uno-a-uno y uno-a-muchos) y conexiones fijas.• Redes con características intermedias entre buses y barras cruzadas

Number of processors

Cos

t

BusMultistageCrossbar

Number of processors

Per

form

ance

Bus

Multistage

Crossbar

Page 27: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas

Red Omega

• Procesadores (izq.) Memorias (der.)• Conexiones inter-etapa: barajamiento perfecto• Ejemplos: - NYU Ultracomputer (1983), IBM RP3 (1985), Illinois Cedar (1987), IBM SP1/2 (1993/4)

(e) A 16 x 16 Omega network

Page 28: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas Red Benes

• Es una red no-bloqueante reorganizable, eliminando la posibilidad de interbloqueo entre caminos diferentes (permite varios caminos diferentes entre cada par entrada- salida)

• Se comporta como una red no-bloqueante pura (como las barras cruzadas) si se espe- cifican de antemano todos los caminos entrada-salida deseados (precomputación es- tática del encaminamiento)

• El inconveniente es mayor coste y latencia que su equivalente red Omega (es adecua- da, por tanto, la conmutación de circuito)

• Ejemplo: GF11 (576 nodos)

Page 29: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Redes de Conexión Dinámicas

Red Banyan

• Ejemplo de red con diferente número de entradas y salidas

• Esta red permite un único camino entre cada para entrada-salida, como la red Omega

• Ejemplo: TRAC

Page 30: Estrategias de Conmutación Conmutación de Circuito w Se establece un camino completo entre origen y destino, transfiriéndose a continuación los datos (libre

Características de las Redes de Conexión Dinámicas