MTU stands for 'Maximum Transmission Unit.' Whenever you transmit and receive data in Mac OS X, the data is broken up into smaller pieces (called packets) and then reassembled on the other end of the connection. Think of it like a jigsaw puzzle: You go to the store to find a puzzle, and they come in different sizes, ranging from 20-10,000 pieces. Everyone knows that the more pieces you need to put the picture back together, the longer it takes. The same thing is true with computer data.
Suppose, you want to download a song from the iTunes Music Store. Or you've come across a freshly released movie that you planned to watch this Friday night. Or you want to save on your computer an audio or video guide containing advice to help with personal statement writing. Naturally, you want to get all of these things as quickly as possible. And as you increase the amount of data in a packet, you decrease the number of packets iTunes needs to transmit, which reduces the time it takes to receive the file. That's great until you tell the computer to transmit packets larger than your ISP can handle. If your ISP can handle 1500 bytes, but you specify 1800 bytes, you might get the 1500 bytes, but then your computer has to tell iTunes, 'Hey, I didn't get those other 300 bytes. Please resend them.' iTunes sends the data, but it has to do so in a new packet, which means it takes longer to get all the data to your computer.
Workspace app for Mac 1808+ Workspace app for Linux 1808+ Workspace app for iOS 1808+ Workspace app for Android 1909+ Solution. Citrix Virtual Apps and Desktops 7 1912 LTSR and Workspace app for Windows 1911 introduced support for EDT MTU Discovery. If using these versions (or newer) of the VDA and Workspace app for Windows, this workaround is. There is a way to configure the MTU value using a radius attribute called WebVPN-SVC-DTLS-MTU (SVC-MTU).The MTU value assigned by this attribute takes precedence over the MTU value configured at the Group Policy described at 1-1.This method is useful when you want to apply a different MTU value only for a specific user within the same Group Policy.For example, there is a case where a smaller.
Determining the MTU for your current network is not difficult, but it is a matter of trial and error. There are some caveats. First, each network has its own MTU, so your home network may be different from work and from the local coffee shop. Thus, if you set a custom MTU and then change networks, you probably need to change the MTU to match the new network. Second, the standard MTU size for Ethernet/AirPort connections is 1500. For Ethernet DSL (PPPoE), it is 1492. Third, it is unlikely your MTU size is greater than 1500 or lower than 1400, but feel free to experiment with different values.
Karaoke software for Professional's and home user's alike. Remove vocals, create your own Karaoke songs, then burn them to disc. Check Wi-Fi is Connected. First ensure that you Mac has Internet connection through Wi-Fi. Decrease the 1500 value by 10 each time, until the ping succeeds. Once the ping succeeds, the value used is the MTU you should use. Setting the MTU. OpenVPN requires a value called the MSS to be set. The MSS is the value for the MTU minus 40). If your MTU is 1460, your MSS is 1420. MSS = MTU - 40 MSS = 1460 - 40 MSS = 1420.
When you want to be able to manually set your MTU size, you must first open System Preferences, then the Network system preference. When that preference opens, select the network interface you use to connect to the Internet (likely Ethernet or Wi-Fi), and then press the 'Advanced' button in the lower right corner of the window. When the Advanced window appears, you can then click on the 'Hardware' tab (or the 'Ethernet' tab if you're running Snow Leopard or earlier). This is the section where you can edit the MTU value. Mac OS X can already determine your network's proper MTU, so only adjust this setting if you are experiencing persistent slowdowns, especially when attempting to download files. Read on to determine your ideal MTU value.
Mac OS X can already determine your network's proper MTU, so only adjust this setting if you are experiencing persistent slowdowns, especially when attempting to download files.
To determine your network's MTU:
- Open Terminal (in your Utilities folder). You are going to 'ping' another server. This means you are going to send another server a little bit of data and ask it to respond to you. It is the equivalent of tapping someone on the shoulder, except in this metaphor, you get no response when you tap someone too hard (or send a packet that is too large).
- Type this command and press Return:
ping -c 2 -D -s 1472 example.com
- The -c switch tells ping how many packets to send. I chose to specify two packets. You could choose 1 or 100 or even eliminate this switch to ping endlessly (not recommended, but if you do this and need to stop the ping, hold down the Control key and press the letter 'C').
- The -D switch tells ping not to fragment the packet (meaning that if the size of the packet is too large, don't send it at all).
- The -s switch allows you to specify the size of the packet in bytes. That is what the 1472 next to the -s switch. This is important: Any ping that you do via the above method adds 28 bytes of overhead to the ping. This means you must add 28 bytes to the size of your packet to get the packet's true size. In the above example, we pinged example.com with 1472 bytes. Add 28 to that number, and you get 1500. If 1472 is the largest packet you can successfully send, then your MTU value is 1500. If the largest packet you could send were 1464, then your packet size would be 1492.
- When you run the above command, ping can give you two different replies:
ping: sendto: Message too long
If you get a response that the message is too long, that means the packet size is too large and must be reduced.
1480 bytes from 208.77.188.166: icmp_seq=0 ttl=46 time=185.42 ms
- The above line is the other reply you may receive from ping, and it indicates a successful ping. Your response may look slightly different: the IP address may change, the time it takes to ping may change, etc. The point is that this line looks very different from the 'message too long' line. If you ran the exact command from above, you should see either two successful pings or two failed pings, since the -c switch was set to
- In fact, at the end of the ping process, you may see a statistics line that shows either 0% packet loss or 100% packet loss (0% means every packet went through, 100% means none of the packets did).
- Your goal is to continually increase the packet size in the ping request until you receive a 'message too long' reply (or, if you are only receiving those messages, lower it until you can successfully ping a server). Add 28 to the largest packet size you can successfully ping, and this is your MTU. To manually set your MTU in the 'Hardware' tab of the Advanced window in the Network system preference, change the 'Configure' pop-up menu form 'Automatically' to 'Manually.' Then, switch the 'MTU' pop-up menu from 'Standard' to 'Custom.' Finally, enter your MTU in the box that appears and click OK to save your settings.
Did this guide work for you? How important do you feel it is to edit the MTU value? How has it affected your network performance? Let others know in the comments.
It is the sole responsibility of administrators to configure the Maximum Transmission Unit (MTU) such that intended services and applications can be successfully implemented in the network. In other words - administrators must make sure that MTUs are configured in a way that packet sizes do not exceed the capabilities of network equipment.
Originally MTU was introduced because of the high error rates and low speed of communications. Fragmentation of the data stream gives the ability to correct corruption errors only by resending corrupted fragments, not the whole stream. Also on low-speed connections such as modems it can take too much time to send a big fragment, so in this case communication is possible only with smaller fragments.
But in the present day we have much lower error rates and higher speed of communication, this opens a possibility to increase the value of MTU. By increasing the value of MTU we will result in less protocol overhead and reduce CPU utilization mostly due to interrupt reduction. This way some non-standard frames started to emerge:
- GiantorJumboframes - frames that are bigger than standard (IEEE) Ethernet MTU;
- Baby GiantorBaby Jumboframes - frames that are just slightly bigger than standard (IEEE) Ethernet MTU;
It is common now for Ethernet interfaces to support physical MTU above standard, but this can not be taken for granted. Abilities of other network equipment must be taken into account as well - for example, if 2 routers with Ethernet interfaces supporting physical MTU 1526 are connected through Ethernet switch, in order to successfully implement some application that will produce this big Ethernet frames, the switch must also support forwarding such frames.
Mikrotik RouterOS recognizes several types of MTU:
|
Full frame MTU
Full frame MTU indicates the actual size of the frame that is sent by a particular interface. Frame Checksum is not included as it is removed by an ethernet driver as soon as it reaches its destination.
Mtu For Pc
MAC/Layer-2/L2 MTU
L2MTU indicates the maximum size of the frame without the MAC header that can be sent by this interface.
In RouterOS L2MTU values can be seen in the '/interface' menu. L2MTU support is added for all Routerboard related Ethernet interfaces, VLANs, Bridge, VPLS and wireless interfaces. Some of them support the configuration of the L2MTU value. All other Ethernet interfaces might indicate L2MTU only if the chipset is the same as Routerboard Ethernets.
This will allow users to check if the desired setup is possible. Users will be able to utilize additional bytes for VLAN and MPLS tags, or simply increase of interface MTU to get rid of some unnecessary fragmentation.
Intel advanced n 6235 driver. This table shows max-l2mtu supported by Mikrotik RouterBoards (available in '/interface print' menu as the value of the read-only 'max-l2mtu' option):
Model name | MTU description |
RB SXT series, RB LHG, RB LDF, PL6411-2nD, PL7411-2nD, RB711 series, wAP R-2nD, RB912R-2nD-LTm (LtAP mini), RB Metal series, RB SXT Lite series, RB Groove series, Cube Lite60, LHG Lite60ether1:2028 | ether1:2028 |
RB SXT G series, RB DynaDish, wAP ac, RB QRT series, RB711G series, RB911G, RB912UAG | ether1:4076 |
RB OmniTik series, RB750, RB750UP, RB751U-2HnD, RB951-2n | ether1:4076; ether2-ether5:2028 |
RB OmniTik ac series, RB750GL, RB750Gr2 | ether1-ether5:4074 |
RB mAP, RB mAP lite, RB cAP, RB wAP | ether1-ether2:2028 |
RB750r2, RB750P-PBr2, RB750UPr2, RB941-2nD, RB951Ui/RB952Ui series | ether1-ether5:2028 |
RB750Gr3 | ether1-ether5:2026 |
RB751G-2HnD, RB951G-2HnD | ether1-ether5:4074 |
RB962UiGS, RB960PGS | ether1-ether5:4074; sfp1:4076 |
RB LHGG series | ether1:9214 |
LHG XL 52 ac | ether1:9214; sfp1:9214 |
RB1100Hx2, RB1100AHx2 | ether1-ether10:9498; ether11:9500; ether12-ether13:9116 |
RB4011iGS+ series | ether1-ether10:9578; sfp-sfpplus1:9982 |
CCR1009 series | ether1-ether4:10224; ether5-ether8:10226; sfp1:10226; sfp-sfpplus1:10226 |
CCR1016 series | ether1-ether12:10226; sfp1-sfp12:10226; sfp-sfpplus1:10226 |
CCR1036 series | ether1-ether12:10226; sfp1-sfp4:10226; sfp-sfpplus1-sfp-sfpplus2:10226 |
CCR1072 series | ether1:9116; sfp-sfpplus1-sfp-sfpplus8:10226 |
CRS109-8G-1S | ether1-ether8:4064; sfp1:4064 |
CRS125-24G-1S | ether1-ether24:4064; sfp1:4064 |
CRS112-8G-4S | ether1-ether8:9204; sfp9-sfp12:9204 |
CRS106-1C-5S | sfp1-sfp5:9204; combo1:9204 |
CRS210-8G-2S+ | ether1-ether8:9204; sfp-sfpplus1:9204; sfpplus2:9204 |
CRS212-1G-10S-1S+ | ether1:9204; sfp1-sfp10:9204; sfpplus1:9204 |
CRS226-24G-2S+ | ether1-ether24:9204; sfp-sfpplus1:9204; sfpplus2:9204 |
CRS326-24G-2S+, CSS326-24G-2S+ | ether1-ether24:10218; sfp-sfpplus1:10218; sfpplus2:10218 |
CRS317-1G-16S+ | ether1:10218; sfp-sfpplus1-sfp-sfpplus16:10218 |
CRS328-24P-4S+ | ether1-ether24:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS328-4C-20S-4S+ | combo1-combo4:10218; sfp1-sfp20:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS305-1G-4S+, CRS309-1G-8S+ | ether1:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS312-4C+8XG | combo1-combo4:10218; ether1-ether8:10218; ether9:2028 |
CRS326-24S+2Q+ | sfp-sfpplus1-sfp-sfpplus24:10218; qsfpplus1-1-qsfpplus2-4:10218; ether1:2028 |
CRS354-48G-4S+2Q+ | sfp-sfpplus1-sfp-sfpplus4:10218; qsfpplus1-1-qsfpplus2-4:10218; ether1-ether48:10218; ether49:2028 |
D52G-5HacD2HnD (hAP ac²) | ether1-ether5:9124 |
cAP ac | ether1-ether2:9124 |
wAP60G, LHG60G | ether1:9124 |
RB260GS series, CSS106-5G-1S, CSS106-1G-4P-1S | ether1-ether5:9198; sfp1:9198 |
RB FTC | ether1:4046; sfp1:4046 |
RBM33G | ether1-ether3:2026 |
RBM11G | ether1:2026 |
RB760iGS | ether1-ether5:2026; sfp1:2026 |
RB411 series | ether1:1526 |
RB433 series, RB450, RB493 series | ether1:1526; ether2-ether3:1522 |
RB450Gx4 | ether1-ether5:9214 |
RB411GL | ether1:1520 |
RB433GL, RB435G , RB450G, RB493G | ether1-ether3:1520 |
RB800 | ether1-ether2:9500; ether3:9116 |
RB850Gx2 | ether1-ether5:1580 |
RB921UAGS, RB922UAGS | ether1:4076; sfp1:4076 |
D23UGS-5HPacD2HnD (NetMetal ac²) | ether1:9214 ; sfp1:9214 |
RB953GS | ether1-ether2:4074; sfp1:4074; sfp2:4076 |
RB2011 series | ether1-ether5:4074; ether6-ether10:2028; sfp1:4074 |
RB3011 series | ether1-ether5:8156; ether6-ether10:8156; sfp1:8158 |
RB44Ge | ether1-ether4:9116 |
Mtu For Home Network
All wireless interfaces in RouterOS (including Nstreme2) support 2290 byte L2MTU.
L2MTU configuration changes evoke all interface reload (link down/link up) due to necessary internal processes.
It is recommended to configure L2MTU with caution by keeping in mind that it can cause short interruption with connected devices.
MPLS/Layer-2.5/L2.5 MTU
Configured in '/mpls interface' menu, specifies the maximal size of the packet, including MPLS labels, that is allowed to send out by the particular interface (default is 1508).
Make sure that MPLS MTU is smaller or equal to L2MTU. MPLS MTU affects packets depending on what action the MPLS router is performing. It is strongly recommended that MPLS MTU is configured to the same value on all routers forming MPLS cloud because of the effects MPLS MTU has on MPLS switched packets. This requirement means that all interfaces participating in MPLS cloud must be configured to the smallest MPLS MTU values among participating interfaces, therefore care must be taken to properly select hardware to be used.
MPLS Switching
If the packet with labels included is bigger than MPLS MTU, MPLS tries to guess the protocol that is carried inside the MPLS frame:
If you get a response that the message is too long, that means the packet size is too large and must be reduced.
1480 bytes from 208.77.188.166: icmp_seq=0 ttl=46 time=185.42 ms
- The above line is the other reply you may receive from ping, and it indicates a successful ping. Your response may look slightly different: the IP address may change, the time it takes to ping may change, etc. The point is that this line looks very different from the 'message too long' line. If you ran the exact command from above, you should see either two successful pings or two failed pings, since the -c switch was set to
- In fact, at the end of the ping process, you may see a statistics line that shows either 0% packet loss or 100% packet loss (0% means every packet went through, 100% means none of the packets did).
- Your goal is to continually increase the packet size in the ping request until you receive a 'message too long' reply (or, if you are only receiving those messages, lower it until you can successfully ping a server). Add 28 to the largest packet size you can successfully ping, and this is your MTU. To manually set your MTU in the 'Hardware' tab of the Advanced window in the Network system preference, change the 'Configure' pop-up menu form 'Automatically' to 'Manually.' Then, switch the 'MTU' pop-up menu from 'Standard' to 'Custom.' Finally, enter your MTU in the box that appears and click OK to save your settings.
Did this guide work for you? How important do you feel it is to edit the MTU value? How has it affected your network performance? Let others know in the comments.
It is the sole responsibility of administrators to configure the Maximum Transmission Unit (MTU) such that intended services and applications can be successfully implemented in the network. In other words - administrators must make sure that MTUs are configured in a way that packet sizes do not exceed the capabilities of network equipment.
Originally MTU was introduced because of the high error rates and low speed of communications. Fragmentation of the data stream gives the ability to correct corruption errors only by resending corrupted fragments, not the whole stream. Also on low-speed connections such as modems it can take too much time to send a big fragment, so in this case communication is possible only with smaller fragments.
But in the present day we have much lower error rates and higher speed of communication, this opens a possibility to increase the value of MTU. By increasing the value of MTU we will result in less protocol overhead and reduce CPU utilization mostly due to interrupt reduction. This way some non-standard frames started to emerge:
- GiantorJumboframes - frames that are bigger than standard (IEEE) Ethernet MTU;
- Baby GiantorBaby Jumboframes - frames that are just slightly bigger than standard (IEEE) Ethernet MTU;
It is common now for Ethernet interfaces to support physical MTU above standard, but this can not be taken for granted. Abilities of other network equipment must be taken into account as well - for example, if 2 routers with Ethernet interfaces supporting physical MTU 1526 are connected through Ethernet switch, in order to successfully implement some application that will produce this big Ethernet frames, the switch must also support forwarding such frames.
Mikrotik RouterOS recognizes several types of MTU:
|
Full frame MTU
Full frame MTU indicates the actual size of the frame that is sent by a particular interface. Frame Checksum is not included as it is removed by an ethernet driver as soon as it reaches its destination.
Mtu For Pc
MAC/Layer-2/L2 MTU
L2MTU indicates the maximum size of the frame without the MAC header that can be sent by this interface.
In RouterOS L2MTU values can be seen in the '/interface' menu. L2MTU support is added for all Routerboard related Ethernet interfaces, VLANs, Bridge, VPLS and wireless interfaces. Some of them support the configuration of the L2MTU value. All other Ethernet interfaces might indicate L2MTU only if the chipset is the same as Routerboard Ethernets.
This will allow users to check if the desired setup is possible. Users will be able to utilize additional bytes for VLAN and MPLS tags, or simply increase of interface MTU to get rid of some unnecessary fragmentation.
Intel advanced n 6235 driver. This table shows max-l2mtu supported by Mikrotik RouterBoards (available in '/interface print' menu as the value of the read-only 'max-l2mtu' option):
Model name | MTU description |
RB SXT series, RB LHG, RB LDF, PL6411-2nD, PL7411-2nD, RB711 series, wAP R-2nD, RB912R-2nD-LTm (LtAP mini), RB Metal series, RB SXT Lite series, RB Groove series, Cube Lite60, LHG Lite60ether1:2028 | ether1:2028 |
RB SXT G series, RB DynaDish, wAP ac, RB QRT series, RB711G series, RB911G, RB912UAG | ether1:4076 |
RB OmniTik series, RB750, RB750UP, RB751U-2HnD, RB951-2n | ether1:4076; ether2-ether5:2028 |
RB OmniTik ac series, RB750GL, RB750Gr2 | ether1-ether5:4074 |
RB mAP, RB mAP lite, RB cAP, RB wAP | ether1-ether2:2028 |
RB750r2, RB750P-PBr2, RB750UPr2, RB941-2nD, RB951Ui/RB952Ui series | ether1-ether5:2028 |
RB750Gr3 | ether1-ether5:2026 |
RB751G-2HnD, RB951G-2HnD | ether1-ether5:4074 |
RB962UiGS, RB960PGS | ether1-ether5:4074; sfp1:4076 |
RB LHGG series | ether1:9214 |
LHG XL 52 ac | ether1:9214; sfp1:9214 |
RB1100Hx2, RB1100AHx2 | ether1-ether10:9498; ether11:9500; ether12-ether13:9116 |
RB4011iGS+ series | ether1-ether10:9578; sfp-sfpplus1:9982 |
CCR1009 series | ether1-ether4:10224; ether5-ether8:10226; sfp1:10226; sfp-sfpplus1:10226 |
CCR1016 series | ether1-ether12:10226; sfp1-sfp12:10226; sfp-sfpplus1:10226 |
CCR1036 series | ether1-ether12:10226; sfp1-sfp4:10226; sfp-sfpplus1-sfp-sfpplus2:10226 |
CCR1072 series | ether1:9116; sfp-sfpplus1-sfp-sfpplus8:10226 |
CRS109-8G-1S | ether1-ether8:4064; sfp1:4064 |
CRS125-24G-1S | ether1-ether24:4064; sfp1:4064 |
CRS112-8G-4S | ether1-ether8:9204; sfp9-sfp12:9204 |
CRS106-1C-5S | sfp1-sfp5:9204; combo1:9204 |
CRS210-8G-2S+ | ether1-ether8:9204; sfp-sfpplus1:9204; sfpplus2:9204 |
CRS212-1G-10S-1S+ | ether1:9204; sfp1-sfp10:9204; sfpplus1:9204 |
CRS226-24G-2S+ | ether1-ether24:9204; sfp-sfpplus1:9204; sfpplus2:9204 |
CRS326-24G-2S+, CSS326-24G-2S+ | ether1-ether24:10218; sfp-sfpplus1:10218; sfpplus2:10218 |
CRS317-1G-16S+ | ether1:10218; sfp-sfpplus1-sfp-sfpplus16:10218 |
CRS328-24P-4S+ | ether1-ether24:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS328-4C-20S-4S+ | combo1-combo4:10218; sfp1-sfp20:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS305-1G-4S+, CRS309-1G-8S+ | ether1:10218; sfp-sfpplus1-sfp-sfpplus4:10218 |
CRS312-4C+8XG | combo1-combo4:10218; ether1-ether8:10218; ether9:2028 |
CRS326-24S+2Q+ | sfp-sfpplus1-sfp-sfpplus24:10218; qsfpplus1-1-qsfpplus2-4:10218; ether1:2028 |
CRS354-48G-4S+2Q+ | sfp-sfpplus1-sfp-sfpplus4:10218; qsfpplus1-1-qsfpplus2-4:10218; ether1-ether48:10218; ether49:2028 |
D52G-5HacD2HnD (hAP ac²) | ether1-ether5:9124 |
cAP ac | ether1-ether2:9124 |
wAP60G, LHG60G | ether1:9124 |
RB260GS series, CSS106-5G-1S, CSS106-1G-4P-1S | ether1-ether5:9198; sfp1:9198 |
RB FTC | ether1:4046; sfp1:4046 |
RBM33G | ether1-ether3:2026 |
RBM11G | ether1:2026 |
RB760iGS | ether1-ether5:2026; sfp1:2026 |
RB411 series | ether1:1526 |
RB433 series, RB450, RB493 series | ether1:1526; ether2-ether3:1522 |
RB450Gx4 | ether1-ether5:9214 |
RB411GL | ether1:1520 |
RB433GL, RB435G , RB450G, RB493G | ether1-ether3:1520 |
RB800 | ether1-ether2:9500; ether3:9116 |
RB850Gx2 | ether1-ether5:1580 |
RB921UAGS, RB922UAGS | ether1:4076; sfp1:4076 |
D23UGS-5HPacD2HnD (NetMetal ac²) | ether1:9214 ; sfp1:9214 |
RB953GS | ether1-ether2:4074; sfp1:4074; sfp2:4076 |
RB2011 series | ether1-ether5:4074; ether6-ether10:2028; sfp1:4074 |
RB3011 series | ether1-ether5:8156; ether6-ether10:8156; sfp1:8158 |
RB44Ge | ether1-ether4:9116 |
Mtu For Home Network
All wireless interfaces in RouterOS (including Nstreme2) support 2290 byte L2MTU.
L2MTU configuration changes evoke all interface reload (link down/link up) due to necessary internal processes.
It is recommended to configure L2MTU with caution by keeping in mind that it can cause short interruption with connected devices.
MPLS/Layer-2.5/L2.5 MTU
Configured in '/mpls interface' menu, specifies the maximal size of the packet, including MPLS labels, that is allowed to send out by the particular interface (default is 1508).
Make sure that MPLS MTU is smaller or equal to L2MTU. MPLS MTU affects packets depending on what action the MPLS router is performing. It is strongly recommended that MPLS MTU is configured to the same value on all routers forming MPLS cloud because of the effects MPLS MTU has on MPLS switched packets. This requirement means that all interfaces participating in MPLS cloud must be configured to the smallest MPLS MTU values among participating interfaces, therefore care must be taken to properly select hardware to be used.
MPLS Switching
If the packet with labels included is bigger than MPLS MTU, MPLS tries to guess the protocol that is carried inside the MPLS frame:
- If this is an IP packet, MPLS produces ICMP Need Fragment error. This behavior mimics IP protocol behavior. Note that this ICMP error is not routed back to the originator of a packet but is switched towards the end of LSP, so that egress router can route it back.
- If this is not an IP packet, MPLS simply drops it, because it does not know how to interpret the contents of the packet. This feature is very important in situations where MPLS applications such as VPLS are used (where frames that are MPLS tagged are not IP packets, but e.g. encapsulated Ethernet frames as in case of VPLS) - if somewhere along the LSP MPLS MTU will be less than packet size prepared by ingress router, frames will simply get dropped.
IP ingress
When a router first introduces label (or labels) on IP packet, and resulting packet size including MPLS labels exceeds MPLS MTU, router behaves as if interface MTU was exceeded - either fragments packet in fragments that do not exceed MPLS MTU when labels are attached (if IP Don't Fragment is not set) or generate ICMP Need Fragmentation error that is sent back to the originator.
VPLS ingress
When the router encapsulates the Ethernet frame for forwarding over VPLS pseudowire, it checks if packet size with VPLS Control Word (4 bytes) and any necessary labels (usually 2 labels - 8 bytes), exceeds MPLS MTU of the outgoing interface. If it does, VPLS fragments packet so that it honors MPLS MTU of the outgoing interface. A packet is defragmented at the egress point of VPLS pseudowire.
In these examples we will take a look at frames entering and leaving router via Ethernet interfaces.
Simple Routing
The image shows the packet MTU size for simple routing, packets size is not modified.
Routing with VLAN Encap
Each VLAN tag is 4 bytes long, the VLAN tag is added by a router. L2-MTU is increased by 4 bytes.
Simple MPLS with Tags
When MPLS is used as a plain replacement for IP routing, only one label is attached to every packet, therefore packet size increases by 4 bytes, we have the situation with two MPLS labels. In order to be able to forward standard size (1500 bytes) IP packet without fragmentation, MPLS MTU must be set to at least 1508 for two MPLS labels.
VPLS Tunnel
Two MPLS labels are present when a remote endpoint is not directly attached. One MPLS label is used to get to a remote endpoint, the second label is used to identify the VPLS tunnel.
Mtu Force Motors
In this example we will take a closer look at required L2MTU of all Ethernet like interfaces including Bridge, VLAN, VPLS interfaces.
In this setup we will have 3 routers:
- Q-in-Q router - this router will receive a standard 1500 byte Ethernet frame and will add two VLAN tags to the packet. Then packet will be sent out via an Ethernet network to the second router
- VPLS router - this router will remove the outer VLAN tag and will bridge the packet with the remaining VLAN tag with the VPLS tunnel. VPLS tunnel will take a packet through the MPLS network to the third router.
- MPLS Edge router - will remove VPLS and VLAN tags and bridge packet to the client Ethernet network.