Systemverwaltungshandbuch: IP Services

Markermodul

IPQoS umfasst die zwei Markermodule dscpmk und dlcosmk. In diesem Abschnitt wird beschrieben, wie Sie mit den beiden Markern arbeiten. Normalerweise verwenden Sie dscpmk, da dlcosmk nur für IPQoS-Systeme mit VLAN-Geräten zur Verfügung steht.

Technische Informationen zu dscpmk finden Sie in der Manpage dscpmk(7ipp). Technische Informationen zu dlcosmk finden Sie in der Manpage dlcosmk(7ipp).

Verwenden des Markers dscpmk zum Weiterleiten von Paketen

Der Marker empfängt Verkehrswerte, nachdem die Ströme von einem Classifier oder den Metermodulen verarbeitet wurden. Der Marker makiert den Datenverkehr mit einem Weiterleitungsverhalten. Dieses Weiterleitungsverhalten ist die Aktion, die an Datenströmen vorgenommen wird, nachdem die Datenströme das IPQoS-System verlassen haben. Das Weiterleitungsverhalten für eine Datenverkehrsklasse ist in dem Per-Hop-Behavior (PHB) festgelegt. Das PHB weist einer Datenverkehrsklasse eine bestimmte Priorität zu, die den Rang der Datenstöme einer Klasse gegenüber anderen Verkehrsklassen anzeigt. PHBs überwacht nur das Weiterleitungsverhalten in dem an das IPQoS-System angrenzenden Netzwerk. Weitere Informationen zu PHBs finden Sie unter Per-Hop-Behaviors.

Paketweiterleitung ist der Prozess des Sendens von Datenverkehr einer bestimmten Klasse an das nächste Ziel in einem Netzwerk. Bei einem Host wie einem IPQoS-System wird ein Paket vom Host an den lokalen Netzwerkdatenfluss weitergeleitet. Bei einem Diffserv-Router wird ein Paket von lokalen Netzwerk an den nächsten Hop des Routers weitergeleitet.

Der Marker markiert das DS-Feld im Paket-Header mit einem bekannten Weiterleitungsverhalten, das in der IPQoS-Konfigurationsdatei definiert ist. Danach leiten das IPQoS-System und nachfolgende Diffserv-konforme Systeme den Verkehr gemäß der Angabe im DS-Feld weiter, bis die Markierung geändert wird. Um ein PHB zuzuweisen, markiert das IPQoS-System einen Wert im DS-Feld des Paket-Headers. Dieser Wert wird als der Differentiated Services Codepoint (DSCP) bezeichnet. Die Diffserv-Architektur definiert zwei Arten von Weiterleitungsverhalten, EF und AF, die unterschiedliche DSCPs verwenden. Eine Einführung in DSCPs finden Sie unter DS Codepoint.

Das IPQoS-System liest den DSCP für den Verkehrswert ein und wertet die Prioritätsstufe des Datenflusses in Relation zu anderen abgehenden Verkehrswerten aus. Dann priorisiert das IPQoS-System alle gleichzeitig auftretenden Verkehrswerte und gibt jeden Strom nach seiner Priorität in das Netzwerk frei.

Der Diffserv-Router empfängt abgehende Verkehrswerte und liest das DS-Feld in den Paket-Headern ein. Anhand des DSCP kann der Router gleichzeitig auftretende Verkehrswerte priorisieren und planen. Dann leitet der Router jeden Datenfluss nach der Priorität weiter, die durch das PHB angegeben ist. Beachten Sie, dass das PHB nicht über den Grenzrouter des Netzwerk hinaus Anwendung findet, es sei denn, Diffserv-konforme Systeme in den nachfolgenden Hops erkennen das gleiche PHB.

Expedited Forwarding (EF) PHB

Expedited forwarding (EF) garantiert, dass Pakete mit dem empfohlenen EF Codepoint 46 (101110) die beste Behandlung erfahren, die zur Freigabe in das Netzwerk verfügbar ist. Expedited Forwarding wird häufig mit einer Standleitung verglichen. Pakete mit dem Codepoint 46 (101110) erhalten eine garantierte bevorzugte Behandlung von allen Diffserv-Routern auf dem Weg zum Ziel der Pakete. Technische Informationen zum EF finden Sie in der RFC 2598, An Expedited Forwarding PHB.

Assured Forwarding (AF) PHB

Assured Forwarding (AF) bietet vier verschiedene Klassen für das Weiterleitungsverhalten, das Sie für den Marker angeben können. Die folgende Tabelle zeigt die Klassen, die drei drop-Prioritätsstufen, die mit jeder Klasse bereitgestellt werden, und die empfohlenen DSCPs, die jeder Prioritätsstufe zugeordnet sind. Jeder DSCP wird durch seinen AF-Wert, seinem dezimalen Wert und seinem binären Wert dargestellt.

Tabelle 37–2 Assured Forwarding Codepoints

 

Klasse 1 

Klasse 2 

Klasse 3 

Klasse 4 

Low-Drop-Prioritätsstufe

AF11 = 

10 (001010) 

AF21 = 

18 (010010) 

AF31 = 

26 (011010) 

AF41 = 

34 (100010) 

Medium-Drop- Prioritätsstufe

AF12 = 

12 (001100) 

AF22 = 

20 (010100) 

AF32 = 

28 (011100) 

AF42 =  

36 (100100) 

High-Drop-Prioritätsstufe

AF13 = 

14 (001110) 

AF23 = 

22 (010110) 

AF33 = 

30 (011110) 

AF43 = 

38 (100110) 

Jedes Diffserv-konforme System kann den AF Codepoint als Leitfaden zum Bereitstellen von differenzierten Weiterleitungsverhalten für verschiedene Verkehrsklassen verwenden.

Wenn diese Pakete einen Diffserv-Router erreichen, wertet der Router die Codepoints der Pakete zusammen mit den DSCPs anderen Datenverkehrs in der Warteschlange aus. Abhängig von der verfügbaren Bandbreite und den Prioritäten gemäß den Paket-DSCPs leitet der Router die Pakete dann entweder weiter oder wirft sie ab. Pakete, die mit dem EF PHB gekennzeichnet sind, erhalten eine garantierte Bandbreite im Vergleich zu Paketen, die mit den verschiedenen anderen AF PHBs gekennzeichnet sind.

Koordinieren Sie die Paketmarkierung zwischen den IPQoS-Systemen in Ihrem Netzwerk und dem Diffserv-Router, um sicherzustellen, dass die Pakete wie erwartet weitergeleitet werden. Angenommen, die IPQoS-Systeme in Ihrem Netzwerk markieren die Pakete mit den Codepoints AF21 (010010), AF13 (001110), AF43 (100110) und EF (101110). In diesem Fall müssen Sie die DSCPs AF21, AF13, AF43 und EF zur entsprechenden Datei auf dem Diffserv-Router hinzufügen.

Eine technische Erläuterung der AF-Codepoint-Tabelle finden Sie in der Norm RFC 2597. Die Router-Hersteller Cisco Systems und Juniper Networks veröffentlichen ausführliche Information zur AF PHB-Einstellung auf ihren Websites. Sie können diese Informationen sowohl zum Definieren von AF PHBs für IPQoS-Systeme als auch für Router verwenden. Darüber hinaus enthält die Dokumentation der Router-Hersteller Anweisungen zum Einrichten der DS Codepoints auf ihren Geräten.

Bereitstellen eines DSCP für einen Marker

Der DSCP ist 6 Bit lang. Das DS-Feld ist 1 Byte lang. Wenn Sie einen DSCP definieren, markiert der Marker die ersten sechs Bit des Paket-Headers mit dem DS Codepoint. Die verbleibenden zwei Bit bleiben unbenutzt.

Zum Definieren eines DSCP verwenden Sie den folgenden Parameter innerhalb einer Marker action-Anweisung:


 dscp_map{0-63:DS_codepoint}

Der dscp_map-Parameter ist ein Array mit 64 Elementen, das Sie mit dem (DSCP)-Wert füllen. dscp_map wird zum Zuordnen von eingehenden DSCPs zu abgehenden DSCPs verwendet, die vom dscpmk-Marker angewendet werden.

Sie müssen den DSCP-Wert für dscp_map im Dezimalformat angeben. Beispielsweise müssen Sie den EF Codepoint 101110 in den Dezimalwert 46 übertragen: dscp_map{0-63:46}. Bei AF Codepoints müssen Sie die verschiedenen Codepoints aus Tabelle 37–2 für die Verwendung durch dscp_map in die dezimale Notation übertragen.

Verwenden des Markers dlcosmk mit VLAN-Geräten

Das Markermodul dlcosmk markiert ein Weiterleitungsverhalten im MAC-Header eines Datagramms. dlcosmk können Sie nur in einem IPQoS-System mit einer VLAN-Schnittstelle einsetzen.

dlcosmk fügt dem VLAN-Header vier Byte hinzu, die als VLAN-Tag bezeichnet werden. Das VLAN-Tag enthält einen 3-Bit-Wert für die Benutzerpriorität, der vom IEEE 801.D-Standard definiert wird. Diffserv-konforme Switches, die VLAN verstehen, können ein Benutzerpriorität-Feld in einem Datagramm lesen. Die 801.D-Benutzerprioritätswerte implementieren die Serviceklassen (CoS)-Markierungen, die kommerziellen Switches bekannt sind und von ihnen verstanden werden.

Sie verwenden die Benutzerprioritätswerte in der dlcosmk-Markeraktion, indem Sie die in der folgenden Tabelle aufgeführten Serviceklassenmarkierungen definieren.

Tabelle 37–3 801.D-Benutzerprioritätswerte

Serviceklasse 

Definition 

Beste Leistung 

Hintergrund 

Spare 

Exzellente Leistung 

Kontrollierte Last 

Video weniger als 100 ms Latenz 

Video weniger als 10 ms Latenz 

Netzwerkkontrolle 

Weitere Informationen zu dlcosmk finden Sie in der Manpage dlcosmk(7ipp).

IPQoS-Konfiguration für Systeme mit VLAN-Geräten

In diesem Abschnitt wird ein einfaches Netzwerkszenario vorgestellt, mit dem gezeigt wird, wie IPQoS auf Systemen mit VLAN-Geräten implementiert wird. Das Szenario umfasst zwei IPQoS-Systeme, machine1 und machine2, die über einen Switch miteinander verbunden sind. Das VLAN-Gerät in machine1 hat die IP-Adresse 10.10.8.1. Das VLAN-Gerät in machine2 hat die IP-Adresse 10.10.8.3.

Die folgende IPQoS-Konfigurationsdatei für machine1 zeigt eine einfache Lösung zum Markieren von Datenverkehr über den Switch an machine2.


Beispiel 37–2 IPQoS-Konfigurationsdatei für ein System mit einem VLAN-Gerät

fmt_version 1.0
action {
        module ipgpc
	      name ipgpc.classify

        filter {
                name myfilter2
                daddr 10.10.8.3
                class myclass
        }

        class {
                name myclass
                next_action mark4
        }
}

action {
        name mark4
        module dlcosmk
        params {
                cos 4
                next_action continue
		global_stats true
        }
}

Bei dieser Konfiguration wird jeglicher Datenverkehr von machine1, der für das VLAN-Gerät in machine2 bestimmt ist, an den dlcosmk-Marker übergeben. Die Markeraktion mark4 weist dlcosmk an, Datagrammen der Klasse myclass mit einem CoS von 4 ein VLAN-Mark zuzuweisen. Der Benutzerprioritätswert 4 gibt an, dass der Switch zwischen beiden Rechnern Traffic-Flows vom Typ myclass kontrollierte Lastenweiterleitung von machine1 zuweisen soll.