grundkurs routing im internet mit Übungen -...

51
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

Upload: vanphuc

Post on 05-Apr-2019

219 views

Category:

Documents


0 download

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 …5

QoS (III)

Überlast

Dressler, Hilgers, Regionales RechenZentrum Erlangen

Grundkurs Routing …6

QoS (IV)

Dressler, Hilgers, Regionales RechenZentrum Erlangen

Grundkurs Routing …7

QoS (V)

Dressler, Hilgers, Regionales RechenZentrum Erlangen

Grundkurs Routing …8

QoS (VI)

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 …11

QoS & IP (I)

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 …17

DiffServ (IV)

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 …30

Überlastkontrolle (IV)

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 …43

rate-limit (IX)

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.

Dressler, Hilgers, Regionales RechenZentrum Erlangen

Grundkurs Routing …51

Fragen???