Die Maximum Transmission Unit (MTU) definiert die größte Paketgröße, die eine Schnittstelle ohne Fragmentierung übertragen kann. IP-Pakete, die größer als die MTU sind, müssen IP-Fragmentierungsverfahren durchlaufen.
Die Cisco ATM-Router-Schnittstellen unterstützen eine MTU zwischen 64 und 17966 Byte. Jede Schnittstelle unterstützt eine standardmäßige maximale Paketgröße. Der Maximalwert beträgt beispielsweise 9288 Byte für den ATM-Schnittstellenprozessor (AIP) und das Netzwerkprozessormodul (NP) und 4470 Byte für die PA-A3- und PA-A2-Port-Adapter.
In diesem Dokument werden die MTU-Standardwerte für ATM-Schnittstellen geprüft und erläutert, wann ein Router die Zähler für AAL5 Oversized SDUs und die AAL5-Längenverletzung inkrementiert.
Es gibt keine spezifischen Anforderungen für dieses Dokument.
Dieses Dokument ist nicht auf bestimmte Software- und Hardware-Versionen beschränkt.
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
Die meisten Cisco ATM-Router-Schnittstellen verwenden eine MTU-Standardgröße von 4470 Byte. Diese Nummer wurde so gewählt, dass sie genau den FDDI- (Fiber Distributed Data Interface) und HSSI-Schnittstellen (High-Speed Serial Interface) für autonomes Switching entspricht.
Verwenden Sie den Befehl mtu im Schnittstellenkonfigurationsmodus, um einen nicht standardmäßigen Wert zu konfigurieren. Beachten Sie, dass Subschnittstellen einen Wert unterstützen, der sich von dem der Hauptschnittstelle unterscheidet, solange der Wert der Hauptschnittstelle so groß wie oder größer als die größte MTU der Subschnittstelle ist.
7200#show interface atm 3/0
ATM3/0 is up, line protocol is up
Hardware is ENHANCED ATM PA
Internet address is 1.1.1.1/8
MTU 4470 bytes, sub MTU 1500, BW 149760 Kbit, DLY 80 usec,
reliability 255/255, txload 1/255, rxload 1/255
Verwenden Sie den Befehl show atm interface atm, um den aktuell konfigurierten Wert anzuzeigen.
7200#show atm interface atm 3/0 Interface ATM3/0: AAL enabled: AAL5 , Maximum VCs: 4096, Current VCCs: 2 Maximum Transmit Channels: 0 Max. Datagram Size: 4528 PLIM Type: SONET - 155000Kbps, TX clocking: LINE Cell-payload scrambling: ON sts-stream scrambling: ON 8359 input, 8495 output, 0 IN fast, 0 OUT fast, 0 out drop Avail bw = 155000 Config. is ACTIVE
Der Befehl show interface atm zeigt zwei fett markierte Zähler an, die für eine Diskussion der Paketgröße relevant sind.
7200#show interface atm1/ima0
ATM1/IMA0.1 is up, line protocol is up
Hardware is ATM IMA
MTU 4470 bytes, BW 6000 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 2/255
Encapsulation ATM
1382 packets input, 399282 bytes
1558 packets output,205883 bytes
0 OAM cells input, 0 OAM cells output
AAL5 CRC errors : 280
AAL5 SAR Timeouts : 0
AAL5 Oversized SDUs : 0
AAL5 length violation : 210285
AAL5 CPI Error : 302
Beide Zähler beziehen sich auf die ATM-Adaptionsschicht 5 (AAL5). Sie kapseln geroutete oder Bridge Protocol Data Units (PDUs) im Common Part Convergence Sublayer (CPCS) des ATM-Stacks. RFC 1483
definiert das Format des AAL5-Trailers, wie in diesem Diagramm veranschaulicht.
Das Zwei-Byte-Längenfeld im AAL5-Trailer gibt die Größe des CPCS-PDU-Nutzdatenfelds an. Zwei Bytes sind 16 Bit oder ein Wert mit einer maximalen Länge von 65.535 (216) Oktetten.
Die MTU definiert die Größe des Layer-3-Datagramms. Eine AAL5-Service-Dateneinheit (SDU) ist definiert als das Layer-3-Datagramm plus dem optionalen LLC/SNAP-Header (Logical Link Control/Subnetwork Access Protocol). Eine AAL5-PDU wird als kombinierte AAL5-SDU plus dem AAL5-Trailer mit acht Byte definiert. Daher kann eine MTU von 9180 mit dem Acht-Byte-AAL5-Trailer eine AAL5-SDU von 9180 Byte und eine AAL5-PDU von 9188 Byte erzeugen.
Wenn eine ATM-Schnittstelle ein Paket empfängt, das größer als die MTU ist, erhöht der Router den Zähler für überdimensionierte SDUs. Der Zähler für übergroße SDUs ist in RFC 1695 definiert
.
aal5VccOverSizedSDUs OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of AAL5 CPCS PDUs discarded
on this AAL5 VCC at the interface
associated with an AAL5 entity because the
AAL5 SDUs were too large."
::= { aal5VccEntry 5 }
RFC 1695 unterstützt außerdem die Möglichkeit, unter Verwendung der folgenden Objekt-IDs separate SDU-Größen für Senden und Empfangen festzulegen:
atmVccAal5CpcsTransmitSduSize OBJECT-TYPE
SYNTAX INTEGER (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"An instance of this object only exists when the
local VCL end-point is also the VCC end-point,
and AAL5 is in use.
The maximum AAL5 CPCS SDU size in octets that is
supported on the transmit direction of this VCC."
DEFVAL { 9188 }
:= { atmVclEntry 9 }
atmVccAal5CpcsReceiveSduSize OBJECT-TYPE
SYNTAX INTEGER (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"An instance of this object only exists when the
local VCL end-point is also the VCC end-point,
and AAL5 is in use.
The maximum AAL5 CPCS SDU size in octets that is
supported on the receive direction of this VCC."
DEFVAL { 9188 }
::= { atmVclEntry 10 }
ATM-Schnittstellen, die RFC 1695 folgen, erhöhen auch den Zähler ifInErrors, wenn übergroße SDU-Fehler erkannt werden. Dies kommt zu CRC-32- und SAR-Timeout-Fehlern hinzu, bei denen es sich um zwei Zähler handelt, die ebenfalls im RFC definiert sind.
Ein Router erhöht den Zähler für die AAL5-Längenverletzung, wenn die berechnete Größe eines neu zusammengestellten Pakets nicht mit dem empfangenen Wert des AAL5-Längenfelds übereinstimmt, unabhängig von der MTU. Um zu verstehen, wie diese Verletzungen auftreten können, müssen Sie verstehen, wie eine empfangende ATM-Schnittstelle die letzte Zelle eines Frames erkennt.
Ein Zellenkopf enthält ein Drei-Bit-Feld zur Nutzlasttyperkennung (PTI). Diese drei Bit bedeuten:
Bit 1: Gibt an, ob die Zelle Benutzerdaten oder Verwaltungsdaten enthält.
Bit 2: Gibt an, ob die Zelle während der Übertragung überlastet ist.
Bit 3: Gibt an, ob die Zelle die letzte Zelle eines Datenrahmens einer höheren Ebene ist. Bei der Einstellung "1" wird dieses Bit als EOM (End of Marker) bezeichnet.
Die PTI-Werte 001 oder 011 markieren die letzte Zelle einer AAL5-PDU und weisen die empfangende ATM-Schnittstelle an, die Reassemblierung zu starten. Während Zeiten der Überlastung oder Fehlerbedingungen kann eine ATM-Verbindung die letzte Zelle verwerfen. Die empfangende Schnittstelle beginnt daher erst mit der Reassemblierung, wenn das Ende der Markierungszelle des zweiten AAL5-Pakets empfangen wurde, was eine Längenverletzung zur Folge hat.
In einigen Fällen meldet Ihr Router einen großen Wert für den Zähler für AAL5-Längenverletzungen und einen viel kleineren Wert für den Zähler für AAL5-CRC-Fehler. Diese Bedingung tritt auf, wenn die ATM-Schnittstelle eine Längenverletzung deklariert und ein wieder zusammengesetztes Paket verwirft, ohne den CRC überprüfen zu müssen. Eine ATM-Schnittstelle überprüft die CRC erst, nachdem sie bestätigt hat, dass die Paketgröße mit dem Feld für die AAL5-Länge übereinstimmt.
Die Verwendung einer konsistenten MTU in maximaler Größe über mehrere Schnittstellen in Ihrem Netzwerk bietet die folgenden Vorteile:
Verringert oder beseitigt die Fragmentierung. Größere MTUs können die TCP-Leistung verbessern, indem Fragmentierung vermieden wird. Anwendungen wie Network File System (NFS) können daher ihre großen nativen MTUs von etwa 8 kB besser nutzen.
Optimiert die Größe der Paketpufferpools, die in den Paketspeicher (MEMD) des Route Switch Processor (RSP) auf einer Cisco Plattform der Serie 7500 integriert sind. Auf dieser Plattform spielt die MTU eine wichtige Rolle beim Buffer Carving. Diese Plattform verwendet einen Algorithmus zur Pufferspeicherung, der vier Pufferpools auf Basis der MTU erstellt. Wenn alle Schnittstellen dieselbe MTU verwenden, erstellt der Router einen großen Pool mit Puffern derselben Größe. Bei Verwendung großer und sehr unterschiedlicher MTUs auf dieser Plattform muss die Cisco IOS®-Software eine kleine Anzahl großer Puffer speichern, was sich möglicherweise auf andere Schnittstellen auswirkt. Auf der Plattform der 7500-Serie kann die Anpassung der MTU zu einer geringeren Anzahl ignorierter Eingabefehler führen. Weitere Informationen finden Sie unter Ursachen für "%RSP-3-RESTART: cbus-Komplex"?
Hinweis: Ursprünglich unterstützte das AIP eine MTU von bis zu 9180. Der Grund erfordert ein Verständnis der Architektur. Die Fähigkeit von ATM-Schnittstellen, die angegebene maximale Anzahl von aktiven virtuellen Simultan-Schaltungen (VCs) zu unterstützen, basiert auf statistischem Multiplexing und darauf, dass genügend Paketpuffer vorhanden sind, um eine gewisse Anzahl gleichzeitiger Reassemblierungen durchzuführen. Cisco begrenzt die MTU-Größe auf ca. 9.000 Byte im AIP-Bereich, um den angekündigten maximalen Wert der VCs von 2.000 zu unterstützen.
Erhöht die Router-Leistung durch Minimierung der Anzahl verarbeiteter Pakete Die meisten Leistungskosten bei Routern beziehen sich auf "verarbeitete Pakete" und nicht auf "übertragene Bytes". Ein Router verarbeitet Transitpakete in der Regel im Interrupt-Modus. Eine große MTU kann eine höhere Leistung zur Folge haben, da schnellere CPUs nicht notwendigerweise einen schnellen unterbrechungsintensiven Betrieb zur Folge haben.
In dieser Tabelle sind Anforderungen für Kommentare (RFCs) in Bezug auf Datagrammgrößen aufgeführt.
Hinweis: Alle Verbindungen in der Tabelle sind RFC1483
.
| Anfrage für Kommentar | Beschreibung |
|---|---|
| RFC 791 |
Definiert IP-Fragmentierungsverfahren. |
| RFC 1191 |
Definieren der MTU-Pfaderkennung, einem Schlüsselmechanismus zur Reduzierung der IP-Fragmentierung im Internet. Dieser Mechanismus ist wichtig, da ATM MTU-Standardgrößen verwendet, die sich erheblich von anderen Technologien wie Ethernet und FDDI unterscheiden. |
| RFC 1209 |
Gibt einen IP-MTU-Wert über SMDS von 9180 Achtbitzeichen an. Die Internet Engineering Task Force (IETF) legte anhand dieses Werts und von RFC eine MTU von 9180 Oktetten für IP over ATM AAL5 gemäß der Definition in RFC 2225 |
| RFC 1626 |
Geben Sie unter anderem an, dass ATM-Schnittstellen versuchen müssen, die AAL CPCS-SDU-Größe unter Verwendung des ATM-Signalisierungsprotokolls für Switched Virtual Circuits (SVCs) auszuhandeln. |
RFC 791
definiert die IP-Fragmentierung und beschreibt das Verfahren wie folgt: "Wenn die Gesamtlänge kleiner oder gleich der maximalen Übertragungseinheit ist, übermitteln Sie dieses Datagramm an den nächsten Schritt der Datagrammverarbeitung. andernfalls schneiden Sie das Datagramm in zwei Fragmente, wobei das erste Fragment die maximale Größe und das zweite Fragment den Rest des Datagramms darstellt."
Der Befehl debug ip packet {host access-list} erfasst einen Ping zwischen den beiden Hosts 192.168.1.51 und 192.168.1.254. Für jedes Paket meldet der Router, dass er zwei Fragmente empfängt: eine 1500 Byte und eine 48 Byte lang.
Achtung: Bevor Sie Debug-Befehle ausgeben, lesen Sie bitte Wichtige Informationen zu Debug-Befehlen.
*Mar 28 09:59:27.002: IP: s=192.168.1.51 (ATM4/0.3), d=192.168.1.254, len 1500, rcvd 4 *Mar 28 09:59:27.002: IP: recv fragment from 192.168.1.51 offset 0 bytes *Mar 28 09:59:27.002: IP: s=192.168.1.51 (ATM4/0.3), d=192.168.1.254, len 48, rcvd 4 *Mar 28 09:59:27.002: IP: recv fragment from 192.168.1.51 offset 1480 bytes
Der Router antwortet mit einer Echo-Antwort und meldet, dass er zwei Fragmente sendet.
*Mar 28 09:59:27.002: ICMP: echo reply sent, src 192.168.1.254, dst 192.168.1.51 *Mar 28 09:59:27.002: IP: s=192.168.1.254 (local), d=192.168.1.51 (ATM4/0.3), len 1528, sending *Mar 28 09:59:27.002: IP: s=192.168.1.254 (local), d=192.168.1.51 (ATM4/0.3), len 1500, sending fragment *Mar 28 09:59:27.006: IP: s=192.168.1.254 (local), d=192.168.1.51 (ATM4/0.3), len 48, sending last fragment
Gigabit Ethernet-Schnittstellen auf Cisco Catalyst Switches der Serien 5000 und 6000 unterstützen Jumbo Frames mit einer MTU von 9.216 Byte. Jumbo-Frames werden für das ATM-Modul der Catalyst 6000-Produktfamilie (WS-X6101) unterstützt. Dies ist ab Version 12.1(10)E der Cisco IOS Software gemäß den Versionshinweisen möglich.
Die Konfiguration der MTU-Größe auf der Subschnittstelle hat keinen Einfluss auf die maximale Frame-Größe, die auf ein ATM-Modul der Catalyst 6000-Produktfamilie übertragen werden kann. Die maximale Frame-Größe (9.218 Byte) wird initialisiert, wenn das Modul gestartet wird, und ändert sich nicht, wenn sich die MTU-Größe mithilfe der CLI ändert.
Um die Jumbo Frames zu überbrücken, sollte die Funktion für das ATM-Modul in der Supervisor Engine mithilfe des Befehls set port jumbo mod/port aktiviert werden.
In Cisco IOS-Softwareversionen vor 12.1(10)E akzeptieren Catalyst ATM-Module den MTU-Befehl in der Befehlszeile mit einem Maximalwert von 9218 Byte. Ohne Jumbo Frame-Unterstützung ist diese Konfigurationsänderung jedoch irreführend. Die ursprüngliche fehlende Unterstützung für Jumbo Frames beruht auf der maximalen Anzahl von Puffern, die für eine beliebige VC unterstützt werden.
ATM#show interface atm0
ATM0 is down, line protocol is down
Hardware is Catalyst 5000 ATM
MTU 1584 bytes, sub MTU 0, BW 156250 Kbit, DLY 80 usec, rely 255/255,
load 1/255
Encapsulation ATM, loopback not set, keepalive not supported
Encapsulation(s): AAL5, PVC mode
4096 maximum active VCs, 1024 VCs per VP, 0 current VCCs
VC idle disconnect time: 300 seconds
Signaling vc = 1, vpi = 0, vci = 5
UNI Version = 3.1, Link Side = user
PHY Type : SINGLE PHY; Link Status: DOWN
[snip]
Die LANE-Version 1-Spezifikation erfordert, dass eine SETUP-Nachricht das AAL-Parameter-Informationselement (IE) enthält. In diesem IE muss der anrufende Teilnehmer oder die Quell-ATM-Schnittstelle die maximale Größe für Forward CPCS-SDU und die maximale Größe für Backward CPCS-SDU angeben. Die unterstützten AAL5 SDU Max-Oktett-Werte sind 1516, 4544, 9234 und 18190. Ab Cisco IOS Software Release 12.1(10)E können LECs Frames bis zu 9218 Byte übertragen.
Die Unterstützung von Jumbo Frames ist bereits in der Roadmap für die erweiterten Gigabit-Ethernet-Linecards der Serie 8540 enthalten. Eine solche Unterstützung wird für die Gigabit-Ethernet-Karten des 8510 geprüft. Das ATM-Routermodul 2 (ARM2) für den Router 8540 unterstützt jetzt eine konfigurierbare MTU-Größe.
Führen Sie diese Schritte aus, um die Fehlerbehebung einzuschränken, wenn Ihre Symptome auf ein Problem mit den Datagrammgrößen hinweisen.
Vergewissern Sie sich, dass sich die richtige MTU auf der Hauptschnittstelle und der Subschnittstelle befindet.
Wenn Pings über einer bestimmten Paketgröße fehlschlagen, kann das Problem auf das Traffic Shaping zurückzuführen sein. Weitere Informationen finden Sie unter Understanding the VBR-nrt Service Category and Traffic Shaping for ATM VCs. Bestätigen Sie mit den folgenden Befehlen, dass die Pakete den Quellrouter verlassen und/oder auf den Zielrouter gelangen:
debug ip packet (nur Host-Zugriffsliste)
Vorsicht: Dieses Debugging kann eine große Menge an Ausgabe in einer Produktionsausgabe erzeugen. Wenn Sie dieses Debuggen aktivieren, müssen Sie zusätzliche Vorsichtsmaßnahmen treffen.
debug atm packet interface atm mod/port vpi vci
ATM-Fehlersuche
Überprüfen Sie den Riesenzähler in der Ausgabe von show interface atm auf einen Wert ungleich null. Zählt der Zähler der Giganten mit Ihren Pings?
Führen Sie den Befehl show buffers aus, und suchen Sie nach Werten ungleich null für die Zähler für Fehler und Fehler. Bestimmen Sie, ob die Zähler inkrementiert werden, insbesondere wenn Sie den Router pingen und die Systempuffer verwenden. Weitere Informationen finden Sie unter Buffer Tuning.
7500#show buffers
Buffer elements:
499 in free list (500 max allowed)
913677 hits, 0 misses, 0 created
Public buffer pools:
Small buffers, 104 bytes (total 480, permanent 480):
474 in free list (20 min, 1000 max allowed)
1036212 hits, 0 misses, 0 trims, 0 created
0 failures (0 no memory)
Middle buffers, 600 bytes (total 360, permanent 360):
358 in free list (20 min, 800 max allowed)
635809 hits, 0 misses, 0 trims, 0 created
0 failures (0 no memory)
Big buffers, 1524 bytes (total 360, permanent 360):
360 in free list (10 min, 1200 max allowed)
23457 hits, 0 misses, 0 trims, 0 created
0 failures (0 no memory)
VeryBig buffers, 4520 bytes (total 40, permanent 40):
40 in free list (5 min, 1200 max allowed)
8969 hits, 0 misses, 0 trims, 0 created
0 failures (0 no memory)
Large buffers, 5024 bytes (total 40, permanent 40):
40 in free list (3 min, 120 max allowed)
0 hits, 0 misses, 0 trims, 0 created
0 failures (0 no memory)
Huge buffers, 18024 bytes (total 4, permanent 0):
3 in free list (3 min, 52 max allowed)
0 hits, 1 misses, 427 trims, 431 created
0 failures (0 no memory)
Führen Sie den Befehl show ip interface atm aus, und prüfen Sie, ob Cisco Express Forwarding (CEF) aktiviert ist. Wenn dies der Fall ist, überprüfen Sie die MTU-Größe, auf die im Adjacency-Eintrag für das Ziel verwiesen wird.
router#show adj atm 5/0.1 interface
Protocol Interface Address
IP ATM5/0.1 point2point(6)
0 packets, 0 bytes
00040000
AAAA030000000800
CEF expires: 00:02:49
refresh: 00:00:49
ATM-PVC never
Fast adjacency enabled
IP redirect enabled
IP mtu 4470 (0x0)
Fixup disabled
Cisco Bug-ID CSCdv42095 (nur für registrierte Kunden) behebt das Problem fehlerhafter Pings für Pakete mit mehr als 1.498 Byte, wenn die MTU auf einer überbrückten Schnittstelle auf weniger als 1.502 Byte konfiguriert ist. Die Änderungen ermöglichen, dass die maximale Paketgröße gleich der MTU plus der maximalen ATM-Kapselung in Byte ist. Legen Sie als Workaround die MTU auf 1502 fest.