Systemverwaltungshandbuch: IP Services

Teil VII IP Quality of Service (IPQoS)

Dieser Teil enthält Aufgaben und Informationen zum IP Quality of Service (IPQoS), der Umsetzung von Differentiated Services in Oracle Solaris.

Kapitel 32 Einführung in IPQoS (Übersicht)

Mit IP Quality of Service (IPQoS) können Sie Accounting-Statistiken sammeln, steuern und priorisieren. IPQoS bietet den Benutzern Ihres Netzwerks konsistente Serviceebenen. Darüber hinaus können Sie den Datenverkehr verwalten, um Netzwerküberlastungen zu vermeiden.

Dieses Kapitel umfasst die folgenden Themen:

Grundlagen von IPQoS

IPQoS ermöglicht die Differentiated Services (Diffserv)-Architektur, die von der Differentiated Services Working Group der Internet Engineering Task Force (IETF) definiert wurde. Unter Oracle Solaris wird IPQoS auf der IP-Schicht im TCP/IP-Protokollstapel implementiert.

Was sind Differentiated Services?

Durch Aktivieren von IPQoS können Sie ausgewählten Kunden und Anwendungen unterschiedliche Ebenen an Netzwerkservices anbieten. Diese unterschiedlichen Serviceebenen werden kollektiv als Differentiated Services (differenzierte Dienste) bezeichnet. Die Differentiated Services, die Sie Ihren Kunden bereitstellen, können auf verschiedenen Serviceebenen basieren, die Ihr Unternehmen seinen Kunden anbietet. Sie können Differentiated Services auch basierend auf Prioritäten anbieten, die für Anwendungen oder Benutzer in Ihrem Netzwerk eingerichtet wurden.

Das Bereitstellen von QoS umfasst die folgenden Aktivitäten:

Funktionen von IPQoS

IPQoS bietet die folgenden Funktionen:

Weitere Informationen zur Theorie und Praxis von Quality-of-Service

Weitere Informationen zu Differentiated Services und Quality Of Service finden Sie in gedruckten Medien und online.

Bücher zu Quality of Service

Weitere Informationen zur Theorie und Praxis von Quality of Service finden Sie in den folgenden Büchern:

Requests for Comments (RFCs) zu Quality of Service

IPQoS entspricht den Spezifikationen, die in den folgenden RFCs und den aufgeführten Internet Drafts beschrieben sind:

Websites mit Informationen zu Quality of Service

Die Differentiated Services Working Group der IETF unterhält eine Website mit Links zu Diffserv Internet Drafts unter http://www.ietf.org/html.charters/diffserv-charter.html.

Router-Hersteller wie Cisco Systems und Juniper Networks stellen auf ihren Firmen-Websites Informationen bereit, wie Differentiated Services in ihren Produkten umgesetzt sind.

Manpages zu IPQoS

Die IPQoS-Dokumentation umfasst die folgenden Manpages:

Bereitstellen von Quality of Service mit IPQoS

Mit IPQoS-Funktionen können Internet Service Providers (ISPs) und Application Service Providers (ASPs) ihren Kunden individuelle Netzwerkservices anbieten. Diese Funktionen ermöglichen es einzelnen Unternehmen und Bildungsinstituten, Services für interne Organisationen oder wichtige Anwendungen zu priorisieren.

Umsetzen von Service-Level Agreements

Handelt es sich bei Ihrer Organisation um einen ISP oder ASP, können Sie Ihre IPQoS-Konfiguration auf dem Service-Level Agreement (SLA) basieren, dass Ihr Unternehmen seinen Kunden anbietet. In einer SLA garantiert ein Service Provider einem Kunden einen bestimmten Umfang an Netzwerkservices, die nach einer Preisstruktur abgerechnet wird. Beispielsweise stellt eine SLA im oberen Preisbereich sicher, dass ein Kunde 24 Stunden am Tag die höchste Priorität für alle Arten von Netzwerkverkehr genießt. Entsprechend garantiert eine SLA im mittleren Preisbereich einem Kunden hohe Priorität für E-Mails während der Arbeitszeiten. Sonstiger Netzverkehr erfolgt 24 Stunden am Tag mit mittlerer Priorität.

Sicherstellen des Quality of Service für eine einzelne Organisation

Handelt es sich bei Ihrer Organisation um ein Unternehmen oder eine Institution, können Sie auch für Ihr Netzwerk QoS-Funktionen bereitstellen. Sie können garantieren, dass Datenverkehr einer bestimmten Gruppe oder einer bestimmten Anwendung eine höhere oder niedrigere Servicequalität erhält.

Einführung in die Quality of Service-Richtlinie

Sie implementieren die Quality Of Service, indem Sie eine Quality of Service (QoS)-Richtlinie definieren. Die QoS-Richtlinie definiert verschiedene Netzwerkattribute, z. B. die Priorität des Kunden oder der Anwendung sowie Aktionen zur Handhabung verschiedener Kategorien von Datenverkehr. Die QoS-Richtlinie Ihrer Organisation wird in einer IPQoS-Konfigurationsdatei implementiert. Diese Datei konfiguriert die IPQoS-Module, die sich im Kernel von Oracle Solaris befinden. Ein Host mit einer übernommenen IPQoS-Richtlinie wird als ein IPQoS-konformes System bezeichnet.

Ihre QoS-Richtlinie definiert in der Regel Folgendes:

Bei Paketen, die an Ihr Netzwerk übergeben werden, wertet das IPQoS-konforme System die Paket-Header aus. Ihre QoS-Richtlinie legt dann die Aktion fest, die das IPQoS-System ausführt.

Aufgaben zum Aufstellen der QoS-Richtlinie sind unter Planen der Quality of Service-Richtlinie beschrieben.

Verbessern der Netzwerkeffizienz mit IPQoS

IPQoS enthält Funktionen, die nach der Umsetzung des Quality of Service die Netzwerkperformance verbessern können. Wenn Computernetzwerke wachsen, steigt auch der Bedarf zur Verwaltungsaufwand des Netzverkehrs, der durch eine steigende Anzahl von Benutzern und leistungsstärkeren Prozessoren erzeugt wird. Symptome eines überanspruchten Netzwerks sind z. B. Datenverluste und Überlastung. Beide Symptome führen zu schlechteren Reaktionszeiten.

In der Vergangenheit haben Systemadministratoren Netzverkehrprobleme durch Erhöhen der Bandbreite gelöst. Häufig variiert der Verkehr auf den Links stark. Mit IPQoS können Sie Datenverkehr im vorhandenen Netzwerk verwalten und besser beurteilen, wo und warum eine Erweiterung erforderlich ist.

Bei einem Unternehmen oder einer Institution müssen Sie beispielsweise für ein effizientes Netzwerk sorgen, um Netzwerkengpässe zu vermeiden. Außerdem müssen Sie sicherstellen, dass eine Gruppe oder Anwendung nicht mehr als die zugewiesene Bandbreite verbraucht. Als ISP oder ASP müssen Sie die Netzwerkperformance verwalten, um sicherzustellen, dass Kunden den Netzwerkservice erhalten, für den sie bezahlen.

So wirkt sich die Bandbreite auf den Netzwerkverkehr aus

Mit IPQoS können Sie die Netzwerkbandbreite regulieren, die Höchstmenge an Daten, die ein vollständig genutzter Netzwerklink bzw. ein vollständig ausgelastetes Netzwerkgerät übertragen kann. Ihre QoS-Richtlinie muss die Verwendung der Bandbreite priorisieren, um Kunden oder Benutzern einen bestimmten Quality of Service bereitstellen zu können. Die IPQoS-Metermodule ermöglichen Ihnen das Zählen und Steuern der zugewiesenen Bandbreite zwischen den verschiedenen Verkehrsklassen auf einem IPQoS-konformen Host.

Bevor Sie den Verkehr in Ihrem Netzwerk effizient verwalten können, müssen Sie die folgenden Fragen zur Nutzung der Bandbreite beantworten:

Verwenden von Serviceklassen zum Priorisieren von Verkehr

Bei der Umsetzung eines Quality of Service analysieren Sie den Netzwerkverkehr, um breite Gruppierungen festzulegen, in die der Netzverkehr aufgeteilt werden kann. Darum strukturieren Sie die verschiedenen Gruppierungen in Serviceklassen mit individuellen Eigenschaften und Prioritäten. Diese Klassen bilden die grundlegenden Kategorien, auf denen Sie die QoS-Richtlinie für Ihrer Organisation basieren. Die Serviceklassen stellen die Verkehrsgruppen dar, die Sie steuern möchten.

Als Provider können Sie beispielsweise die Serviceebenen Platin, Gold, Silber und Bronze mit einer entsprechenden gleitenden Preisstruktur anbieten. Eine Platin-SLA garantiert oberste Priorität für eingehenden Verkehr, dessen Ziel eine Website ist, die der ISP für den Kunden hostet. Somit stellt eingehender Verkehr zur Webseite dieses Kunden eine Verkehrsklasse dar.

Bei einem Unternehmen können Sie Serviceklassen erstellen, die auf den Anforderungen einer Abteilung beruhen. Oder Sie erstellen eine Klasse, die auf der am meisten genutzten Anwendung im Netzwerkverkehr basiert. Im Folgenden sind einige Verkehrsklassen eines Unternehmens aufgeführt:

Differentiated Services-Modell

IPQoS umfasst die folgenden Module, die Teil der in RFC 2475 definierten Differentiated Services (Diffserv)-Architektur sind:

IPQoS fügt die folgenden Verbesserungen zum Diffserv-Modell hinzu:

In diesem Abschnitt finden Sie eine Einführung in die vom IPQoS verwendeten Diffserv-Module. Zum Einrichten dieser Module in der QoS-Richtlinie müssen Sie mit den Grundlagen zu diesen Modulen vertraut sein und ihre Namen sowie die Verwendungsweise kennen. Ausführliche Informationen zu jedem Modul finden Sie unter IPQoS-Architektur und das Diffserv-Modell.

Classifier (ipgpc) – Übersicht

Bei dem Diffserv-Modell wählt der Classifier die Pakete aus dem Netzwerk-Verkehrswert aus. Ein Verkehrswert besteht aus einer Paketgruppe mit identischen Informationen in den folgenden IP-Header-Feldern:

Bei IPQoS werden diese Felder als 5-Tuple bezeichnet.

Das IPQoS-Classifier-Modul heißt ipgpc. Der ipgpc-Classifier ordnet den Verkehrswert in Klassen an, die auf den Eigenschaften basieren, die Sie in der IPQoS-Konfigurationsdatei definiert haben.

Ausführliche Informationen zu ipgpc finden Sie unter Classifier-Modul.

IPQoS-Klassen

Eine Klasse ist eine Gruppe von Netzwerk-Datenströmen mit ähnlichen Eigenschaften. Beispielsweise kann ein ISP Klassen definieren, um die verschiedenen Serviceebenen zu unterscheiden, die den Kunden angeboten werden. Ein ASP könnte SLAs definieren, um verschiedenen Anwendungen unterschiedliche Serviceebenen zuzuweisen. In der QoS-Richtlinie eines ASP könnte eine Klasse abgehenden FTP-Verkehr enthalten, der an eine bestimmte IP-Zieladresse gerichtet ist. Auch von der externen Website eines Unternehmens abgehender Verkehr könnte als eine Klasse definiert sein.

Das Gruppieren von Netzverkehr in Klassen ist ein wichtiger Teil bei der Planung Ihrer QoS-Richtlinie. Wenn Sie Klassen mithilfe des Serviceprogramms ipqosconf erstellen, konfigurieren Sie in Wirklichkeit den ipgpc-Classifier.

Informationen zum Definieren von Klassen finden Sie unter So definieren Sie die Klassen für Ihre QoS-Richtlinie.

IPQoS-Filter

Filter sind Regellisten mit Parametern, die als Selektoren bezeichnet werden. Jeder Filter muss auf eine Klasse verweisen. IPQoS prüft auf die Übereinstimmung von Paketen mit den Selektoren eines Filters, um festzustellen, ob das Paket zur Klasse des Filters gehört. Sie können ein Paket mithilfe verschiedener Selektoren filtern, beispielsweise dem IPQoS 5-Tuple und anderen allgemeinen Parametern:

So kann ein einfaches Filter beispielsweise das Zielport mit dem Wert 80 enthalten. The ipgpc-Classifier wählt dann alle für Port 80 (HTTP) bestimmten Datenpakete aus und verarbeitet diese gemäß der QoS-Richtlinien.

Informationen zum Erstellen von Filtern finden Sie unter So definieren Sie Filter in der QoS-Richtlinie.

Meter (tokenmt und tswtclmt) – Übersicht

Im Diffserv-Modell verfolgt ein Meter die Übertragungsrate des Verkehrswerts auf Klassenbasis. Der Meter wertet aus, inwieweit die tatsächliche Flussrate der konfigurierten Rate entspricht, um das geeignete Ergebnis zu ermitteln. Basierend auf dem Verkehrswert-Ergebnis wählt der Meter eine geeignete Aktion. Dies kann z. B. das Senden des Pakets an eine andere Aktion oder die Rückgabe des Pakets an das Netzwerk ohne weitere Verarbeitung sein.

Die IPQoS-Metermodule bestimmen, ob ein Netzwerkfluss der Übertragungsrate entspricht, die in der QoS-Richtlinie für diese Klasse definiert wurde. IPQoS umfasst zwei Metermodule:

Beide Metermodule erkennen drei Ergebnisse: Rot, Gelb und Grün. Die Aktionen, die bei den verschiedenen Ergebnissen durchzuführen sind, werden mit den Parametern red_action_name, yellow_action_name und green_action_name definiert.

Darüber hinaus können Sie tokenmt zum Erkennen von Farben konfigurieren. Ein farbbewusster Meter verwendet Paketgröße, DSCP, Traffic Rate und konfigurierte Parameter, um das Ergebnis festzustellen. Der Meter verwendet das DSCP, um das Ergebnis des Pakets entweder grün, gelb oder rot zuzuordnen.

Informationen zum Definieren von Parametern für die IPQoS-Metermodule finden Sie unter So planen Sie die Verkehrssteuerung.

Marker (dscpmk und dlcosmk) – Übersicht

Im Diffserv-Modellen markiert der Marker ein Paket mit einem Wert, der das Weiterleitungsverhalten widerspiegelt. Markierung ist der Prozess, einen Wert in den Paket-Header einzufügen, um so festzulegen, wie das Paket zum Netzwerk weitergeleitet wird. IPQoS enthält zwei Markermodule:

Informationen zur Umsetzung einer Marker-Strategie für die QoS-Richtlinie finden Sie unter So planen Sie das Weiterleitungsverhalten.

Flow Accounting (flowacct) – Übersicht

IPQoS fügt das flowacct-Accounting-Modul zum Diffserv-Modell hinzu. Mit flowacct können Sie Statistiken zum Verkehrswert erfassen und Kundenrechnungen in Übereinstimmung mit deren SLAs erstellen. Flow Accounting eignet sich darüber hinaus zur Kapazitätsplanung und Systemüberwachung.

Das flowacct-Modul arbeitet mit dem acctadm -Befehl, um eine Accounting-Protokolldatei zu erstellen. Das allgemeine Protokoll umfasst das IPQoS 5-Tuple sowie zwei zusätzliche Attribute, die in der folgenden Liste aufgeführt sind:

Darüber hinaus können Sie Statistiken zu anderen Attributen sammeln. Dies wird unter Aufzeichnen von Informationen zu Verkehrswerten und in den Manpages flowacct(7ipp) und acctadm(1M) beschrieben.

Informationen zur Planung einer Flow Accounting-Strategie finden Sie unter So planen Sie das Flow Accounting.

So durchläuft ein Verkehrswert die IPQoS-Module

In der folgenden Abbildung wird ein Pfad gezeigt, den eingehender Datenverkehr über einige der IPQoS-Module nehmen könnte.

Abbildung 32–1 Verkehrswert über eine IPQoS-Implementierung des Diffserv-Modells

Der Kontext folgt unter der Grafik, bei der es sich um ein Ablaufdiagramm handelt.

Diese Abbildung zeigt eine allgemeine Verkehrswert-Sequenz auf einem IPQoS-konformen Computer:

  1. Der Classifier wählt alle Pakete aus dem Paketstrom aus, die den Filterkriterien in der QoS-Richtlinie des Systems entsprechen.

  2. Die ausgewählten Pakete werden dann ausgewertet, um die nächste auszuführende Aktion auszuwählen.

  3. Der Classifier sendet jeglichen Verkehr, der keine Verkehrssteuerung benötigt, an den Marker.

  4. Datenverkehr, für den eine Verkehrssteuerung erforderlich ist, wird an den Meter gesendet.

  5. Der Meter setzt die konfigurierte Rate durch. Dann weist der Meter einen Verkehr-Konformitätswert für die flusskontrollierten Pakete zu.

  6. Die flusskontrollierten Pakete werden daraufhin ausgewertet, um festzustellen, für welche Pakete ein Accounting erforderlich ist.

  7. Der Meter sendet jeden Verkehr, für den kein Flow Accounting erforderlich ist, an den Marker.

  8. Das Flow Accounting-Modul sammelt Statistiken zu den empfangenen Paketen. Dann sendet das Modul die Pakete an den Marker.

  9. Der Marker weist dem Paket-Header einen DS Codepoint zu. Dieser DSCP kennzeichnet das Per-Hop-Behaviour, das ein Diffserv-konformes System an dem Paket anwenden muss.

Verkehrsweiterleitung in einem IPQoS-konformen Netzwerk

In diesem Abschnitt werden Sie in die Elemente eingeführt, die an der Weiterleitung von Paketen in einem IPQoS-konformen Netzwerk beteiligt sind. Ein IPQoS-konformes System verarbeitet beliebige Pakete in einem Netzwerk-Stream, die an die IP-Adresse des Systems gerichtet sind. Dann wendet das IPQoS-System seine QoS-Richtlinie an dem Paket an, um die Differentiated Services einzurichten.

DS Codepoint

Der DS Codepoint (DSCP) definiert die Aktion im Paket-Header, die ein Diffserv-konformes System an einem markierten Paket vornehmen soll. Die Diffserv-Architektur definiert eine Reihe von DS Codepoints für das IPQoS-konforme System sowie den zu verwendenden Diffserv-Router. Darüber hinaus definiert die Diffserv-Architektur eine Reihe von Aktionen, die als das Weiterleitungsverhalten bezeichnet werden. Dieses Weiterleitungsverhalten entspricht den DSCPs. Das IPQoS-konforme System markiert die Prioritätsstufenbits des DS-Felds im Paket-Header mit den DSCP. Empfängt ein Router ein Paket mit einem DSCP-Wert, wendet der Router das dem DSCP zugeordnete Weiterleitungsverhalten an. Anschließend wird das Paket für das Netzwerk freigegeben.


Hinweis –

Der dlcosmk-Marker verwendet keine DSCP. Stattdessen markiert dlcosmk die Ethernet-Frameheader mit einem CoS-Wert. Wenn Sie beabsichtigen, IPQoS in einem Netzwerk zu konfigurieren, das VLAN-Geräte verwendet, lesen Sie Markermodul.


Per-Hop-Behaviors

In der Diffserv-Terminologie wird das einem DSCP zugeordnete Weiterleitungsverhalten als Per-Hop-Behavior (PHB) bezeichnet. Das PHB definiert die Prioritätsstufe der Weiterleitung, die ein markiertes Paket in Relation zu anderem Datenverkehr in einem Diffserv-konformen Systemen empfängt. Diese Prioritätsstufe legt maßgeblich fest, ob das IPQoS-konforme System oder der Diffserv-Router das markierte Paket weiterleitet oder abwirft. Bei einem weitergeleiteten Paket wendet jeder Diffserv-Router auf der Route des Pakets zu seinem Ziel das gleiche PHB an. Eine Ausnahme ist, wenn ein anderes Diffserv-System den DSCP ändert. Weitere Informationen zu PHBs finden Sie unter Verwenden des Markers dscpmk zum Weiterleiten von Paketen.

Das Ziel eines PHB besteht darin, einen bestimmten Teil an Netzwerkressourcen für eine Verkehrsklasse im angrenzenden Netzwerk bereitzustellen. Dieses Ziel erreichen Sie mit der QoS-Richtlinie. Definieren Sie DSCPs, die die Prioritätsstufen für Verkehrsklassen kennzeichnen, wenn Verkehrswerte das IPQoS-konforme System verlassen. Prioritätsstufen können im Bereich von einer high/low-drop-Wahrscheinlichkeit bis zu einer low/high-drop-Wahrscheinlichkeit definiert werden.

Beispielsweise kann Ihre QoS-Richtlinie einer Verkehrsklasse einen DSCP zuweisen, der ein low-drop PHB garantiert. Diese Verkehrsklasse erhält dann ein low-drop PHB von jedem Diffserv-konformen Router, der Paketen dieser Klasse Bandbreite garantiert. Sie können die QoS-Richtlinie anderen DSCPs hinzufügen, die anderen Verkehrsklassen wechselnde Prioritätsstufen zuweisen. Paketen mit geringerer Prioritätsstufe erhalten von den Diffserv-Systemen Bandbreite gemäß den Prioritäten, die in den DSCPs der Pakete angegeben sind.

IPQoS unterstützt zwei Arten von Weiterleitungsverhalten, die in der Diffserv-Architektur definiert sind: Expedited Forwarding und Assured Forwarding.

Expedited Forwarding

Das Expedited Forwarding (EF) Per-Hop-Behavior stellt sicher, dass eine Verkehrsklasse mit EFs-bezogenem DSCP die höchste Priorität erhält. Verkehr mit einem EF DSCP wird nicht in eine Warteschlange gestellt. EF bietet geringen Verlust, Latenzzeit und Jitter. Der empfohlene DSCP für EF ist 101110. Ein Paket, das mit 101110 markiert ist, erhält eine garantierte low-drop-Prioritätsstufe, wenn das Paket auf der Route zum Ziel auf Diffserv-konforme Netzwerke trifft. Verwenden Sie das EF DSCP, wenn Sie Kunden oder Anwendungen mit einem Premium-SLA Priorität zuweisen.

Assured Forwarding

Das Assured Forwarding (AF) Per-Hop-Behavior bietet vier unterschiedliche Weiterleitungsklassen, die Sie einem Paket zuweisen können. Jede Weiterleitungsklasse bietet drei drop-Prioritätsstufen, die in Tabelle 37–2 aufgeführt sind.

Die verschiedenen AF Codepoints bieten die Möglichkeit, Kunden und Anwendungen unterschiedliche Serviceebenen zuzuweisen. In der QoS-Richtlinie können Sie schon bei der Planung Verkehr und Services in Ihren Netzwerk priorisieren. Dann können Sie dem priorisierten Verkehr unterschiedliche AF-Ebenen zuweisen.

Paketweiterleitung in einer Diffserv-Umgebung

Die folgende Abbildung zeigt einen Teil eines Unternehmens-Intranets mit einer teilweise Diffserv-konformen Umgebung. In diesem Szenario sind alle Hosts in den Netzwerken 10.10.0.0 und 10.14.0.0 IPQoS-konform und die lokalen Router in beiden Netzwerken sind Diffserv-konform. Jedoch sind die Zwischennetzwerke nicht für Diffserv konfiguriert.

Abbildung 32–2 Paketweiterleitung über Diffserv-konforme Netzwerk-Hops

Der Kontext folgt unter der Grafik, bei der es sich um ein Ablaufdiagramm handelt

Die nächsten Schritte verfolgen den Verlauf des in der Abbildung gezeigten Pakets. Die Schritte beginnen mit dem Fortschritt eines Pakets, das seinen Ursprung bei Host ipqos1 hat. Die nächsten Schritte beschreiben den weiteren Verlauf über mehrere Hops zum Host ipqos2.

  1. Der Benutzer an ipqos1 führt den Befehl ftp aus, um auf Host ipqos2 zuzugreifen, der drei Hops entfernt ist.

  2. ipqos1 wendet seine QoS-Richtlinie an dem resultierenden Datenpaketstrom an. ipqos1 klassifiziert daraufhin erfolgreich den ftp-Verkehr.

    Der Systemadministrator hat eine Klasse für den gesamten abgehenden ftp-Verkehr erstellt, der seinen Ursprung im lokalen Netzwerk 10.10.0.0 hat. Verkehr für die ftp-Klasse wird das AF22 Per-Hop-Behavior zugewiesen: Klasse zwei, medium-drop-Prioritätsstufe. Für die ftp-Klasse ist eine Verkehrswertrate von 2Mbit/s konfiguriert.

  3. ipqos-1 misst den ftp-Datenfluss, um festzustellen, ob der Fluss die zulässige Rate von 2 Mbit/s überschreitet.

  4. Der Marker auf ipqos1 markiert die DS-Felder in den abgehenden ftp-Paketen mit dem 010100 DSCP, entsprechend dem AF22 PHB.

  5. Der Router diffrouter1 empfängt die ftp-Pakete. diffrouter1 prüft den DSCP. Wenn diffrouter1 überlastet ist, werden Pakete, die mit AF22 markiert sind, abgeworfen.

  6. ftp-Verkehr wird in Übereinstimmung mit dem Per-Hop-Behavior, das für AF22 in den diffrouter1-Dateien konfiguriert ist, an den nächsten Hop weitergeleitet.

  7. Der ftp-Verkehr durchläuft das Netzwerk 10.12.0.0 zum genrouter, der nicht Diffserv-konform ist. Hier erhält der Verkehr ein „Beste Leistung“-Weiterleitungsverhalten.

  8. genrouter übergibt den ftp-Verkehr an das Netzwerk 10.13.0.0. Hier wird er von diffrouter2 empfangen.

  9. diffrouter2 ist Diffserv-konform. Aus diesem Grund leitet der Router die ftp-Pakete in Übereinstimmung mit dem PHB, das in der Router-Richtlinie für AF22-Pakete definiert ist, an das Netzwerk weiter.

  10. ipqos2 empfängt den ftp-Verkehr. ipqos2 fordert als Nächstes den Benutzer an ipqos1 zur Eingabe von Benutzernamen und Passwort auf.

Kapitel 33 Planen eines IPQoS-konformen Netzwerks (Aufgaben)

Sie können IPQoS auf jedem System konfigurieren, auf dem Oracle Solaris ausgeführt wird. Das IPQoS-System arbeitet dann mit Diffserv-konformen Routern, um Differentiated Services und Verkehrsmanagement in einem Intranet bereitzustellen.

In diesem Kapitel sind die Planungsaufgaben zum Hinzufügen von IPQoS-konformen Systemen zu einem Diffserv-konformen Netzwerk aufgeführt. In diesem Kapitel werden folgende Themen behandelt.

Planen einer allgemeinen IPQoS-Konfiguration (Übersicht der Schritte)

Das Umsetzen von Differentiated Services, einschließlich IPQoS, in einem Netzwerk erfordert umfangreiche Planung. Sie müssen nicht nur Position und Funktion aller IPQoS-konformen Systemen berücksichtigen, sondern auch die Beziehung jedes Systems zum Router im lokalen Netzwerk. In der folgenden Tabelle sind die wichtigsten Planungsaufgaben für die Implementierung von IPQoS in Ihrem Netzwerk sowie Links zu Verfahren zur Durchführung der Aufgaben aufgeführt.

Aufgabe 

Beschreibung 

Siehe 

1. Planen einer Diffserv-Netzwerktopologie, die IPQoS-konforme Systeme enthält. 

Lernen Sie die verschiedenen Diffserv-Netzwerktopologien kennen, um die beste Lösung für Ihren Standort zu ermitteln. 

Planen der Diffserv-Netzwerktopologie.

2. Planen der verschiedenen Servicetypen, die von den IPQoS-Systemen bereitgestellt werden sollen. 

Strukturieren Sie die Servicetypen, die das Netzwerk anbieten soll, in Service-Level Agreements (SLAs). 

Planen der Quality of Service-Richtlinie.

3. Planen der QoS-Richtlinie für jedes IPQoS-System. 

Treffen Sie Entscheidungen hinsichtlich der Klassen und der Meter- und Accounting-Funktionen, die zur Umsetzung jeder SLA erforderlich sind. 

Planen der Quality of Service-Richtlinie.

4. Wenn anwendbar, planen der Richtlinie für den Diffserv-Router. 

Treffen Sie Entscheidungen zu den Scheduling- und Queuing-Richtlinien für den Diffserv-Router, die mit den IPQoS-Systemen verwendet werden. 

Informationen zu den Queuing- und Scheduling-Richtlinien entnehmen Sie der Router-Dokumentation. 

Planen der Diffserv-Netzwerktopologie

Um in Ihrem Netzwerk Differentiated Services bereitstellen zu können, müssen Sie mindestens ein IPQoS-konformes System und einen Diffserv-konformen Router konfigurieren. Sie können dieses Basisszenario auf verschiedene Arten erweitern. Informationen hierzu finden Sie in diesem Abschnitt.

Hardware-Strategien für das Diffserv-Netzwerk

In der Regel führen Kunden IPQoS auf Servern und Server-Konsolidierungen, z. B. dem Sun Enterprise™ 0000-Server aus. Umgekehrt können Sie IPQoS abhängig von den Anforderungen Ihres Netzwerks auf Desktopsystemen wie UltraSPARC®-Systemen ausführen. In der folgenden Liste sind mögliche Systeme für eine IPQoS-Konfiguration aufgeführt:

Sie können IPQoS-Systeme auch in eine Netzwerktopologie mit bereits ordnungsgemäß arbeitenden Diffserv-konformen Routern einführen. Falls Ihr Router derzeit keine Diffserv anbietet, sollten Sie den Einsatz von Diffserv-Lösungen in Betracht ziehen, die von Cisco Systems, Juniper Networks und anderen Router-Herstellern angeboten werden. Wenn Ihr lokaler Router keine Diffserv implementiert, übergibt der Router markierte Pakete an den nächsten Hop, ohne die Marker auszuwerten.

IPQoS-Netzwerktopologien

Dieser Abschnitt zeigt IPQoS-Strategien für verschiedene Netzwerkanforderungen.

IPQoS auf einzelnen Hosts

Die folgende Abbildung zeigt ein einzelnes Netzwerk mit IPQoS-konformen Systemen.

Abbildung 33–1 IPQoS-Systeme in einem Netzwerksegment

Das Topologiediagramm zeigt ein lokales Netzwerk mit einem Diffserv-Router und drei IPQoS-konforme Systeme: FTP-Server, Datenbankserver und ein Webserver.

Dieses Netzwerk ist ein Segment eines Unternehmens-Intranets. Durch Aktivieren von IPQoS auf den Anwendungsservern und Webservern können Sie die Rate kontrollieren, mit der jedes IPQoS-System abgehenden Verkehr freigibt. Wenn Sie den Router Diffserv-konform konfigurieren, können Sie eingehenden und abgehenden Verkehr weiter kontrollieren.

Die Beispiele in diesem Handbuch basieren auf dem Szenario „IPQoS auf einem einzelnen Host“. Die in diesem Handbuch verwendete Beispieltopologie finden Sie in Abbildung 33–4.

IPQoS in einem Netzwerk aus Serverfarmen

Die folgende Abbildung zeigt ein Netzwerk mit mehreren heterogenen Serverfarmen.

Abbildung 33–2 Netzwerk mit IPQoS-konformen Serverfarmen

Das Topologiediagramm zeigt ein Netzwerk mit einem Diffserv-Router, einen IPQoS-konformen Load-Balancer und drei Serverfarmen.

In einer solchen Topologie ist der Router Diffserv-konform und somit in der Lage, sowohl eingehenden als auch abgehenden Verkehr in eine Warteschlange zu stellen und zu berechnen. Auch der Load-Balancer ist Diffserv-konform und die Serverfarmen sind IPQoS-konform. Der Load-Balancer kann mithilfe von Selektoren wie der Benutzer-ID und der Projekt-ID zusätzliche Filteraufgaben über den Router hinaus wahrnehmen. Diese Selektoren sind in den Anwendungsdaten enthalten.

Dieses Szenario bietet Verkehrssteuerung und -weiterleitung, um Überlastungen im lokalen Netzwerk zu vermeiden. Darüber hinaus verhindert dieses Szenario, das von den Serverfarmen abgehender Verkehr andere Teile des Intranets überlastet.

IPQoS und Firewalls

Die folgende Abbildung zeigt ein Segment eines Unternehmensnetzwerks, das von anderen Segmenten wird durch eine Firewall gesichert ist.

Abbildung 33–3 Durch eine IPQoS-konforme Firewall geschütztes Netzwerk

Das Topologiediagramm zeigt ein Netzwerk mit einem Diffserv-Router, einer IPQoS-konformen Firewall, einem Oracle Solaris-System und weiteren Hosts.

In diesem Szenario trifft der Verkehrswert bei einem Diffserv-konformen Router an, der die Pakete filtert und in eine Warteschlange stellt. Der gesamte eingehende Verkehr, der über den Router weitergeleitet wird, durchläuft eine IPQoS-konforme Firewall. Um IPQoS zu verwenden, darf die Firewall den IP-Weiterleitungsstapel nicht umgehen.

Die Sicherheitsrichtlinie der Firewall legt fest, ob eingehender Verkehr in das interne Netzwerk eintreten oder es verlassen darf. Die QoS-Richtlinie kontrolliert die Serviceebenen für eingehenden Verkehr, der die Firewall passiert hat. Abhängig von der QoS-Richtlinie kann abgehender Verkehr ebenfalls mit einem Weiterleitungsverhalten versehen werden.

Planen der Quality of Service-Richtlinie

Wenn Sie die Quality of Service (QoS)-Richtlinie planen, müssen Sie die von Ihrem Netzwerk angebotenen Services prüfen, klassifizieren und priorisieren. Außerdem müssen Sie die verfügbare Bandbreite bewerten, um die Rate festzulegen, mit der jede Verkehrsklasse im Netzwerk freigegeben wird.

Hilfen bei der Planung einer QoS-Richtlinie

Sammeln Sie Informationen zur Planung der QoS-Richtlinie in einem Format, das die Informationen umfasst, die für die IPQoS-Konfigurationsdatei erforderlich sind. Verwenden Sie beispielsweise die folgende Vorlage, um die wichtigsten der in der IPQoS-Konfigurationsdatei verwendeten Informationskategorien aufzulisten.

Tabelle 33–1 Vorlage zur Planung einer QoS-Richtlinie

Klasse 

Priorität 

Filter 

Selektor 

Rate 

Weiterleitung? 

Accounting? 

Klasse 1 

Filter 1 

Filter 3 

Selektor 1 

Selektor 2 

Meterraten, abhängig vom Metertyp 

Marker drop-Prioritätsstufe 

Erfordert Flow Accounting-Statistiken 

Klasse 1 

Filter 2 

Selektor 1 

Selektor 2 

 

entf. 

entf. 

entf. 

Klasse 2 

Filter 1 

Selektor 1 

Selektor 2 

Meterraten, abhängig vom Metertyp 

Marker drop-Prioritätsstufe 

Erfordert Flow Accounting-Statistiken 

Klasse 2 

Filter 2 

Selektor 1 

Selektor 2 

entf. 

entf. 

entf. 

Sie können jede Hauptkategorie weiter unterteilen, um die QoS-Richtlinie genauer zu definieren. In den nachfolgenden Abschnitten wird beschrieben, wie Sie die Informationen für die in der Vorlage beschriebenen Kategorien beziehen.

Planen einer QoS-Richtlinie (Übersicht der Schritte)

In der folgenden Tabelle sind die wichtigsten Aufgaben zur Planung einer QoS-Richtlinie sowie Links zu den Anleitungen zur Durchführung der einzelnen Aufgaben aufgeführt.

Aufgabe 

Beschreibung 

Siehe 

1. Entwerfen Ihrer Netzwerktopologie zur Unterstützung von IPQoS. 

Identifizieren Sie die Hosts und Router in Ihrem Netzwerk, um Differentiated Services bereitzustellen. 

So bereiten Sie ein Netzwerk für IPQoS vor

2. Definieren der Klassen, in die die Services in Ihrem Netzwerk aufgeteilt werden. 

Prüfen Sie die von Ihrem Standort angebotenen Servicetypen und SLAs, und legen Sie die einzelnen Verkehrsklassen fest, in die diese Services fallen. 

So definieren Sie die Klassen für Ihre QoS-Richtlinie

3. Definieren der Filter für die Klassen. 

Ermitteln Sie die am besten geeigneten Möglichkeiten zum Trennen von Datenverkehr einer bestimmten Klasse vom Netzwerk-Verkehrswert. 

So definieren Sie Filter in der QoS-Richtlinie

4. Definieren von Datenfluss-Steuerungsraten zur Messung von Verkehr, während Pakete das IPQoS-System verlassen. 

Legen Sie akzeptable Datenflussraten für jede Verkehrsklasse fest. 

So planen Sie die Verkehrssteuerung

5. Definieren der DSCPs oder Benutzerpriorität-Werte, die in der QoS-Richtlinie verwendet werden. 

Planen Sie ein Schema, um das Weiterleitungsverhalten festzulegen, das einem Verkehrswert zugeordnet wird, wenn der Fluss von einem Router oder einem Switch verarbeitet wird. 

So planen Sie das Weiterleitungsverhalten

6. Wenn anwendbar, Einrichten eines Plans zur Überwachung der Statistiken für die Verkehrswerte im Netzwerk. 

Werten Sie die Verkehrsklassen aus, um festzustellen, welche Verkehrswerte für Accounting- oder statistische Zwecke überwacht werden müssen. 

So planen Sie das Flow Accounting


Hinweis –

Im weiteren Verlauf dieses Abschnitts wird erklärt, wie Sie die QoS-Richtlinie eines IPQoS-konformen Systems planen. Informationen zur Planung der QoS-Richtlinie für den Diffserv-Router entnehmen Sie bitte der Router-Dokumentation und der Website des Router-Herstellers.


ProcedureSo bereiten Sie ein Netzwerk für IPQoS vor

Im folgenden Verfahren sind die allgemeinen Planungsaufgaben zum Erstellen der QoS-Richtlinie beschrieben.

  1. Erstellen Sie eine Übersicht Ihrer Netzwerktopologie. Dann planen Sie eine Strategie, die IPQoS-Systeme und Diffserv-Router eingesetzt.

    Topologiebeispiele finden Sie unter Planen der Diffserv-Netzwerktopologie.

  2. Kennzeichnen Sie die Hosts in der Topologie, die IPQoS erfordern oder sich für den IPQoS-Service eignen.

  3. Stellen Sie fest, welche IPQoS-konformen Systemen die gleiche QoS-Richtlinie verwenden können.

    Wenn Sie beabsichtigen, IPQoS auf allen Hosts im Netzwerk zu aktivieren, kennzeichnen Sie alle Hosts, die die gleiche QoS-Richtlinie verwenden können. Jedes IPQoS-konforme System muss über eine lokale QoS-Richtlinie verfügen, die in dessen IPQoS-Konfigurationsdatei implementiert ist. Sie können jedoch auch eine IPQoS-Konfigurationsdatei erstellen, die von mehreren Systemen verwendet wird. Dann kopieren Sie die Konfigurationsdatei auf jedes System mit dem gleichen Anforderungen an eine QoS-Richtlinie.

  4. Erstellen Sie eine Übersicht aller Planungsaufgaben, die für den Diffserv-Router in Ihrem Netzwerk erforderlich sind, und führen Sie sie aus.

    Einzelheiten entnehmen Sie bitte der Router-Dokumentation und der Website des Router-Herstellers.

ProcedureSo definieren Sie die Klassen für Ihre QoS-Richtlinie

Der erste Schritt beim Definieren der QoS-Richtlinie ist das Strukturieren der Verkehrswerte in Klassen. Es ist nicht erforderlich, für jeden Verkehrstyp in einem Diffserv-Netzwerk eine Klasse zu erstellen. Darüber hinaus müssen Sie, abhängig von Ihrer Netzwerktopologie, eventuell für jedes IPQoS-konforme System eine andere QoS-Richtlinie erstellen.


Hinweis –

Eine Übersicht der Klassen finden Sie unter IPQoS-Klassen.


Für das nächste Verfahren wird davon ausgegangen, dass Sie festgelegt haben, welche Systeme in Ihrem Netzwerk IPQoS-konform sind. Informationen hierzu finden Sie unter So bereiten Sie ein Netzwerk für IPQoS vor.

  1. Erstellen Sie eine QoS-Planungstabelle zur Strukturierung der QoS-Richtlinieninformationen.

    Vorschläge finden Sie in Tabelle 33–1.

  2. Führen Sie die verbleibenden Schritte für jede QoS-Richtlinie in Ihrem Netzwerk aus.

  3. Definieren Sie die in der QoS-Richtlinie zu verwendenden Klassen.

    Die folgenden Fragen stellen eine Richtlinie zum Analysieren des Netzwerkverkehrs für mögliche Klassendefinitionen dar.

    • Bietet Ihr Unternehmen seinen Kunden Service-Level Agreements an?

      In diesem Fall bewerten Sie die relativen Prioritätsebenen der SLAs, die Ihr Unternehmen seinen Kunden anbietet. Die gleichen Anwendungen können Kunden angeboten werden, denen unterschiedliche Prioritätsebenen garantiert sind.

      Angenommen, Ihr Unternehmen bietet jedem Kunden Website-Hosting an. Dies bedeutet, dass Sie für jede Kunden-Website eine Klasse definieren müssen. Eine SLA kann eine Premium-Website als eine Serviceebene bereitstellen. Eine andere SLA bietet eventuell eine „Beste Leistung“ Personal-Website für Kunden zu einem Discountpreis an. Diese Faktoren deutet darauf hin, dass nicht nur unterschiedliche Websiteklassen, sondern diesen Websiteklassen auch potentiell unterschiedliche Per-Hop-Behaviors zugeordnet sind.

    • Bietet das IPQoS-Systemen populäre Anwendungen, die eine Verkehrssteuerung erfordern?

      Sie können die Netzwerkleistung verbessern, indem Sie IPQoS auf Servern aktivieren, die populäre Anwendungen bereitstellen, die hohen Netzverkehr erzeugen. Typische Beispiele sind E-Mail, Netzwerknachrichten und FTP. Ziehen Sie, sofern anwendbar, das Erstellen von separaten Klassen für eingehenden und abgehenden Verkehr für jeden Servicetyp in Betracht. Beispielsweise können Sie eine Klasse für eingehende Mail und eine Klasse für abgehende Mail für die QoS-Richtlinie eines Mailservers erstellen.

    • Führt Ihr Netzwerk bestimmte Anwendungen aus, die ein Weiterleitungsverhalten mit der höchsten Priorität erfordern?

      Jede kritische Anwendung, die ein Weiterleitungsverhalten mit höchster Priorität erfordert, muss die höchste Priorität in der Router-Warteschlange erhalten. Typische Beispiele sind Streaming-Video und Streaming-Audio.

      Definieren Sie eingehende Klassen und abgehende Klassen für diese Anwendungen mit höchster Priorität. Dann fügen Sie die Klassen zu den QoS-Richtlinien auf dem IPQoS-konformen System, das als Server für die Anwendungen dient, sowie zum Diffserv-Router hinzu.

    • Treten in Ihrem Netzwerk Verkehrsströme auf, die gesteuert werden müssen, da sie einen Großteil der Bandbreite konsumieren?

      Verwenden Sie netstat, snoop und andere Serviceprogramme zur Netzwerküberwachung, um Verkehr zu identifizieren, der zu Problemen im Netzwerk führen kann. Erstellen Sie eine Übersicht der bisher erstellten Klassen und erstellen Sie neue Klassen für eine Verkehrskategorie, die nicht näher definierte Probleme erzeugt. Wenn Sie bereits Klassen für eine Kategorie problembehafteten Verkehrs erzeugt haben, definieren Sie Raten für den Meter, mit denen der problembehaftete Verkehr kontrolliert wird.

      Erstellen Sie Klassen für den problembehafteten Verkehr auf jedem IPQoS-konformen Systemen im Netzwerk. Jedes IPQoS-System kann daraufhin problembehafteten Verkehr verarbeiten, indem es die Rate begrenzt, mit der der Verkehrswert in das Netzwerk freigegeben wird. Denken Sie daran, diese Problemklassen auch in der QoS-Richtlinie auf dem Diffserv-Router zu definieren. Der Router kann dann die problembehafteten Datenströme gemäß der Konfiguration in seiner QoS-Richtlinie in eine Warteschlange stellen und einplanen.

    • Müssen Sie Statistiken zu bestimmten Verkehrstypen beziehen?

      Eine schnelle Überprüfung einer SLA bringt zum Vorschein, für welche Arten von Kundenverkehr Accounting erforderlich ist. Wenn Ihr Standort SLAs anbietet, haben Sie wahrscheinlich Klassen für den Verkehr erstellt, für den Accounting erforderlich ist. Darüber hinaus müssen Sie eventuell Klassen erstellen, um das Erfassen von Statistiken zu überwachten Verkehrswerten zu ermöglichen. Sie können auch Klassen für Verkehr erstellen, auf den der Zugriff aus Sicherheitsgründen eingeschränkt werden soll.

  4. Erstellen Sie eine Übersicht der von Ihnen definierten Klassen in der QoS-Planungstabelle, die Sie in Schritt 1 erstellt haben.

  5. Weisen Sie jeder Klasse eine Prioritätsebene zu.

    Beispielsweise könnte Prioritätsebene 1 die höchste Prioritätsklasse darstellen. Weisen Sie den verbleibenden Klassen niedrigere Prioritätsebenen zu. Die von Ihnen zugewiesene Prioritätsebene dient nur zu organisatorischen Zwecken. Prioritätsebenen, die Sie in der QoS-Richtlinienvorlage aufstellen, werden nicht tatsächlich vom IPQoS verwendet. Darüber hinaus können Sie mehreren Klassen die gleiche Priorität zuweisen, falls dies für Ihre QoS-Richtlinie geeignet ist.

  6. Nachdem die Klassendefinition abgeschlossen ist, beginnen Sie mit der Definition von Filtern für jede Klasse. Dies ist unter So definieren Sie Filter in der QoS-Richtlinie beschrieben.

Priorisieren der Klassen

Beim Erstellen von Klassen werden Sie schnell feststellen, welche Klassen die höchste Priorität, eine mittlere Priorität und eine „Beste Leistung“-Priorität erhalten sollen. Ein gut geeignetes Schema zur Priorisierung von Klassen wird insbesondere dann wichtig, wenn Sie abgehenden Verkehr ein Per-Hop-Behavior zuweisen. Dies wird unter So planen Sie das Weiterleitungsverhalten beschrieben.

Neben dem Zuweisen eines PHB zu einer Klasse können Sie auch einen Prioritätsselektor in einem Filter für die Klasse definieren. Der Prioritätsselektor ist nur auf dem IPQoS-konformen Host aktiv. Angenommen, einige Klassen mit gleichen Raten und identischen DSCPs stehen beim Verlassen des IPQoS-Systems im Wettbewerb um Bandbreite. Der Prioritätsselektor in jeder Klasse kann die Serviceebene anderweitig identisch bewerteter Klassen weiter aufschlüsseln.

Definieren von Filtern

Sie erstellen Filter, um die Mitgliedschaft des Paketflusses bei einer bestimmten Klasse zu identifizieren. Jeder Filter enthält Selektoren, die Kriterien zur Bewertung eines Paketflusses definieren. Das IPQoS-konforme System verwendet die Kriterien in den Selektoren, um Pakete aus einem Verkehrswert zu extrahieren. Dann weist das IPQoS-System die Pakete einer Klasse zu. Eine Einführung in das Konzept der Filter finden Sie unter IPQoS-Filter.

In der folgenden Tabelle sind die am häufigsten verwendeten Selektoren aufgeführt. Die ersten fünf Selektoren stellen das IPQoS 5-Tuple dar, das vom IPQoS-System verwendet wird, um Pakete als Mitglieder eines Datenflusses zu identifizieren. Eine vollständige Liste der Selektoren finden Sie in Tabelle 37–1.

Tabelle 33–2 Allgemeine IPQoS-Selektoren

Name 

Definition 

saddr

Quelladresse. 

daddr

Zieladresse. 

sport

Ursprungs-Portnummer. Sie können eine bekannte Portnummer gemäß der Definition in /etc/services oder eine benutzerdefinierte Portnummer verwenden.

dport

Ziel-Portnummer. 

protocol

IP-Protokollnummer oder Protokollname, der dem Verkehrswerttyp in /etc/protocols zugewiesen ist.

ip_version

Zu verwendender Adressierungstyp. Verwenden Sie entweder IPv4 oder IPv6. IPv4 ist die Standardeinstellung. 

dsfield

Inhalt des DS-Felds, das heißt, der DSCP. Verwenden Sie diesen Selektor zum Extrahieren eingehender Pakete, die bereits mit einem bestimmten DSCP markiert sind. 

priority

Prioritätsebene, die der Klasse zugewiesen ist. Weitere Informationen finden Sie unter So definieren Sie die Klassen für Ihre QoS-Richtlinie.

user

Entweder die UNIX-Benutzer-ID oder der Benutzername, der beim Ausführen der Anwendung auf höherer Ebene verwendet wird. 

projid

Projekt-ID, die beim Ausführen der Anwendung auf höherer Ebene verwendet wird. 

direction

Die Richtung des Verkehrswerts. Gültige Werte sind entweder LOCAL_IN, LOCAL_OUT, FWD_IN oder FWD_OUT.


Hinweis –

Selektoren sollten nur nach sorgfältigen Überlegungen zugewiesen werden. Verwenden Sie nur so viele Selektoren, wie Sie zum Extrahieren der Pakete für eine Klasse benötigen. Je mehr Selektoren Sie definieren, desto größer sind die Auswirkungen auf die IPQoS-Performance.


ProcedureSo definieren Sie Filter in der QoS-Richtlinie

Bevor Sie beginnen

Bevor Sie die nächsten Schritte ausführen, sollten Sie das Verfahren So definieren Sie die Klassen für Ihre QoS-Richtlinie vollständig abgeschlossen haben.

  1. Definieren Sie mindestens einen Filter für jede Klasse in der QoS-Planungstabelle, die Sie unter So definieren Sie die Klassen für Ihre QoS-Richtlinie erstellt haben.

    Denken Sie daran, sofern anwendbar, separate Filter für eingehende und abgehenden Verkehr für jede Klasse zu erstellen. Fügen Sie beispielsweise einen Filter für ftp-in und einen Filter für ftp-out in die QoS-Richtlinie eines IPQ-konformen FTP-Servers ein. Dann können Sie zusätzlich zu den allgemeinen Selektoren einen geeigneten direction-Selektor definieren.

  2. Definieren Sie mindestens einen Selektor für jeden Filter in einer Klasse.

    Verwenden Sie die in Tabelle 33–1 eingeführte QoS-Planungstabelle, um Filter für die von Ihnen definierten Klassen einzufügen.


Beispiel 33–1 Definieren von Filtern für FTP-Verkehr

In der folgenden Tabelle, die als Beispiel dient, wird gezeigt, wie Sie einen Filter für abgehenden FTP-Verkehr definieren.

Klasse 

Priorität 

Filter 

Selektoren 

ftp-traffic

ftp-out

saddr 10.190.17.44

daddr 10.100.10.53

sport 21

direction LOCAL_OUT


Siehe auch

ProcedureSo planen Sie die Verkehrssteuerung

Die Verkehrssteuerung umfasst das Messen des Verkehrswerts für eine Klasse sowie das Freigeben der Pakete mit einer definierten Rate in das Netzwerk. Beim Planen einer Verkehrssteuerung definieren Sie die Parameter, die von den IPQoS-Metermodule verwendet werden sollen. Die Metermodule bestimmen die Rate, mit der Verkehr in das Netzwerk freigegeben wird. Eine Einführung in das Konzept der Metermodule finden Sie unter Meter (tokenmt und tswtclmt) – Übersicht.

Im folgenden Verfahren wird davon ausgegangen, dass Sie Filter und Selektoren bereits definiert haben. Dies wird unter So definieren Sie Filter in der QoS-Richtlinie beschrieben.

  1. Ermitteln Sie die maximale Bandbreite Ihres Netzwerks.

  2. Erstellen Sie eine Übersicht aller SLAs, die von Ihrem Netzwerk unterstützt werden. Identifizieren Sie die Kunden und den Servicetyp, der jedem Kunden garantiert ist.

    Um eine bestimmte Serviceebene zu garantieren, müssen Sie die vom Kunden erzeugten bestimmten Verkehrsklassen messen.

  3. Erstellen Sie eine Übersicht der Klassen, die Sie unter So definieren Sie die Klassen für Ihre QoS-Richtlinie erstellt haben.

    Stellen Sie fest, ob weitere Klassen außer den SLAs zugewiesenen Klassen gemessen werden müssen.

    Angenommen, das IPQoS-System führt eine Anwendung aus, die starken Datenverkehr erzeugt. Nachdem Sie den Verkehr der Anwendung klassifiziert haben, messen Sie die Datenströme, um die Rate zu steuern, mit der die Pakete des Datenflusses in das Netzwerk zurückkehren.


    Hinweis –

    Nicht alle Klassen müssen gemessen werden. Beachten Sie dies beim Erstellen einer Übersicht Ihrer Klassen.


  4. Ermitteln Sie, welche Filter in jeder Klasse den Datenverkehr auswählen, für den eine Verkehrssteuerung erforderlich ist. Dann passen Sie die Liste der Klassen an, für die eine Messung erforderlich ist.

    Klassen mit mehreren Filtern erfordern eventuell nur Messungen für einen Filter. Angenommen, Sie definieren Filter für eingehenden und abgehenden Datenverkehr einer bestimmten Klasse. Dann stellen Sie fest, dass die Verkehrssteuerung nur für den Datenverkehr in eine Richtung erforderlich ist.

  5. Wählen Sie ein Metermodul für jede Klasse, für die eine Verkehrssteuerung erforderlich ist.

    Fügen Sie den Modulnamen zur Spalte für das Metermodul in Ihrer QoS-Planungstabelle hinzu.

  6. Fügen Sie die Raten für jede zu messende Klasse in die Organisationstabelle ein.

    Wenn Sie das Modul tokenmt verwenden, müssen Sie die folgenden Raten in Bit pro Sekunde definieren:

    • Committed Rate

    • Peak Rate

    Wenn diese Raten ausreichen, um eine bestimmte Klasse zu messen, brauchen Sie nur die Committed Rate und in den Committed Burst für tokenmt definieren.

    Falls erforderlich, können Sie auch die folgenden Raten definieren:

    • Committed Burst

    • Peak Burst

    Eine vollständige Definition der tokenmt-Raten finden Sie unter Konfiguration von tokenmt als Two-Rate Meter. Ausführliche Informationen finden Sie auch in der Manpage tokenmt (7ipp).

    Wenn Sie das Modul tswtclmt verwenden, müssen Sie die folgenden Raten in Bit pro Sekunde definieren.

    • Committed Rate

    • Peak Rate

    Sie können auch die Fenstergröße in Millisekunden definieren. Diese Raten sind unter tswtclmt-Metermodul und in der Manpage twstclmt(7ipp) definiert.

  7. Fügen Sie das Ergebnis der Datenverkehr-Konformität für den gemessenen Verkehr hinzu.

    Das Ergebnis für beide Metermodule ist entweder grün, rot oder gelb. Fügen Sie Ihrer QoS-Organisationstabelle das Ergebnis für die Datenverkehr-Konformität hinzu, die für die von Ihnen definierten Raten gelten. Ergebnisse für die Metermodule sind unter Metermodul genauer beschrieben.

    Sie müssen festlegen, welche Aktionen für Verkehr durchgeführt werden soll, der der Committed Rate entspricht bzw. nicht entspricht. Häufig, aber nicht immer, ist diese Aktion das Markieren des Paket-Headers mit einem Per-Hop-Behavior. Eine akzeptable Aktion für Verkehr auf grüner Ebene ist das Fortsetzen der Verarbeitung, solange die Verkehrswerte die Committed Rate nicht überschreiten. Eine andere Aktion wäre das Abwerfen von Paketen einer Klasse, wenn Datenflüsse die Peak Rate überschreiten.


Beispiel 33–2 Definieren von Metermodulen

In der folgenden Tabelle, die als Beispiel dient, sind die Meter-Einträge für eine Klasse mit E-Mail-Verkehr aufgeführt. Das Netzwerk, in dem sich das IPQoS-Systemen befindet, verfügt über eine gesamte Bandbreite von 100 Mbit/s oder 10000000 Bit pro Sekunde. Die QoS-Richtlinie weist der E-Mail-Klasse eine niedrige Priorität zu. Darüber hinaus erhält diese Klasse das Weiterleitungsverhalten „Beste Leistung“.

Klasse 

Priorität 

Filter 

Selektor 

Rate 

email

mail_in

daddr10.50.50.5

dport imap

direction LOCAL_IN

 

email

mail_out

saddr10.50.50.5

sport imap

direction LOCAL_OUT

meter=tokenmt

Committed Rate=5000000 

Committed Burst =5000000 

Peak Rate =10000000 

Peak Burst=1000000 

Prioritätsstufe grün=Verarbeitung fortsetzen 

Prioritätsstufe gelb=mit gelbem PHB markieren 

Prioritätsstufe rot=Abwerfen 


Siehe auch

ProcedureSo planen Sie das Weiterleitungsverhalten

Das Weiterleitungsverhalten bestimmt die Priorität und Drop-Prioritätsstufe von Verkehrswerten, die in das Netzwerk weitergeleitet werden sollen. Grundsätzlich können Sie zwischen zwei Weiterleitungsverhalten wählen: Priorisieren der Datenströme einer Klasse in Relation zu anderen Verkehrsklassen oder vollständiges Abwerfen der Datenflüsse.

Das Diffserv-Modell verwendet den Marker, um Verkehrswerten das ausgewählte Weiterleitungsverhalten zuzuweisen. IPQoS bietet die folgenden Markermodule.


Hinweis –

Die Vorschläge in diesem Abschnitt beziehen sich speziell auf IP-Pakete. Wenn Ihr IPQoS-System ein VLAN-Gerät umfasst, können Sie den Marker dlcosmk verwenden, um das Weiterleitungsverhalten für Datagramme festzulegen. Weitere Informationen hierzu finden Sie unter Verwenden des Markers dlcosmk mit VLAN-Geräten.


Um IP-Datenverkehr zu priorisieren, müssen Sie jedem Paket einen DSCP zuweisen. Der Marker dscpmk markiert das DS-Feld eines Pakets mit dem DSCP. Sie wählen den DSCP einer Klasse aus einer Gruppe bekannter Codepoints aus, die dem Weiterleitungsverhalten zugewiesen sind. Zu diesen bekannten Codepoints zählen 46 (101110) für das EF PHB und eine Reihe von Codepoints für den AF PHB. Eine Übersicht zu den DSCP und zur Weiterleitung finden Sie unter Verkehrsweiterleitung in einem IPQoS-konformen Netzwerk.

Bevor Sie beginnen

Bei den nächsten Schritten wird davon ausgegangen, dass Sie Klassen und Filter für die QoS-Richtlinie definiert haben. Obwohl Sie den Meter mit dem Marker zur Steuerung von Datenverkehr verwenden werden, können Sie den Marker auch separat einsetzen, um ein Weiterleitungsverhalten zu definieren.

  1. Erstellen Sie eine Übersicht der bereits erstellten Klassen und die Prioritäten, die Sie jeder Klasse zugewiesen haben.

    Nicht alle Verkehrsklassen müssen markiert werden.

  2. Weisen Sie der Klasse mit der höchsten Priorität das EF Per-Hop-Behavior zu.

    Das EF PHB garantiert, dass Pakete mit dem EF DSCP 46 (101110) vor Paketen mit AF PHBs in das Netzwerk freigegeben werden. Verwenden Sie das EF PHB für Datenverkehr mit der höchste Priorität. Weitere Informationen zum EF finden Sie unter Expedited Forwarding (EF) PHB.

  3. Weisen Sie den Klassen, deren Datenverkehr gemessen werden muss, ein Weiterleitungsverhalten zu.

  4. Weisen Sie den verbleibenden Klassen in Übereinstimmung mit den Prioritäten, die Sie diesen Klassen zugewiesen haben, DS Codepoints zu.


Beispiel 33–3 QoS-Richtlinie für eine Spieleanwendung

Der Datenverkehr wird im Allgemeinen aus folgenden Gründen gemessen:

Sie können den Marker mit dem Meter verwenden, um diesen Klassen Differentiated Services und Bandbreitenverwaltung bereitzustellen. Die folgende Tabelle zeigt beispielsweise einen Teil der QoS-Richtlinie. Diese Richtlinie definiert eine Klasse für eine beliebte Spieleanwendung, die einen starken Datenverkehr erzeugt.

Klasse 

Priorität 

Filter 

Selektor 

Rate 

Weiterleitung? 

games_app

games_in

sport 6080

entf. 

entf. 

games_app

games_out

dport 6081

meter=tokenmt

Committed Rate=5000000 

Committed Burst =5000000 

Peak Rate =10000000 

Peak Burst=15000000 

Prioritätsstufe grün=Verarbeitung fortsetzen 

Prioritätsstufe gelb=mit gelbem PHB markieren 

Prioritätsstufe rot=Abwerfen 

grün =AF31 

gelb=AF42 

rot=drop 

Die Weiterleitungsverhalten weisen demgames_app-Datenverkehr, der seiner Committed Rate entspricht oder unter der Peak Rate liegt, DSCPs mit geringer Priorität zu. Wenn der games_app -Datenverkehr die Peak Rate übersteigt, gibt die QoS-Richtlinie an, dass Pakete von games_app abzuwerfen sind. Alle AF Codepoints sind in Tabelle 37–2 aufgeführt.


Siehe auch

ProcedureSo planen Sie das Flow Accounting

Sie verwenden das IPQoS-Modul flowacct, um Verkehrswerte zur Fakturierung und Netzwerkverwaltung zu verfolgen. Gehen Sie nach dem folgenden Verfahren vor, um festzustellen, ob Ihre QoS-Richtlinie das Flow Accounting umfassen soll.

  1. Bietet Ihr Unternehmen seinen Kunden SLAs an?

    In diesem Fall sollten Sie das Flow Accounting verwenden. Erstellen Sie eine Übersicht der SLAs, um festzustellen, welche Arten des Netzwerkverkehrs Ihr Unternehmen seinen Kunden in Rechnung stellen möchte. Dann prüfen Sie in Ihrer QoS-Richtlinie, welche Klassen zu berechnenden Verkehr auswählen.

  2. Gibt es Anwendungen, die überwacht oder überprüft werden müssen, um Netzwerkprobleme zu vermeiden?

    In diesem Fall sollten Sie das Flow Accounting einsetzen, um das Verhalten dieser Anwendungen zu beobachten. Ermitteln Sie in Ihrer QoS-Richtlinie die Klassen, denen Sie Verkehr zugewiesen haben, der überwacht werden muss.

  3. Kennzeichnen Sie jede Klasse, für die das Flow Accounting erforderlich ist, in Ihrer QoS-Planungstabelle mit einem „J“ in der Flow Accounting-Spalte.

Siehe auch

Einführung in das IPQoS-Konfigurationsbeispiel

Die Aufgaben in den verbleibenden Kapiteln dieses Handbuchs verwenden die in diesem Abschnitt vorgestellte IPQoS-Beispielkonfiguration. In diesem Beispiel wird gezeigt die Differentiated Services -Lösung im öffentlichen Intranet von BigISP, einem fiktiven Service Provider. BigISP bietet großen Unternehmen, die ihre Verbindungen zu BigISP über Standleitungen herstellen, Services an. Einzelpersonen, die sich über Modems einwählen, können ebenfalls Services von BigISP erwerben.

IPQoS-Topologie

Die folgende Abbildung zeigt die Netzwerktopologie des öffentlichen Intranet von BigISP.

Abbildung 33–4 IPQoS-Beispieltopologie

 Das Topologiediagramm zeigt zwei Benutzertypen, Unternehmen und Einzelpersonen, die auf ein ISP-Netzwerk zugreifen, das im folgenden Kontext beschrieben wird.

BigISP hat die folgenden vier Tiers in seinen öffentlichen Intranet implementiert:

Kapitel 34 Erstellen der IPQoS-Konfigurationsdatei (Aufgaben)

In diesem Kapitel wird gezeigt, wie Sie IPQoS-Konfigurationsdateien erstellen. Die folgenden Themen behandelt.

In diesem Kapitel wird davon ausgegangen, dass Sie eine vollständige QoS-Richtlinie definiert haben und bereit sind, diese Richtlinie als Basis für die IPQoS-Konfigurationsdatei zu verwenden. Anweisungen zur Planung einer QoS-Richtlinie finden Sie unter Planen der Quality of Service-Richtlinie.

Definieren einer QoS-Richtlinie in der IPQoS-Konfigurationsdatei (Übersicht der Schritte)

In der folgenden Tabelle sind die allgemeinen Aufgaben zum Erstellen einer IPQoS-Konfigurationsdatei aufgeführt, sowie die Links zu den Abschnitten, in denen die Schritte zum Durchführen dieser Aufgaben beschrieben sind.

Aufgabe 

Beschreibung 

Siehe 

1. Planen Ihrer IPQoS konformen Netzwerkkonfiguration. 

Entscheiden Sie, welche Systeme in lokalen Netzwerken IPQoS-konform werden sollen. 

So bereiten Sie ein Netzwerk für IPQoS vor

2. Planen der QoS-Richtlinie für IPQoS-Systeme in Ihrem Netzwerk. 

Kategorisieren Sie die Verkehrswerte in einzelne Serviceklassen. Dann legen Sie fest, für welchen Verkehr Verkehrsmanagement erforderlich ist. 

Planen der Quality of Service-Richtlinie

3. Erstellen der IPQoS-Konfigurationsdatei und Definieren der ersten Aktion. 

Erstellen Sie die IPQoS-Datei, rufen Sie den IP-Classifier auf und definieren Sie eine Klasse für die Verarbeitung. 

So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen

4. Erstellen von Filtern für eine Klasse. 

Fügen Sie die Filter hinzu, mit denen der Datenverkehr ausgewählt und in einer Klasse strukturiert wird. 

So definieren Sie Filter in der IPQoS-Konfigurationsdatei

5. Hinzufügen weiterer Klassen und Filter zur IPQoS-Konfigurationsdatei. 

Erstellen Sie weitere Klassen und Filter, die vom IP-Classifier bearbeitet werden. 

So erstellen Sie eine IPQoS-Konfigurationsdatei für einen Beste Leistung-Webserver

6. Hinzufügen einer action-Anweisung mit Parametern, mit der die Metermodule konfiguriert werden.

Wenn die QoS-Richtlinie eine Verkehrssteuerung verlangt, weisen Sie dem Meter Verkehrssteuerungraten und Konformitätsebenen zu. 

So konfigurieren Sie die Verkehrssteuerung in der IPQoS-Konfigurationsdatei

7. Hinzufügen einer action-Anweisung mit Parametern, mit der der Marker konfiguriert wird.

Wenn die QoS-Richtlinie differenzierte Weiterleitungsverhalten verlangt, legen Sie fest, wie Datenverkehrsklassen weitergeleitet werden sollen. 

So definieren Sie das Weiterleiten von Datenverkehr in der IPQoS-Konfigurationsdatei

8. Hinzufügen einer action-Anweisung mit Parametern, mit der die das Flow Accounting-Modul konfiguriert wird.

Wenn die QoS-Richtlinie Statistiken zu den Verkehrswerten verlangt, legen Sie fest, wie die Accounting-Statistiken gesammelt werden. 

So aktivieren Sie das Accounting für eine Klasse in der IPQoS-Konfigurationsdatei

9. Übernehmen der IPQoS-Konfigurationsdatei. 

Fügen Sie den Inhalt der angegebenen IPQoS-Konfigurationsdatei zu den entsprechenden Kernel-Modulen hinzu. 

So übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module

10. Konfigurieren des Weiterleitungsverhalten in den Router-Dateien. 

Wenn eine IPQoS-Konfigurationsdatei im Netzwerk das Weiterleitungsverhalten definiert, fügen Sie die resultierenden DSCPs zu den entsprechenden Scheduling-Dateien auf dem Router hinzu. 

So konfigurieren Sie einen Router in einem IPQoS-konformen Netzwerk

Tools zum Erstellen einer QoS-Richtlinie

Die QoS-Richtlinie für Ihr Netzwerk befindet sich in der IPQoS-Konfigurationsdatei. Diese Konfigurationsdatei erstellen Sie mit einem Texteditor. Dann stellen Sie die Datei als ein Argument für ipqosconf, dem IPQoS-Konfigurationsprogramm, bereit. Wenn Sie ipqosconf anweisen, die in Ihrer Konfigurationsdatei definierte Richtlinie anzuwenden, wird die Richtlinie in das Kernel-IPQoS-System geschrieben. Ausführliche Informationen zum Befehl ipqosconf finden Sie in der Manpage ipqosconf(1M). Anweisungen zur Verwendung von ipqosconf, finden Sie unter So übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module.

Allgemeine IPQoS-Konfigurationsdatei

Eine IPQoS-Konfigurationsdatei besteht aus mehreren action-Anweisungen, über die die QoS-Richtlinie umgesetzt wird, die Sie unter Planen der Quality of Service-Richtlinie definiert haben. Die IPQoS-Konfigurationsdatei konfiguriert die IPQoS-Module. Jede action-Anweisung enthält einen Satz mit Klassen, Filtern oder Parametern, die von dem Modul verarbeitet wird, das in der action-Anweisung aufgerufen wird.

Die vollständige Syntax der IPQoS-Konfigurationsdatei finden Sie in Beispiel 37–3 und in der Manpage ipqosconf(1M).

Konfigurieren der IPQoS-Beispieltopologie

Die Aufgaben in diesem Kapitel klären, wie die IPQoS-Konfigurationsdateien für drei IPQoS-konforme Systeme erstellt werden. Diese Systeme sind Teil der Netzwerktopologie des Unternehmens BigISP, das in Abbildung 33–4 vorgestellt wurde.

Diese drei Konfigurationsdateien zeigen die am häufigsten verwendeten IPQoS-Konfigurationen. Sie können die Beispieldateien aus dem nächsten Abschnitt als Vorlagen für Ihre eigenen IPQoS-Implementierungen verwenden.

Erstellen von IPQoS-Konfigurationsdateien für Webserver

In diesem Abschnitt wird eine IPQoS-Konfigurationsdatei vorgestellt, mir deren Hilfe Ihnen gezeigt wird, wie eine Konfiguration für einen Premium-Webserver erstellt wird. Dann wird gezeigt, wie eine vollständig andere Serviceebene in einer Konfigurationsdatei für einen Server erstellt wird, der als Host für persönliche Websites dient. Beide Server sind Teil des Netzwerkbeispiels, das in Abbildung 33–4 vorgestellt wurde.

Die folgende Konfigurationsdatei definiert IPQoS-Aktivitäten für den Server Goldweb. Dieser Server dient als Host für die Website von Goldco, einem Unternehmen, das eine Premium-SLA erworben hat.


Beispiel 34–1 IPQoS-Beispielkonfigurationsdatei für einen Premium-Webserver

fmt_version 1.0

action {
    module ipgpc
    name ipgpc.classify
    params {
        global_stats TRUE
    }
    class {
        name goldweb
        next_action markAF11
        enable_stats FALSE
    }
    class {
        name video
        next_action markEF
        enable_stats FALSE
    }
    filter {
        name webout
        sport 80
        direction LOCAL_OUT
        class goldweb
    }
    filter {
        name videoout
        sport videosrv
        direction LOCAL_OUT
        class video
    }
}
action {
    module dscpmk
    name markAF11
    params {
        global_stats FALSE
        dscp_map{0-63:10}
        next_action continue
    }
}
action {
    module dscpmk
    name markEF
    params {
        global_stats TRUE
        dscp_map{0-63:46}
        next_action acct
    }
}
action {
    module flowacct
    name acct
    params {
        enable_stats TRUE
        timer 10000
        timeout 10000
        max_limit 2048
    }
}

Die folgende Konfigurationsdatei definiert IPQoS-Aktivitäten für den Server Userweb. Dieser Server dient als Host für Privatkunden mit kostengünstigen oder Beste Leistung-SLAs. Diese Serviceebene garantiert den besten Service, der einem Beste Leistung-Kunden bereitgestellt werden kann, nachdem das IPQoS-System den Datenverkehr von Kunden mit teureren SLAs verarbeitet hat.


Beispiel 34–2 IPQoS-Beispielkonfigurationsdatei für einen Beste Leistung-Webserver

fmt_version 1.0

action {
    module ipgpc
    name ipgpc.classify
    params {
        global_stats TRUE
    }
    class {
        name Userweb
        next_action markAF12
        enable_stats FALSE
    }
    filter {
        name webout
        sport 80
        direction LOCAL_OUT
        class Userweb
   }
}
action {
    module dscpmk
    name markAF12
    params {
        global_stats FALSE
        dscp_map{0-63:12}
        next_action continue
    }
}

ProcedureSo erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen

Sie können Ihre erste IPQoS-Konfigurationsdatei in einem beliebigen Verzeichnis erstellen. Wählen Sie das Verzeichnis, das Sie am einfachsten verwalten können. Die Aufgaben in diesem Kapitel verwenden das /var/ipqos als Speicherort für die IPQoS-Konfigurationsdateien. Im folgenden Verfahren wird das interne Segment der IPQoS-Konfigurationsdatei erstellt, die in Beispiel 34–1 eingeführt wurde.


Hinweis –

Achten Sie beim Erstellen der IPQoS-Konfigurationsdatei darauf, die action-Anweisung und -Klausel mit geschweiften Klammen zu beginnen und zu beenden ({ }). Ein Beispiel für die Verwendung der Klammern finden Sie in Beispiel 34–1.


  1. Melden Sie sich beim Premium-Webserver an und erstellen Sie eine neue IPQoS-Konfigurationsdatei mit der Erweitung .qos.

    Jede IPQoS-Konfigurationsdatei muss mit der Versionsnummer fmt_version 1.0 als erste unkommentierte Zeile beginnen.

  2. Nach dem Eröffnungsparameter muss die erste action-Anweisung folgen, die den generischen IP-Classifier ipgpc konfiguriert.

    Diese erste Aktion beginnt die Baumstruktur der action-Anweisungen, aus denen sich die IPQoS-Konfigurationsdatei zusammensetzt. Die Datei /var/ipqos/Goldweb.qos beginnt z. B. mit der ersten action-Anweisung, die den ipgpc-Classifier aufruft.


    fmt_version 1.0
    
    action {
        module ipgpc
        name ipgpc.classify
    
    fmt_version 1.0

    Beginnt die IPQoS-Konfigurationsdatei.

    action {

    Beginnt die action-Anweisung.

    module ipgpc

    Konfiguriert den ipgpc-Classifier als die erste Aktion in der Konfigurationsdatei.

    name ipgpc.classify

    Definiert den Namen der action-Anweisung des Classifiers, der stets ipgpc.classify lauten muss.

    Ausführliche syntaktische Informationen zu den action-Anweisungen finden Sie unter action-Anweisung und in der Manpage ipqosconf(1M).

  3. Fügen Sie eine params-Klausel mit dem Statistik-Parameter global_stats hinzu.


    params {
              global_stats TRUE
       }
    

    Mit dem Parameter global_stats TRUE in der ipgpc.classify-Anweisung können Sie das Erfassen von Statistiken für diese Aktion aktivieren. global_stats TRUE aktiviert darüber hinaus das Erfassen von Statistiken pro Klasse, wenn eine Klassenklauseldefinition enable_stats TRUE angibt.

    Das Aktivieren der Statistiken verbessert die Leistung. Vielleicht möchten Sie Statistiken zu der neuen IPQoS-Konfigurationsdatei erfassen, um zu prüfen, ob die IPQoS ordnungsgemäß arbeitet. Später können Sie das Erfassen von Statistiken deaktivieren, indem Sie das Argument von global_stats zu FALSE ändern.

    Globale Statistiken sind nur ein Parametertyp, den Sie in einer params-Klausel definieren können. Sytaktische and sonstige Details zu den params-Klauseln finden Sie unter params-Klausel und in der Manpage ipqosconf(1M).

  4. Definieren Sie eine Klasse, die den Datenverkehr identifiziert, der für den Premium-Server bestimmt ist.


    class { 
            name goldweb 
            next_action markAF11   
            enable_stats FALSE 
        }
    

    Diese Anweisung wird als class-Klausel bezeichnet. Eine class-Klausel hat den folgenden Inhalt.

    name goldweb

    Erstellt die Klasse goldweb, um den Datenverkehr zu identifizieren, der für den Server Goldweb bestimmt ist.

    next_action markAF11

    Weist das ipgpc-Modul an, Pakete der goldweb-Klasse an die action-Anweisung markAF11 zu übergeben. Die action-Anweisung markAF11 ruft den Marker dscpmk auf.

    enable_stats FALSE

    Aktiviert die Erfassung von Statistiken für die Klasse goldweb. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken für diese Klasse erfasst.

    Ausführliche Informationen zur Syntax der class-Klausel finden Sie unter class-Klausel und in der Manpage ipqosconf(1M).

  5. Definieren Sie eine Klasse, die eine Anwendung kennzeichnet, die Weiterleitungen mit der höchsten Priorität aufweist.


    class {
            name video
            next_action markEF
            enable_stats FALSE
        }
    
    name video

    Erstellt die Klasse video, um Streaming Video-Datenverkehr zu identifizieren, der vom Server Goldweb ausgeht.

    next_action markEF

    Weist das ipgpc-Modul an, Pakete der video-Klasse an die markEF-Anweisung zu übergeben, nachdem ipgpc die Bearbeitung vollständig abgeschlossen hat. Die Anweisung markEF ruft den Marker dscpmk auf.

    enable_stats FALSE

    Aktiviert die Erfassung von Statistiken für die Klasse video. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken für diese Klasse erfasst.

Siehe auch

ProcedureSo definieren Sie Filter in der IPQoS-Konfigurationsdatei

Im nächsten Verfahren wird gezeigt, wie Sie Filter in der IPQoS-Konfigurationsdatei definieren.

Bevor Sie beginnen

Bei diesem Verfahren wird davon ausgegangen, dass Sie die Datei bereits erstellt und mit der Definition der Klassen begonnen haben. Mit den folgenden Schritten wird die Datei /var/ipqos/Goldweb.qos erweitert, die Sie unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen erstellt haben.


Hinweis –

Achten Sie beim Erstellen der IPQoS-Konfigurationsdatei darauf, jede class- und filter-Klausel mit geschweiften Klammen zu beginnen und zu beenden ({ }). Ein Beispiel für die Verwendung der Klammern finden Sie in Beispiel 34–1.


  1. Öffnen Sie die IPQoS-Konfigurationsdatei und suchen Sie das Ende der letzten von Ihnen definierten Klasse.

    Bei dem IPQoS-konformen Server Goldweb beginnen Sie z. B. hinter der class-Klausel, die Sie in /var/ipqos/Goldweb.qos erstellt haben:


    class {
            name video
            next_action markEF
            enable_stats FALSE
        }
  2. Definieren Sie eine filter-Klausel, um den abgehenden Datenverkehr vom IPQoS-System auszuwählen.


        filter {
            name webout
            sport 80
            direction LOCAL_OUT
            class goldweb
        }
    
    name webout

    Benennt den Filter mit webout.

    sport 80

    Wählt Datenverkehr mit dem Ursprungs-Port 80 aus, dem bekannten Port für HTTP (Web)-Verkehr.

    direction LOCAL_OUT

    Wählt außerdem Verkehr aus, der vom lokalen System abgeht.

    class goldweb

    Identifiziert die Klasse, zu der der Filter gehört, in diesem Fall die Klasse goldweb.

    Syntaktische und ausführliche Informationen zur filter-Klausel in der IPQoS-Konfigurationsdatei finden Sie unter filter-Klausel.

  3. Definieren Sie eine filter-Klausel, um den Streaming Video-Datenverkehr vom IPQoS-System auszuwählen.


        filter {
            name videoout
            sport videosrv
            direction LOCAL_OUT
            class video
        }
    
    name videoout

    Benennt den Filter mit videoout.

    sport videosrv

    Wählt Datenverkehr mit einem Ursprungs-Port von videosrv aus, ein zuvor definierter Port für die Streaming Video-Anwendung auf diesem System.

    direction LOCAL_OUT

    Wählt außerdem Verkehr aus, der vom lokalen System abgeht.

    class video

    Identifiziert die Klasse, zu der der Filter gehört, in diesem Fall die Klasse video.

Siehe auch

ProcedureSo definieren Sie das Weiterleiten von Datenverkehr in der IPQoS-Konfigurationsdatei

Im nächsten Verfahren wird gezeigt, wie Sie das Weiterleiten von Datenverkehr definieren, indem Sie Per-Hop-Behaviors für eine Klasse in die IPQoS-Konfigurationsdatei einfügen.

Bevor Sie beginnen

Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits eine IPQoS-Konfigurationsdatei erstellt und Klassen und Filter definiert haben. Mit den folgenden Schritten wird die Datei /var/ipqos/Goldweb.qos aus Beispiel 34–1 erweitert.


Hinweis –

In diesem Verfahren wird gezeigt, wie Sie Weiterleitung von Datenverkehr mithilfe des Markermoduls dscpmk konfigurieren. Informationen zum Weiterleiten von Datenverkehr in VLAN-Systemen mithilfe des Markers dlclosmk finden Sie unter Verwenden des Markers dlcosmk mit VLAN-Geräten.


  1. Öffnen Sie die IPQoS-Konfigurationsdatei und suchen Sie das Ende des letzten von Ihnen definierten Filters.

    Bei dem IPQoS-konformen Server Goldweb beginnen Sie z. B. hinter der filter-Klausel, die Sie in /var/ipqos/Goldweb.qos erstellt haben:


    filter {
            name videoout
            sport videosrv
            direction LOCAL_OUT
            class video
        }
    }

    Beachten Sie, dass sich diese filter-Klausel am Ende action-Anweisung des ipgpc-Classifiers befindet. Aus diesem Grund benötigen Sie eine schließende geschweifte Klammer, um den Filter zu beenden und eine zweite schließende geschweifte Klammer, um die action-Anweisung zu beenden.

  2. Rufen Sie den Marker mit der folgenden action-Anweisung auf.


    action {
        module dscpmk
        name markAF11
    
    module dscpmk

    Ruft das Markermodul dscpmk auf.

    name markAF11

    Benennt die action -Anweisung mit markAF11.

    Die zuvor definierte Klasse goldweb umfasst eine next_action markAF11-Anweisung. Diese Anweisung sendet Verkehrswerte an die action-Anweisung markAF11, nachdem der Classifier die Verarbeitung beendet hat.

  3. Definieren Sie Aktionen, die der Marker am Verkehrswert durchführen soll.


        params {
            global_stats FALSE
            dscp_map{0-63:10}
            next_action continue
        }
    }
    
    global_stats FALSE

    Aktiviert die Erfassung von Statistiken für die Marker action-Anweisung markAF11. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken erfasst.

    dscp_map{0–63:10}

    Weist den Paket-Headern der Datenverkehrklasse goldweb, die momentan vom Marker verarbeitet werden, einen DSCP von 10 zu.

    next_action continue

    Gibt an, dass keine weitere Verarbeitung für die Pakete der Datenverkehrsklasse goldweb erforderlich sind, und dass diese Pakete in den Netzwerkdatenfluss zurückkehren können.

    Der DSCP 10 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 10 (binär 001010) zu setzen. Dieser Codepoint kennzeichnet, dass Pakete der Verkehrsklasse goldweb dem Per-Hop-Behavior AF11 unterliegen. AF11 stellt sicher, dass alle Pakete mit dem DSCP 10 einen low-drop-Service mit hoher Priorität erhalten. Somit erhält abgehender Datenverkehr für Premium-Kunden auf Goldweb die höchste Priorität, die für das Assured Forwarding (AF) PHB verfügbar ist. Eine Liste der möglichen DSCPs für AF finden Sie in Tabelle 37–2.

  4. Starten Sie eine weitere Marker action-Anweisung.


    action {
        module dscpmk
        name markEF    
    
    module dscpmk

    Ruft das Markermodul dscpmk auf.

    name markEF

    Benennt die action-Anweisung mit markEF.

  5. Definieren Sie Aktionen, die der Marker am Verkehrswert durchführen soll.


        params {
            global_stats TRUE
            dscp_map{0-63:46}
            next_action acct
        }
    }
    
    global_stats TRUE

    Aktiviert die Erfassung von Statistiken für die video-Klasse, die Streaming Video-Pakete auswählt.

    dscp_map{0–63:46}

    Weist den Paket-Headern der Datenverkehrklasse video, die momentan vom Marker verarbeitet werden, einen DSCP von 46 zu.

    next_action acct

    Weist das dscpmk-Modul an, Pakete der video-Klasse an die action-Anweisung acct weiterzuleiten, nachdem dscpmk die Bearbeitung vollständig abgeschlossen hat. Die action-Anweisung acct ruft das flowacct-Modul auf.

    Der DSCP 46 weist das dscpmk-Modul an, alle Einträge in der dscp-Map im DS-Feld auf den Dezimalwert 46 (binär 101110) zu setzen. Dieser Codepoint kennzeichnet, dass Pakete der Verkehrsklasse video dem Per-Hop-Behavior Expedited Forwarding (EF) unterliegen.


    Hinweis –

    Der empfohlene Codepoint für EF ist 46 (binär 101110). Andere DSCPs weisen einem Paket AF PHBs zu.


    Das EF PHB garantiert, dass Pakete mit einem DSCP von 46 von IPQoS- und Diffserv-konformen Systemen die höchste Prioritätsstufe erhalten. Streaming-Anwendungen erfordern einen Service mit höchster Priorität. Dies ist der Grund, warum Streaming-Anwendungen die EF PHBs in der QoS-Richtlinie zugeordnet sind. Weitere Einzelheiten zum Expedited Forwarding PHB finden Sie unter Expedited Forwarding (EF) PHB.

  6. Fügen Sie die gerade erstellten DSCPs zu den entsprechenden Dateien auf dem Diffserv-Router hinzu.

    Weitere Informationen hierzu finden Sie unter So konfigurieren Sie einen Router in einem IPQoS-konformen Netzwerk.

Siehe auch

ProcedureSo aktivieren Sie das Accounting für eine Klasse in der IPQoS-Konfigurationsdatei

Hier wird gezeigt, wie Sie das Accounting für eine Datenverkehrsklasse in der IPQoS-Konfigurationsdatei aktivieren. In dem Verfahren wird gezeigt, wie Sie das Flow Accounting für die video-Klasse definieren, die unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen eingeführt wurde. Diese Klasse wählt Streaming Video-Datenverkehr aus, der im Rahmen einer Premium-SLA eines Kunden berechnet werden muss.

Bevor Sie beginnen

Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits eine IPQoS-Konfigurationsdatei erstellt und Klassen, Filter, Meteraktionen (sofern anwendbar) und Markerungsoptionen (sofern anwendbar) erstellt haben. Mit den folgenden Schritten wird die Datei /var/ipqos/Goldweb.qos aus Beispiel 34–1 erweitert.

  1. Öffnen Sie die IPQoS-Konfigurationsdatei und suchen Sie das Ende der letzten von Ihnen definierten action-Anweisung.

    Bei dem IPQoS-konformen Server Goldweb beginnen Sie z. B. hinter der action-Anweisung markEF in der Datei /var/ipqos/Goldweb.qos.


    action {
        module dscpmk
        name markEF
        params {
            global_stats TRUE
            dscp_map{0-63:46}
            next_action acct
        }
    }
  2. Beginnen Sie eine action-Anweisung, mit der das Flow Accounting aufgerufen wird.


    action {
        module flowacct
        name acct
    
    module flowacct

    Ruft das Flow Accounting-Modul flowacct auf.

    name acct

    Benennt die action-Anweisung mit acct

  3. Definieren Sie eine params-Klausel, um das Accounting in der Datenverkehrsklasse zu steuern.


    params {
            global_stats TRUE
            timer 10000
            timeout 10000
            max_limit 2048
            next_action continue
        }
    }
    global_stats TRUE

    Aktiviert die Erfassung von Statistiken für die video-Klasse, die Streaming Video-Pakete auswählt.

    timer 10000

    Gibt die Dauer des Intervalls in Millisekunden an, in dem die Flow-Tabelle nach abgelaufenen Flows gescannt wird. Bei diesem Parameter lautet das Intervall 10.000 ms.

    timeout 10000

    Gibt das Mindestintervall für den Timeout-Wert an. Ein Flow „läuft ab“ (times out), wenn die Pakete für den Flow nicht innerhalb eines Timeout-Intervalls erfasst werden. Bei diesem Parameter laufen die Pakete nach 10.000 ms ab.

    max_limit 2048

    Richtet die Höchstzahl der aktiven Flow-Datensätze in der Flow-Tabelle für diese Aktionsinstanz ein.

    next_action continue

    Gibt an, dass keine weitere Verarbeitung für die Pakete der Datenverkehrsklasse video erforderlich sind, und dass diese Pakete in den Netzwerkdatenfluss zurückkehren können.

    Das flowacct-Modul erfasst Statistiken zu den Paket-Flows einer bestimmten Klasse, bis ein festgelegter timeout-Wert erreicht ist.

Siehe auch

ProcedureSo erstellen Sie eine IPQoS-Konfigurationsdatei für einen Beste Leistung-Webserver

Die IPQoS-Konfigurationsdatei für einen Beste Leistung-Webserver unterscheidet sich nur wenig von einer IPQoS-Konfigurationsdatei für einen Premium-Webserver. Als Beispiel wird im folgenden Verfahren die Konfigurationsdatei aus Beispiel 34–2 verwendet.

  1. Melden Sie sich beim Beste Leistung-Webserver an.

  2. Erstellen Sie eine neue IPQoS-Konfigurationsdatei mit der Erweiterung qos.


    fmt_vesion 1.0
    action {
        module ipgpc
        name ipgpc.classify
        params {
            global_stats TRUE
       }
    

    Die Datei /var/ipqos/userweb.qos muss mit dem Teil einer action-Anweisung beginnen, die den ipgpc-Classifier aufruft. Darüber hinaus umfasst die action-Anweisung eine params-Klausel, um die Erfassung von Statistiken zu aktivieren. Eine Beschreibung dieser action-Anweisung finden Sie unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen.

  3. Definieren Sie eine Klasse, die den Datenverkehr identifiziert, der für den Beste Leistung-Server bestimmt ist.


    class {
            name userweb
            next_action markAF12
            enable_stats FALSE
        }
    
    name userweb

    Erstellt eine Klasse mit der Bezeichnung userweb zum Weiterleiten von Webverkehr von Benutzern.

    next_action markAF12

    Weist das ipgpc-Modul an, Pakete der userweb-Klasse an die action-Anweisung markAF12 zu übergeben, nachdem ipgpc die Bearbeitung vollständig abgeschlossen hat. Die action-Anweisung markAF12 ruft den dscpmk-Marker auf.

    enable_stats FALSE

    Aktiviert die Erfassung von Statistiken für die userweb-Klasse. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken für diese Klasse erfasst.

    Eine Beschreibung der class-Klausel finden Sie unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen.

  4. Definieren Sie eine filter-Klausel, um den Verkehrswert für die userweb-Klasse auszuwählen.


       filter {
           name webout
           sport 80
           direction LOCAL_OUT
           class userweb
       }
    }
    
    name webout

    Benennt den Filter mit webout.

    sport 80

    Wählt Datenverkehr mit dem Ursprungs-Port 80 aus, dem bekannten Port für HTTP (Web)-Verkehr.

    direction LOCAL_OUT

    Wählt außerdem Verkehr aus, der vom lokalen System abgeht.

    class userweb

    Identifiziert die Klasse, zu der der Filter gehört, in diesem Fall die Klasse userweb.

    Eine Beschreibung der filter-Klausel finden Sie unter So definieren Sie Filter in der IPQoS-Konfigurationsdatei.

  5. Beginnen Sie die action-Anweisung, um den dscpmk-Marker aufzurufen.


    action {
        module dscpmk
        name markAF12
    
    module dscpmk

    Ruft das Markermodul dscpmk auf.

    name markAF12

    Benennt die action -Anweisung mit markAF12.

    Die zuvor definierte Klasse userweb umfasst eine next_action markAF12-Anweisung. Diese Anweisung sendet Verkehrswerte an die action-Anweisung markAF12, nachdem der Classifier die Verarbeitung beendet hat.

  6. Definieren Sie die Parameter für den Marker, die bei der Verarbeitung des Verkehrswerts verwendet werden.


        params {
            global_stats FALSE
            dscp_map{0-63:12}
            next_action continue
        }
    }
    
    global_stats FALSE

    Aktiviert die Erfassung von Statistiken für die markAF12 Marker action-Anweisung. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken erfasst.

    dscp_map{0–63:12}

    Weist den Paket-Headern der Datenverkehrklasse userweb, die momentan vom Marker verarbeitet werden, einen DSCP von 12 zu.

    next_action continue

    Gibt an, dass keine weitere Verarbeitung für die Pakete der Datenverkehrsklasse userweb erforderlich sind, und dass diese Pakete in den Netzwerkdatenfluss zurückkehren können.

    Der DSCP 12 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 12 (binär 001100) zu setzen. Dieser Codepoint kennzeichnet, dass Pakete der Verkehrsklasse userweb dem Per-Hop-Behavior AF12 unterliegen. AF12 stellt sicher, dass alle Pakete mit dem DSCP 12 einen medium-drop-Service mit hoher Priorität erhalten.

  7. Nachdem Sie die IPQoS-Konfigurationsdatei vollständig erstellt haben, übernehmen Sie die Konfiguration.

Siehe auch

Erstellen einer IPQoS-Konfigurationsdateien für einen Anwendungsserver

In diesem Abschnitt wird erklärt, wie Sie eine Konfigurationsdatei für einen Anwendungsserver erstellen, der Kunden wichtige Anwendungen bereitstellt. In diesem Verfahren wird der Server BigAPPS verwendet, der in Abbildung 33–4 vorgestellt wurde.

In der folgenden Konfigurationsdatei werden die IPQoS-Aktivitäten für den Server BigAPPS definiert. Dieser Server dient als Host für FTP, E-Mail (SMTP) und Network News (NNTP) für Kunden.


Beispiel 34–3 Beispiel einer IPQoS-Konfigurationsdatei für einen Anwendungsserver

fmt_version 1.0

action {
    module ipgpc
    name ipgpc.classify
    params {
        global_stats TRUE
    }
    class {
        name smtp
        enable_stats FALSE
        next_action markAF13
    }
    class {
        name news
        next_action markAF21
    }
    class {
        name ftp
        next_action meterftp
    }
    filter {
        name smtpout
        sport smtp
        class smtp
    }
    filter {
        name newsout
        sport nntp
        class news
    }
    filter {
        name ftpout
        sport ftp
        class ftp
    }
   filter {
        name ftpdata
        sport ftp-data
        class ftp
    }
}
action {
    module dscpmk
    name markAF13
    params {
        global_stats FALSE
        dscp_map{0-63:14}
        next_action continue
    }
}
action {
    module dscpmk
    name markAF21
    params {
        global_stats FALSE
        dscp_map{0-63:18}
        next_action continue
    }
}
action {
    module tokenmt
    name meterftp
    params {
        committed_rate 50000000
        committed_burst 50000000
        red_action_name AF31
        green_action_name markAF22
        global_stats TRUE
    }
}
action {
    module dscpmk
    name markAF31
    params {
        global_stats TRUE
        dscp_map{0-63:26}
        next_action continue
    }
}
action {
    module dscpmk
    name markAF22
    params {
        global_stats TRUE
        dscp_map{0-63:20}
        next_action continue
    }
}

ProcedureSo konfigurieren Sie die IPQoS-Konfigurationsdatei für einen Anwendungsserver

  1. Melden Sie sich beim IPQoS-konformen Anwendungsserver an und erstellen Sie eine neue IPQoS-Konfigurationsdatei mit der Erweitung .qos.

    Beispielsweise können Sie die Datei /var/ipqos/BigAPPS.qos für den Anwendungsserver erstellen. Beginnen Sie mit den folgenden erforderlichen Phrasen, um die action-Anweisung zu starten, die den ipgpc-Classifier aufruft:


    fmt_version 1.0
    
    action {
        module ipgpc
        name ipgpc.classify
        params {
            global_stats TRUE
        }    
    

    Eine Beschreibung der einleitenden action-Anweisung finden Sie unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen.

  2. Erstellen Sie Klassen, um den Verkehr von drei Anwendungen auf BigAPPS-Server auszuwählen.

    Fügen Sie die Klassendefinitionen hinter der einleitenden action-Anweisung ein.


        class {
            name smtp
            enable_stats FALSE
            next_action markAF13
        }
        class {
            name news
            next_action markAF21
        }
        class {
            name ftp
            enable_stats TRUE
            next_action meterftp
        }       
    
    name smtp

    Erstellt eine Klasse namens smtp, die den E-Mail-Verkehrwert enthält, der von der SMTP-Anwendung verarbeitet wird.

    enable_stats FALSE

    Aktiviert die Erfassung von Statistiken für die smtp-Klasse. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken für diese Klasse erfasst.

    next_action markAF13

    Weist das ipgpc-Modul an, Pakete der smtp-Klasse an die action-Anweisung markAF13 zu übergeben, nachdem ipgpc die Bearbeitung vollständig abgeschlossen hat.

    name news

    Erstellt eine Klasse namens news, die den Network News-Verkehrswert enthält, der von der NNTP-Anwendung verarbeitet wird.

    next_action markAF21

    Weist das ipgpc-Modul an, Pakete der news-Klasse an die action-Anweisung markAF21 zu übergeben, nachdem ipgpc die Bearbeitung vollständig abgeschlossen hat.

    name ftp

    Erstellt eine Klasse namens ftp, die den abgehenden Verkehr enthält, der von der FTP-Anwendung verarbeitet wird.

    enable_stats TRUE

    Aktiviert die Erfassung der Statistiken für die ftp-Klasse.

    next_action meterftp

    Weist das ipgpc-Modul an, Pakete der ftp-Klasse an die action-Anweisung meterftp zu übergeben, nachdem ipgpc die Bearbeitung vollständig abgeschlossen hat.

    Weitere Informationen zum Definieren von Klassen finden Sie unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen.

  3. Definieren Sie filter-Klauseln, um den Datenverkehr der in Schritt 2 definierten Klassen auszuwählen.


        filter {
            name smtpout
            sport smtp
            class smtp
        }
        filter {
            name newsout
            sport nntp
            class news
        }
            filter {
            name ftpout
            sport ftp
            class ftp
        }
            filter {
            name ftpdata
            sport ftp-data
            class ftp
        }
    }
    
    name smtpout

    Benennt den Filter mit smtpout.

    sport smtp

    Wählt Datenverkehr mit dem Ursprungs-Port 25 aus, dem bekannten Port für die sendmail (SMTP)-Anwendung.

    class smtp

    Identifiziert die Klasse, zu der der Filter gehört, in diesem Fall die Klasse smtp.

    name newsout

    Benennt den Filter mit newsout.

    sport nntp

    Wählt Datenverkehr mit dem Ursprungs-Portnamen nntp aus, dem bekannten Portnamen für die Network News (NNTP)-Anwendung.

    class news

    Identifiziert die Klasse, zu der der Filter gehört, in diesem Fall die Klasse news.

    name ftpout

    Benennt den Filter mit ftpout.

    sport ftp

    Wählt Steuerungsdaten mit dem Ursprungs-Port 21 aus, dem bekannten Port für FTP-Verkehr.

    name ftpdata

    Benennt den Filter mit ftpdata.

    sport ftp-data

    Wählt Datenverkehr mit dem Ursprungs-Port 20 aus, dem bekannten Port für FTP-DatenVerkehr.

    class ftp

    Identifiziert die Klasse, zu der die Filter ftpout und ftpdata gehören, in diesem Fall ftp.

Siehe auch

ProcedureSo konfigurieren Sie die Weiterleitung von Datenverkehr für Anwendungen in der IPQoS-Konfigurationsdatei

Im nächsten Verfahren wird gezeigt, wie die Weiterleitung für den Datenverkehr von Anwendungen konfiguriert wird. In diesem Verfahren definieren Sie die Per-Hop-Behaviors für die Datenverkehrsklassen von Anwendungen, die eventuell eine niedrigere Prioritätsstufe als anderer Datenverkehr im Netzwerk haben. Mit dem folgenden Schritten wird die Datei /var/ipqos/BigAPPS.qos aus Beispiel 34–3 erweitert.

Bevor Sie beginnen

Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits eine IPQoS-Konfigurationsdatei erstellt und Klassen sowie Filter für die zu markierenden Anwendungen erstellt haben.

  1. Öffnen Sie die IPQoS-Konfigurationsdatei, die Sie für den Anwendungsserver erstellt haben, und suchen Sie das Ende der letztenfilter-Klausel.

    In der Datei /var/ipqos/BigAPPS.qos lautet der letzte Filter wie folgt:


     filter {
            name ftpdata
            sport ftp-data
            class ftp
        }
    }
  2. Rufen Sie den Marker wie folgt auf:


    action {
        module dscpmk
        name markAF13
        
    
    module dscpmk

    Ruft das Markermodul dscpmk auf.

    name markAF13

    Benennt die action-Anweisung mit markAF13.

  3. Definieren Sie das Per-Hop-Behavior, das in einem E-Mail-Verkehrswert markiert werden soll.


        params {
            global_stats FALSE
            dscp_map{0-63:14}
            next_action continue
        }
    }
    
    global_stats FALSE

    Aktiviert die Erfassung von Statistiken für die markAF13 Marker action-Anweisung. Da der Wert für enable_stats FALSE lautet, werden keine Statistiken erfasst.

    dscp_map{0–63:14}

    Weist den Paket-Headern der Datenverkehrklasse smtp, die momentan vom Marker verarbeitet werden, einen DSCP von 14 zu.


    next_action continue

    Gibt an, dass keine weitere Verarbeitung für Pakete der Datenverkehrsklasse smtp erforderlich ist. Diese Pakete können dann in den Netzwerkdatenfluss zurückkehren.

    Der DSCP 14 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 14 (binär 001110) zu setzen. Der DSCP von 14 richtet das Per-Hop-Behavior AF13 ein. Der Marker markiert Pakete der Datenverkehrsklasse smtp mit dem DSCP 14 im DS-Feld.

    AF13 weist allen Paketen mit einem DSCP von 14 eine high-drop-Prioritätsstufe zu. Da AF13 jedoch eine Class 1-Priorität sicherstellt, garantiert der Router abgehendem E-Mail-Verkehr dennoch hohe Priorität in der Warteschlange. Eine Liste der möglichen AF-Codepoints finden Sie in Tabelle 37–2.

  4. Fügen Sie eine Marker action-Anweisung hinzu, um ein Per-Hop-Behavior für den Network News-Datenverkehr zu definieren:


    action {
        module dscpmk
        name markAF21
        params {
            global_stats FALSE
            dscp_map{0-63:18}
            next_action continue
        }
    }
    
    name markAF21

    Benennt die action-Anweisung mit markAF21.

    dscp_map{0–63:18}

    Weist den Paket-Headern der Datenverkehrklasse nntp, die momentan vom Marker verarbeitet werden, einen DSCP von 18 zu.

    Der DSCP 18 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 18 (binär 010010) zu setzen. Der DSCP von 18 richtet das Per-Hop-Behavior AF21 ein. Der Marker markiert Pakete der Datenverkehrsklasse news mit dem DSCP 18 im DS-Feld.

    AF21 stellt sicher, dass alle Pakete mit dem DSCP 18 eine low-drop-Prioritätsstufe mit einer Class 2-Priorität erhalten. Somit ist die Wahrscheinlichkeit gering, dass Network News-Datenverkehr abgeworfen wird.

Siehe auch

ProcedureSo konfigurieren Sie die Verkehrssteuerung in der IPQoS-Konfigurationsdatei

Zum Steuern der Rate, mit der ein bestimmter Verkehrswert in das Netzwerk freigegeben wird, müssen Sie Parameter für den Meter definieren. Sie können eines der beiden Metermodule tokenmt und tswtclmt in der IPQoS-Konfigurationsdatei verwenden.

Im folgenden Verfahren wird die IPQoS-Konfigurationsdatei für den Anwendungsserver aus Beispiel 34–3 erweitert. In diesem Verfahren konfigurieren Sie nicht nur den Meter, sondern auch zwei Markeraktionen, die in der action-Anweisung für den Meter aufgerufen werden.

Bevor Sie beginnen

Bei diesen Schritten wird davon ausgegangen, dass Sie bereits eine Klasse sowie einen Filter für die Anwendung erstellt haben, deren Datenfluss gesteuert werden soll.

  1. Öffnen Sie die IPQoS-Konfigurationsdatei, die Sie für den Anwendungsserver erstellt haben.

    Beginnen Sie in der Datei /var/ipqos/BigAPPS.qos unter der folgenden Markeraktion:


    action {
        module dscpmk
        name markAF21
        params {
            global_stats FALSE
            dscp_map{0-63:18}
            next_action continue
        }
    }
  2. Erstellen Sie eine Meter action-Anweisung, um eine Flusskontrolle für den Datenverkehr der ftp-Klasse einzurichten.


    action {
        module tokenmt
        name meterftp
                
    
    module tokenmt

    Ruft den Meter tokenmt auf.

    name meterftp

    Benennt die action-Anweisung mit meterftp.

  3. Fügen Sie Parameter hinzu, um die Rate des Meters zu konfigurieren.


    params {
           committed_rate 50000000
           committed_burst 50000000
      
    
    committed_rate 50000000

    Weist eine Übertragungsrate von 50.000.000 Bit/s für den Datenverkehr der ftp-Klasse zu.

    committed_burst 50000000

    Übernimmt eine Burst-Größe von 50.000.000 Bit für den Datenverkehr der ftp-Klasse.

    Eine Beschreibung der tokenmt-Parameter finden Sie unter Konfiguration von tokenmt als Two-Rate Meter.

  4. Fügen Sie Parameter hinzu, um die Prioritätsstufe der Datenverkehrskonformität zu konfigurieren:


        red_action markAF31
        green_action_name markAF22
        global_stats TRUE
        }
    }
    
    red_action_name markAF31

    Gibt an, dass wenn der Verkehrswert der ftp-Klasse die Committed Rate überschreitet, Pakete an die markAF31 Marker action-Anweisung gesendet werden.

    green_action_name markAF22

    Gibt an, dass wenn der Verkehrswert der ftp-Klasse der Committed Rate entspricht, Pakete an die action-Anweisung markAF22 gesendet werden.

    global_stats TRUE

    Aktiviert die Erfassung der Messstatistiken für die ftp-Klasse.

    Weitere Informationen zur Datenverkehrskonformität finden Sie unter Metermodul.

  5. Fügen Sie eine Marker action-Anweisung hinzu, um ein Per-Hop-Behavior für nicht einen spezifikationsgerechten Verkehrswert der ftp-Klasse zuzuweisen.


    action {
        module dscpmk
        name markAF31
        params {
            global_stats TRUE
            dscp_map{0-63:26}
            next_action continue
        }
    }
    
    module dscpmk

    Ruft das Markermodul dscpmk auf.

    name markAF31

    Benennt die action-Anweisung mit markAF31.

    global_stats TRUE

    Aktiviert die Erfassung der Statistiken für die ftp-Klasse.

    dscp_map{0–63:26}

    Weist den Paket-Headern des Datenverkehr der ftp-Klasse einen DSCP von 26 zu, wenn dieser Datenverkehr die Committed Rate überschreitet.

    next_action continue

    Gibt an, dass keine weitere Verarbeitung für Pakete der Datenverkehrsklasse ftp erforderlich ist. Diese Pakete können dann in den Netzwerkdatenfluss zurückkehren.

    Der DSCP 26 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 26 (binär 011010) zu setzen. Der DSCP von 26 richtet das Per-Hop-Behavior AF31 ein. Der Marker markiert Pakete der Datenverkehrsklasse ftp mit dem DSCP 26 im DS-Feld.

    AF31 stellt sicher, dass alle Pakete mit dem DSCP 26 eine low-drop-Prioritätsstufe mit einer Class 3-Priorität erhalten. Somit ist die Wahrscheinlichkeit gering, dass nicht spezifikationsgerechter FTP-Datenverkehr abgeworfen wird. Eine Liste der möglichen AF-Codepoints finden Sie in Tabelle 37–2.

  6. Fügen Sie eine Marker action-Anweisung hinzu, um ein Per-Hop-Behavior für den ftp-Verkehrswert zuzuweisen, der der Committed Rate entspricht.


    action {
        module dscpmk
        name markAF22
        params {
            global_stats TRUE
            dscp_map{0-63:20}
            next_action continue
        }
    }
    
    name markAF22

    Benennt die Marker action-Anweisung mit markAF22.

    dscp_map{0–63:20}

    Weist den Paket-Headern des Datenverkehr der ftp-Klasse einen DSCP von 20 zu, wenn der ftp-Datenverkehr der Committed Rate entspricht.

    Der DSCP 20 weist den Marker an, alle Einträge in der dscp-Map auf den Dezimalwert 20 (binär 010100) zu setzen. Der DSCP von 20 richtet das Per-Hop-Behavior AF22 ein. Der Marker markiert Pakete der Datenverkehrsklasse ftp mit dem DSCP 20 im DS-Feld.

    AF22 stellt sicher, dass alle Pakete mit dem DSCP 20 eine medium-drop-Prioritätsstufe mit einer Class 2-Priorität erhalten. So wird für spezifikationsgerechtem FTP-Datenverkehr eine medium-drop-Prioritätsstufe im Vergleich zu anderen Datenströmen sichergestellt, die gleichzeitig vom PQoS-System freigegeben werden. Der Router weist Datenverkehrsklassen mit einer Class 1 medium-drop-Prioritätsstufe oder höher jedoch eine höhere Priorität bei der Weiterleitung zu. Eine Liste der möglichen AF-Codepoints finden Sie in Tabelle 37–2.

  7. Fügen Sie die gerade für den Anwendungsserver erstellten DSCPs zu den entsprechenden Dateien auf dem Diffserv-Router hinzu.

Siehe auch

Bereitstellen von Differentiated Services auf einem Router

Um echte Differentiated Services bereitzustellen, müssen Sie einen Diffserv-konformen Router in Ihre Netzwerktopologie aufnehmen. Eine Beschreibung hierzu finden Sie unter Hardware-Strategien für das Diffserv-Netzwerk. Die tatsächlichen Schritte zur Konfiguration von Diffserv auf einem Router und zum Aktualisieren der Routerdateien sprengen jedoch den Umfang dieses Handbuchs.

Daher finden Sie hier nur allgemeine Schritte zur Koordinierung der Weiterleitungsinformationen zwischen verschiedenen IPQoS-konformen Systemen im Netzwerk und dem Diffserv-Router.

ProcedureSo konfigurieren Sie einen Router in einem IPQoS-konformen Netzwerk

Im folgenden Verfahren wird die in Abbildung 33–4 vorgestellte Topologie als Beispiel verwendet.

Bevor Sie beginnen

Im folgenden Verfahren wird davon ausgegangen, dass die IPQoS-Systeme in Ihrem Netzwerk bereits konfiguriert sind, da Sie die vorherigen Aufgaben in diesem Kapitel ausgeführt haben.

  1. Erstellen Sie eine Übersicht der Konfigurationsdateien aller IPQoS-konformen Systeme in Ihrem Netzwerk.

  2. Identifizieren Sie jeden Codepoint, der in den verschiedenen QoS-Richtlinien verwendet wird.

    Erstellen Sie eine Liste der Codepoints sowie der Systeme und Klassen, für die die Codepoints gelten. Die folgende Tabelle zeigt Bereiche, in denen Sie eventuell den gleichen Codepoint verwenden. Diese Vorgehensweise ist akzeptabel. Sie sollten jedoch weitere Kriterien in der IPQoS-Konfigurationsdatei bereitstellen, z. B. einen Selektor für die Prioritätsstufe, um die Prioritätsstufe identisch markierter Klassen zu bestimmen.

    Für das in den Verfahren dieses Kapitels verwendeten Beispielnetzwerk können Sie die folgende Codepoint-Tabelle erstellen.

    System 

    Klasse 

    PHB 

    DS Codepoint 

    Goldweb

    video

    EF 

    46 (101110) 

    Goldweb

    goldweb

    AF11 

    10 (001010) 

    Userweb

    webout

    AF12 

    12 ( 001100) 

    BigAPPS

    smtp

    AF13 

    14 ( 001110) 

    BigAPPS

    news

    AF18 

    18 ( 010010) 

    BigAPPS

    ftp-spezifikationsgerechter Datenverkehr

    AF22 

    20 ( 010100) 

    BigAPPS

    ftp-nicht spezifikationsgerechter Datenverkehr

    AF31 

    26 ( 011010) 

  3. Fügen Sie die Codepoints aus den IPQoS-Konfigurationsdateien Ihres Netzwerks zu den entsprechenden Dateien auf dem Diffserv-Router hinzu.

    Die von Ihnen angegebenen Codepoints helfen bei der Konfiguration des Diffserv-Scheduling-Mechanismus des Routers. Weitere Hinweise entnehmen Sie bitte der Dokumentation des Router-Herstellers sowie dessen Websites.

Kapitel 35 Starten und Verwalten des IPQoS (Aufgaben)

Dieses Kapitel enthält Aufgaben zum Aktivieren einer IPQoS-Konfigurationsdatei sowie zum Protokollieren von IPQoS-bezogenen Ereignissen. Es umfasst die folgenden Themen:

Verwalten des IPQoS (Übersicht der Schritte)

In diesem Abschnitt sind Aufgaben zum Starten und Verwalten des IPQoS auf einem Oracle Solaris-System beschrieben. Bevor Sie diese Aufgaben durchführen können, müssen Sie eine vollständige IPQoS-Konfigurationsdatei erstellt haben. Informationen hierzu finden Sie unter Definieren einer QoS-Richtlinie in der IPQoS-Konfigurationsdatei (Übersicht der Schritte).

In der folgenden Tabelle werden diese Aufgaben aufgeführt und beschrieben. Außerdem enthält die Tabelle Links zu den Abschnitten, in denen beschrieben ist, wie diese Aufgaben ausgeführt werden.

Aufgabe 

Beschreibung 

Siehe 

1. Konfiguration von IPQoS auf einem System. 

Geben Sie den Befehl ipqosconf ein, um die IPQoS-Konfigurationsdatei auf einem System zu aktivieren.

So übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module

2. Konfiguration der Oracle Solaris-Startskripten, so dass sie die geprüfte IPQoS-Konfigurationsdatei nach jedem Systemstart anwenden. 

Stellen Sie sicher, dass die IPQoS-Konfiguration bei jedem Systemstart übernommen wird. 

So stellen Sie sicher, dass die IPQoS-Konfiguration bei jedem Systemstart übernommen wird.

3. Konfiguration von syslog zum Protokollieren für IPQoS.

Fügen Sie einen Eintrag hinzu, um syslog zum Protokollieren von IPQoS-Nachrichten zu aktivieren.

So aktivieren Sie die Protokollierung von IPQoS-Nachrichten während des Bootens.

4. Bereinigen aller eventuell aufgetretenen IPQoS-Probleme. 

Beheben Sie alle eventuell aufgetretenen IPQoS-Probleme anhand der Fehlermeldungen. 

Lesen Sie dazu die Fehlermeldungen in Tabelle 35–1.

Übernehmen einer IPQoS-Konfiguration

Mit dem Befehl ipqosconf aktivieren und ändern Sie eine IPQoS-Konfiguration.

ProcedureSo übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module

Geben Sie den Befehl ipqosconf ein, um die IPQoS-Konfigurationsdatei einzulesen und um die IPQoS-Module im UNIX-Kernel zu konfigurieren. Im folgenden Verfahren wird die unter Creating IPQoS Configuration Files for Web Servers erstellte Datei Erstellen von IPQoS-Konfigurationsdateien für Webserver als Beispiel verwendet. Ausführliche Informationen finden Sie in der Manpage ipqosconf(1M).

  1. Nehmen Sie die Rolle eines Primäradministrators an, oder melden Sie sich als Superuser bei dem IPQ-konformen System an.

    Die Rolle des Primäradministrators enthält das Primary Administrator-Profil. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie in Kapitel 2, Working With the Solaris Management Console (Tasks) in System Administration Guide: Basic Administration.

  2. Übernehmen Sie die neue Konfiguration.


    # /usr/sbin/ipqosconf -a/var/ipqos/Goldweb.qos
    

    ipqosconf schreibt die Informationen aus der angegebenen IPQoS-Konfigurationsdatei in die IPQoS-Module im Oracle Solaris-Kernel. In diesem Beispiel werden die Inhalte der Datei /var/ipqos/Goldweb.qos für den aktuellen Oracle Solaris-Kernel übernommen.


    Hinweis –

    Wenn Sie eine IPQoS-Konfigurationsdatei mit der Option -a übernehmen, gelten die Aktionen in der Datei nur für die aktuelle Sitzung.


  3. Testen und bereinigen Sie die neue IPQoS-Konfiguration.

    Verwenden Sie UNIX-Serviceprogramme, um das IPQo-Verhalten zu verfolgen und erfassen Sie Statistiken zu Ihrer IPQoS-Implementierung. Diese Informationen helfen Ihnen festzustellen, ob die Konfiguration gemäß den Erwartungen funktioniert.

Siehe auch

ProcedureSo stellen Sie sicher, dass die IPQoS-Konfiguration bei jedem Systemstart übernommen wird

Sie müssen explizit konfigurieren, dass eine IPQoS-Konfiguration bei jedem Neustart übernommen wird. Andernfalls gilt die aktuelle Konfiguration nur für die aktuelle Sitzung. Wenn IPQoS korrekt auf einem System arbeitet, führen Sie die folgenden Schritte aus, um sicherzustellen, dass die Konfiguration bei jedem Neustart übernommen wird.

  1. Nehmen Sie die Rolle eines Primäradministrators an, oder melden Sie sich als Superuser bei dem IPQ-konformen System an.

    Die Rolle des Primäradministrators enthält das Primary Administrator-Profil. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie in Kapitel 2, Working With the Solaris Management Console (Tasks) in System Administration Guide: Basic Administration.

  2. Prüfen Sie auf das Vorhandensein einer IPQoS-Konfiguration in den Kernel-Modulen.


    # ipqosconf -l
    

    Wenn eine Konfiguration vorhanden ist, zeigt der Befehl ipqosconf die Konfiguration auf dem Bildschirm an. Wird keine Ausgabe angezeigt, übernehmen Sie die Konfiguration gemäß der Beschreibung unter So übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module.

  3. Stellen Sie sicher, dass die vorhandene IPQoS-Konfiguration bei jedem Neustart des IPQoS-Systems übernommen wird.


    # /usr/sbin/ipqosconf -c
    

    Die Option -c sorgt dafür, dass die aktuelle IPQoS-Konfiguration in der Boot-Konfigurationsdatei /etc/inet/ipqosinit.conf vorhanden ist.

Aktivieren von syslog zum Protokollieren von IPQoS-Nachrichten

Zum Aufzeichnen von Nachrichten, die beim Booten von IPQoS erzeugt werden, müssen Sie die Datei /etc/syslog.conf wie im Folgenden gezeigt ändern.

ProcedureSo aktivieren Sie die Protokollierung von IPQoS-Nachrichten während des Bootens

  1. Nehmen Sie die Rolle eines Primäradministrators an, oder melden Sie sich als Superuser bei dem IPQ-konformen System an.

    Die Rolle des Primäradministrators enthält das Primary Administrator-Profil. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie in Kapitel 2, Working With the Solaris Management Console (Tasks) in System Administration Guide: Basic Administration.

  2. Öffnen Sie die Datei /etc/syslog.conf.

  3. Fügen Sie den folgenden Text als letzten Eintrag in die Datei ein.


    user.info                 /var/adm/messages
    

    Verwenden Sie Tabulatoren anstelle von Leerzeichen zwischen den Spalten.

    Der Eintrag protokolliert alle Nachrichten, die von IPQoS beim Booten erzeugt werden, in der Datei /var/adm/messages.

  4. Booten Sie das System neu, um die Nachrichten zu übernehmen.


Beispiel 35–1 IPQoS-Ausgabe von /var/adm/messages

Wenn Sie die /var/adm/messages nach einem Systemneustart anzeigen, könnte die Ausgabe die folgenden protokollierten IPQoS-Nachrichten enthalten.


May 14 10:44:33 ipqos-14 ipqosconf: [ID 815575 user.info]
 New configuration applied.
May 14 10:44:46 ipqos-14 ipqosconf: [ID 469457 user.info] 
Current configuration saved to init file.
May 14 10:44:55 ipqos-14 ipqosconf: [ID 435810 user.info]
Configuration flushed.

Eventuell werden auch die folgenden IPQoS-Fehlermeldungen in der /var/adm/messages-Datei des IPQoS-Systems angezeigt.


May 14 10:56:47 ipqos-14 ipqosconf: [ID 123217 user.error]
 Missing/Invalid config file fmt_version.
May 14 10:58:19 ipqos-14 ipqosconf: [ID 671991 user.error] 
No ipgpc action defined.

Eine Beschreibung dieser Fehlermeldungen finden Sie in Tabelle 35–1.


Fehlerbehebung mit IPQoS-Fehlermeldungen

Dieser Abschnitt enthält von IPQoS erzeugte Fehlermeldungen sowie mögliche Abhilfemaßnahmen.

Tabelle 35–1 IPQoS-Fehlermeldungen

Fehlermeldung 

Beschreibung 

Lösung 

Unbestimmte Aktion in Parameter Parametername Aktion Aktionsname

Der in Parametername angegebene Aktionsname existiert nicht in der IPQoS-Konfigurationsdatei.

Erstellen Sie die Aktion oder verweisen Sie auf eine andere vorhandene Aktion in dem Parameter. 

Aktion Aktionsname ist am Zyklus beteiligt.

In der IPQoS-Konfigurationsdatei ist Aktionsname Teil eines Aktionszyklus, der laut IPQoS nicht zulässig ist.

Ermitteln Sie den Aktionszyklus. Dann entfernen Sie einen der zyklischen Verweise aus der IPQoS-Konfigurationsdatei. 

Aktion Aktionsname wird von keiner anderen Aktion referenziert

Eine nicht-ipgpc-Aktionsdefinition wurde von keiner anderen in der IPQoS-Konfiguration definierten Aktionen referenziert. Dies ist laut IPQoS nicht gestattet.

Entfernen Sie die nicht referenzierte Aktion. Alternativ sorgen Sie dafür, dass eine andere Aktionsreferenz die derzeit nicht referenzierte Aktion referenziert. 

Fehlende/ungültige Konfigurationsdatei fmt_version

Das Format der Konfigurationsdatei ist nicht als erster Eintrag der Datei angegeben. Dies ist jedoch eine Voraussetzung für IPQoS. 

Fügen Sie die Formatversion gemäß den Angaben unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen hinzu.

Nicht unterstützte Konfigurationsdatei-Formatversion

Die in der Konfigurationsdatei angegebene Formatversion wird nicht von IPQoS unterstützt. 

Ändern Sie die Formatversion zu fmt_version 1.0. Diese Formatversion ist zum Ausführen von Solaris 9 9/02 und höheren Versionen von IPQoS erforderlich.

Keine ipgpc-Aktion definiert.

Sie haben keine Aktion für den ipgpc-Classifier in der Konfigurationsdatei definiert. Dies ist jedoch eine Voraussetzung für IPQoS.

Definieren Sie eine Aktion für ipgpc gemäß den Angaben unter So erstellen Sie eine IPQoS-Konfigurationsdatei und definieren Datenverkehrsklassen.

Es kann keine Null-Konfiguration vorgenommen werden

Als Sie ipqosconf -c zur Bestätigung einer Konfiguration ausführen wollten, war diese Rekonfiguration leer. Dies ist laut IPQoS nicht zulässig.

Achten Sie darauf, eine Konfigurationsdatei zu übernehmen, bevor Sie versuchen, eine Konfiguration zu bestätigen. Anweisungen hierzu finden Sie unter So übernehmen Sie eine neue Konfigurationen für die IPQoS-Kernel-Module.

Ungültige CIDR-Maske Zeile Zeilennummer

In der Konfigurationsdatei haben Sie eine CIDR-Maske als Teil der IP-Adresse verwendet, die sich außerhalb des gültigen Bereichs für IP-Adressen befindet.  

Ändern Sie den Wert der Maske so, dass er sich im Bereich von 1–32 für IPv4 und 1–128 für IPv6 befindet. 

Adressmasken sind unzulässig für Hostnamen Zeile Zeilennummer

In der Konfigurationsdatei haben Sie eine CIDR-Maske für einen Hostnamen definiert, der in IPQoS nicht zulässig ist. 

Entfernen Sie die Maske oder ändern Sie den Hostnamen zu einer IP-Adresse. 

Ungültiger Modulname, Zeile Zeilennummer

In der Konfigurationsdatei ist der von Ihnen in einer action-Anweisung angegebenen Modulname ungültig. 

Prüfen Sie die richtige Schreibweise des Modulnamens. Eine Liste der IPQoS-Module finden Sie unter Tabelle 37–5.

ipgpc-Aktion weist falschen Namen auf, Zeile Zeilennummer

Der Name, den Sie der ipgpc-Aktion in der Konfigurationsdatei gegeben haben, ist nicht der erforderliche ipgpc.classify-Name.

Benennen Sie die Aktion ipgpc.classify um.

Zweite Parameterklausel nicht unterstützt, Zeile Zeilennummer

In der Konfigurationsdatei haben Sie zwei Parameterklauseln für eine Aktion angegeben. Dies ist laut IPQoS nicht zulässig. 

Kombinieren Sie alle Parameter für die Aktion in einer Parameterklausel. 

Gleichnamige Aktion

In der Konfigurationsdatei haben zwei Aktionen den gleichen Namen. 

Benennen Sie eine der Aktionen um, oder löschen Sie sie. 

Gleichnamiger Filter/Klasse in Aktion Aktionsname

Sie haben zwei Filtern oder zwei Klassen in der gleichen Aktion denselben Namen gegeben. Dies ist in der IPQoS-Konfigurationsdatei nicht zulässig. 

Benennen Sie einen der Filter bzw. eine der Klassen um, oder löschen Sie sie. 

Unbestimmte Klasse in Filter Filtername Aktion Aktionsname

In der Konfigurationsdatei verweist der Filter auf eine Klasse, die nicht in der Aktion definiert ist. 

Erstellen Sie die Klasse oder ändern Sie den Filterverweis auf eine bereits existierende Klasse. 

Unbestimmte Aktion in Klasse Klassenname Aktion Aktionsname

Die Klasse verweist auf eine Aktion, die nicht in der Konfigurationsdatei definiert ist. 

Erstellen Sie die Aktion oder ändern Sie den Verweis auf eine bereits existierende Aktion. 

Ungültige Parameter für Aktion Aktionsname

Einer der Parameter in der Konfigurationsdatei ist ungültig. 

Lesen Sie den Moduleintrag unter IPQoS-Architektur und das Diffserv-Modell für das Modul, das von der angegebenen Aktion aufgerufen wird. Alternativ lesen Sie die Manpage ipqosconf(1M).

Obligatorischer Parameter fehlt für Aktion Aktionsname

Ein für die Aktion erforderlicher Parameter ist in der Konfigurationsdatei nicht definiert. 

Lesen Sie den Moduleintrag unter IPQoS-Architektur und das Diffserv-Modell für das Modul, das von der angegebenen Aktion aufgerufen wird. Alternativ lesen Sie die Manpage ipqosconf(1M).

In ipgpc wurde die max. Klassenanzahl erreicht

Sie haben mehr Klassen als zulässig in der ipgpc-Aktion der IPQoS-Konfigurationsdatei angegeben. Die maximal zulässige Anzahl beträgt 10007.

Prüfen Sie die Konfigurationsdatei und entfernen Sie unnötige Klassen. Alternativ heben Sie die maximale Klassenanzahl an, indem Sie der /etc/system-Datei den Eintrag ipgpc_max_classesAnzahl-an-Klassen hinzufügen.

In der Aktion ipgpc wurde die max. Filteranzahl erreicht

Sie haben mehr Filter als zulässig in der ipgpc-Aktion der IPQoS-Konfigurationsdatei angegeben. Die maximal zulässige Anzahl beträgt 10007.

Prüfen Sie die Konfigurationsdatei und entfernen Sie unnötige Filter. Alternativ heben Sie die maximale Filteranzahl an, indem Sie der /etc/system-Datei den Eintrag ipgpc_max_filters Anzahl-an-Filtern hinzufügen.

Ungültige/fehlende Parameter für Filter Filtername in Aktion ipgpc

In der Konfigurationsdatei weist der Filter Filtername einen ungültigen oder fehlenden Parameter auf.

Eine Liste der gültigen Parameter finden Sie in der Manpage ipqosconf(1M).

Name darf nicht mit '!' beginnen, Zeile Zeilennummer

Sie haben eine Aktion, ein Filter oder einen Klassennamen mit einem Ausrufezeichen (!) begonnen, was in IPQoS-Dateien nicht zulässig ist. 

Entfernen Sie das Ausrufezeichen oder benennen Sie die Aktion, Klasse bzw. den Filter um. 

Name überschreitet maximale Länge Zeile Zeilennummer

Sie haben einen Namen für eine Aktion, eine Klasse oder einen Filter in der Konfigurationsdatei definiert, der die maximale Länge von 23 Zeichen überschreitet. 

Weisen Sie der Aktion, der Klasse oder dem Filter einen kürzeren Namen zu. 

Array-Deklaration Zeile Zeilennummer ist ungültig

In der Konfigurationsdatei ist die Array-Deklaration für den Parameter in der Zeile Zeilennummer ungültig.

Die korrekte Syntax der Array-Deklaration, die von der action-Anweisung mit dem ungültigen Array aufgerufen wird, finden Sie unter IPQoS-Architektur und das Diffserv-Modell. Alternativ lesen Sie die Manpage ipqosconf(1M).

Zeichenkette in Anführungszeichen überschreitet Zeile, Zeile , Zeilennummer

Diese Zeichenkette weist keine Beendigungs-Anführungszeichen in der gleichen Zeile auf. Dies ist in der Konfigurationsdatei erforderlich. 

Achten Sie darauf, dass die entsprechende Zeichenkette auf einer Zeile in der Konfigurationsdatei beginnt und endet. 

Ungültiger Wert, Zeile Zeilennummer

Der in Zeilennummer der Konfigurationsdatei angegebene Wert wird für den Parameter nicht unterstützt.

Gültige Werte für das Modul, das von der action-Anweisung aufgerufen wird, entnehmen Sie der Modulbeschreibung unter IPQoS-Architektur und das Diffserv-Modell. Alternativ lesen Sie die Manpage ipqosconf(1M).

Nicht erkannter Wert, Zeile Zeilennummer

Der Wert in Zeilennummer der Konfigurationsdatei ist kein unterstützter Aufzählungswert für diesen Parameter.

Prüfen Sie, ob der Aufzählungswert für diesen Parameter korrekt ist. Eine Beschreibung des Moduls, das von der action-Anweisung mit der nicht erkannten Zeilennummer aufgerufen wurde, finden Sie unter IPQoS-Architektur und das Diffserv-Modell. Alternativ lesen Sie die Manpage ipqosconf(1M).

Falsch formatierte Werteliste Zeile Zeilennummer

Die in Zeilennummer der Konfigurationsdatei angegebene Aufzählung entspricht nicht der Spezifikationssyntax.

Die korrekte Syntax für das Modul, das von der action-Anweisung mit der falsch formatierten Werteliste aufgerufen wurde, entnehmen Sie der Modulbeschreibung unter IPQoS-Architektur und das Diffserv-Modell. Alternativ lesen Sie die Manpage ipqosconf(1M).

Doppelter Parameter Zeile Zeilennummer

Ein doppelter Parameter wurde in Zeilennummer angegeben. Dies ist in der Konfigurationsdatei nicht zulässig.

Entfernen Sie einen der doppelten Parameter. 

Ungültiger Aktionsname Zeile Zeilennummer

Sie haben der Aktion in Zeilennummer der Konfigurationsdatei einen Namen gegeben, der den vordefinierten Namen „continue“ oder „drop“ verwendet.”

Benennen Sie die Aktion um, so dass sie keinen vordefinierten Namen verwendet. 

Fehler bei Auflösung des Ursprungs-/Zielhostnamens für Filter in Zeile Zeilennummer, Filter wird ignoriert

ipqosconf konnte die Ursprungs- oder Zieladresse nicht auflösen, die für den angegebenen Filter in der Konfigurationsdatei definiert wurde. Aus diesem Grund wird der Filter ignoriert.

Wenn der Filter wichtig ist, versuchen Sie die Konfiguration zu einem späteren Zeitpunkt zu übernehmen. 

Inkompatible Adressversion Zeile Zeilennummer

Die IP-Version der Adresse in Zeilennummer ist inkompatibel mit der Version einer zuvor angegebenen IP-Adresse oder dem Parameter ip_version.

Ändern Sie die beiden widersprüchlichen Einträge, so dass sie kompatibel sind. 

Aktion in Zeile Zeilennummer hat den Namen wie die aktuell installierte Aktion, gilt aber für ein anderes Modul

Sie versuchten, das Modul einer Aktion zu ändern, das bereits in der IPQoS-Konfiguration des Systems vorhanden ist. Dies ist nicht zulässig. 

Leeren Sie die aktuelle Konfiguration, bevor Sie die neue Konfiguration übernehmen.  

Kapitel 36 Verwenden von Flow Accounting und Erfassen von Statistiken (Aufgaben)

In diesem Kapitel wird beschrieben, wie Sie Informationen zum Accounting und Statistiken zum Datenverkehr beziehen, der von einem IPQoS-System verarbeitet wird. Folgende Themen werden behandelt:

Einrichten des Flow Accounting (Übersicht der Schritte)

Die folgende Tabelle enthält eine Liste der allgemeinen Aufgaben zum Beziehen von Informationen zu den Verkehrswerten mithilfe des flowacct-Moduls. Die Tabelle enthält Links zu den Verfahren zur Ausführung dieser Aufgaben.

Aufgabe 

Beschreibung 

Siehe 

1. Erstellen einer Datei zur Aufnahme der Accounting-Informationen für Verkehrswerte. 

Geben Sie den Befehl acctadm ein, um eine Datei zu erstellen, in der die Ergebnisse der Verarbeitung durch flowacct aufgenommen werden.

So erstellen Sie eineDatei für die Flow Accounting-Daten

2. Definieren der flowacct-Parameter in der IPQoS-Konfigurationsdatei.

Definieren Sie Werte für die Parameter timer, timeout und max_limit.

So aktivieren Sie das Accounting für eine Klasse in der IPQoS-Konfigurationsdatei

Aufzeichnen von Informationen zu Verkehrswerten

Mit dem IPQoS-Modul flowacct können Sie Informationen zu Verkehrswerten sammeln. Beispielsweise können Sie Informationen zu den Ursprungs- und Zieladressen, der Anzahl an Paketen in einem Datenfluss und ähnliche Daten erfassen. Dieses Sammeln und Aufzeichnen von Informationen zu Datenströmen wird als Flow Accounting bezeichnet.

Die Ergebnisse des Flow Accounting von Datenverkehr einer bestimmten Klasse wird in einer Tabelle mit Flow-Datensätzen aufgezeichnet. Jeder Flow-Datensatz enthält eine Reihe von Attributen. Diese Attribute enthalten Daten zu den Verkehrswerten einer bestimmten Klasse über einen bestimmten Zeitraum. Eine Liste der flowacct-Attribute finden Sie in Tabelle 37–4.

Das Flow Accounting eignet sich besonders zur Rechnungsstellung für Kunden gemäß den Definitionen in ihren Service-Level Agreements (SLAs). Sie können das Flow Accounting auch zum Beziehen von Flussstatistiken für entscheidende Anwendungen verwenden. In diesem Abschnitt wird beschrieben, wie Sie das Modul flowacct mit der Extended Accounting-Funktion von Oracle Solaris verwenden, um Daten zu Verkehrswerten zu beziehen.

Neben den Informationen in diesem Kapitel können Sie in den folgenden Quellen nachlesen:

ProcedureSo erstellen Sie eineDatei für die Flow Accounting-Daten

Bevor Sie eine flowacct-Aktion zur IPQoS-Konfigurationsdatei hinzufügen, müssen Sie eine Datei für die Flow-Datensätze des flowacct-Moduls anlegen. Dafür verwenden Sie den Befehl acctadm. acctadm kann entweder allgemeine Attribute oder erweiterte Attribute in der Datei aufzeichnen. Eine Liste der flowacct-Attribute finden Sie in Tabelle 37–4. Ausführliche Informationen zum Befehl acctadm finden Sie in der Manpage acctadm(1M).

  1. Nehmen Sie die Rolle eines Primäradministrators an, oder melden Sie sich als Superuser bei dem IPQ-konformen System an.

    Die Rolle des Primäradministrators enthält das Primary Administrator-Profil. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie in Kapitel 2, Working With the Solaris Management Console (Tasks) in System Administration Guide: Basic Administration.

  2. Erstellen Sie eine allgemeine Flow Accounting-Datei.

    Im folgenden Beispiel wird gezeigt, wie Sie eine allgemeine Flow Accounting-Datei für den Premium-Webserver erstellen, der in Beispiel 34–1 konfiguriert wurde.


    # /usr/sbin/acctadm -e basic -f /var/ipqos/goldweb/account.info flow
    
    acctadm -e

    Ruft acctadm mit der Option -e auf. Die Option -e ermöglicht, dass weitere Argumente eingegeben werden können.

    basic

    Gibt an, dass nur Daten für die acht allgemeinen flowacct-Attribute in der Datei aufgezeichnet werden.

    /var/ipqos/goldweb/account.info

    Der vollständig qualifizierte Pfad zu der Datei, in der die Flow-Datensätze des flowacct -Moduls aufgezeichnet werden.

    flow

    Weist acctadm an, dass Flow Accounting zu aktivieren.

  3. Zeigen Sie Informationen zum Flow Accounting auf dem IPQoS-System an, indem Sie den Befehl acctadm ohne weitere Argumente eingeben.

    acctadm erzeugt die folgende Ausgabe:

    Task accounting: inactive
           Task accounting file: none
         Tracked task resources: none
       Untracked task resources: extended
             Process accounting: inactive
        Process accounting file: none
      Tracked process resources: none
    Untracked process resources: extended,host,mstate
                Flow accounting: active
           Flow accounting file: /var/ipqos/goldweb/account.info
         Tracked flow resources: basic
       Untracked flow resources: dsfield,ctime,lseen,projid,uid

    Alle Einträge außer den letzten vier werden für die Funktion Solaris Resource Manager verwendet. In der folgenden Tabelle werden die speziell für IPQoS geltenden Einträge beschrieben.

    Eintrag 

    Beschreibung 

    Flow accounting: active

    Gibt an, dass das Flow Accounting aktiviert ist. 

    Flow accounting file: /var/ipqos/goldweb/account.info

    Gibt den Namen der aktuellen Flow Accounting-Datei an. 

    Tracked flow resources: basic

    Gibt an, dass nur allgemeine Datenflussattribute aufgezeichnet werden. 

    Untracked flow resources: dsfield,ctime,lseen,projid,uid

    Erstellt eine Liste der flowacct-Attribute, die nicht in der Datei aufgezeichnet werden.

  4. (Optional) Fügen Sie erweiterte Attribute zur Accounting-Datei hinzu.


    # acctadm -e extended -f /var/ipqos/goldweb/account.info flow
  5. (Optional) Kehren Sie zur Aufzeichnung nur der allgemeinen Attribute in der Accounting-Datei zurück.


    # acctadm -d extended -e basic -f /var/ipqos/goldweb/account.info

    Die Option -d deaktiviert das Extended Accounting.

  6. Zeigen Sie den Inhalt einer Flow Accounting-Datei an.

    Anweisungen zum Anzeigen des Inhalts einer Flow Accounting-Datei finden Sie unter Perl-Schnittstelle für libexacct in Systemverwaltungshandbuch: Oracle Solaris Container – Ressourcenverwaltung und Solaris Zones.

Siehe auch

Erfassen statistischer Informationen

Mit dem Befehl kstat können Sie Statistiken zu dem IPQoS-Modulen erzeugen. Verwenden Sie die folgende Syntax:


/bin/kstat -m ipqos-module-name

Sie können jeden gültigen IPQoS-Modulnamen angeben. Eine Liste gültiger Namen finden Sie in Tabelle 37–5. Um beispielsweise Statistiken anzuzeigen, die von dem dscpmk-Marker erzeugt wurden, geben Sie den folgenden kstat-Befehl ein:


/bin/kstat -m dscpmk

Technische Informationen finden Sie in der Manpage kstat(1M).


Beispiel 36–1 kstat-Statistiken für IPQoS

Im Folgenden finden Sie ein Beispiel mögliche Ergebnisse des Befehls kstat zum Beziehen von Statistiken zum flowacct-Modul.


# kstat -m flowacct
module: flowacct                        instance: 3     
name:   Flowacct statistics             class:    flacct 
        bytes_in_tbl                    84
        crtime                          345728.504106363
        epackets                        0
        flows_in_tbl                    1
        nbytes                          84
        npackets                        1
        snaptime                        345774.031843301
        usedmem                         256
class: flacct

Gibt den Namen der Klasse an, zu dem der Verkehrswert gehört; in diesem Fall flacct.

bytes_in_tbl

Die Gesamtzahl an Byte in der Flow-Tabelle. Gesamtzahl an Byte ist die Summe der Byte aller Flow-Datensätze, die derzeit in der Flow-Tabelle aufgezeichnet sind. Die Gesamtanzahl der Bytes für diese Flow-Tabelle ist 84. Wenn in der Tabelle keine Flows vorhanden sind, ist der Wert für bytes_in_tbl gleich 0.

crtime

Die letzte Uhrzeit, zu der eine kstat-Ausgabe erzeugt wurde.

epackets

Die Anzahl an Paketen, die während der Verarbeitung zu einem Fehler führten, in diesem Beispiel 0.

flows_in_tbl

Anzahl der Flow-Datensätze in der Flow-Tabelle (in diesem Beispiel 1). Wenn in der Tabelle keine Datensätze vorhanden sind, ist der Wert für flows_in_tbl gleich 0.

nbytes

Die Gesamtzahl an Byte, die von dieser Instanz der flowacct-Aktion erfasst wurden, in diesem Beispiel 84. Dieser Wert umfasst die Byte, die derzeit in der Flow-Tabelle vorhanden sind. Dieser Wert schließt darüber hinaus alle Byte ein, für die ein Timeout aufgetreten ist und die nicht länger in der Flow-Tabelle vorhanden sind.

npackets

Die Gesamtzahl an Paketen, die von dieser Instanz der flowacct-Aktion erfasst wurden, in diesem Beispiel 1. npackets umfasst auch die Pakete, die derzeit in der Flow-Tabelle vorhanden sind. npackets umfasst auch Pakete, für die ein Timeout aufgetreten ist und die nicht mehr in der Flow-Tabelle vorhanden sind.

usedmem

Byte im Hauptspeicher, die von der Flow-Tabelle verwendet werden und von dieser flowacct-Instanz verwaltet werden. Der usedmem-Wert beträgt in diesem Beispiel 256. Der Wert für usedmem beträgt 0, wenn die Flow-Tabelle keine Flow-Datensätze enthält.


Kapitel 37 IPQoS im Detail (Referenz)

Dieses Kapitel enthält Referenzmaterialien mit ausführlichen Informationen zu den folgenden IPQoS-Themen:

Eine Übersicht zu IPQoS finden Sie in Kapitel 32Einführung in IPQoS (Übersicht). Informationen zur Planung von IPQoS finden Sie in Kapitel 33Planen eines IPQoS-konformen Netzwerks (Aufgaben). Verfahren zur Konfiguration von IPQoS finden Sie in Kapitel 34Erstellen der IPQoS-Konfigurationsdatei (Aufgaben).

IPQoS-Architektur und das Diffserv-Modell

In diesem Abschnitt werden die IPQoS-Architektur und die Einflüsse von IPQoS auf das Differentiated Services (Diffserv)-Modell beschrieben, das unter RFC 2475, An Architecture for Differentiated Services definiert ist. In IPQoS sind die folgenden Elemente des Diffserv-Modells enthalten:

Darüber hinaus umfasst IPQoS das Flow Accounting-Modul und den dlcosmk-Marker für die Verwendung mit Geräten für virtuelle lokale Netzwerke (VLANs).

Classifier-Modul

Im Diffserv-Modell ist ein Classifier für die Strukturierung der ausgewählten Verkehrswerte in Gruppen verantwortlich, an denen unterschiedliche Serviceebenen angewendet werden. Die in RFC 2475 definierten Classifier wurden ursprünglich für Grenzrouter konzipiert. Der IPQoS-Classifier ipgpc dient jedoch zur Verarbeitung von Verkehrswerten auf Hosts, die sich in einem lokalen Netzwerk befinden. Somit kann ein Netzwerk mit IPQoS-Systemen und einem Diffserv-Router mehr Differentiated Services bereitstellen. Eine technische Beschreibung des ipgpc-Classifiers finden Sie in der Manpage ipgpc(7ipp).

Der ipgpc-Classifier führt Folgendes aus:

  1. Wählt Verkehrswerte aus, der den in der IPQoS-Konfigurationsdatei auf dem IPQoS-konformen Systemen angegebenen Kriterien entsprechen

    Die QoS-Richtlinie definiert verschiedene Kriterien, die in den Paket-Headern vorhanden sein müssen. Diese Kriterien werden als Selektoren bezeichnet. Der ipgpc-Classifier vergleicht diese Selektoren mit den Paket-Headern, die vom IPQoS-System empfangen wurden. ipgpc wählt dann alle übereinstimmenden Pakete aus.

  2. Teilt den Paketverkehr in Klassen (Netzverkehr mit den gleichen Eigenschaften) gemäß der Definition in der IPQoS-Konfigurationsdatei auf

  3. Prüft den Wert im Differentiated Service (DS)-Feld des Pakets auf das Vorhandensein eines Differentiated Services Codepoint (DSCP)

    Das Vorhandensein des DSCP gibt an, ob der eingehende Verkehr vom Sender mit einem Weiterleitungsverhalten versehen wurde.

  4. Ermittelt, welche weitere Aktion in der IPQoS-Konfigurationsdatei für die Pakete einer bestimmten Klasse definiert wurde

  5. Übergibt die Pakete an das nächste in der IPQoS-Konfigurationsdatei angegebene IPQoS-Modul, gibt die Pakete an den Netzwerkdatenfluss zurück

Eine Übersicht zu diesem Classifier finden Sie unter Classifier (ipgpc) – Übersicht. Informationen zum Aufrufen des Classifiers in der IPQoS-Konfigurationsdatei finden Sie unter IPQoS-Konfigurationsdatei.

IPQoS-Selektoren

Der ipgpc-Classifier unterstützt verschiedene Selektoren, die Sie in der filter-Klausel der IPQoS-Konfigurationsdatei angeben können. Wenn Sie einen Filter definieren, verwenden Sie immer die Mindestanzahl an Selektoren, die zum erfolgreichen Abrufen von Datenverkehr für eine bestimmte Klasse erforderlich ist. Die Anzahl der von Ihnen definierten Filter kann sich auf die IPQoS-Performance auswirken.

In der folgenden Tabelle sind die für ipgpc verfügbaren Selektoren aufgeführt.

Tabelle 37–1 Filter-Selektoren für den IPQoS-Classifier

Selektor 

Argument 

Ausgewählte Informationen 

saddr

IP-Adressnummer. 

Quelladresse. 

daddr

IP-Adressnummer. 

Zieladresse. 

sport

Entweder eine Portnummer oder ein Servicename gemäß der Definition in /etc/services.

Ursprungsport, von dem die Verkehrsklasse stammt. 

dport

Entweder eine Portnummer oder ein Servicename gemäß der Definition in /etc/services.

Zielport, für den die Verkehrsklasse bestimmt ist. 

protocol

Entweder eine Protokollnummer oder ein Protokollname gemäß der Definition in /etc/protocols.

Protokoll, das von dieser Verkehrsklasse verwendet werden muss. 

dsfield

DS Codepoint (DSCP) mit einem Wert zwischen 0 und 63. 

DSCP, der das Weiterleitungsverhalten für das Paket definiert. Wenn dieser Parameter angegeben ist, muss auch der Parameter dsfield_mask angegeben sein.

dsfield_mask

Bitmaske mit einem Wert zwischen 0 und 255. 

Wird zusammen mit dem Selektor dsfield verwendet. dsfield_mask wird an dem Selektor dsfield angewendet, um festzustellen, welche Bit übereinstimmen müssen.

if_name

Schnittstellenname. 

Schnittstelle, die entweder für eingehenden oder abgehenden Verkehr einer bestimmten Klasse verwendet werden muss. 

user

Nummer der auszuwählenden UNIX-Benutzer-ID bzw. des auszuwählenden Benutzernamens. Wenn keine Benutzer-ID oder Benutzername im Paket vorhanden ist, wird der Standardwert –1 verwendet. 

Die Benutzer-ID wird an eine Anwendung übermittelt. 

projid

Nummer der auszuwählenden Projekt-ID. 

Die Projekt-ID wird an eine Anwendung übermittelt. 

priority

Prioritätsnummer. Die niedrigste Priorität ist 0. 

Priorität, die Pakete dieser Klasse zugewiesen wird. Die Priorität dient zum Bestimmen der Wichtigkeit von Filtern für die gleiche Klasse. 

direction

Argumente können eines der Folgenden sein: 

Richtung des Paketflusses auf dem IPQoS-Computer.  

 

LOCAL_IN

Eingehender lokaler Verkehr zum IPQoS-System. 

 

LOCAL_OUT

Abgehender lokaler Verkehr zum IPQoS-System. 

 

FWD_IN

Eingehender, weiterzuleitender Verkehr. 

 

FWD_OUT

Abgehender, weiterzuleitender Verkehr. 

precedence

Wert der Prioritätsstufe. Die höchste Prioritätsstufe ist 0. 

Die Prioritätsstufe dient zum Sortieren von Filtern mit der gleichen Priorität. 

ip_version

V4 oder V6

Von den Paketen verwendetes Adressierungsschema, entweder IPv4 oder IPv6. 

Metermodul

Ein Meter verfolgt die Übertragungsrate von Datenströmen auf Paketbasis. Der Meter bestimmt, ob das Paket den konfigurierten Parametern entspricht. Das Metermodul bestimmt die nächste Aktion für ein Paket aus einer Reihe von Aktionen. Diese Aktion hängt von der Paketgröße, den konfigurierten Parametern und der Datenflussrate ab.

Der Meter besteht aus Metermodulen, tokenmt und tswtclmt, die Sie in der IPQoS-Konfigurationsdatei definieren. Sie können entweder ein Modul oder beide für eine Klasse konfigurieren.

Bei der Konfiguration eines Metermoduls können Sie zwei Parameter für die Rate definieren:

Eine Messaktion an einem Paket kann zu einem von drei möglichen Ergebnissen führen:

Sie können jedes Ergebnis mit anderen Aktionen in der IPQoS-Konfigurationsdatei konfigurieren. Committed rate und peak rate werden im folgenden Abschnitt erklärt.

tokenmt-Metermodul

Das tokenmt-Modul verwendet token buckets, um die Übertragungsrate eines Datenflusses zu messen. Sie können tokenmt als Single-Rate- oder Two-Rate-Meter konfigurieren. Eine tokenmt-Aktionsinstanz verwaltet zwei Token Buckets, die feststellen, ob der Verkehrswert den konfigurierten Parametern entspricht.

Wie IPQoS das Token Meter-Paradigma umsetzt wird in der Manpage tokenmt(7ipp) beschrieben. Allgemeine Informationen zu Token Buckets finden Sie in Kalevi Kilkki's Differentiated Services for the Internet und auf verschiedenen anderen Websites.

Die Konfigurationsparameter für tokenmt sind:

Konfiguration von tokenmt als Single-Rate Meter

Um tokenmt als einen Single-Rate Meter zu konfigurieren, geben Sie keinen peak_rate-Parameter für tokenmt in der IPQoS-Konfigurationsdatei an. Damit eine Single-Rate tokenmt-Instanz das Ergebnis rot, grün oder gelb liefert, müssen Sie den peak_burst-Parameter angeben. Wenn Sie den peak_burst-Parameter nicht verwenden, kann tokenmt als Ergebnis nur rot oder grün liefern. Ein Beispiel für eine Single-Rate tokenmt mit zwei Ergebnissen finden Sie in Beispiel 34–3.

Wenn tokenmt als Single-Rate Meter eingesetzt wird, ist der peak_burst-Parameter tatsächlich die excess burst-Größe. committed_rate und entweder committed_burst oder peak_burst müssen positive ganze Zahlen ungleich Null sein.

Konfiguration von tokenmt als Two-Rate Meter

Um tokenmt als einen Two-Rate Meter zu konfigurieren, geben Sie einen peak_rate-Parameter für tokenmt in der IPQoS-Konfigurationsdatei an. Eine Two-Rate tokenmt-Instanz hat immer drei mögliche Ergebnisse: rot, gelb und grün. Die Parameter committed_rate, committed_burst und peak_burst müssen positive ganze Zahlen ungleich Null sein.

Konfiguration von tokenmt zur Erkennung von Farben

Damit eine Two-Rate tokenmt-Instanz Farben erkennen kann, müssen Sie zwei Parameter für die „Farberkennung„ spezifisch hinzufügen. Im Folgenden finden Sie ein Beispiel für eine action-Anweisung, die tokenmt zur Erkennung von Farben konfiguriert.


Beispiel 37–1 tokenmt-Aktion zur Farberkennung für die IPQoS-Konfigurationsdatei

action {
    module tokenmt
    name meter1
    params {
	      committed_rate 4000000
	      peak_rate 8000000
	      committed_burst 4000000
	      peak_burst 8000000
	      global_stats true
	      red_action_name continue
	      yellow_action_name continue
	      green_action_name continue
	      color_aware true
	      color_map {0-20,22:GREEN;21,23-42:RED;43-63:YELLOW}
    }
}

Sie aktivieren die Farberkennung, indem Sie den color_aware-Parameter auf true setzen. Als farbempfindliches Metermodul geht tokenmt davon aus, dass das Paket bereits in einer früheren tokenmt-Aktion mit rot, gelb oder grün markiert wurde. Ein farbbewusstes tokenmt-Modul wertet ein Paket aus, indem es den DSCP im Paket-Header zusätzlich zu den Parameter für ein Two-Rate Meter verwendet.

Der color_map-Parameter enthält ein Array, in dem der DSCP im Paket-Header zugeordnet ist. Betrachten Sie das folgende color_map-Array:

color_map {0-20,22:GREEN;21,23-42:RED;43-63:YELLOW}

Pakete mit einem DSCP zwischen 0 und 20 sowie 22 werden „grün“ zugeordnet. Pakete mit einem DSCP von 21 und zwischen 23 und 42 sind „rot“ zugeordnet. Pakete mit einem DSCP zwischen 43 und 63 sind„gelb“ zugeordnet. tokenmt unterhält eine Standard-Farbkarte. Sie können die Standardeinstellungen jedoch Ihren Anforderungen entsprechend mit den color_map-Parameter anpassen.

In den color_action_name-Parameter können Sie continue angeben, um die Verarbeitung des Pakets abzuschließen. Oder Sie fügen ein Argument hinzu, um das Paket an eine Marker-Aktion zu senden, beispielsweise an yellow_action_name mark22.

tswtclmt-Metermodul

Das Metermodul tswtclmt schätzt die durchschnittliche Bandbreite einer Verkehrsklasse mithilfe eines Zeit-basierten Rate Estimator. tswtclmt wird immer als Three-Outcome Meter eingesetzt. Der Rate Estimator bietet eine Schätzung des eingehenden Datenverkehrs. Diese Rate muss etwa der laufenden durchschnittlichen Bandbreite des Datenflusses über eine bestimmte Zeit, dem Zeitfenster entsprechen. Der Rate Estimation-Algorithmus stammt aus RFC 2859, A Time Sliding Window Three Colour Marker.

Zur Konfiguration von tswtclmt verwenden Sie die folgenden Parameter:

Technische Informationen zu tswtclmt finden Sie in der Manpage tswtclmt(7ipp) Allgemeine Information zu Rate Shapern, die ähnlich zu tswtclmt sind, finden Sie unter RFC 2963, A Rate Adaptive Shaper for Differentiated 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.

flowacct-Modul

Das IPQoS flowacct-Modul zeichnet Informationen zu den Verkehrswerten auf, ein Vorgang, der als Flow Accounting bezeichnet wird. Das Flow Accounting erzeugt Daten, die entweder zur Rechnungsstellung für Kunden oder zur Auswertung der Menge an Datenverkehr einer bestimmten Klasse verwendet werden können.

Das Flow Accounting ist optional. flowacct ist in der Regel das letzte Modul, auf das ein gemessener oder markierter Verkehrswert trifft, bevor er in den Netzwerkstrom freigegeben wird. Eine Darstellung der Position von flowacct im Diffserv-Modell finden Sie in Abbildung 32–1. Ausführliche technische Informationen zu flowacct finden Sie in der Manpage flowacct(7ipp).

Zum Aktivieren des Flow Accounting benötigen Sie die Oracle Solaris Accounting-Funktion exacct und den Befehl acctadm sowie flowacct. Allgemeine Schritte zum Einrichten des Flow Accounting finden Sie unter Einrichten des Flow Accounting (Übersicht der Schritte).

flowacct-Parameter

Das flowacct-Modul sammelt Informationen zu den Datenströmen in einer Flow-Tabelle mit Flow-Datensätzen. Jeder Eintrag in der Tabelle enthält einen Flow-Datensatz. Sie können eine Flow-Tabelle nicht anzeigen.

In der IPQoS-Konfigurationsdatei definieren Sie die folgenden flowacct-Parameter, um die Flow-Datensätze zu messen und in die Flow-Tabelle zu schreiben:

Ein Beispiel für die Anwendung von flowacct-Parameter in der IPQoS-Konfigurationsdatei finden Sie unter So konfigurieren Sie die Verkehrssteuerung in der IPQoS-Konfigurationsdatei.

Flow-Tabelle

Das flowacct-Modul verwaltet eine Flow-Tabelle, in der alle Paket-Datenströme aufgezeichnet werden, die von einer flowacct-Instanz erfasst werden. Ein Datenfluss wird durch die folgenden Parameter gekennzeichnet, die in dem flowacct 8–Tuple enthalten sind:

Wenn alle Parameter des 8–Tuple für einen Datenfluss gleich bleiben, enthält die Flow-Tabelle nur einen einzigen Eintrag. Der max_limit-Parameter legt die Anzahl an Einträgen fest, die eine Flow-Tabelle aufnehmen kann.

Die Flow-Tabelle wird in dem Intervall gescannt, das für den timer-Parameter in der IPQoS-Konfigurationsdatei angegeben ist. Die Standardeinstellung beträgt 15 Sekunden. Ein Datenfluss erfährt einen „Timeout“, wenn das IPQoS-System mindestens über das in der IPQoS-Konfigurationsdatei festgelegte timeout-Intervall keine Pakete dieses Datenflusses erfasst. Das standardmäßige Timeout-Intervall beträgt 60 Sekunden. Einträge, für die ein Timeout eingetreten ist, werden in die zuvor mit dem Befehl acctadm erstellte Accounting-Datei geschrieben.

flowacct-Datensätze

Ein flowacct-Datensatz enthält die in der folgenden Tabelle beschriebenen Attribute.

Tabelle 37–4 Attribute eines flowacct-Datensatzes

Attributname 

Attributinhalt 

Typ 

src-addr-Adresstyp

Ursprungsadresse des Absenders. Adresstyp ist entweder v4 für IPv4 oder v6 für IPv6, je nach Angabe in der IPQoS-Konfigurationsdatei.

Basic  

dest-addr-Adresstyp

Zieladresse der Pakete. Adresstyp ist entweder v4 für IPv4 oder v6 für IPv6, je nach Angabe in der IPQoS-Konfigurationsdatei.

Basic 

src-port

Ursprungs-Port, von dem Verkehrsfluss stammt.  

Basic 

dest-port

Ziel-Port, für den dieser Verkehrsfluss bestimmt ist.  

Basic 

protocol

Protokollnummern des Verkehrsflusses.  

Basic 

total-packets

Anzahl der Pakete im Verkehrsfluss. 

Basic 

total-bytes

Anzahl der Byte im Verkehrsfluss. 

Basic  

Aktionsname

Name der flowacct-Aktion, die diesen Verkehrsfluss aufgezeichnet hat.

Basic 

creation-time

Uhrzeit, wann das erste Paket des Verkehrsflusses von flowacct erfasst wurde.

Nur Extended 

last-seen

Uhrzeit, wann zuletzt ein Paket des Verkehrsflusses erfasst wurde. 

Nur Extended 

diffserv-field

DSCP in den Headern abgehender Pakete im Verkehrsfluss. 

Nur Extended 

user

Entweder eine UNIX-Benutzer-ID oder ein Benutzername, der von der Anwendung bezogen wird. 

Nur Extended 

projid

Projekt-ID, die von der Anwendung bezogen wird. 

Nur Extended 

Verwenden von acctadm mit dem flowacct-Modul

Mit dem Befehl acctadm können Sie eine Datei erstellen, in der die verschiedenen vom flowacct-Modul erzeugten Flow-Datensätze gespeichert werden. acctadm arbeitet mit der Extended Accounting-Funktion zusammen. Technische Informationen zu acctadm finden Sie in der Manpage acctadm(1M).

Das flowacct-Modul überwacht Verkehrsflüsse und füllt die Flow-Tabelle mit Flow-Datensätzen. Dann wertet flowacct seine Parameter und Attribute in dem von timer vorgegebenen Intervall aus. Wenn ein Paket über die Werte last_seen plus timeout nicht erfasst wird, tritt ein Timeout für das Paket auf. Alle Einträge mit einem Timeout werden aus der Flow-Tabelle gelöscht. Diese Einträge werden dann in dem durch den Parameter timer vorgegebenen Intervall in die Accounting-Datei geschrieben.

Zum Aufrufen von acctadm für das flowacct-Modul verwenden Sie die folgende Befehlssyntax:

acctadm -e file-type -f filename flow
acctadm -e

Ruft acctadm mit der Option -e auf. Das -e gibt an, dass eine Ressourcenliste folgt.

Dateityp

Gibt die zu erfassenden Attribute an. Dateityp muss durch entweder basic oder extended ersetzt werden. Eine Liste der Attribute für jeden Dateityp finden Sie in Tabelle 37–4.

-fDateiname

Erstellt die Datei Dateiname, in der die Flow-Datensätze gespeichert werden.

flow

Gibt an, dass acctadm mit IPQoS ausgeführt wird.

IPQoS-Konfigurationsdatei

In diesem Abschnitt finden Sie Informationen zu den einzelnen Teilen der IPQoS-Konfigurationsdatei. Die beim Booten aktivierte IPQoS-Richtlinie ist in der Datei /etc/inet/ipqosinit.conf gespeichert. Obwohl Sie diese Datei bearbeiten können, sollten Sie für ein neues IPQoS-System eine Konfigurationsdatei mit einem anderen Namen erstellen. Aufgaben zum Übernehmen und Debuggen einer IPQoS-Konfiguration finden Sie in Kapitel 34Erstellen der IPQoS-Konfigurationsdatei (Aufgaben).

Die Syntax der IPQoS-Konfigurationsdatei ist in Beispiel 37–3 gezeigt. Das Beispiel verwendet die folgenden typografischen Konventionen:


Beispiel 37–3 Syntax der IPQoS-Konfigurationsdatei

file_format_version ::= fmt_version version

action_clause ::= action {
     name action-name
     module module-name
     params-clause |  ""
     cf-clauses
}
action_name ::= string
module_name ::= ipgpc | dlcosmk | dscpmk | tswtclmt | tokenmt | flowacct 

params_clause ::= params { 
     parameters
     params-stats |   ""
     }
parameters ::=    prm-name-value parameters |  ""
prm_name_value ::= param-name param-value

params_stats ::= global-stats boolean

cf_clauses ::= class-clause cf-clauses |
               filter-clause cf-clauses | ""

class_clause ::= class {
     name class-name
     next_action next-action-name
     class-stats | ""
                 }
class_name  ::= string
next_action_name  ::= string
class_stats ::= enable_stats boolean
boolean ::= TRUE | FALSE

filter_clause ::= filter {
                name filter-name
                class class–name
                parameters
                }
filter_name ::= string

Im Folgenden werden die wichtigsten Teile der IPQoS-Konfigurationsdatei beschrieben.

action-Anweisung

Mit action-Anweisungen rufen Sie die verschiedenen IPQoS-Module auf, die unter IPQoS-Architektur und das Diffserv-Modell beschrieben sind.

Achten Sie darauf, dass eine IPQoS-Konfigurationsdatei immer mit der Versionsnummer beginnen muss. Dann müssen Sie die folgende action-Anweisung hinzufügen, um den Classifier aufzurufen:


fmt_version 1.0

action {
    module ipgpc
    name ipgpc.classify
}

Nach der Classifier action-Anweisung geben Sie eine params-Klausel oder eine class-Klausel ein.

Verwenden Sie für alle action-Anweisungen die folgende Syntax:

action {
name action-name
module module-name
params-clause | ""
cf-clauses
}
name action_name

Weist der Aktion einen Namen zu.

module module_name

Identifiziert das aufzurufende IPQoS, bei dem es sich um eines der Module in Tabelle 37–5 handeln muss.

params_clause

Können Parameter für den zu verarbeitenden Classifier sein, z. B. globale Statistiken oder die nächste zu verarbeitende Aktion.

cf_clauses

Eine Reihe von null oder mehr class- oder filter-Klauseln

Definition der Module

Die Moduldefinition gibt an, welches Modul in den Parametern der action-Anweisung verarbeitet werden soll. Die IPQoS-Konfigurationsdatei kann die folgenden Module enthalten.

Tabelle 37–5 IPQoS-Module

Modulname 

Definition 

ipgpc

IP-Classifier 

dscpmk

Zum Erstellen von DSCPs in IP-Paketen zu verwendender Marker 

dlcosmk

Mit VLAN-Geräten zu verwendender Marker 

tokenmt

Token Bucket-Metermodul 

tswtclmt

Time-Sliding Window-Metermodul 

flowacct

Flow Accounting-Modul 

class-Klausel

Sie definieren eine class-Klausel für jede Verkehrsklasse.

Zum Definieren der verbleibenden Klassen in der IPQoS-Konfiguration verwenden Sie die folgende Syntax:


class {
     
      name class-name
      next_action next-action-name
}      

Um die Erfassung von Statistiken einer bestimmten Klasse zu aktivieren, müssen Sie zunächst die globalen Statistiken in der ipgpc.classify action-Anweisung aktivieren. Weitere Informationen hierzu finden Sie unter action-Anweisung.

Mit der enable_stats TRUE-Anweisung können Sie Erfassung von Statistiken für eine Klasse jederzeit aktivieren. Wenn Sie keine Statistiken für eine Klasse erfassen möchten, können Sie die enable_stats FALSE-Anweisung verwenden. Alternativ löschen Sie die enable_stats-Anweisung.

Verkehr in einem IPQoS-konformen Netzwerk, den Sie nicht speziell definieren, wird der Standardklasse zugeordnet.

filter-Klausel

Filter bestehen aus Selektoren, die Verkehrswerte in Klassen gruppieren. Diese Selektoren definieren die Kriterien, die an dem Verkehr einer in der class-Klausel erstellten Klasse angewendet werden. Wenn ein Paket allen Selektoren des Filters mit der höchsten Priorität entspricht, wird es als ein Mitglied dieser Filterklasse betrachtet. Eine vollständige Liste der Selektoren, die Sie mit dem ipgpc-Classifier verwenden können, finden Sie unter Tabelle 37–1.

Die Filter in der IPQoS-Konfigurationsdatei werden mithilfe einer filter-Klausel definiert, die folgende Syntax aufweist:

filter { 
       name filter-name
       class class-name 
       parameters (selectors)
       }

params-Klausel

Die params-Klausel enthält Verarbeitungsanweisungen für das in der action-Anweisung definierte Modul. Für die params-Klausel verwenden Sie die folgende Syntax:


params {
           parameters
           params-stats | ""
       }

In der params-Klausel verwenden Sie Parameter, die an dem Modul angewendet werden können.

Der Wert params-Statistiken in der params muss entweder global_stats TRUE oder global_stats FALSE lauten. Die Anweisung global_stats TRUE aktiviert die Erfassung von Statistiken im UNIX-Stil für die action-Anweisung, in der die globalen Statistiken aufgerufen werden. Statistiken können Sie mithilfe des Befehls kstat anzeigen. Sie müssen die action-Anweisung aktivieren, bevor Sie die Erfassung von Statistiken pro Klasse aktivieren können.

ipqosconf-Konfigurationsprogramm

Mit dem Serviceprogramm ipqosconf können Sie die IPQoS-Konfigurationsdatei einlesen und die IPQoS-Module im UNIX-Kernel konfigurieren. ipqosconf führt die folgenden Aktionen aus:

Technische Informationen finden Sie in der Manpage ipqosconf(1M).