Datalink lan equipment

75
Reti di Calcolatori Apparati data link layer per reti LAN

Transcript of Datalink lan equipment

Reti di Calcolatori Apparati data link layer per reti LAN

2

Repeater e Hub

•  Per costruire reti più ampie diversi cavi possono essere connessi con ripetitori

•  Un ripetitore opera al livello fisico amplificando e ritrasmettendo il segnale in modo bidirezionale

•  2 transceiver non possono essere distanti più di 2.5 Km •  Non ci possono essere più di 4 ripetitori fra 2 transceiver (delay)

A B C D

ripetitore

3

A B C D

Livello Fisico

•  Tutti I dispositivi nello stesso dominio di collisione •  Tutti I dispositivi nello stesso dominio di broadcast •  Tutti I dispositivi condivisono la banda

Repeaters e Hub operano a livello Fisico

4

•  Man mano che aumentano le stazioni aumntano le collisiioni

•  Uso di CSMA/CD

•  Limita le dimensioni della rete

Hubs: unico dominio di collisione

5

Bridge e Switch

•  Permettono di connettere più LAN mantenendo la suddivisione a livello data link

•  Si possono collegare LAN operanti con protocolli diversi •  Si creano domini di collisione separati diminuendo il carico di ciascuna

sottorete (il traffico locale rimane confinato nella sottorete) •  Si può aumentare la dimensione della LAN (es. lunghezza delle linee)

frazionando la rete in segmenti •  Si confinano i malfunzionamenti dovuti a stazioni difettose •  Aumentano la sicurezza dei dati - uso “malizioso” del modo promiscuo

(il traffico interno ad una sottorete non è visibile dalle altre collegate con bridge/switch)

6

Esempio di Bridging

•  Separazione di più laboratori con traffico interno intenso •  Rende possibile più trasmissioni contemporanee che non interessano gli stessi

segmenti

B B B

File server

workstation

Dorsale LAN

Traffico locale

filtro

Traffico sulla dorsale

7

Bridging di Rete a 2 segmenti

8

Bridging di Rete ad albero

9

Transparent Bridging •  Inserimento “plug-and-play” (nessuna configurazione) •  Modalità disponibile sia su bridges che switches Il bridge osserva in modo promiscuo il traffico delle LAN a cui è connesso Osservando il traffico costruisce una tabella hash interna (MAC addresstable) che associa ogni indirizzo MAC alla porta corrispondente del bridge (backward learning) Con la tabella il bridge decide se scartare il frame (la destinazione è la stessa porta di arrivo) o ritrasmetterlo su un altra linea

10

•  Ha la stessa modalità di funzionamento del bridge •  Ha un numero di porte superiore a 2 (es. 8,12,24) •  Ogni porta può essere collegata a un segmento della rete o a una stazione singola •  Uno switch è funzionalmente equivalente a un bridge multi-porta

switch

hub

Switches

11

•  Ogni segmento indivudua un dominio di collisione •  Tutti I segmenti sono sullo stesso dominio di broadcast

Data Link

OR 1 2 3 1 2 4

Bridges e Switches operano a livello di Link

12

•  Domini di collisione per segmento

•  I Broadcasts sono commutati su tutti I segmenti

Memory

Switch

Switches

13

Il backward learning

•  Al boot le tabelle sono vuote •  Se un pacchetto ha una destinazione sconosciuta viene emesso su tutte le

porte eccetto quella di provenienza •  In ogni caso viene usato l’indirizzo di provenienza per definire la posizione

del mittente nella tabella •  Per gestire topologie dinamiche viene memorizzato anche il momento di

arrivo dell’ultimo frame da un dato indirizzo. Periodicamente vengono eliminate le linee più vecchie

•  Dopo pochi messaggi le tabelle sono a regime e la struttura raggiunge la piena efficienza

14

Il backward learning

•  Inizialmente la MAC address table è vuota

MAC address table

0260.8c01.1111

0260.8c01.2222

0260.8c01.3333

0260.8c01.4444

E0 E1

E2 E3

A B

C D

15

Il backward learning

•  La Stazione A invia una trama alla Stazione C •  Lo Switch memorizza l’associazione fra il MAC address della stazione A e la

porta E0 osservando l’indirizzo sorgente delle trame •  La trama dalla szazione A alla stazione C è inviata su tutte le porte trasnne la

porta E0 (flooding verso gli indirizzi unicast non noti)

MAC address table

0260.8c01.1111

0260.8c01.2222

0260.8c01.3333

0260.8c01.4444

E0: 0260.8c01.1111

E0 E1

E2 E3 D C

BA

16

Il backward learning

•  La stazione D invia una trama alla stazione C •  Lo Switch memorizza l’associazione fra il MAC address della stazione D e la porta E3

osservando l’indirizzo sorgente delle trame •  La trama dalla szazione D alla stazione C è inviata su tutte le porte trasnne la porta E3

(flooding verso gli indirizzi unicast non noti)

MAC address table

0260.8c01.1111

0260.8c01.2222

0260.8c01.3333

0260.8c01.4444

E0: 0260.8c01.1111 E3: 0260.8c01.4444

E0 E1

E2 E3 D C

A B

17

Invio selettivo delle trame

•  La stazione D invia una trama alla stazione C •  La destinazione è nota, la trama non viene inviata a tutti (no

flooding)

E0: 0260.8c01.1111 E2: 0260.8c01.2222 E1: 0260.8c01.3333 E3: 0260.8c01.4444

0260.8c01.1111

0260.8c01.2222

0260.8c01.3333

0260.8c01.4444

E0 E1

E2 E3

X X D C

A B

MAC address table

18

•  La stazione D invia una trama broadcast o multicast •  Le trame broadcast e multicast frames sono inviate a tutte le

porte eccetto quella di origine

0260.8c01.1111

0260.8c01.2222

0260.8c01.3333

0260.8c01.4444

E0 E1

E2 E3 D C

A B E0: 0260.8c01.1111 E2: 0260.8c01.2222 E1: 0260.8c01.3333 E3: 0260.8c01.4444

MAC address table

Gestione trame broadcast e multicast

19

•  Essenzialmente software-based •  Una istanza di spanning-tree per bridge •  Tipicamente fino a 16 porte per bridge

Bridging

•  Hardware based (ASIC) •  Multiple istanze di spanning-tree per bridge •  Un numero elevato di porte (dipende dalla fabric)

LAN Switching

Bridging e Switching

20

Tipi di switch

Cut-through switching Il frame è subito reindirizzato sulla porta corretta Store-and-forward Il frame è letto completamente dallo switch Viene controllato il CRC prima di inviarlo In caso di errore il frame è scartato Permette di filtrare il traffico Port-based switching Ad ogni porta corrisponde un solo indirizzo Ethernet Segment-based switching Ad ogni porta corrispondono più indirizzi (ad esempio è collegata ad un hub)

Frame

Frame

Frame

Frame

21

Tecnologia degli Switch

Shared Memory

Switching Matrix o Fabric

Bus-Architecture

Memorizza i pacchetti in una memoria comune a tutte le porte Invia in pacchetti in memoria alla porta destinazione

Utilizza una matrice di commutazione In base all’indirizzo e al contenuto della tabella viene attivata la connessione necessaria

Ha un BUS interno condiviso ad alta velocità La comunicazione interna usa TDMA

1

2

3

4

crossbar

1

2

3

4

High speed TDMA BUS

22

•  Terminologia: n x m switch ha n inputs and m outputs

•  Obiettivi –  Massimo throughput –  Scalabilità (rispetto a n)

•  Porte e Fabrics –  Porte

•  Contengono le componenti elettriche o ottiche (circuiteria di controllo, hardware di interfaccia etc.) di trasmissione e ricezione,

•  Prevedono meccanismi di bufferizzazione (cells) per le trame in attesa di trasmissione o ricezione

–  Fabric •  Recapita le trame in input su una porta verso una porta di output. (più efficientemente

possibile) •  Può effettuare bufferizzazione delle trame (internal buffering fabric).

Input port

Input port

Input port

Input port

Output port

Output port

Output port

Output port

Fabric

Tecnologia degli Switch

23

•  Limitata scalabilità (le risorse condivise si saturano col carico) •  Grande disponibilità di spazio di bufferizzazione •  Realizzati tramite componenti COTS (es. PC) •  In grado di scrivere una trama alla volta in memoria o sul bus condiviso •  In presenza di n porte il trasferimento Mux-memoria deve essere n volte

più veloce della capacità del link

Inputs

Mux demux

Outputs

Write control

Read control

Buffer memory

Shared Memory/Bus Switch

Input Ports

Output Ports

Shared bus

1 2

N 1

2 M

24

Crossbar Switch 4X4 crossbar:

•  Concettualmente semplice (ogni input connesso a ogni possibile output)

•  Possibili problemi di contesa

•  La complessità delle porte di uscita

aumenta più velocemente di quella delle porte in ingresso

•  Un crossbar switch “perfetto” può teoricamente commutare trame concorrentemente da tutte le n porte di input a tutte le m porte di output

25

Full Fabric vs. Crossbar Switch

26

Bufferizzazione

–  Può ridurre il throughput (fino al 59% quando gli arrivi sono uniformemente distribuiti).

–  E’ fondamentale per gestire la QoS (non si può sempre usare FIFO o RR) –  E’ indispensabile in presenza di possibili contese

•  Porte di input (contesa sulla fabric) •  fabric buffers interni (contesa sulle output ports) •  Porte di output (contesa sui links)

Switch

2

21

Port 1

Port 2

27

•  Ogni porta di output ha un buffer dedicato

•  I Buffers avengono riempiti in logica round-robin (da uno shifter)

•  L’ordine di arrivo è preservato

•  A) 3 packets arrive •  B) 3 packets arrive, 1 leaves •  C) 1 packet arrives, 1 leaves.

(c)

Shifter

Buffers

(b)

Shifter

Buffers

(a)

Shifter

Buffers

Output Port Buffer per Uno switch N-x-4

Bufferizzazione

28

Crossbar Switch (KnockOut)

Filter

Broadcast Bus Input lines

Concentrator Shifter Output Queues Output line 0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

29

The route two cells take through the switch.

6 = 110 (down, down, up) 1 = 001 (up, up, down)

6=110

1=001

110

001

110

001

110

001

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

Banyan Switches

30

Cell collisions, e.g., 5&7; (also 0&3; 6&4; 2&1).

101

111

000

001

010

011

100

101

110

111 111

101

Same inputs, sorted, no collisions

Banyan Switches

31

switching element that sorts inputs (1 path from each In to each Out) •  some elements send larger number to the top element ( ) •  some elements send larger number to the bottom element ( ) •  (if only 1 number, take the output opposite arrow head)

0 5 6 2 7 3 1 4

0 6 5 2 7 1 3 4

0 2 6 5 7 4 1 3

0 7 2 4 5 3 6 1

0 3 7 5 2 1 4 6

0 1 3 2 5 4 7 6

0 6 2 5 7 1 4 3

0 2 5 6 7 4 3 1

0 7 2 4 3 5 1 6

0 3 5 7 1 2 4 6

0 1 2 3 4 5 6 7

Batcher Networks

32

Ottenuti come variazioni di multipli banyans che accettano fino a l pecchetti destinati a 1

porta per volta. A selector sends any extras to Delay for recycling). The Trap identifies the extras for Selector to be recycled.

n n+k n+k

n

n

n

n

n

n

k k

Banyans Outputs Selector

TRAP Batcher

Inputs

Delay

Batcher-Banyan Switch

33

Batcher-Banyan Switch (esempio con 4 celle)

101

34

Topologie con ridondanza

–  Topologie Ridondanti eliminano i single points of failure –  In compenso possone essere causa di broadcast storms, trame ripetute e

instabilità del MAC address database

Segmento 1

Segmento 2

Server/host X Router Y

35

Segmento 1

Segmento 2

Server/host X Router Y

Broadcast

Switch A Switch B

•  L’Host X invia un Broadcast

Il problema dei broadcast storm

36

Segmento 1

Segmento 2

Server/host X Router Y

Broadcast

Switch A Switch B

•  Lo switch A replica il Broadcast su tutte le sue porte (anche quella verso lo switch B) •  Lo switch B replica il Broadcast su tutte le sue porte (anche quella verso lo switch A) •  Il Broadcast ritorna ad A

Il problema dei broadcast storm

37

Segmento 1

Segmento 2

Server/host X Router Y

Broadcast

•  Gli switches continuano a rigenerare e propagare I broadcast all’infinito (Broadcast Storm)

Switch A Switch B

Il problema dei broadcast storm

38

Replicazione di trama

Segmento 1

Segmento 2

Server/host X Router Y Unicast

Switch A Switch B

•  L’host X invia una trama unicast al router Y •  L’indirizzo MAC del Router Y non è stato “imparato” da nessuno dei 2

switches

39

Segment 1

Segment 2

Server/host X Router Y

Unicast

Switch A Switch B

•  Entrambi gli switch inviano il messaggio su tutte le porte •  Il Router Y riceve 2 copie della medesima trama

Unicast

Unicast

Replicazione di trama

40

Segment 1

Segment 2

Server/host X Router Y

Unicast Unicast

Switch A Switch B

•  L’host X invia una trama unicast al router Y •  L’indirizzo MAC del Router Y non è stato “imparato” da nessuno dei 2 switches •  Gli Switch A and B vedono il MAC address di X sulla porta 0

Port 0

Port 1

Port 0

Port 1

Instabilità del MAC address database

41

Segmento 1

Segmento 2

Server/host X Router Y

Unicast Unicast

Switch A Switch B

•  La trama diretta al router Y è inviata a tutte le porte •  Gli switch A and B vedono in maniera non corretta il MAC address di X sulla porta 1

Port 0

Port 1

Port 0

Port 1

Instabilità del MAC database

42

–  Topologie più complesse possono causare loop multipli –  Il Layer 2 non dispone di meccanismi per bloccare i loop

Server/host

Workstations

Loop

Loop

Loop

Problema di loops multipli

Broadcast

43

Soluzione: Spanning-Tree Protocol

Rende una topologia ridondante “loop free” mettendo in stato di blocco alcune porte

Block x

p158

44

•  Un root bridge per network (radice dellʼalbero) •  Una root port per non-root bridge (uplink verso radice) •  Una designated port per segmento

x

Designated port (F) Root port (F)

Designated port (F) Nondesignated port (B)

Root bridge Non-root bridge SW X SW Y

100baseT

10baseT

Spanning Tree: funzionamento

45

Switch Y Default priority 32768 (8000 hex) MAC 0c0022222222

Switch X Default priority 32768 (8000 hex) MAC 0c0011111111

BPDU

BPDU = Bridge protocol data unit (default = inviata ogni 2 seconds)

Root bridge = Bridge col più basso bridge ID Bridge ID = Bridge priority + bridge MAC address

Spanning Tree: selezione root bridge

46

Switch Y Default priority 32768 MAC 0c0022222222

Switch X Default priority 32768 MAC 0c0011111111

Root bridge

x

Port 0

Port 1

Port 0

Port 1

100baseT

10baseT

Designated port (F) Root port (F)

Nondesignated port (B) Designated port (F)

Spanning Tree: Port

47

Link Speed Cost (reratify IEEE spec) Cost (previous IEEE spec) ---------------------------------------------------------------------------------------------------- 10 Gbps 2 1 1 Gbps 4 1 100 Mbps 19 10 10 Mbps 100 100

Spanning Tree: costo path

48

Switch Y MAC 0c0022222222 Default priority 32768

Switch X MAC 0c0011111111 Default priority 32768

Port 0

Port 1

Port 0

Port 1

Switch Z Mac 0c0011110000 Default priority 32768

Port 0

Esercizio: •  Qualʼè il root bridge? •  Quali sono le designated, nondesignated, e root parts? •  Quali sono le porte che vanno in forwarding o in blocking?

100baseT

100baseT

Spanning Tree: funzionamento

49

Switch Y MAC 0c0022222222 Default priority 32768

Switch X MAC 0c0011111111 Default priority 32768

Port 0

Port 1

Port 0

Port 1

Switch Z Mac 0c0011110000 Default priority 32768

Port 0

100baseT

100baseT

Designated port (F)

Root port (F)

Nondesignated port (BLK) Designated port (F)

Root port (F)

Spanning Tree: funzionamento

Esercizio: • Qualʼè il root bridge? • Quali sono le designated, nondesignated, e root parts? • Quali sono le porte che vanno in forwarding o in blocking?

50

Blocking Listening Learning Forwarding

Nello Spanning-tree ogni porta transita attraverso 4 differenti stati:

Spanning Tree: stati per Port

51

Switch Y MAC 0c0022222222 Default priority 32768

Switch X MAC 0c0011111111 Default priority 32768

Port 0

Port 1

Port 0

Port 1

10baseT

x

100baseT

Root Bridge

Designated port Root port (F)

Nondesignated port (BLK) Designated port

Spanning Tree: ricalcolo

Da questa situazione di partenza …

52

Switch Y MAC 0c0022222222 Default priority 32768

Switch X MAC 0c0011111111 Default priority 32768

Port 0

Port 1

Port 0

Port 1

10baseT

x

100baseT

Root Bridge

Designated port Root port (F)

Nondesignated port (BLK) Designated port BPDU x MAXAGE x

Spanning Tree: ricalcolo

•  Il root bridge va fuori servizio •  Il non-root bridge non riceve BPDU per più di MAXAGE secondi

53

Switch Y MAC 0c0022222222 Default priority 32768

Switch X MAC 0c0011111111 Default priority 32768

Port 0

Port 1

Port 0

Port 1

10baseT

100baseT

Root Bridge

? Designated port

Designated port ?

x

Spanning Tree: ricalcolo

•  B diventa root bridge •  La port 1 va in forwarding (si sblocca) e diventa designated port

54

• Segmentazione

• Flessibilità

• Sicurezza

3rd floor

2nd floor

1st floor SALES HR ENG

VLAN = broadcast domain = Logical network (subnet)

VLAN

55

Broadcast Domain

•  In una rete flat ogni dispositivo vede ogni pacchetto trasmesso

56

VLANs

•  Una VLAN individua un a broadcast domain

57

VLANs e Broadcast Domains

–  VLANs e routers confinano i broadcasts nel dominio di origine

Broadcast Domain 1

Broadcast Domain 2

58

Switch A

Green VLAN

Black VLAN

Red VLAN

Switch B

Green VLAN

Black VLAN

Red VLAN

•  Ogni VLAN logica è equivalente a un bridge fisico •  Le VLANs possono attraversare multipli switches

Funzionalità VLAN

59

Switch A

Green VLAN

Black VLAN

Red VLAN

Switch B

Green VLAN

Black VLAN

Red VLAN

Trunk

•  Ogni VLAN logica è equivalente a un bridge fisico •  Le VLANs possono attraversare multipli switches •  I trunks trasportano il traffico fra multiple VLANs

Fast Ethernet

Funzionalità VLAN

60

Modalità di Associazione

VLAN5

VLAN Statiche VLAN Dinamiche

MAC = 1111.1111.1111

Trunk

VMPS 1111.1111.1111 = vlan 10

VLAN10 Port e0/9 Port e0/4

61

Associazione Porte a VLAN

La modalità condiziona le prestazioni

Port-Based

VLAN1

VLAN2 VLAN3

MACAddresses

MACAddresses

VLAN2

MAC-Based

VLAN1

MAC Address Driven (Layer 2)

Port-Driven

•  Lʼassociazione delle porte può essere statica o dinamica

62

Associazione VLAN per Porta

Massimizza le prestazioni

VLAN 2 VLAN 1

VLAN 3

63

Configurazione Statica VLAN

Engineering VLAN

Marketing VLAN

Sales VLAN

Floor #1 Floor #2 Floor #3

Physical Layer Human Layer

Network Layer 192.20.24.0

Routing Function Interconnects VLANs

192.20.21.0 192.30.20.0

Data Link Layer Broadcast Domains

•  All users attached to same switch port must be in the same VLAN

x

64

Tipi di Collegamenti

Collegamenti di accesso

•  Ogni collegamento è associato a una sola VLAN

65

Tipi di Collegamenti

Trunks

•  Un trunk o tagged port è un collegamento in grado di trasportare VLAN multiple

66

Associazione di trame a VLAN

–  Logica sviluppata per la comunicazione inter-switch in ambienti multi-VLAN

–  Nell’header di ciascuna trama è trasportato un VLAN ID –  Opera al Layer 2

VLAN1

VLAN1

VLAN2 VLAN2

VLAN3

VLAN3

Backbone

VLAN1 VLAN2 VLAN3

67

Red Red

RED VLAN

Blue

Green

Blue

Green

Green Blue Red

VLAN Tagging

•  ISL (Proprietario) •  IEEE 802.1Q

Fast Ethernet

•  Opzioni possibili per l’interscambio di VLAN ID

RED VLAN

68

Tagging di trame: I trunks

–  Gestito in ASIC –  Non intrusivo per Ie stazioni client –  Implementabile fra switches,

routers e switches, switches e server con interfacce in grado di supportare il tagging

I trunks trasportano le VLANs sul backbone

VLAN Tag settato dalla

porta entrante

VLAN Tag eliminato al

forwording sulla porta uscente

Inter-Switch Link trasporta i

VLAN Tag

69

Trasporto dei Tag

Trunk Link

VLAN100 VLAN200 (Port C)

VLAN200 (Port A)

Legend: Trunk Links

VLAN200 (Access Link)

X

Z

Y

W

Trunk Link

Trunk Link

Frame 1

Tag Frame 2

Frame 3

VLAN200 (Port B)

•  Le informazioni dei Tag viaggiano solo su collegamenti Trunk

Y

70

ISL

ISL Header 26 bytes Encapsulated Ethernet frame CRC

4 bytes

–  Incapsulamernto con ISL header e CRC dedicato –  Supporto per molte VLANs (1024) –  Campo VLAN ID specifico –  BPDU bit

DA Type User SA LEN

VLAN

AAAA03

BPDU

HSA VLAN BPDU BPDU INDEX RES

71

IEEE 802.1Q

–  Usa la trama 802.3 –  2-byte tag protocol identifier (TPID)

•  Fissato a 0x8100. Questo valore indica che la trama trasporta informazioni _(tag) 802.1Q/802.1p.

–  2-byte tag control information (TCI)

Initial MAC Address

Initial Type/Data New CRC 2-Byte TPID2-Byte TCI

72

Domain

3/1 3/2

1/1 2/2

1/2 2/1

1/1

Trunk Negotiation

•  Il protocollo DTP (Dynamic Trunk Protocol) gestisce la negoziazione dinamica del trunking sui link

C5000-1

C5000-1

C5000-1

73

VLAN Trunking Protocol (VTP) –  Un sistema di messaggistica che consente fra switches lo scombio di

informazioni relative alle VLAN –  Garantisce la consistenza delle VLAN all’interno di un domunio

amministrativo unico –  VTP invia I messaggi/annunci solo sulle porte trunk

1.“nuova vlan”

3.Sincronizza e aggiorna lo stato VLAN

2

VTP Domain “X”

74

XXXXXDomain

YY_ domain

3/1 3/2

1/1 2/2

1/2 2/1

4/1 4/2

5/1 1/1

• Gli annunci VTP non si propagano fra domini differenti

N N

N

ADMIN1

CONFIG-REV# N

1 default 1002 fddi-default 1003 token-ring-default 1004 fddinet-default 1003 trnet-default

C5000-1 C5000-2

C5000-3

C5000-4

C5000-6

Propagazione VTP

C5000-5

75

VTP Pruning

•  Il VTP pruning limita il traffico reletivo a VLAN ai soli links che supportano le VLAN

Port 2

Port 1

Port 5

C5000-6 C5000-3 C5000-1

C5000-5 C5000-2

C5000-4

Host A

Host B Green VLAN Broadcast Traffic Pruned Here

Port 4