Bridges transparentes
1
Bridges Transparentes‣ IEEE 802.1d
‣ “Todo bridge debe:
‣ Aprender direcciones de capa MAC
‣ Implementar STP (Spanning Tree Protocol)”
‣ Funcionamiento Básico:
‣ En modo “promiscuo”
2
Bridges Transparentes‣ Estrategia de funcionamiento
‣ Escucha en modo promiscuo cada paquete que se transmite.
‣ Por cada paquete recibido,
‣ almacena la dirección origen del paquete, junto con el puerto por donde fue recibido. (en caché o “tabla de direcciones”)
‣ mira su caché buscando la dirección destino del paquete.
‣ Si no lo encuentra, reenvía el paquete por todos sus puertos (excepto por dónde fue recibido)
‣ Si lo encuentra, reenvía el paquete sólo por la interfaz que indica su caché. Si es la misma interfaz, el bridge filtra dicho paquete y no lo reenvía.
3
Bridges Transparentes‣ ¿Cómo se va formando la tabla de direcciones del
bridge?
4
Bridges Transparentes‣ ¿Cómo se va formando la tabla de direcciones del
bridge?
5
Spanning Tree Protocol
6
Spanning Tree Protocol‣ Requerimientos:
‣ Total comunicación entre los bridges.
‣ Datos se transportan en frames multicast llamados BPDUs (Bridge Protocol Data Units)
‣ Cada bridge debe tener un Identificador
‣ Para poder determinar el Root Bridge
‣ Implementación del Identificador: MAC “+” Prioridad.
‣ Cada puerta del bridge debe tener un costo.
‣ Representa la eficiencia de cada enlace
‣ Mientras más alto el valor, menos eficiente.
7
Spanning Tree Protocol‣ Estado de los puertos
‣ Bloqueo: En este estado sólo se pueden recibir BPDU's. Las tramas de datos se descartan y no se actualizan las tablas MAC
‣ Listening: En este estado, los bridges determinan si existe alguna otra ruta hacia el Root Bridge. En el caso que la nueva ruta tenga un costo mayor, se vuelve al estado de Bloqueo. Las tramas de datos se descartan y no se actualizan las tablas MAC. Se procesan las BPDU.
‣ Learning: Las tramas de datos se descartan pero ya se actualizan las tablas MAC. Se procesan las BPDU.
‣ Forwarding: Las tramas de datos se envían y se actualizan las tablas MAC. Se procesan las BPDU.
‣ Disabled: A este estado se llega desde cualquier otro. Se produce cuando un administrador deshabilita el puerto o éste falla. No se procesan las BPDU.
8
Spanning Tree Protocol‣ STP debe permitir conocer:
‣ Identidad del Root Bridge: punto de referencia central.
‣ Root Path Cost de cada bridge
‣ costo acumulado de los enlaces desde cada bridge hacia el Root Bridge.
‣ Identidad del Designated Bridge de cada segmento LAN:
‣ Es el único que tiene el Root path cost más bajo de cada segmento
‣ Todo el tráfico que va hacia el Root Bridge pasa a través del Designated Bridge.
9
STP: Ejemplo‣ Cada bridge tiene una conexión con los otros bridges.
10
STP: Ejemplo‣ Al inicio, todos lo bridges creen que ellos son el
RootBridge
11
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
Avisa que Bridge C es el Root con RootID=32768.00-00-00-00-00-02.
Después del proceso de comparación, B cambiará su RootID y A no lo cambiará
12
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge A compara la información
13
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge A compara la información
14
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge A compara la información
‣ Decide que él es el RootBridge
15
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge B compara la información
16
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge B compara la información
17
STP: Ejemplo‣ Bridge C envía BPDU hacia A y B.
‣ Bridge B compara la información
‣ Decide que C es el RootBridge
18
STP: Ejemplo‣ Estado 1:
‣ B dice que C es el Root‣ A se considera el Root‣ C se considera el Root
19
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ Se anuncia como Root
‣ Después de la comparación, B y C cambian su RootID
20
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ B Compara la información
21
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ B Compara la información
22
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ B Compara la información: Decide que A es el RootBridge
23
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ C Compara la información
24
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ C Compara la información
25
STP: Ejemplo‣ Ahora el Bridge A envía un BDPU a B y C
‣ C Compara la información: decide que A es el RootBridge
‣ El sistema está en un estado 2.
26
STP: Ejemplo‣ Ahora, cada bridge que no es Root, debe seleccionar un RootPort
‣ Un Root Port es el puerto más cercano (con menor costo) al Root Bridge.
‣ Los Root Port se escogen en base a su Root Path Cost, que es el costo acumulado de todos los links hacia el Root Bridge.
Todos los enlaces entre los
Bridges tienen el mismo costo,
p.e. 19
27
STP: Ejemplo‣ Ahora, cada bridge que no es Root, debe seleccionar un RootPort
‣ Un Root Port es el puerto más cercano (con menor costo) al Root Bridge.
‣ Los Root Port se escogen en base a su Root Path Cost, que es el costo acumulado de todos los links hacia el Root Bridge.
Todos los enlaces entre los
Bridges tienen el mismo costo,
p.e. 19
28
STP: Ejemplo‣ Elección de los Designated Ports (DP)
‣ Los puertos que proveen la ruta menos costosa del segmento hacia el Root, son escogidos como DP.
‣ El Bridge que contiene al DP de un segmento dado, es referenciado como el Designated Bridge (DB) de dicho segmento.
‣ En el diagrama hay 3 segmentos
29
STP: Ejemplo‣ Elección de los Designated Ports (DP)
‣ Debido a que los puertos en A están directamente conectados al RootBridge
‣ Estos puertos son los DP para los Segmentos 1 y 2
30
STP: Ejemplo‣ Elección de los Designated Ports (DP)
‣ Segmento 3
‣ Path Cost hacia el RootBridge es el mismo desde B que desde C.
‣ Se escoge el menor bridgeID (C)
31
STP: Ejemplo‣ RootPorts y lo DP quedan en estado “Forwarding”
32
STP: Ejemplo‣ Los puertos NDP, quedan en estado “Blocking”
‣ El STP convergió.
33
STP: Ejemplo‣ Bridge C tiene un “mejor” BPDU que B.
‣ Bridge C continúa enviando BPDUs advirtiendo su superioridad sobre B.
‣ Mientras B reciba dicha información en su puerto 1/2 , éste permanecerá en estado “Blocking”
34
STP: Ejemplo‣ Si B no recibe estos BPDU por cierto período de tiempo, llevará
el puerto respectivo a estado Forwarding.
‣ Por lo tanto, STP falla y de nuevo hay ciclos en la red
35
STP: Ejemplo‣ Si B no recibe estos BPDU por cierto período de tiempo, llevará
el puerto respectivo a estado Forwarding.
‣ Por lo tanto, STP falla y de nuevo hay ciclos en la red
36
STP: Ejemplo
37