In diesem Dokument werden Methoden zur Messung von Verzögerungen, Jitter und Paketverlusten im Datennetzwerk mithilfe von Cisco IOS® Service Assurance Agent (SAA) und Round Trip Time Monitor (RTTMON) sowie Cisco Routern beschrieben.
Mit der Entwicklung neuer Anwendungen in Datennetzwerken wird es für Kunden immer wichtiger, die Auswirkungen der Einführung neuer Anwendungen genau vorherzusagen. Vor nicht allzu langer Zeit war es einfach, den Anwendungen Bandbreite zuzuweisen und sie durch Timeout- und Retransmission-Funktionen der Protokolle der oberen Schicht an die explosionsartige Natur des Datenverkehrs anzupassen. Heute sind jedoch neue Anwendungen wie Sprache und Video anfälliger für Änderungen der Übertragungseigenschaften von Datennetzwerken. Vor der Bereitstellung neuer Anwendungen müssen die Datenverkehrsmerkmale des Netzwerks berücksichtigt werden, um eine erfolgreiche Implementierung sicherzustellen.
Voice over IP (VoIP) ist anfällig für Netzwerkverhalten, d. h. Verzögerungen und Jitter, die die Sprachanwendung so stark beeinträchtigen können, dass sie für den durchschnittlichen Benutzer nicht akzeptabel ist. Verzögerung ist die Zeit, die in einem Netzwerk von Punkt zu Punkt benötigt wird. Die Verzögerung kann entweder als unidirektionale oder als Round-Trip-Verzögerung gemessen werden. Für Berechnungen mit unidirektionalen Verzögerungen sind teure, hoch entwickelte Testgeräte erforderlich, die das Budget und die Fachkenntnisse der meisten Unternehmenskunden übersteigen. Die Messung der Round-Trip-Verzögerung ist jedoch einfacher und erfordert weniger teure Geräte. Um eine allgemeine Messung der unidirektionalen Verzögerung zu erhalten, messen Sie die Round-Trip-Verzögerung, und teilen Sie das Ergebnis durch zwei. VoIP toleriert in der Regel Verzögerungen von bis zu 150 ms, bevor die Qualität des Anrufs nicht akzeptabel ist.
Jitter bezeichnet die zeitliche Variation der Verzögerung von Punkt zu Punkt. Wenn die Verzögerung der Übertragung bei einem VoIP-Anruf zu stark variiert, beeinträchtigt dies die Anrufqualität erheblich. Die im Netzwerk tolerierbare Menge an Jitter wird durch die Tiefe des Jitter-Puffers der Netzwerkausrüstung im Sprachpfad beeinflusst. Je mehr Jitter-Puffer verfügbar sind, desto stärker kann das Netzwerk die Auswirkungen von Jitter reduzieren.
Bei einem Paketverlust gehen Pakete auf dem Datenpfad verloren, wodurch die Sprachanwendung erheblich beeinträchtigt wird.
Vor der Bereitstellung von VoIP-Anwendungen müssen Verzögerung, Jitter und Paketverlust im Datennetzwerk bewertet werden, um festzustellen, ob die Sprachanwendungen funktionieren. Anhand der Messungen von Verzögerungen, Jitter und Paketverlusten kann dann die korrekte Planung und Konfiguration der Datenverkehrspriorisierung sowie der Pufferparameter in der Datennetzwerkausrüstung unterstützt werden.
SAA und RTTMON MIB sind Cisco IOS-Softwarefunktionen, verfügbar ab Version 12.0 (5)T. Mit diesen Funktionen können Sie Statistiken zu Verzögerungen, Jitter und Paketverlusten im Datennetzwerk testen und sammeln. Internetwork Performance Monitor (IPM) ist eine Netzwerkverwaltungsanwendung von Cisco, die die Funktionen konfigurieren und die SAA- und RTTMON-Daten überwachen kann. Die SAA- und RTTMON-Funktionen können verwendet werden, um Verzögerungen, Jitter und Paketverluste zu messen, indem kleine Cisco IOS-Router als Agenten bereitgestellt werden, um Endgeräte von Kunden zu simulieren. Die Router werden als Delay- und Jitter-Tests bezeichnet. Darüber hinaus können die Verzögerungs- und Jitter-Tests mit dem RMON-Alarm (Remote Monitoring) und den Ereignis-Triggern konfiguriert werden, sobald die Baseline-Werte bestimmt wurden. Auf diese Weise können Verzögerungs- und Jitter-Tests das Netzwerk auf vorbestimmte Verzögerungs- und Jitter-Servicelevel überwachen und die NMS-Stationen (Network Management System) benachrichtigen, wenn ein Schwellenwert überschritten wird.
Verzögerung und Jitter können gemessen werden, indem Cisco Router 17xx oder höher mit dem Cisco IOS Softwarecode 12.05T oder höher bereitgestellt und die Cisco IOS SAA-Funktionen konfiguriert werden. Die Router sollten in den Campus-Netzwerken neben den Hosts platziert werden. Dies liefert Statistiken für End-to-End-Verbindungen. Da es nicht zweckmäßig ist, jeden möglichen Sprachpfad im Netzwerk zu messen, platzieren Sie die Sonden an typischen Host-Standorten, sodass eine statistische Abtastung typischer Sprachpfade möglich ist. Beispiele:
ein lokaler Pfad von Campus zu Campus
ein lokaler Campus-zu-Remote-Campus-Pfad über einen 384 kbs Frame Relay-Stromkreis
ein lokaler Campus an einem Remote-Standort über einen permanenten virtuellen ATM-Schaltkreis (PVC)
Bei VoIP-Bereitstellungen mit herkömmlichen Telefonen, die über FXS-Ports (Foreign Exchange Station) mit Cisco Routern verbunden sind, verwenden Sie den Router, der mit den Telefonen verbunden ist, um Verzögerungs- und Jitter-Tests durchzuführen. Nach der Bereitstellung sammelt der Prüfpunkt Statistiken und füllt die Simple Network Management Protocol (SNMP)-MIB-Tabellen im Router auf. Auf die Daten kann dann entweder über die Cisco IPM-Anwendung oder über SNMP-Polling-Tools zugegriffen werden. Darüber hinaus kann SAA nach Festlegung der Basiswerte so konfiguriert werden, dass Warnungen an eine NMS-Station gesendet werden, wenn die Schwellenwerte für Verzögerungen, Jitter und Paketverluste überschritten werden.
Eine der Stärken der Verwendung von SAA als Testmechanismus besteht darin, dass ein Sprachanruf simuliert werden kann. Angenommen, Sie simulieren einen G.711-Sprachanruf. Sie wissen, dass es die RTP/UDP-Ports 14384 und höher verwendet, dass es ca. 64 kb/s beträgt und die Paketgröße 200 Byte beträgt {(160 Byte Nutzlast + 40 Byte für IP/UDP/RTP (unkomprimiert) }.Sie können diese Art von Datenverkehr simulieren, indem Sie den SAA-Verzögerungs-/Jittertest wie unten gezeigt einrichten.
Der Jitter-Vorgang muss wie folgt durchgeführt werden:
Senden Sie die Anfrage an den RTP-/UDP-Port 14384.
172 Byte Pakete (160 Payloads + 12 Byte RTP Header-Größe) + 28 Byte (IP + UDP) senden.
3.000 Pakete pro Frequenzzyklus senden
Senden Sie jedes Paket im Abstand von 20 Millisekunden für eine Dauer von 60 Sekunden, und schlafen Sie 10 Sekunden, bevor Sie mit dem nächsten Frequenzzyklus beginnen.
Diese Parameter geben 64 kb/s für 60 Sekunden.
(3.000 Datagramme * 160 Bytes pro Datagramm)/ 60 Sekunden) * 8 Bit pro Byte = 64 Kbit/s
Die Konfiguration auf dem Router sieht wie folgt aus:
rtr 1 type jitter dest-ipaddr 172.18.179.10 dest-port 14384 num-packets 3000+ request-data-size 172* frequency 70 rtr schedule 1 life 2147483647 start-time now
Hinweis: IP- und UDP-Pakete werden bei der Größe der Anforderungsdaten nicht berücksichtigt, da sie vom Router intern automatisch zur Größe hinzugefügt werden.
Hinweis: Derzeit unterstützt Cisco IOS nur 1.000 Pakete pro Vorgang. Dieses Limit wird in einer zukünftigen Version erhöht.
Die Router im folgenden Beispiel simulieren alle 60 Sekunden 60-sekündige Sprachanrufe und zeichnen Verzögerungen, Jitter und Paketverluste in beide Richtungen auf.
Hinweis: Bei den Verzögerungsberechnungen handelt es sich um Round-Trip-Zeiten, die durch zwei dividiert werden müssen, um die unidirektionale Verzögerung zu erhalten.
saarouter1# rtr responder rtr 1 type jitter dest-ipaddr 172.18.179.10 dest-port 14384 num-packets 1000 request-data-size 492 frequency 60 rtr schedule 1 life 2147483647 start-time now saarouter2# rtr responder rtr 1 type jitter dest-ipaddr 172.18.178.10 dest-port 14385 num-packets 1000 request-data-size 492 rtr schedule 1 life 2147483647 start-time now saarouter3# rtr responder rtr 1 type jitter dest-ipaddr 172.18.179.100 dest-port 14385 num-packets 1000 request-data-size 492 frequency 60 rtr schedule 1 life 2147483647 start-time now saarouter4# rtr responder rtr 1 type jitter dest-ipaddr 172.18.178.100 dest-port 14385 num-packets 1000 request-data-size 492 frequency 60 rtr schedule 1 life 2147483647 start-time now
Die Verzögerungs- und Jitter-Tests fangen an, Daten zu sammeln, die anschließend in SNMP MIB-Tabellen platziert werden. Die rttMonStats-Tabelle gibt einen Stundenmittelwert aller Jitter-Vorgänge für die letzte Stunde an. Die rttMonLatestJitterOper-Tabelle stellt die Werte des zuletzt abgeschlossenen Vorgangs bereit. Für allgemeine Statistiken zu Verzögerungen und Jitter sollten Sie die rttMonStats-Tabelle stündlich abfragen. Detailliertere Statistiken können Sie erhalten, wenn Sie die rttMonLatestJitterOper-Tabelle mit einer höheren Frequenz abfragen als bei der Jitter-Operation. Beispiel: Wenn die Verzögerungs- und Jittersonde den Jitter alle fünf Minuten berechnet, fragen Sie die MIB in keinem Intervall unter fünf Minuten ab.
Die folgende Screenshot-Aufzeichnung zeigt Daten aus der rttMonJitterStatsTable, die aus einer HP OpenView Network Node Manager MIB-Abfrage ermittelt wurden.
Das folgende SAA-Datendiagramm ist eine Zusammenstellung von Datenpunkten zu Verzögerungen, Jitter und Paketverlusten über einen Zeitraum von acht Stunden für ein Paar von Verzögerungs- und Jitter-Tests.
Die Daten können auch mit dem Cisco IOS-Befehl show in der Befehlszeile für die Verzögerungs- und Jitter-Tests angezeigt werden. Ein Perl Expect-Skript kann verwendet werden, um Daten aus der Befehlszeile zu sammeln und sie für eine spätere Analyse in eine Textdatei zu exportieren. Darüber hinaus können die Befehlszeilendaten auch zur Echtzeitüberwachung und Fehlerbehebung von Verzögerungen, Jitter und Paketverlusten verwendet werden.
Das folgende Beispiel zeigt die Befehlsausgabe des Befehls show rtr collection-stats auf dem Router saarouter1.
#show rtr collection-stats 100 Collected Statistics Entry Number: 100 Target Address: 172.16.71.243, Port Number: 16384 Start Time: 13:06:04.000 09:25:00 Tue Mar 21 2000 RTT Values: NumOfRTT: 600 RTTSum: 873 RTTSum2: 1431 Packet Loss Values: PacketLossSD: 0 PacketLossDS: 0 PacketOutOfSequence: 0 PacketMIA: 0 PacketLateArrival: 0 InternalError: 0 Busies: 0 Jitter Values: MinOfPositivesSD: 1 MaxOfPositivesSD: 1 NumOfPositivesSD: 23 SumOfPositivesSD: 23 Sum2PositivesSD: 23 MinOfNegativesSD: 1 MaxOfNegativesSD: 1 NumOfNegativesSD: 1 SumOfNegativesSD: 1 Sum2NegativesSD: 1 MinOfPositivesDS: 1 MaxOfPositivesDS: 1 NumOfPositivesDS: 7 SumOfPositivesDS: 7 Sum2PositivesDS: 7 MinOfNegativesDS: 1 MaxOfNegativesDS: 1 NumOfNegativesDS: 18 SumOfNegativesDS: 18 Sum2NegativesDS: 18 Entry Number: 100 Target Address: 172.16.71.243, Port Number: 16384 Start Time: 14:06:04.000 09:25:00 Tue Mar 21 2000 RTT Values: NumOfRTT: 590 RTTSum: 869 RTTSum2: 1497 Packet Loss Values: PacketLossSD: 0 PacketLossDS: 0 PacketOutOfSequence: 0 PacketMIA: 0 PacketLateArrival: 0 InternalError: 0 Busies: 0 Jitter Values: MinOfPositivesSD: 1 MaxOfPositivesSD: 1 NumOfPositivesSD: 29 SumOfPositivesSD: 29 Sum2PositivesSD: 29 MinOfNegativesSD: 1 MaxOfNegativesSD: 1 NumOfNegativesSD: 7 SumOfNegativesSD: 7 Sum2NegativesSD: 7 MinOfPositivesDS: 1 MaxOfPositivesDS: 1 NumOfPositivesDS: 47 SumOfPositivesDS: 47 Sum2PositivesDS: 47 MinOfNegativesDS: 1 MaxOfNegativesDS: 1 NumOfNegativesDS: 5 SumOfNegativesDS: 5 Sum2NegativesDS: 5
Es gibt mehrere Möglichkeiten, die Verzögerungs-, Jitter- und Paketverluststufen im Netzwerk zu überwachen, sobald während der ersten Datenerfassung die Basiswerte ermittelt wurden. Eine Möglichkeit besteht darin, den Befehl SAA threshold zu verwenden. Eine weitere Möglichkeit besteht in der Verwendung einer Funktion im Cisco IOS-Hauptcode mit dem Namen RMON Alarm and Event.
Der Befehl SAA feature set threshold legt den steigenden Schwellenwert (Hysterese) fest, der ein Reaktionsereignis generiert und Verlaufsinformationen für den Vorgang speichert. Die folgende ASA-Schwellenwertkonfiguration für die Verzögerungs- und Jitterprobe aktiviert die Jitterüberwachung und erstellt bei Überschreitung eines Schwellenwerts von 5 ms ein SNMP-Trap.
saarouter1# rtr 100 rtr reaction-configuration 100 threshold-falling 5 threshold-type immediate
Mit den Verzögerungs- und Jitter-Tests werden vorbestimmte Grenzwerte überwacht. Hierzu werden entweder die Cisco IOS-Funktionen von SAA oder die Alarm- und Ereignismethode von Cisco IOS RMON verwendet. In beiden Fällen überwacht der Router Verzögerungen, Jitter und Paketverluste und benachrichtigt die NMS-Stationen über SNMP-Traps über Schwellenwertverletzungen.
Die folgende RMON-Alarm- und Ereignis-Trap-Konfiguration veranlasst Saarouter1, ein SNMP-Trap zu generieren, wenn der steigende Grenzwert die maximale Round-Trip-Zeit von 140 ms überschreitet. Außerdem wird ein weiteres Trap gesendet, wenn die maximale Round-Trip-Zeit unter 100 ms zurückfällt. Der Trap wird dann an das Protokoll auf dem Router sowie an die NMS-Station 172.16.71.19 gesendet.
saarouter1# rmon alarm 10 rttMonJitterStatsRTTMax.100.120518706 1 absolute rising-threshold 140 100 falling-threshold 100 101 owner jharp rmon event 100 log trap private description max_rtt_exceeded owner jharp rmon event 101 log trap private description rtt_max_threshold_reset owner jharp
Jitter ist die Varianz der unidirektionalen Latenz und wird basierend auf dem Senden und Empfangen von Zeitstempeln aufeinander folgender ausgesendeter Pakete berechnet.
Zeitstempel | Absender | Responder |
---|---|---|
T1 | Paket senden1 | |
T2 | recv pkt1 | |
T3 | Antwort an Pkt1 senden | |
T4 | recv antwortet für pkt1 | |
T5 | Paket 2 senden | |
T6 | recv pkt2 | |
T7 | Antwort an Pkt2 senden | |
T8 | recv antwortet für pkt2 |
Verwenden Sie für Paket 1 und Paket 2 die folgenden Quell- und Zielberechnungen.
Jitter von Quelle zu Ziel (JitterSD) = (T6-T2) - (T5-T1)
Jitter von Ziel zu Quelle (JitterDS) = (T8-T4) - (T7-T3)
Der Jitter wird mit Zeitstempeln von jeweils zwei aufeinander folgenden Paketen berechnet. Beispiele:
Router1 send packet1 T1 = 0 Router2 receives packet1 T2 = 20 ms Router2 sends back packet1 T3 = 40 ms Router1 receives packet1 response T4 = 60 ms Router1 sends packet2 T5 = 60 ms Router2 receives packet2 T6 = 82 ms Router2 sends back packet2 T7 = 104 ms Router1 receives packet2 response T8 = 126 ms Jitter from source to destination (JitterSD) = (T6-T2) - (T5-T1) Jitter from source to destination (JitterSD) = (82 ms - 20 ms) - (60 ms - 0 ms) = 2 ms positive jitter SD Jitter from destination to source (JitterDS) = (T8-T4) - (T7-T3) Jitter from destination to source (JitterDS) = (126 ms - 60 ms) - (10 4ms - 40 ms) = 2 ms positive jitter DS
CISCO1720 - 10/100BaseT Modular-Router mit zwei WAN-Steckplätzen und Cisco IOS IP-Software
MEM1700-16U24D - Cisco 1700, 16 MB bis 24 MB DRAM, werksseitiges Upgrade
MEM1700-4U8MFC - Cisco 1700 Mini-Flash-Karte mit 4 MB bis 8 MB, werksseitiges Upgrade
CAB-AC - Netzkabel, 110 V
S17CP-12.1.1T - Cisco 1700 IOS IP PLUS
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
02-Dec-2013 |
Erstveröffentlichung |