In diesem Dokument wird das Verhalten der maximalen Übertragungseinheit (Maximum Transmission Unit, MTU) auf Cisco IOS® XR-Routern beschrieben und mit dem Verhalten von Cisco IOS-Routern verglichen. Außerdem werden MTUs an gerouteten Layer-3- (L3)-Schnittstellen und Layer-2-VPN- (L2VPN) L2-Schnittstellen erläutert, die sowohl das EVC- (Ethernet Virtual Connection) als auch das nicht-EVC-Modell verwenden. In diesem Dokument werden auch wichtige Änderungen an der automatischen Konfiguration von Ethernet-Schnittstellentreiber-MTU und Maximum Receive Unit (MRU) in Version 5.1.1 und höher beschrieben.
In Computernetzwerken definiert die MTU eines Kommunikationsprotokolls einer Schicht die Größe (in Byte) der größten Protokolldateneinheit, die die Schicht über eine Schnittstelle übertragen darf. Jeder Schnittstelle, jedem Layer und jedem Protokoll ist ein MTU-Parameter zugeordnet.
Die MTU-Merkmale der Cisco IOS XR-Software sind:
Im verbleibenden Teil dieses Dokuments werden die MTU-Merkmale beschrieben, das Softwareverhalten von Cisco IOS und Cisco IOS XR verglichen und Beispiele für die folgenden Schnittstellentypen gegeben:
In diesem Abschnitt wird das Softwareverhalten von Cisco IOS und Cisco IOS XR mit dem Verhalten der MTU verglichen.
In der Cisco IOS-Software enthalten der Befehl mtu und die entsprechenden Befehle show nicht den L2-Header. Verwenden Sie den Befehl mtu, um die L2-Nutzlast auf die maximale Größe für die L3-Pakete einschließlich des L3-Headers zu konfigurieren.
Dies unterscheidet sich von der Cisco IOS XR-Software, bei der der Befehl mtu den L2-Header umfasst (14 Byte für Ethernet oder 4 Byte für PPP/HDLC).
Wenn ein Cisco IOS-Router mit mtu x konfiguriert und mit einem Cisco IOS XR-Router verbunden ist, sollte die entsprechende Schnittstelle auf dem Cisco IOS XR-Router mit mtu x+14 für Ethernet-Schnittstellen bzw. mtu x+4 für serielle Schnittstellen konfiguriert werden.
Die Cisco IOS- und Cisco IOS XR-Software haben dieselbe Bedeutung für die Befehle ipv4 mtu, ipv6 mtu und mpls mtu. Sie müssen mit denselben Werten konfiguriert werden.
Dies ist die Konfiguration in der Cisco IOS-Software auf einer Ethernet-Schnittstelle:
mtu 9012
ipv4 mtu 9000
ipv6 mtu 9000
Die entsprechende Konfiguration auf dem Cisco IOS XR-Software-Nachbarn lautet:
mtu 9026
ipv4 mtu 9000
ipv6 mtu 9000
Die MTU-Werte müssen auf allen Geräten, die mit einem L2-Netzwerk verbunden sind, identisch sein. Andernfalls können folgende Symptome auftreten:
In diesem Abschnitt wird die Standard-MTU einer gerouteten Schnittstelle analysiert, wenn der Befehl mtu nicht konfiguriert ist:
RP/0/RP0/CPU0:motorhead#sh run int gigabitEthernet 0/1/0/3
interface GigabitEthernet0/1/0/3
cdp
ipv4 address 10.0.1.1 255.255.255.0
ipv6 address 2001:db8::1/64
!
RP/0/RP0/CPU0:router#sh int gigabitEthernet 0/1/0/3 | i MTU
MTU 1514 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router#show im database interface gigabitEthernet 0/1/0/3
View: OWN - Owner, L3P - Local 3rd Party, G3P - Global 3rd Party,
LDP - Local Data Plane, GDP - Global Data Plane, RED - Redundancy
Node 0/1/CPU0 (0x11)
Interface GigabitEthernet0/1/0/3, ifh 0x01180100 (up, 1514)
Interface flags: 0x000000000010059f (IFCONNECTOR|IFINDEX
|SUP_NAMED_SUB|BROADCAST|CONFIG|HW|VIS|DATA
|CONTROL)
Encapsulation: ether
Interface type: IFT_GETHERNET
Control parent: None
Data parent: None
Views: GDP|LDP|L3P|OWN
Protocol Caps (state, mtu)
-------- -----------------
None ether (up, 1514)
arp arp (up, 1500)
clns clns (up, 1500)
ipv4 ipv4 (up, 1500)
mpls mpls (up, 1500)
ipv6 ipv6_preswitch (up, 1500)
ipv6 ipv6 (down, 1500)
ether_sock ether_sock (up, 1500)
RP/0/RP0/CPU0:router#show ipv4 interface gigabitEthernet 0/1/0/3 | i MTU
MTU is 1514 (1500 is available to IP)
RP/0/RP0/CPU0:router#show ipv6 interface gigabitEthernet 0/1/0/3 | i MTU
MTU is 1514 (1500 is available to IPv6)
RP/0/RP0/CPU0:router#sh mpls interfaces gigabitEthernet 0/1/0/3 private location 0/1/CPU0
Interface IFH MTU
-------------- ---------- -----
Gi0/1/0/3 0x01180100 1500
RP/0/RP0/CPU0:router#
In diesem Beispiel beträgt die standardmäßige L2-Schnittstellen-MTU 1.514 Byte und umfasst 14 Byte Ethernet-Header. Die 14 Bytes werden durch 6 Bytes der Ziel-MAC-Adresse, 6 Bytes der Quell-MAC-Adresse und 2 Bytes des Typs oder der Länge berücksichtigt. Die Präambel, das Frame-Delimiter, 4 Bytes der Frame-Check-Sequenz (FCS) und die Lücke zwischen den Frames sind darin nicht enthalten. Bei einem PPP- oder HDLC-Frame werden 4 Bytes des L2-Headers berücksichtigt; die MTU der Standardschnittstelle beträgt also 1504 Byte.
Die untergeordneten L3-Protokolle erben ihre MTU von der Nutzlast der übergeordneten MTU. Wenn Sie 14 Byte eines L2-Headers von einer L2-MTU von 1514 Byte subtrahieren, haben Sie eine L2-Nutzlast von 1500 Byte. Dies wird zur MTU für L3-Protokolle. IPv4, IPv6, MPLS und Connectionless Network Service (CLNS) erhalten diese MTU von 1.500 Byte. Dadurch kann eine Cisco IOS XR Ethernet-Schnittstelle standardmäßig ein 1500 Byte großes L3-Paket transportieren, das dem StandardIt einer Cisco IOS Ethernet-Schnittstelle entspricht.
In diesem Abschnitt wird gezeigt, wie eine mpls mtu von 1508 konfiguriert wird, um ein IPv4-Paket von 1500 Byte mit zwei MPLS-Tags von jeweils 4 Byte über das Paket zu senden:
RP/0/RP0/CPU0:router#conf
RP/0/RP0/CPU0:router(config)#int gig 0/1/0/3
RP/0/RP0/CPU0:router(config-if)#mpls mtu 1508
RP/0/RP0/CPU0:router(config-if)#commit
RP/0/RP0/CPU0:Mar 12 00:36:49.807 CET: config[65856]: %MGBL-CONFIG-6-DB_COMMIT : Configuration
committed by user 'root'. Use 'show configuration commit changes 1000000124' to view the
changes.RP/0/RP0/CPU0:router(config-if)#end
RP/0/RP0/CPU0:Mar 12 00:36:54.188 CET: config[65856]: %MGBL-SYS-5-CONFIG_I : Configured
from console by root on vty0 (10.55.144.149)
RP/0/RP0/CPU0:router#sh mpls interfaces gigabitEthernet 0/1/0/3 private location 0/1/CPU0
Interface IFH MTU
-------------- ---------- -----
Gi0/1/0/3 0x01180100 1500
RP/0/RP0/CPU0:router#show im database interface gigabitEthernet 0/1/0/3
View: OWN - Owner, L3P - Local 3rd Party, G3P - Global 3rd Party,
LDP - Local Data Plane, GDP - Global Data Plane, RED - Redundancy
Node 0/1/CPU0 (0x11)
Interface GigabitEthernet0/1/0/3, ifh 0x01180100 (up, 1514)
Interface flags: 0x000000000010059f (IFCONNECTOR|IFINDEX
|SUP_NAMED_SUB|BROADCAST|CONFIG|HW|VIS|DATA
|CONTROL)
Encapsulation: ether
Interface type: IFT_GETHERNET
Control parent: None
Data parent: None
Views: GDP|LDP|L3P|OWN
Protocol Caps (state, mtu)
-------- -----------------
None ether (up, 1514)
arp arp (up, 1500)
clns clns (up, 1500)
ipv4 ipv4 (up, 1500)
mpls mpls (up, 1500)
ipv6 ipv6_preswitch (up, 1500)
ipv6 ipv6 (down, 1500)
ether_sock ether_sock (up, 1500)
RP/0/RP0/CPU0:router#
Obwohl der Befehl mpls mtu 1508 übergeben wird, wird er nicht angewendet, da MPLS im Befehl show immer noch eine MTU von 1500 Byte aufweist. Dies liegt daran, dass untergeordnete L3-Protokolle keine MTU haben können, die größer ist als die Nutzlast ihrer übergeordneten L2-Schnittstelle.
Um zwei Labels auf einem 1500-Byte-IP-Paket zuzulassen, müssen Sie:
RP/0/RP0/CPU0:router#sh run int gig 0/1/0/3
interface GigabitEthernet0/1/0/3
cdp
mtu 1522
ipv4 mtu 1500
ipv4 address 10.0.1.1 255.255.255.0
ipv6 mtu 1500
ipv6 address 2001:db8::1/64
!
!
RP/0/RP0/CPU0:router#show im database interface gigabitEthernet 0/1/0/3
View: OWN - Owner, L3P - Local 3rd Party, G3P - Global 3rd Party,
LDP - Local Data Plane, GDP - Global Data Plane, RED - Redundancy
Node 0/1/CPU0 (0x11)
Interface GigabitEthernet0/1/0/3, ifh 0x01180100 (up, 1522)
Interface flags: 0x000000000010059f (IFCONNECTOR|IFINDEX
|SUP_NAMED_SUB|BROADCAST|CONFIG|HW|VIS|DATA
|CONTROL)
Encapsulation: ether
Interface type: IFT_GETHERNET
Control parent: None
Data parent: None
Views: GDP|LDP|L3P|OWN
Protocol Caps (state, mtu)
-------- -----------------
None ether (up, 1522)
arp arp (up, 1508)
clns clns (up, 1508)
ipv4 ipv4 (up, 1500)
mpls mpls (up, 1508)
ipv6 ipv6_preswitch (up, 1508)
ipv6 ipv6 (down, 1500)
ether_sock ether_sock (up, 1508)
RP/0/RP0/CPU0:router#
Mit dieser Konfiguration können Sie IPv4- und IPv6-Pakete mit 1.500 Byte und MPLS-Pakete mit 1.508 Byte senden (ein 1.500-Byte-Paket mit zwei Tags oben).
Diese Eigenschaften gelten für geroutete L3-Subschnittstellen.
Eine geroutete MTU der Subschnittstelle übernimmt die MTU der übergeordneten Hauptschnittstelle; fügen Sie 4 Bytes für jeden VLAN-Tag hinzu, der auf der Subschnittstelle konfiguriert ist. Somit stehen 4 Byte für eine dot1q-Subschnittstelle und 8 Byte für eine IEEE 802.1Q-Tunneling-Subschnittstelle (QinQ) zur Verfügung.
Dadurch können L3-Pakete gleicher Größe sowohl an die Hauptschnittstelle als auch an die Subschnittstelle weitergeleitet werden.
Der Befehl mtu kann unter der Subschnittstelle konfiguriert werden, er wird jedoch nur angewendet, wenn er kleiner oder gleich der MTU ist, die von der Hauptschnittstelle geerbt wird.
Dies ist ein Beispiel, bei dem die MTU der Hauptschnittstelle 2000 Byte beträgt:
RP/0/RP0/CPU0:router#sh run int gig 0/1/0/3
interface GigabitEthernet0/1/0/3
cdp
mtu 2000
!
RP/0/RP0/CPU0:router#sh run int gig 0/1/0/3.100
interface GigabitEthernet0/1/0/3.100
ipv4 address 10.0.2.1 255.255.255.0
ipv6 address 2001:db9:0:1::1/64
dot1q vlan 100
!
RP/0/RP0/CPU0:router#sh int gig 0/1/0/3.100 | i MTU
MTU 2004 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router#show im database interface gigabitEthernet 0/1/0/3.100
View: OWN - Owner, L3P - Local 3rd Party, G3P - Global 3rd Party,
LDP - Local Data Plane, GDP - Global Data Plane, RED - Redundancy
Node 0/1/CPU0 (0x11)
Interface GigabitEthernet0/1/0/3.100, ifh 0x01180260 (up, 2004)
Interface flags: 0x0000000000000597 (IFINDEX|SUP_NAMED_SUB
|BROADCAST|CONFIG|VIS|DATA|CONTROL)
Encapsulation: dot1q
Interface type: IFT_VLAN_SUBIF
Control parent: GigabitEthernet0/1/0/3
Data parent: GigabitEthernet0/1/0/3
Views: GDP|LDP|L3P|OWN
Protocol Caps (state, mtu)
-------- -----------------
None vlan_jump (up, 2004)
None dot1q (up, 2004)
arp arp (up, 1986)
ipv4 ipv4 (up, 1986)
ipv6 ipv6_preswitch (up, 1986)
ipv6 ipv6 (down, 1986)
RP/0/RP0/CPU0:router#
Bei den show-Befehlen beträgt die MTU der Subschnittstelle 2004. Fügen Sie der MTU der Hauptschnittstelle 4 Byte hinzu, da unter der Subschnittstelle ein dot1q-Tag konfiguriert ist.
Die MTU der IPv4- und IPv6-Pakete ist jedoch immer noch dieselbe wie die der Hauptschnittstelle (1986). Dies liegt daran, dass die MTU der L3-Protokolle jetzt wie folgt berechnet wird: 2004 - 14 - 4 = 1986.
Der Befehl mtu kann unter der Subschnittstelle konfiguriert werden. Die konfigurierte MTU wird jedoch nur angewendet, wenn sie kleiner oder gleich der MTU ist, die von der Hauptschnittstelle übernommen wird (4 Byte größer als die MTU der Hauptschnittstelle).
Wenn die MTU der Subschnittstelle größer als die geerbte MTU ist, wird sie nicht angewendet, wie hier gezeigt:
RP/0/RP0/CPU0:router#sh int gig 0/1/0/3.100 | i MTU
MTU 2004 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router#conf
RP/0/RP0/CPU0:router(config)#int gig 0/1/0/3.100
RP/0/RP0/CPU0:router(config-subif)#mtu 2100
RP/0/RP0/CPU0:router(config-subif)#commit
RP/0/RP0/CPU0:router(config-subif)#end
RP/0/RP0/CPU0:router#sh int gig 0/1/0/3.100 | i MTU
MTU 2004 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router#
Daher können Sie nur den Befehl mtu verwenden, um den von der Hauptschnittstelle geerbten MTU-Wert zu verringern.
Ebenso können Sie die MTU-Befehle von L3-Protokollen (IPv4, IPv6, MPLS) verwenden, um den Wert der von der Subschnittstelle L2 geerbten L3-MTU zu senken. Die L3-Protokoll-MTU wird nicht wirksam, wenn sie auf einen Wert konfiguriert ist, der nicht in die Nutzlast der L2-MTU passt.
Die MTU für ein L2VPN ist wichtig, da durch das Label Distribution Protocol (LDP) kein Pseudowire (PW) hochgefahren wird, wenn die MTUs auf den Anschlussschaltungen auf beiden Seiten eines PWs nicht identisch sind.
Der folgende Befehl show veranschaulicht, dass ein L2VPN-PW nicht verfügbar ist, wenn eine MTU-Diskrepanz vorliegt:
RP/0/RP0/CPU0:router1#sh l2vpn xconnect
Legend: ST = State, UP = Up, DN = Down, AD = Admin Down, UR = Unresolved,
SB = Standby, SR = Standby Ready, (PP) = Partially Programmed
XConnect Segment 1 Segment 2
Group Name ST Description ST Description ST
------------------------ ----------------------------- -----------------------------
mtu mtu DN Gi0/0/0/2.201 UP 10.0.0.12 201 DN
----------------------------------------------------------------------------------------
RP/0/RP0/CPU0:router1#sh l2vpn xconnect detail
Group mtu, XC mtu, state is down; Interworking none
AC: GigabitEthernet0/0/0/2.201, state is up
Type VLAN; Num Ranges: 1
VLAN ranges: [201, 201]
MTU 2000; XC ID 0x1080001; interworking none
Statistics:
packets: received 0, sent 0
bytes: received 0, sent 0
drops: illegal VLAN 0, illegal length 0
PW: neighbor 10.0.0.12, PW ID 201, state is down ( local ready )
PW class mtu-class, XC ID 0xfffe0001
Encapsulation MPLS, protocol LDP
Source address 10.0.0.2
PW type Ethernet, control word disabled, interworking none
PW backup disable delay 0 sec
Sequencing not set
PW Status TLV in use
MPLS Local Remote
------------ ------------------------------ -----------------------------
Label 16046 16046
Group ID 0x1080100 0x6000180
Interface GigabitEthernet0/0/0/2.201 GigabitEthernet0/1/0/3.201
MTU 2000 1986
Control word disabled disabled
PW type Ethernet Ethernet
VCCV CV type 0x2 0x2
(LSP ping verification) (LSP ping verification)
VCCV CC type 0x6 0x6
(router alert label) (router alert label)
(TTL expiry) (TTL expiry)
------------ ------------------------------ -----------------------------
Incoming Status (PW Status TLV):
Status code: 0x0 (Up) in Notification message
Outgoing Status (PW Status TLV):
Status code: 0x0 (Up) in Notification message
MIB cpwVcIndex: 4294836225
Create time: 18/04/2013 16:20:35 (00:00:37 ago)
Last time status changed: 18/04/2013 16:20:43 (00:00:29 ago)
Error: MTU mismatched
Statistics:
packets: received 0, sent 0
bytes: received 0, sent 0
RP/0/RP0/CPU0:router1#
RP/0/RP0/CPU0:router1#sh int GigabitEthernet0/0/0/2 | i MTU
MTU 2014 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#sh int GigabitEthernet0/0/0/2.201 | i MTU
MTU 2018 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#
Beachten Sie in diesem Beispiel, dass die MPLS-L2VPN-Provider-Edges (PEs) auf beiden Seiten den gleichen MTU-Wert signalisieren müssen, um die PW hochzufahren.
Die vom MPLS-LDP signalisierte MTU umfasst keinen L2-Overhead. Dies unterscheidet sich von den XR-Schnittstellenkonfigurations- und show-Befehlen, die den L2-Overhead enthalten. Die MTU auf der Subschnittstelle beträgt 2018 Byte (geerbt von der Hauptschnittstelle mit 2014 Byte), aber LDP hat eine MTU von 2000 Byte signalisiert. Daher werden 18 Byte (14 Byte Ethernet-Header + 4 Byte für 1 dot1q-Tag) vom L2-Header subtrahiert.
Es ist wichtig zu verstehen, wie jedes Gerät die MTU-Werte der Anschlussschaltungen berechnet, um MTU-Diskrepanzen zu beheben. Dies hängt von Parametern wie Anbieter, Plattform, Softwareversion und Konfiguration ab.
Der Cisco Aggregation Services Router der Serie ASR 9000 verwendet das EVC-Infrastrukturmodell, das eine flexible VLAN-Anpassung an L2VPN L2-Schnittstellen und Subschnittstellen ermöglicht.
Die L2VPN L2-EVC-Schnittstellen haben die folgenden Merkmale:
Um die MTU der Subschnittstelle zu berechnen, nehmen Sie die Hauptschnittstellen-MTU (entweder die Standard- oder die manuell unter der Hauptschnittstelle konfigurierte MTU), und fügen Sie 4 Byte für jeden VLAN-Tag hinzu, der mit dem Befehl encapsulation konfiguriert wurde. Siehe Spezifische EFP-Kapselungsbefehle.
Wenn unter der Subschnittstelle ein mtu-Befehl vorhanden ist, wird dieser nur wirksam, wenn er unter der berechneten MTU liegt. Der Befehl rewrite hat keinen Einfluss auf die MTU der Subschnittstelle.
Hier ein Beispiel:
RP/0/RSP0/CPU0:router2#sh run int gig 0/1/0/3
interface GigabitEthernet0/1/0/3
cdp
mtu 2014
negotiation auto
!
RP/0/RSP0/CPU0:router2#sh run int gig 0/1/0/3.201
interface GigabitEthernet0/1/0/3.201 l2transport
encapsulation dot1q 201 second-dot1q 10
rewrite ingress tag pop 2 symmetric
!
RP/0/RSP0/CPU0:router2#
RP/0/RSP0/CPU0:router2#sh int gig 0/1/0/3.201
GigabitEthernet0/1/0/3.201 is up, line protocol is up
Interface state transitions: 1
Hardware is VLAN sub-interface(s), address is 0024.986c.63f3
Layer 2 Transport Mode
MTU 2022 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
In diesem Beispiel beträgt die MTU in der Hauptschnittstelle 2014 Byte. Fügen Sie 8 Byte hinzu, da zwei Tags unter der Subschnittstelle konfiguriert sind.
Wenn Sie MTU 2026 Byte unter der Subschnittstelle konfigurieren, wird sie nicht angewendet, da sie größer ist als die MTU der Subschnittstelle, die von der Hauptschnittstelle (2022) geerbt wird. Daher können Sie nur eine MTU unter der Subschnittstelle unter 2022 Byte konfigurieren.
Auf der Grundlage dieser MTU der Subschnittstelle wird die MTU der MPLS-LDP-Nutzlast berechnet, die dem Nachbarn signalisiert wird, und es wird sichergestellt, dass sie mit der vom Remote-L2VPN-PE berechneten MTU identisch ist. An dieser Stelle kommt der Befehl rewrite ins Spiel.
Um die MTU der MPLS-LDP-Nutzlast zu berechnen, nehmen Sie die MTU der Subschnittstelle, und führen Sie dann folgende Schritte durch:
Dies ist das gleiche Beispiel mit der QinQ Konfiguration auf gig 0/1/0/3.201:
interface GigabitEthernet0/1/0/3
cdp
mtu 2014
negotiation auto
!
interface GigabitEthernet0/1/0/3.201 l2transport
encapsulation dot1q 201 second-dot1q 10
rewrite ingress tag pop 2 symmetric
!
RP/0/RSP0/CPU0:router2#sh int gig 0/1/0/3.201
GigabitEthernet0/1/0/3.201 is up, line protocol is up
Interface state transitions: 1
Hardware is VLAN sub-interface(s), address is 0024.986c.63f3
Layer 2 Transport Mode
MTU 2022 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
Die Berechnung der MTU der MPLS-LDP-Nutzlast erfolgt wie folgt:
Stellen Sie sicher, dass die Remote-Seite eine MPLS-LDP-Nutzlast von 2000 Byte meldet. Passen Sie andernfalls die MTU-Größe des lokalen oder Remote-Anschlusskreises an, sodass sie übereinstimmen.
RP/0/RSP0/CPU0:router2#sh l2vpn xconnect det
Group mtu, XC mtu, state is up; Interworking none
AC: GigabitEthernet0/1/0/3.201, state is up
Type VLAN; Num Ranges: 1
Outer Tag: 201
VLAN ranges: [10, 10]
MTU 2000; XC ID 0x1880003; interworking none
Diese Kapselungen werden als übereinstimmende Null-Tags gezählt, sodass sie die MTU der Subschnittstelle nicht erhöhen:
Diese Kapselungsmodifizierer wirken sich nicht auf die Anzahl der Tags aus, die für die Berechnung der MTU der Subschnittstelle erforderlich sind:
Kapselung [dot1q|dot1ad] Mit Priorität gekennzeichnete Zähler entsprechen einem einzelnen Tag.
Das Schlüsselwort "any", das als innerste Tag-Übereinstimmung verwendet wird, erhöht die MTU der Subschnittstelle nicht.
Die Bereiche der VLAN-IDs erhöhen die MTU der Subschnittstelle:
Der Kapselungs-MTU-Overhead eines EFP, bei dem es sich um eine disjunktive Übereinstimmung handelt, wird als MTU des höchsten Elements behandelt.
Router wie der Cisco Router der Serie XR 12000 und das Carrier Routing System (CRS) verwenden die herkömmliche Konfiguration für den VLAN-Abgleich an Subschnittstellen. Diese Eigenschaften gelten für L2VPN L2-Schnittstellen auf dem CRS und auf XR 12000-Routern, die nicht dem EVC-Modell folgen:
Hier sind einige Beispiele, die diese Eigenschaften veranschaulichen.
Dieses Beispiel zeigt, wie eine Nicht-EVC-Subschnittstelle konfiguriert wird:
RP/0/RP0/CPU0:router1#sh run int gigabitEthernet 0/0/0/2.201
interface GigabitEthernet0/0/0/2.201 l2transport
dot1q vlan 201
!
RP/0/RP0/CPU0:router1#
Die Nicht-EVC-Plattformen verwenden die Befehle dot1q vlan oder dot1ad vlan anstelle der Kapselungs- und Umschreibungsbefehle der EVC-Plattformen (ASR9000).
Wenn Sie eine MTU nicht explizit auf der Haupt- oder Subschnittstelle konfigurieren, kann ein L3-Paket mit 1500 Byte standardmäßig empfangen werden:
RP/0/RP0/CPU0:router1#sh int gig 0/0/0/2 | i MTU
MTU 1514 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#sh int gig 0/0/0/2.201 | i MTU
MTU 1518 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#
Die MTU der Subschnittstelle wird aus der Hauptschnittstellen-MTU berechnet (1514); für jedes dot1q-Tag werden 4 Bytes hinzugefügt. Da auf der Subschnittstelle ein Tag mit dem Befehl dot1q vlan 201 konfiguriert ist, fügen Sie 1514 für eine MTU von 1518 Byte 4 Byte hinzu.
Die entsprechende Nutzlast-MTU im MPLS-LDP beträgt 1.500 Byte, da die 14 Byte des Ethernet-Headers nicht gezählt werden und das eine dot1q-Tag automatisch von der Nicht-EVC-Plattform geöffnet wird, wenn es über den PW läuft:
RP/0/RP0/CPU0:router1#sh l2vpn xconnect detail
Group mtu, XC mtu, state is down; Interworking none
AC: GigabitEthernet0/0/0/2.201, state is up
Type VLAN; Num Ranges: 1
VLAN ranges: [201, 201]
MTU 1500; XC ID 0x1080001; interworking none
Wenn Sie die MTU der Hauptschnittstelle auf 2014 Byte erhöhen, wird die MTU der Subschnittstelle entsprechend erhöht:
RP/0/RP0/CPU0:router1#sh run int gig 0/0/0/2
interface GigabitEthernet0/0/0/2
description static lab connection to head 4/0/0 - dont change
cdp
mtu 2014
ipv4 address 10.0.100.1 255.255.255.252
load-interval 30
!
RP/0/RP0/CPU0:router1#sh run int gig 0/0/0/2.201
interface GigabitEthernet0/0/0/2.201 l2transport
dot1q vlan 201
!
RP/0/RP0/CPU0:router1#sh int gig 0/0/0/2 | i MTU
MTU 2014 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#sh int gig 0/0/0/2.201 | i MTU
MTU 2018 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
RP/0/RP0/CPU0:router1#sh l2vpn xconnect detail
Group mtu, XC mtu, state is down; Interworking none
AC: GigabitEthernet0/0/0/2.201, state is up
Type VLAN; Num Ranges: 1
VLAN ranges: [201, 201]
MTU 2000; XC ID 0x1080001; interworking none
Um die MPLS-LDP-MTU zu berechnen, müssen Sie 14 Byte Ethernet-Header subtrahieren und 4 Byte für jeden Tag hinzufügen, der unter der Subschnittstelle konfiguriert wurde.
Auf Ethernet-Schnittstellen wird der Schnittstellentreiber mit einer MTU und einer MRU konfiguriert, die auf der MTU-Schnittstellenkonfiguration basieren.
Die konfigurierte MTU und MRU auf dem Ethernet-Schnittstellentreiber wird mit dem Befehl show controller <interface> all angezeigt.
In früheren Versionen als Cisco IOS XR 5.1.1 wurden die MTU und die MRU auf dem Ethernet-Schnittstellentreiber automatisch auf Basis der Cisco IOS XR-MTU-Konfiguration auf der Schnittstelle konfiguriert.
Die auf dem Ethernet-Treiber konfigurierte MTU/MRU basierte lediglich auf der konfigurierten MTU + 12 Byte für die Hinzufügung von 2 Ethernet-Tags und dem CRC-Feld. Die 12 Byte wurden zur MTU/MRU des Ethernet-Treibers hinzugefügt, unabhängig davon, ob auf den Subschnittstellen VLAN-Tags konfiguriert waren.
Hier sehen Sie ein Beispiel mit allen Cisco IOS XR-Versionen vor Cisco IOS XR 5.1.1 und einer MTU-Standardeinstellung von 1514 auf einer ASR 9000-Schnittstelle:
RP/0/RSP0/CPU0:ASR2#show interface Gi0/2/0/0
GigabitEthernet0/2/0/0 is up, line protocol is up
Interface state transitions: 3
Hardware is GigabitEthernet, address is 18ef.63e2.0598 (bia 18ef.63e2.0598)
Description: Static_Connections_to_ME3400-1_Gi_0_2 - Do Not Change
Internet address is Unknown
MTU 1514 bytes, BW 1000000 Kbit (Max: 1000000 Kbit)
<snip>
MTU/MRU programmed on ethernet interface driver is 1514 + 12 bytes
RP/0/RSP0/CPU0:ASR2#show controllers Gi0/2/0/0 all
<snip>
Operational values:
Speed: 1Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: None (or external)
MTU: 1526
MRU: 1526
Inter-packet gap: standard (12)
<snip>
In Cisco IOS XR Version 5.1.1 und höher haben sich die MTU und die MRU, die für den Ethernet-Schnittstellentreiber verwendet werden, geändert. Sie basieren nun auf der Anzahl der VLAN-Tags, die für eine der Subschnittstellen konfiguriert sind.
Wenn keine VLAN-Tags auf Subschnittstellen konfiguriert sind, entspricht die Treiber-MTU/MRU der konfigurierten MTU der Schnittstelle + 4 CRC-Bytes, z. B. 1514 + 4 = 1518 Bytes.
Wenn ein VLAN auf Subschnittstellen konfiguriert wird, entspricht die Treiber-MTU/MRU der konfigurierten MTU + 8 Byte (1 Tag + CRC), beispielsweise 1514 + 8 = 1522 Byte.
Wenn zwei VLAN-Tags auf Subschnittstellen konfiguriert sind, entspricht die Treiber-MTU/MRU der konfigurierten MTU + 12 Byte (2 Tags + CRC), z. B. 1514 + 12 = 1526 Byte
Wenn QinQ mit dem any-Schlüsselwort für das second-do1q-Tag konfiguriert ist, entspricht die Treiber-MTU/MRU der konfigurierten MTU + 8 Byte (1 Tag + CRC), z. B. 1514 + 8 = 1522 Byte.
Diese Beispiele zeigen das Verhalten von Cisco IOS XR 5.1.1 und höher auf einem ASR 9000:
RP/0/RSP0/CPU0:ASR2#sh run int ten0/1/0/0
interface TenGigE0/1/0/0
cdp
RP/0/RSP0/CPU0:ASR2#show controllers ten0/1/0/0 all
<snip>
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: Internal
MTU: 1518
MRU: 1518
Inter-packet gap: standard (12)
<snip>
RP/0/RSP0/CPU0:ASR2#config
RP/0/RSP0/CPU0:ASR2(config-if)#int ten0/1/0/0.1
RP/0/RSP0/CPU0:ASR2(config-subif)#encapsulation dot1q 1
RP/0/RSP0/CPU0:ASR2(config-subif)#commit
RP/0/RSP0/CPU0:ASR2#show controllers ten0/1/0/0 all
<snip>
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: Internal
MTU: 1522
MRU: 1522
Inter-packet gap: standard (12)
<snip>
RP/0/RSP0/CPU0:ASR2#config
RP/0/RSP0/CPU0:ASR2(config)#int ten0/1/0/0.2
RP/0/RSP0/CPU0:ASR2(config-subif)#encapsulation dot1q 10 second-dot1q 20
RP/0/RSP0/CPU0:ASR2(config-subif)#commit
RP/0/RSP0/CPU0:ASR2#show controllers ten0/1/0/0 all
<snip>
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: Internal
MTU: 1526
MRU: 1526
Inter-packet gap: standard (12)
<snip>
RP/0/RSP0/CPU0:ASR2#config
RP/0/RSP0/CPU0:ASR2(config)#int ten0/2/0/0
RP/0/RSP0/CPU0:ASR2(config)#cdp
RP/0/RSP0/CPU0:ASR2(config)#int ten0/2/0/0.1 l2transport
RP/0/RSP0/CPU0:ASR2(config-subif)#encapsulation dot1q 10 second-dot1q any
RP/0/RSP0/CPU0:ASR2(config-subif)#commit
RP/0/RSP0/CPU0:ASR2#show controllers ten0/1/0/0 all
<snip>
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: Internal
MTU: 1522
MRU: 1522
Inter-packet gap: standard (12)
<snip>
In den meisten Fällen sollte diese Verhaltensänderung in Version 5.1.1 und höher keine Änderungen an der MTU-Konfiguration der Schnittstelle erfordern.
Diese Verhaltensänderung kann Probleme bei einer Subschnittstelle verursachen, die mit einem einzelnen VLAN-Tag konfiguriert ist, aber Pakete mit zwei VLAN-Tags empfängt. In diesem Fall können die empfangenen Pakete die MRU auf dem Ethernet-Schnittstellentreiber überschreiten. Um diese Bedingung zu vermeiden, kann die MTU der Schnittstelle entweder um 4 Byte erhöht oder die Subschnittstelle mit zwei VLAN-Tags konfiguriert werden.
Die MTU- und MRU-Konfiguration der automatischen Ethernet-Schnittstellentreiber in Version 5.1.1 ist für CRS- und ASR 9000-Router identisch. Ein CRS-Router, der Version 5.1.1 ausführt, enthält jedoch nicht den 4-Byte-CRC in der MTU- und MRU-Wert, der in der Ausgabe des Controllers angezeigt wird. Das Berichtsverhalten ist beim CRS und ASR9000 nicht identisch.
RP/0/RP0/CPU0:CRS#sh run int ten0/4/0/0
Mon May 19 08:49:26.109 UTC
interface TenGigE0/4/0/0
<snip>
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: None (or external)
MTU: 1514
MRU: 1514
Inter-packet gap: standard (12)
RP/0/RP0/CPU0:CRS(config)#int ten0/4/0/0.1
RP/0/RP0/CPU0:CRS(config-subif)#encapsulation dot1q 1
RP/0/RP0/CPU0:CRS(config-subif)#commit
Operational values:
Speed: 10Gbps
Duplex: Full Duplex
Flowcontrol: None
Loopback: None (or external)
MTU: 1518
MRU: 1518
Inter-packet gap: standard (12)
Die Art und Weise, wie die MTU und die MRU in der Ausgabe des Anzeigecontrollers auf dem ASR 9000 angezeigt werden, wird sich in Zukunft ändern, sodass die 4 Byte CRC nicht in den angezeigten MTU/MRU-Wert einbezogen werden. Diese zukünftige Änderung kann mit der Cisco Bug-ID CSCuo93379 verfolgt werden.
Wenn es eine Hauptschnittstelle ohne Subschnittstelle und ohne mtu-Befehl in einer Version vor Version 5.1.1 gab:
interface TenGigE0/1/0/19
l2transport
!
!
Diese Schnittstelle überträgt dot1q- oder QinQ-Frames, dann sollte die MTU in Version 5.1.1 und höher manuell auf "mtu 1522" konfiguriert werden:
interface TenGigE0/1/0/19
mtu 1522
l2transport
!
!
Diese Konfiguration ermöglicht den Transport von QinQ-Frames wie in früheren Releases. Der MTU-Wert kann auf 1518 konfiguriert werden, wenn nur dot1q und nicht QinQ transportiert werden sollen.
Falls für dot1q oder QinQ Subschnittstellen konfiguriert wurden, jedoch mit dem Schlüsselwort "any" und keine QinQ Subschnittstellen mit 2 expliziten Tags in einer früheren Version als Release 5.1.1 konfiguriert wurden:
interface TenGigE0/1/0/19
!
interface TenGigE0/1/0/19.100 l2transport
encapsulation dot1q 100
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q any
!
Diese Konfiguration in Version 5.1.1 und höher erlaubt nur den Transport von Frames mit einem Tag, daher sollte die MTU auch manuell um 4 Byte erhöht werden, wenn QinQ-Frames transportiert werden sollen:
interface TenGigE0/1/0/19
mtu 1518
!
interface TenGigE0/1/0/19.100 l2transport
encapsulation dot1q 100
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q any
!
Wenn eine QinQ-Subschnittstelle mit 2 expliziten Tags (die nicht das Schlüsselwort "any" verwenden) konfiguriert ist, muss die MTU-Konfiguration beim Upgrade auf Version 5.1.1 und höher nicht geändert werden:
interface TenGigE0/1/0/19
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q 200
!
Wenn es keine L2-Transport-Subschnittstelle, sondern nur L3-Routing-Schnittstellen gibt, wird erwartet, dass die MTU-Konfiguration auf beiden Seiten übereinstimmt und keine Frames vorhanden sind, die größer sind als die transportierte MTU. Beim Upgrade auf Version 5.1.1 und höher müssen Sie die MTU-Konfiguration nicht aktualisieren.
Wenn eine nicht standardmäßige MTU-Größe in einer früheren Version als Version 5.1.1 konfiguriert wurde und keine Subschnittstelle konfiguriert wurde und dot1q- oder QinQ-Frames übertragen werden müssen, sollte der konfigurierte MTU-Wert um 8 Byte erhöht werden, wenn Sie ein Upgrade auf Version 5.1.1 oder höher durchführen.
Version vor Version 5.1.1:
interface TenGigE0/1/0/19
mtu 2000
l2transport
!
!
Die MTU sollte manuell um 8 Byte erhöht werden, wenn Sie ein Upgrade auf Version 5.1.1 oder höher durchführen:
interface TenGigE0/1/0/19
mtu 2008
l2transport
!
!
Der konfigurierte MTU-Wert sollte ebenfalls um 4 Byte erhöht werden, wenn es eine dot1q-Subschnittstelle und keine QinQ-Subschnittstelle oder eine QinQ-Subschnittstelle mit dem any-Schlüsselwort für das second-dot1q-Tag gibt.
Version vor Version 5.1.1:
interface TenGigE0/1/0/19
mtu 2000
!
interface TenGigE0/1/0/19.100 l2transport
encapsulation dot1q 100
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q any
!
Version 5.1.1 und höher:
interface TenGigE0/1/0/19
mtu 2004
!
interface TenGigE0/1/0/19.100 l2transport
encapsulation dot1q 100
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q any
!
Wenn eine QinQ-Subschnittstelle mit 2 expliziten Tags (die nicht das Schlüsselwort "any" verwenden) konfiguriert ist, besteht keine Notwendigkeit, die MTU-Konfiguration zu ändern, wenn Sie auf Version 5.1.1 oder höher aktualisieren.
interface TenGigE0/1/0/19
!
interface TenGigE0/1/0/19.101 l2transport
encapsulation dot1q 101 second-dot1q 200
!
Wenn es keine L2-Transport-Subschnittstelle gibt, sondern nur L3-Routing-Schnittstellen, wird erwartet, dass die MTU-Konfiguration auf beiden Seiten übereinstimmt und keine Frames vorhanden sind, die größer sind als die transportierte MTU. Beim Upgrade auf Version 5.1.1 und höher müssen Sie die MTU-Konfiguration nicht aktualisieren.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
02-Feb-2015 |
Erstveröffentlichung |