Sie sind auf Seite 1von 32

Switch-Architekturen

Prof. Dr. W. Riggert


mit berarbeiteten Abbildungen von
Cisco Systems
Inhalt
Das Tutorial ist in vier Abschnitte
gegliedert.
Abschnitt 1 definiert grundlegende
Begriffe, Abschnitt 2 behandelt
Begriffe
das Scheduling, Abschnitt 3 stellt
Scheduling
Switch-Implementationen vor und
der letzte Abschnitte geht auf die Switch-Implementationen
Realisierung von Switching-Fabrics Switching-Fabrics
ein.
Das Ziel besteht darin, Switching-
Methoden, Puffermechanismen und
den Aufbau von Switches zu
verstehen.

Prof. Dr. W. Riggert 2


Begriffe 1

Switching fabric - verweist auf den Aufbau eines Switches, dessen


interne Mechanismen und Verfahren die Daten vom Eingangs- zum
Ausgangsport leiten.
Queuing - bezeichnet alle Puffermechanismen, die zur Kontrolle von
berlastsituationen eingesetzt werden.
Distributed switching - Implementationen, bei denen Switching-
Entscheidungen an einem lokalen Port getroffen werden.

Prof. Dr. W. Riggert 3


Begriffe 2
Oversubscription - Zustand, in dem die Summe der Bandbreite
aller Ports die interne Weiterleitkapazitt des Switches
bersteigt. Diese potentielle Problemlage wird als Blocking
bezeichnet
Non-blocking - Zustand, in dem die Bandbreite des Switches
ausreicht, die Summe aller bertragungen der einzelnen Ports
abzudecken.
Head-of-line blocking - bezieht sich auf ein subtiles Problem. Es
spiegelt die berlastsituation an einem Outputport wider, der
keine weiteren Zellen mehr entgegennehmen kann. Befinden sich in
diesem Datenstrom hinter dieser an den berlasteten Port
gerichteten Zelle weitere Zellen an andere Outputports, knnen
diese nicht zugestellt werden. Die nichtzustellbare Zelle eines
berlasteten Outputports verstopft damit den gesamten
Datenfluss.

Prof. Dr. W. Riggert 4


Definition : Switching
Switches transferieren
Daten von einem Input- zu
einem Outputport. Data
Data Data
Data
Input Output
Ein Switch ermglicht den In
In Out
Out
Aufbau mehrerer
simultaner und unab-
hngiger Verbindungen
zwischen einzelnen Switch- Switch
Ports.
Switches arbeiten auf der
zweiten oder einer hheren
Schicht des OSI-
Referenzmodells

Prof. Dr. W. Riggert 5


Layer 2 vs. Layer 3
Switching
Routing
Paket Paket Tabelle Paket Paket

Layer 3 Switching : Die zugrundeliegende Idee besteht


darin, dass ein Datenfluss zwischen Endsystemen
unterschiedlicher Subnetze nach anfnglichem
konventionellen Routing auf ein Switching umgestellt werden
kann
Layer 2 Switching : Fr diese Art der Paketweiterleitung
spielt lediglich die MAC-Adresse der Schicht 2 eine Rolle.

Prof. Dr. W. Riggert 6


berlast-Management
berlastsituationen
entstehen, wenn mehrere
Inputports um einen
gemeinsamen Outputport
konkurrieren.
Diese Situation tritt ein, Switching Fabric
wenn mehrere Benutzer auf
einen Server zugreifen
wollen und in einem Server
geswitchten Netz alle
Stationen ber einer Unabhngige
gesonderten Portanschlu Nutzer
verfgen.

Prof. Dr. W. Riggert 7


Dynamischer Pufferaufbau
Zur Realisierung der
Zwischenspeicherung von 3*64-Byte
Datenpaketen kann der Puffer Unbenutzter
Pakete nutzen Speicher
aus dynamischen oder 192 Bytes des
statischen Einheiten aufgebaut Speichers
sein.
Der dynamische Puffer ist in
kleine Allokationseinheiten (hier
64 Bytes) eingeteilt.
In Abhngigkeit von der Gre Ein 256-
der Allokationseinheit kann es Byte Paket
nutzt 256
zu Speicherverschwendung
Bytes des
kommen; eine zu kleine Wahl
Speichers
hingegen fhrt zu einer
bermigen Fragmentierung
der Pakete.

Prof. Dr. W. Riggert 8


Statischer Puffer
Zur optimalen Anpassung an Ein 64-Byte
die Paketgre knnen feste Paket Verschwendeter
Speicherblcke in Einheiten belegt einen Speicherplatz
der maximalen Paketgre 2000-Byte
als Allokationseinheit Block
gewhlt werden.
Werden allerdings eine
Vielzahl von Paketen
Ein 256-
geringerer Gre bertragen, Byte Paket
kommt es zu belegt 2000 Byte Block
Speicherverschwendung ebenfalls
einen
2000-Byte
Block

Prof. Dr. W. Riggert 9


Inputport-Pufferung
Die Plazierung der Puffer eines
Switches lsst drei Mglichkeiten
zu :
Inputport
Outputport
Memory-Pool innerhalb des Output
Switches Port
Bei der Inputport-Technik werden Data
Data
Pakete auf der Inputseite In
Out
zwischen- gespeichert und fr den
Output in Abhngigkeit vom
Zustand des Inputports Input Port
freigegeben. Die Wahl ist
naheliegend, weil jeder Port nur die
Pufferkapazitt bentigt, die die
bei ihm ankommenden Zellen
verlangen.

Prof. Dr. W. Riggert 10


Outputport-Pufferung
Der Zelltransfer durch den
Switch verlangt auf der
Ausgabeseite groe Puffer. Da
der Verkehrsstrom innerhalb
eines Switches theoretisch von
jedem Inputport zu einem
einzigen Outputport verlaufen Input
kann, muss die Pufferkapazitt Port
jedes Ports die gesamte
ankommende Zelllast aufnehmen Data Data
knnen. In Out
In Zeiten von berlast kann ein
Outputport zudem Zellen ver-
werfen. Da diese Zellen aber Output
zuvor im Switch transportiert Port
wurden, verschwenden sie
wertvolle Ressourcen.

Prof. Dr. W. Riggert 11


Pufferung mit geteilten
Outputschlangen
Data Out to
Der gesamte Pufferplatz Port 1
wird innerhalb des Switches
zwischen allen Ports geteilt. Data Out to
Alle Pakete eines Puffers Port 3
besitzen das gleiche Ziel. Data Out to
Diese Konzeption umgeht Data Port 9
das HOL-Blocking In
Data Out to
Port 2

Prof. Dr. W. Riggert 12


HOL-Blocking Beispiel

Server A berlastete
Datentransfer Verbindung
an Server B
Switching Fabric

Datentransfer
an Server A

Nutzer A und B sind an den Server B


gleichen Switchport angeschlossen

Da Server A berlastet ist und keine Pakete mehr entgegennimmt, die


Daten an Server B in der Reihenfolge aber nach denen an Server A
kommen und nur ein Bus im Switch zur Verfgung steht, kommt es auch
zu keiner Paketzustellung an Server B. Da beide Nutzer an den gleichen
Port angeschlossen sind, fllt sich der Inputport-Puffer zunchst nur
mit Daten fr Server A.
Prof. Dr. W. Riggert 13
Mehrere Pufferschlangen pro
Output-Port
Diese Art der Paketweiter-
leitung untersttzt Dienstgten.
Probleme entstehen, wenn keine
Kritische Daten,
Differenzierung der hohe Prioritt
Anwendungen hinsichtlich
Prioritten stattfindet.
Data In
Zustzlich muss der Switch einen
Mechanismus zur Interpretation Unkritische Daten,
von Prioritten kennen. geringe Prioritt
Anwendungen geringer Prioritt
knnen durch ihre Diskriminierung
Retransmissionen und damit
steigende Netzlast auslsen.

Prof. Dr. W. Riggert 14


Priorittsscheduling -
Weighted Round Robin-
Verfahren
Fr die unterschiedlichen
Puffer- schlangen an den Queue 0
Outputports knnen Gewicht = w = w
benutzerdefinierte Gewichte (w+x+y+z)
vergeben werden.
Queue 1
Der Scheduler erzwingt die
Gewicht = x
Einhaltung der = x
Verkehrsverteilung gem (w+x+y+z)
dieser Gewichte, d.h Queue 2
Anwendungen der hchsten Gewicht = y = y
Priorittsklasse (Queue 0) (w+x+y+z)
erhalten einen bestimmten
Queue 3
festgelegten Gewicht = z
Bandbreitenbetrag = z
(w+x+y+z)
Prof. Dr. W. Riggert 15
Weighted Round Robin -
Beispiel
Output- Zugewiesene
Gewicht WRR Berechnung
Schlange Bandbreite

=(15/(15+13+5+2)) x 100
QoS-0 15 43 Mbps

QoS-1 13 =(13/(15+13+5+2)) x 100 37 Mbps

QoS-2 5 =(5/(15+13+5+2)) x 100 14 Mbps

QoS-3 2 =(2/(15+13+5+2)) x 100 6 Mbps

Insgesamt steht eine Bandbreite von 100 Mbps zur Verfgung


Prof. Dr. W. Riggert 16
Weighted Round Robin -
Arbeitsweise
Whrend der bertragung rumt
der Algorithmus den Schlangen
mit der hchsten Prioritt
absoluten Vorrang ein, mit der
Folge, dass die Warteschlangen
niedriger Prioritt verlngerte IP-Verkehr
geringe
IP-Verkehr
hohe
RSVP-
Verkehr
Latenzzeiten in Kauf nehmen Prioritt Prioritt Unterschiedliche
mssen. Um bertragungen mit Gewichte bestim-
niedriger Prioritt nicht ber- men die QoS-Politik
mig zu diskriminieren, werden
fr die Warteschlangen Kapazi-
ttsbegrenzungen
bercksichtigt, so dass auch der WRR Scheduler
Datenstrom geringer Prioritt
eine garantierte
bertragungszeit erhlt. Outputport

Prof. Dr. W. Riggert 17


Switching-Implementierung
Eine Switching-Implementation
beschreibt, wo die Weiterleit-
entscheidung getroffen wird. Forwarding oder
Routing Tabelle
Die notwendigen Tabellen knnen CPU 00-0e1-00-00-00-00 2/3

zentral oder verteilt an den


einzelnen Ports vorliegen.
Bei Verwendung einer zentralen
Routingtabelle ist der Suchvor- Switching Fabric
gang in ASICs realisiert.
Diese Variante wird in Bus- und
Shared Memory-Architekturen
bevorzugt.

Lookup Lookup Lookup


Tabelle Tabelle Tabelle

Prof. Dr. W. Riggert 18


Route Caching - Prinzip
Auf der Seite der Inputports knnen
zur Steigerung der Weiterleitung
Route Caches eingefhrt werden.
Routing Tabelle
Sobald der Switch ein Paket Route
empfngt, wird die Ziel-IP-Adresse Processor A3 Ethernet 1
BB FDDI 2
in einer Liste hufig benutzter IP- C1 Ethernet 5

Adressen - dem Cache - gesucht. Im


zentraler Routing Cache
Falle, dass kein Eintrag existiert,
muss der Switch auf eine
Routingtabelle oder den Layer-2-
Switchproze zurckgreifen.
Route Caches knnen auf der Switching Fabric
Identifikation von Quell-,
Zieladressen oder TCP/UDP-
Portnummern basieren.
Lokaler
Lokaler Lokaler
Lokaler
Route
Route Route
Route
Cache
Cache Cache
Cache

Prof. Dr. W. Riggert 19


Route Caching - Ablauf
Das erste Paket eines Datenflus-
ses wird durch den Route Prozes-
sor und die zentrale Routing- Route Routing Tabelle
tabelle bearbeitet. Processor
A3
BB
Ethernet 1
Gig E-net 1/0
Alle nachfolgenden Pakete knnen C1 Fast Ethernet 2/0

durch den lokalen Route Cache am




Central Routing Cache
Inputport gesteuert werden, so SA DA Interface

dass der Route Prozessor nicht


C1 BB FE2/0

mehr belastet wird.


Notwendig fr eine erfolgreiche Switching Fabric
Durchfhrung des Verfahrens ist
eine Synchronisierung der zentra-
len und lokalen Tabelleneintrge
Lokaler
Lokaler Route
Route LokalerRoute
LokalerRoute
Cache
Cache Cache
Cache

Prof. Dr. W. Riggert 20


Switching-Fabrics

Ein idealer Switch wrde die Pakete von jedem Quell- zum
Zielsegment ohne Verzgerung leiten. Dabei wrden die
Stationszahl oder die operationalen Unterschiede wie Dienstgte
oder Verkehrslast keine Rolle spielen. Um sich dieser
Idealvorstellung zu nhern, existieren unterschiedliche
Architekturentwrfe :
Crossbar oder Matrix-Architektur
Busarchitektur
Shared Memory-Architektur

Prof. Dr. W. Riggert 21


Single Bus Architektur
Der Bus ist das zentrale
Element des Datentransfers FDDI ATM
innerhalb des Switches. Uplink Uplink
Jeder Port mit Module Module
unterschiedlichen Technologien
Forwarding
erhlt Zugriff auf den Bus. Die Tabelle
zentrale Verarbeitung der C 00-0e1-00-00-00-00 2/3
Pakete gestattet eine Filterung P
und Fehlererkennung. U
Ethernet Fast
Da der Bus die einzige Switch Ethernet
Transportressource darstellt, Module Switch
besteht die Gefahr einer Module
Bandbreitenerschpfung.

Prof. Dr. W. Riggert 22


Single Bus - Unicast-
Transport
Erreicht ein Paket den Forwarding Tabelle
Inputport des Switches, wird
es an die Switching Engine
weitergeleitet. Zuvor Nutzer A
Nutzer B
Mod3/Port12
Mod5/Port2
analysiert der Adress-ASIC
das Paket hinsichtlich Ziel-

und Quelladresse.
Sobald die Zieladresse in der
Forwarding-Tabelle gefunden
wurde, wird das Paket an den
ermittelten Outputport
gesendet. Enthlt die Tabelle
nicht die Zieladresse, wird das
Paket auf alle Ports geflutet. Nutzer A Nutzer B

Prof. Dr. W. Riggert 23


Single Bus - Multicast-
/Broadcast-Transport
Mulicasts sind auf ausgewhlte Multicast Tabelle
Ports begrenzt.
Jeder Port kann die Multicast-
/Broadcast Pakete whrend des Multicast A Mod3/Port12
Mod3/Port12
Flusses ber den zentralen Bus

gesondert kopieren. Die


gezielte Zustellung ist daher


sehr einfach.

Multicast Multicast Multicast


Sender Empfnger A Empfnger B
Prof. Dr. W. Riggert 24
Crossbar-Architektur
Pakete werden auf ihre Forwarding
Adresse analysiert und ber CPU Tabelle
eine Matrix aus Punkt-zu- 00-0e1-00-00-00-00 2/3

Punkt-Verbindungen an den
betreffenden Outputport
weitergeleitet.
Mehrere Inputbusse fhren Module 1

zu einem komplexeren Aufbau Module 2


der Forwarding-Tabelle.
Module 3

Module 4

Module 5

Module 1 Module 2 Module 3 Module 4 Module 5


Prof. Dr. W. Riggert 25
Crossbar - Unicast-
Transport
Crossbar-Switches besitzen den
Vorteil, dass sie wesentlich leichter Module 1

skalierbar sind, als andere


vorgeschlagene Architekturen. Da Module 2
jede Verbindung zwischen Input-
und Outputport einen dedizierten Module 3
Pfad durch den Switch darstellt,
bedeutet das Hinzufgen weiterer Module 4
Pfade eine Erhhung der
Bandbreite. Module 5
Da ein direkter Link naturgem die
schnellste Kommunikation zwischen
zwei Punkten ermglicht, ist die
Zeit des Verbindungsaufbaus Module 1 Module 2 Module 3 Module 4 Module 5

zwischen Input- und Outputport ein


entscheidender Faktor.

Prof. Dr. W. Riggert 26


Crossbar - Multicast-
Transport
Datenverkehr, der an mehrere
Outputports gerichtet ist, muss Module 1
mehrfach repliziert und in
mehrere lokale Portspeicher Module 2
gestellt werden. Da fr eine
korrekte Zustellung ferner die Module 3
Switching Engine keine weiteren
Paketverarbeitungen vornehmen Module 4
darf, bildet die Multicast-
Weiterleitung eine Schwche Module 5
dieser Architektur

Module 1 Module 2 Module 3 Module 4 Module 5

Prof. Dr. W. Riggert 27


Shared Memory-Architektur
Switches dieses Prinzips
besitzen pro Port einen
eigenen Prozessor, der
dynamisch Punkt-zu-Punkt- Module 1 Module 6
Verbindungen ber einen Module 2 Module 7
zentralen Bus aufbaut. Alle
Ports greifen ber diesen Bus Module 3 Module 8
auf einen Pool von Puffern zu, Module 9
Module 4
der zwischen den Input- und
Outputports geteilt wird. Module 5 Module 10
Einlaufende Pakete werden in
den Pool geschrieben, zu
sendende Pakete werden aus
ihm gelesen

Prof. Dr. W. Riggert 28


Shared Memory -
Arbeitsweise

00-0e1-00-00-00-00 CPU
2/3
Hiochgeschwindigkeits
Switching ASIC fr
schnelle
Switching Engine Switchentscheidung

Module 1 Module 3

Shared Memory
Module 2 Module 4

Hochgeschwindigkeits-
Datentransfer in den Groer Pool an dynamisch
Speicher verringert die zuweisbarem Speicher
Blockingwahrscheinlichkei
t
Prof. Dr. W. Riggert 29
Shared Memory - Unicast
Transport
Die Datenpakete
erreichen den Switch ber Forwarding
Tabelle
einen Inputport und 00-0e1-00-00-00-00
werden von dort direkt an 2/3

das Shared Memory


weitergeleitet.
Die Switching-Engine Switching
bestimmt mit Hilfe der Engine
Forwarding-Tabelle den
Zielport. Module 1 Module 3

Das Paket wird an den Shared


errechneten Zielport Memory
weitergeleitet. Module 2
Module 4

Prof. Dr. W. Riggert 30


Shared Memory - Multicast
Transport
Datenpakete erreichen den
Switch auf Port 1. Ein Blick in Multicast
Tabelle
die Multicasttabelle zeigt, 00-0e1-00-00-00-00
dass die empfangenen Pakete 2/3

eine Multicast-Adresse als


Ziel tragen.
Die Switching-Engine baut Switching
eine Verbindungsliste fr die Engine
Ports 2-4 auf.
Module 1
Die Pakete werden kopiert Module 3

und an die entsprechenden Shared


Ports geleitet. Memory
Module 2 Module 4

Prof. Dr. W. Riggert 31


Shared Memory - HOL-
Blocking Unterdrckung
Inputport 1 bertrage einen langen Rahmen an Outputport 2,
whrend gleichzeitig Quellport 3 einen Rahmen an den Zielport 2
senden mchte. Quellport 3 kopiert den Rahmen an eine Stelle Y im
Shared Memory-Bereich, wo er solange verweilt, bis der
Outputport frei ist. Erhlt der Inputport 3 nun weitere Rahmen an
Port 4, kopiert er diese an eine andere Stelle Z des gemeinsamen
Speichers. Obgleich der erste Rahmen von Port 3 auf den Port 2
wartet, kann unabhngig davon, der spter erhaltene Datenflu an
Port 4 nun vorrangig weitergeleitet werden.

Prof. Dr. W. Riggert 32