grundkurs routing im internet mit Übungen -...
TRANSCRIPT
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …1
Grundkurs Routing im Internet mit Übungen
Falko Dressler, Ursula Hilgers{Dressler,Hilgers}@rrze.uni-erlangen.de
Regionales Rechenzentrum der FAU
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …2
Tag 5
• Mechanismen zur Dienstgütebereit-stellung in Routern– QoS– QoS & IP– Differentiated Services
• Bandbreitenkontrolle• Scheduling• Verhinderung von Überlast
– Konfiguration
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …3
QoS (I)
• Dienstqualität (Quality of Service, QoS): Eigenschaften bei der Ausführung eines Dienstes aus der Sicht eines Benutzers (auf Ende-zu-Ende Basis)Dienst: Telnet-Verbindung, Videokonferenz
• objektive (messbare) oder subjektive Eigenschaften– objektiv: Durchsatz, Delay, Jitter, ..– subjektiv: Qualität des Bildes/Tons
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …4
QoS (II)• Dienstintegration im Internet: Datenübertragung
verschiedener Applikationen über das IP-Protokoll: Best-Effort“ keine Garantien für die Datenübertragung
• Neue Anforderungen durch „Echtzeit“-Applikationen(Bsp.: hochqualitative Multimedia-Anwendungen)
• QoS versus Class of Service (CoS): – QoS: absolute Delay-, Durchsatz-, ... Garantien für
einen Verkehrstrom unabhängig vom Verhalten anderer Ströme
– CoS: relative Garantien (Probleme bei Überlastung des Netzwerks)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …9
QoS (VII)
• Anwendungen mit unterschiedlichen Anforderungen Definition von Dienstklassen, die zwischen Kunde und Provider ausgehandelt werden und an den Netzwerkgrenzen zur Verfügung stehen:– Service Level Agreement (SLA)
Enthalten Tarife, Sicherheitsaspekte und eine Beschreibung der technischen Parameter aller Dienste, die vom Provider angebotenen werden.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …10
QoS (VIII)• Beispiel für ein SLA:
3 Dienste werden zwischen Kunde und Provider ausgehandelt– Datenrate 2 Mbit/s, geringe
Verzögerungen/Jitter(Anwendung: Telefonie)
– Datenrate 40 Mbit/s, keine Verluste, Delaykleiner 100 ms(Anwendung: hochqualitative Dialog-Videoübertragung)
– „Best-Effort“(Anwendung: textbasierte Datenübertragung)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …12
QoS & IP (II)
• Anforderungen an die Netzwerkkomponenten: – Bandbreitenbegrenzung am Rande des
Netzwerks zur Überwachung des SLA– Faires/Prioritätenbasiertes Scheduling
(Videokonferenzen Datenübertragung)Klassifizierung
– Überlastkontrolle
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …13
QoS & IP (III)
• „QoS“ in IP-Netzwerken: oft nur CoS -relative Garantien in Abhängigkeit von der Belastung des Netzes
• Verschiedene Ansätze entwickelt von der Internet Engineering Task Force (IETF):– Integrated Services
• Resource Reservation Protocol (RSVP)– Differentiated Services (DiffServ)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …14
DiffServ (I)
• Skalierbarer Mechanismus zur Dienstdifferenzierung Klassifizieren des Verkehrs und Aggregieren zu Dienstklassen(keine aufwendige Signalisierung pro Anwendungsfluss RSVP)
• Konzept:– Klassifizieren und Markieren der Pakete und
Überprüfung der SLAs (Verkehrsregulierung)– Zuweisung der Ressourcen im Router abhängig
von der Dienstklasse (Scheduling, Buffer, ...)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …15
DiffServ (II)
• unidirektional• Forderungen
– keine Performance-Einbußen im Netzwerk durch DiffServ
– keine Speicherung von Zuständen/Signalisierung( Markierung)
– keine Änderung der Applikationen
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …16
DiffServ (III)
• Definition von Service Level Specifications (SLS): Parameter die angebotene Dienste spezifizieren
• Funktionalität der DiffServ-Router (am Rande des Netzes):– Aggregierung des Verkehrs– Überprüfung der Vertragskonformität– Komplexe Funktionen zur Klassifikation,
Markierung, Verkehrsregulierung, ..
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …18
DiffServ (V)
• Markieren
„Best Effort“: 00000000
DSCP: Differentiated Services CodePoint
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …19
DiffServ (VI)
• Im Core des Netzes: Per Hop Behaviour auf Pakete anwenden in Abhängigkeit der Markierung im Paket Header
• Abbildung: Dienstklasse im SLA Per HopBehaviour (PHB)– Reservierung der Ressourcen im Router:
Reservierung der Ressourcen für jede Dienstklasse entsprechend der Qualitätsanforderungen (Buffer, Bandbreite)
– Queuemanagement und Scheduling– Überlastkontrolle
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …20
DiffServ (VII)
• Standardisierter PHB:– Assured Per Hop Behaviour– Expedited Per Hop Behaviour– (default)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …21
DiffServ (VIII)
• Expedited Per Hop Behaviour (RFC 3246)– Low Loss / Delay– SLS enthalten Verkehrsprofile– Nicht konformer Verkehr wird verworfen– Bsp: Voice over IP
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …22
DiffServ (IX)
• Assured Per Hop Behaviour (RFC 2597)– 4 Klassen mit 3 verschiedenen
Verwurfsprofilen– Belegung des
DSCP-Bytes:
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …23
DiffServ (X)
• AF PHB f.– SLS werden vereinbart– Pakete mit niedriger Drop-Wahrscheinlichkeit
werden geschützt vor solchen mit einer höheren– Menge des weitergeleiteten Verkehrs hängt ab
von• Den für die Klasse allokierten Ressourcen• Der Last dieser Klasse• Der Drop Precedence
– Keine Zusagen an das maximale Delay
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …24
Scheduling (I)
• FIFO-Queueing - First in, First out– effizientes Verfahren– negative Auswirkungen bei
Anwendungsflüssen mit höherem Verkehrsaufkommen
• Fair Queueing– Gleichbehandlung für jede Dienstklasse, da
gleicher Anteil an Ausgangsbandbreite– Benachteiligung von kleinen
Paketen
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …25
Scheduling (II)
• Flow: virtuelle VerbindungAlle Pakete mit der gleichen Source/Destination IP-Adresse und Port-Nummer und Protokoll-ID
• Alle Pakete eines Flows werden der gleichen Dienstklasse zugewiesen
ToS Feld im IP-Header wird entsprechend markiert
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …26
Scheduling (III)
• Weighted Fair Queueing (WFQ):jeder Warteschlange wird ein Gewicht zugeteilt, das den Anteil an Ausgangs-bandbreite bestimmtParekh (1992)
• Bandbreitengarantie• Isolation von Flows• Fairness• maximale Grenze fürs Delay (Token
Bucket regulierter Verkehrsstrom)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …27
Überlastkontrolle (I)
• Buffer und Queues werden von Netzwerkelementen als temporäre Zwischenspeicher für Daten verwendet, die darauf warten, übertragen zu werden
• Buffer und Queues füllen sich, wenn der Router die Daten nicht schnell genug übertragen kann
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …28
Überlastkontrolle (II)
• Verwurfsstrategien: Random Drop TailDrop– Tail Drop: Standard Verhalten im Netzwerk
ankommende IP-Pakete werden verworfen, wenn Queue voll ist
TCP-Verbindungen reduzieren Senderate -„Slow Start“ (Mechanismus zur Überlastkontrolle)
„globale Synchronisation“– Random Drop: zufälliges Verwerfen, bevor
Queue überläuft Random Early Detect (RED):Mechanismus zur Vermeidung von Überlast
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …29
Überlastkontrolle (III)
• RED beobachtet die durchschnittliche Queuelänge und verwirft ggf. Pakete aus ausgewählten Anwendungsflüssen
einzelne TCP-Flows reduzieren ihre Übertragungsrate
• RED geringes Delay und maximaler Durchsatz (Verhinderung von globaler Synchronisation)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …31
Überlastkontrolle (V)
• Wenn ein Paket ankommt1. The average queue size is calculated. 2. If the average is less than the minimum queue
threshold, the arriving packet is queued. 3. If the average is between the minimum queue
threshold for that type of traffic and the maximum threshold for the interface, the packet is either dropped or queued, depending on the packet drop probability for that type of traffic.
4. If the average queue size is greater than the maximum threshold, the packet is dropped.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …32
Überlastkontrolle (VI)
0
1
minDurchschnittlicheLänge der Warte-schlange
thth max
Verwurfs-wahrschein-lichkeit
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …33
Überlastkontrolle (VII)
• Weighted RED
0
1
mindurchschnittlicheLänge der Warte-schlange
Verwurfs-wahrschein-
lichkeit
th 3 th1th3 th2 th1minmax max maxminth2
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …34
Konfiguration (I)
• Auf Cisco-Routern:– Bandbreitenbegrenzung am Rande des
Netzwerks (Admission Control): rate-limit
– Scheduling: (weighted) faire-queue– Überlastkontrolle: random-detect
• IOS 12.0.10(S)
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …35
rate-limit (I)• Nur mit IP-Verkehr• Voraussetzung: Cisco Express Forwarding• (CEF) Klassifikation möglich für
– eingehendes Router-Interface– einzelne Flows
Pakete mit gleichen Eigenschaften (z.B. gleicher Zieladresse) werden herausgefiltert
Filtern der Pakete ist auf Cisco Routern durch Access Listen (ACLs) realisiert
Art der Implementation der ACLs (Software oder Hardware) hat entscheidenden Einfluss auf die Funktionalität des Klassifizierens
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …36
rate-limit (II)
• Realisierung durch einen TokenBucket: Formale Definition die Übertragungsrate festzulegen– Committed Burst Size– Durchschnittliche Rate (Mean Rate,
Committed Information Rate (CIR), – Ankunftszeit
ja
nein
IP-Paketverwerfen
ankommendes IP-Paket IP-Paket
weiterleitenDateneinheit vorhanden?
Rate der symbolischenDateneinheiten (Token)
R
Größe des Speicher-bereichs (Bucket)B
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …38
rate-limit (IV)
• Für den gesamten IP-Verkehr an einem InterfaceStep Command Purpose 1 interface interface-type
interface-numberSpecify the interface or subinterface. This command puts the router in interface configuration mode.
2 rate-limit {input | output} bps burst-normalburst-maxconform-action actionexceed-action action
Specify a basic CAR policy for all IP traffic.(action: see next slide)
3 end Exit interface configuration mode.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …39
rate-limit (V)
Rate-Limit Command Action Keywords Description
continue Evaluate the next rate-limitcommand.
drop Drop the packet. set-prec-continue new-prec Set the IP Precedence and evaluate
the next rate-limit command. set-prec-transmit new-prec Set the IP Precedence and transmit
the packet. transmit Transmit the packet.
Step Command Purpose 1 interface interface-type interface-
numberSpecify the interface or subinterface -> configuration mode.
2 rate-limit {input | output} [access-group [rate-limit]acl-index] bps burst-normal burst-max conform-actionaction exceed-action action
Specify the rate policy for each particularclass of traffic. Repeat this command foreach different class of traffic.
3 access-list acl-index {deny | permit} source[source-wildcard] oraccess-list acl-index {deny | permit} protocol sourcesource-wildcard destinationdestination-wildcard[precedence precedence] [tos tos] [log]
(Optional) Specify a standard or extendedaccess list. Repeat this command to furtherconfigure the access list or specify a newaccess list.
4 end Exit interface configuration mode.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …41
rate-limit (VII)• Test: Wie wird die CPU des Router-Interfaces durch
die Klassifikationsaufgabe belastet? • Cisco 7507, IOS
12.0.(10)S• Versatile Interface
Boards im Router mit 155 MBit/s PoSSchnittstelle
• Klassifikation wird an dem eingehenden Interface des Routersaktiviert
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …42
rate-limit (VIII)
• Der Verkehrsgenerator sendet UDP-Verkehr auf verschiedenen Flows mit einer Rate von 3 Mbit/s
• Die Anzahl der Flows wird kontinuierlich gesteigert• Pakete der Größe 64, 429 und 4096 Byte • Die Klassifikation wird basierend auf den Zieladressen
durchgeführt• Das Filtern wird mit
Access Listen (ACLs) realisiert
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …44
faire-queue (I)• Pakete werden pro Flow klassifiziert
(Flow: Pakete mit der gleichen IP Adresse, UDP/TCP Port und gleichem Protokoll)
• Konfiguration:
Command Purpose fair-queue[congestive-discard-threshold[dynamic-queues[reservable-queues]]]orfair-queue
Configure an interface to use fair queueing.
orConfigure an interface to use fair queueing on a Cisco router using a VIP-based interface.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …45
faire-queue (II)
congestive-discard-threshold
(Optional) Number of messages allowed in each queue. Thedefault is 64 messages, and a new threshold must be a power of 2 in the range 16 to 4096. When a conversation reaches thisthreshold, new message packets are discarded.
dynamic-queues
(Optional) Number of dynamic queues used for best-effortconversations (that is, a normal conversation not requiring anyspecial network services). Values are 16, 32, 64, 128, 256, 512, 1024, 2048, and 4096. The default is 256.
reservable-queues
(Optional) Number of reservable queues used for reservedconversations in the range 0 to 1000. The default is 0. Reservablequeues are used for interfaces configured for features such as Resource Reservation Protocol (RSVP).
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …46
faire-queue (III)
• Monitoring von faire-queue
Command Purpose show interfaces[interface] fair-queue
Show information about an interfaceconfigured for WFQ and DWFQ.
show queueing fair Show status of the fair queueing configuration.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …47
random-detect (I)
• Aktivieren
Command Purpose random-detect
Enable WRED. If you configure this command on a VIP interface, DWRED is enabled.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …48
random-detect (II)
Command Purpose random-detect exponential-weighting-constantexponent
Configure the weight factor used in calculating the average queue length. Exponent from 1 to 16 used in the average queue size calculation. The default exponential weight factor is 9.
random-detect precedence precedencemin-threshold max-threshold mark-prob-denominator
Configure parameters for packets with a specific IP Precedence. The minimum threshold for IP Precedence 0 corresponds to half the maximum threshold for the interface. Repeat this command for each precedence. To configure RED, rather than WRED, use the same parameters for each precedence.
precedence IP precedence number. The value range is 0 to 7 and RSVP
min-threshold Minimum threshold in number of packets. The value range of thisargument is 1 to 4096. When the average queue length reaches theminimum threshold, WRED drops all packets with the specified IP precedence.
max-threshold Maximum threshold in number of packets. The value range of thisargument is the value of the min-threshold argument to 4096. When the average queue length exceeds the maximum threshold, WRED drops all packets with the specified IP precedence.
mark-prob-denominator
Denominator for the fraction of packets dropped when the averagequeue depth is at the maximum threshold. For example, if thedenominator is 512, one out of every 512 packets is dropped whenthe average queue is at the maximum threshold. The value range is1 to 65536. The default is 10; one out of every ten packets isdropped at the maximum threshold.
Dressler, Hilgers, Regionales RechenZentrum Erlangen
Grundkurs Routing …50
random-detect (IV)
• Monitoring von REDCommand Purpose
show interfaces [interface-typeinterface-number] random-detect
Show information about WRED on a VIP-based interface.
show queue interface-type interface-number
Show WRED configuration and statistics for a particular interface.
show queueing [red] Show the queueing configuration for WRED.
show interfaces [type slot | port-adapter | port]
Show DWRED statistics for Cisco 7500 series routers.