中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MPLS MTU

發布時間:2020-08-02 10:00:08 來源:網絡 閱讀:410 作者:Mark_L_Zhang 欄目:移動開發

Maximum transmission unit (MTU) is a well-known parameter in the IP world. It indicates the maximum size of the IP packet that can still be sent on a data link, without fragmenting the packet. Data links in MPLS networks also have a specific MTU, but for labeled packets. Take the case of an IPv4 network implementing MPLS. All IPv4 packets have one or more labels. This does imply that the labeled packets are slightly bigger than the IP packets, because for every label, four bytes are added to the packet. So, if n is the number of labels, n * 4 bytes are added to the size of the packet when the packet is labeled.

This section explains that an MPLS MTU parameter pertains to labeled packets. Furthermore, it explains what giant and baby giant frames are and how to ensure that Ethernet switches can handle them. Finally, a new parameter is introduced: MPLS Maximum Receive Unit. This parameter is used in the LFIB to keep track of how big labeled packets can be and still be forwarded without needing to fragment them.

MPLS MTU Command

The interface MTU command in Cisco IOS specifies how big a Layer 3 packet can be without having to fragment it when sending it on a data link. For the Ethernet encapsulation, for example, MTU is by default set to 1500. However, when n labels are added, n * 4 bytes are added to an already maximum sized IP packet of 1500 bytes. This would lead to the need to fragment the packet.

Cisco IOS has the mpls mtu command that lets you specify how big a labeled packet can be on a data link. If, for example, you know that all packets that are sent on the link have a maximum of two labels and the MTU is 1500 bytes, you can set the MPLS MTU to 1508 (1500 + 2 * 4). Thus, all labeled packets of size 1508 bytes (labels included) can be sent on the link without fragmenting them. The default MPLS MTU value of a link equals the MTU value. Look at Example 3-10 to see how you can change the MPLS MTU on an interface in Cisco IOS.

Example 3-10. Changing MPLS MTU
london#show mpls interfaces fastEthernet 2/6 detail Interface FastEthernet2/6:         IP labeling enabled         LSP Tunnel labeling not enabled         BGP labeling not enabled         MPLS not operational         MTU = 1500 london#configure terminal Enter configuration commands, one per line. End with CNTL/Z. london(config)#interface FastEthernet2/6 london(config-if)#mpls mtu 1508 london(config-if)#^Z london# london#show mpls interfaces fastEthernet 2/6 detail Interface FastEthernet2/6:         IP labeling enabled         LSP Tunnel labeling not enabled         BGP labeling not enabled         MPLS not operational         MTU = 1508 

Giant and Baby Giant Frames

When a packet becomes labeled, the size increases slightly. If the IP packet was already at the maximum size possible for a certain data link (full MTU), it becomes too big to be sent on that data link because of the added labels. Therefore, the frame at Layer 2 becomes a giant frame. Because the frame is only slightly bigger than the maximum allowed, it is called a baby giant frame.

Take the example of Ethernet: The payload can be a maximum of 1500 bytes. However, if the packet is a maximum sized packet and labels are added, the packet becomes slightly too big to be sent on the Ethernet link. It is possible to close one eye and allow frames that are bigger (perhaps by just a few bytes) to be sent on the Ethernet link, even though it is not the correct thing according to the Ethernet specifications, which say that such frames should be dropped. This is, of course, possible only if the Ethernet hardware in the router and all switches in the Ethernet network support receiving and sending baby giant frames.

On Ethernet data links on LSRs, you can set the MPLS MTU to 1508 bytes to allow IP packets with a size of 1500 bytes with two labels to be received and forwarded. If, however, the hardware of the router does not support this, or if an Ethernet switch exists in between, dropping baby giant frames, you can lower the MPLS MTU parameter on the LSRs. When you set the MPLS MTU to 1500, all the IP packets with a size of 1492 bytes are still forwarded, because the size of the labeled packet then becomes 1500 (1492 plus 8) bytes at Layer 3. However, all IP packets sized between 1493 through 1500 bytes (or more) are fragmented. Because of the performance impact of fragmentation, you should use methods to avoid it, such as path MTU discovery.

NOTE

In some Cisco IOS releases, you cannot configure the MPLS MTU to be bigger than the interface MTU.

Giant Frames on Switches

You can also see giant and baby giant frames on Layer 2 switches because the maximum Ethernet frame has increased by as many bytes as are in the label stack. Configuration might be needed on the Ethernet switches to allow them to switch giant and baby giant frames. Example 3-11 shows examples on how to enable jumbo Ethernet frames on an Ethernet switch.

Example 3-11. Allowing Jumbo Frames on Ethernet Switches
Cluster#conf t Enter configuration commands, one per line. End with CNTL/Z. Cluster(config)#system jumbomtu ?   <1500-9216> Jumbo mtu size in Bytes, default is 9216  donquijote-msfc#conf t Enter configuration commands, one per line. End with CNTL/Z. donquijote-msfc(config)#int vlan 1 donquijote-msfc(config-if)#mtu ?   <64-9216> MTU size in bytes  Lander#conf t Enter configuration commands, one per line. End with CNTL/Z. Lander(config)#system mtu ?   <1500-2000> MTU size in bytes 

MPLS Maximum Receive Unit

Maximum receive unit (MRU) is a parameter that Cisco IOS uses. It informs the LSR how big a received labeled packet of a certain FEC can be that can still be forwarded out of this LSR without fragmenting it. This value is actually a value per FEC (or prefix) and not just per interface. The reason for this is that labels can be added to or removed from a packet on an LSR.

Think of the example of a router in which all the interfaces have an MTU of 1500 bytes. This means that the biggest IP packet that can be received and transmitted on all interfaces is 1500 bytes. Imagine that the packets can be labeled by adding a maximum of two labels. (Typically, MPLS ××× and AToM networks label the packets respectively the frames with two labels.) Also assume that the MPLS MTU is set to 1508 on all links to accommodate for the extra 8 bytes (2 times 4 bytes) for the labels. A labeled packet that is transmitted on any of the links can now be 1508 bytes. If, however, the operation on the incoming packet were POP, the packet could have been 4 bytes or 1 label bigger (thus 1512 bytes) when it was received, because one label would have been popped off before transmitting the packet. If the label operation were a push, however, and one label was added, the incoming packet could only have been 1504 bytes, because 4 bytes or one label would have been added—making the packet 1508 bytes—before switching the packet out.

As you can see, the label operation plays a role in determining the MRU. Because the label operation is determined per FEC or prefix, the MRU can change per FEC or prefix. Notice how in Example 3-12, the MRU changes per prefix according to the specific label operation performed on the packets. The LFIB shows you the value of the MRU per prefix.

Example 3-12. Example of MRU
lactometer#show mpls forwarding-table 10.200.254.2 detail Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop tag    tag or VC   or Tunnel Id      switched   interface 21     Pop tag     10.200.254.2/32   0          Et0/0/0    10.200.200.2         MAC/Encaps=14/14, MRU=1512, Tag Stack{}         00604700881D00024A4008008847         No output feature configured  lactometer#show mpls forwarding-table 10.200.254.3 detail Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop tag    tag or VC   or Tunnel Id      switched   interface 19     17          10.200.254.3/32   0          Et0/0/0    10.200.200.2         MAC/Encaps=14/18, MRU=1508, Tag Stack{17}         00604700881D00024A4008008847 00011000         No output feature configured  lactometer#show mpls forwarding-table 10.200.254.4 detail Local  Outgoing    Prefix            Bytes tag  Outgoing   Next Hop tag    tag or VC   or Tunnel Id      switched   interface 20     18          10.200.254.4/32   0          Tu1        point2point         MAC/Encaps=14/22, MRU=1504, Tag Stack{20 18}, via Et0/0/0         00604700881D00024A4008008847 0001400000012000         No output feature configured 

The MRU for the prefix 10.200.254.2/32 is 1512. The packet received can be 1512 bytes, because one label is popped off before it is forwarded. The MRU for prefix 10.200.254.3/32 is 1508. The size of the packet does not change, because only the top label is swapped. The MRU for prefix 10.200.254.4/32 is 1504. The packet received can be only 1504 bytes because one extra label is pushed onto the label stack before the packet is forwarded; therefore, the packet size increases by 4 bytes. The "Tag Stack" shows that one label is pushed onto the label stack after the incoming label  is swapped.

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

弥渡县| 乐至县| 冀州市| 怀宁县| 秀山| 杭州市| 五家渠市| 靖远县| 河西区| 连州市| 永福县| 澄迈县| 凤阳县| 乳山市| 金山区| 越西县| 望奎县| 威远县| 鄯善县| 都昌县| 宁陵县| 洛阳市| 邵阳县| 当阳市| 临安市| 卢氏县| 浦东新区| 沁水县| 泽州县| 昌黎县| 易门县| 石棉县| 黄浦区| 恭城| 新化县| 达拉特旗| 昆明市| 新巴尔虎右旗| 广汉市| 科技| 芮城县|