Description |
This article describes how to plan or analyze VXLAN network so it is possible to determine if there is the possibility of running into MTU issues in the future or if having one already. |
Scope | FortiOS. |
Solution |
There are a lot of cases where VXLAN is implemented without prior evaluation of the network/underlay on which it is configured and when the users begin pushing traffic over the VXLAN, they are faced with MTU-related issues (bigger MTU than allowed) which leads to frustrating users' experience.
Facts relevant or useful in this article:
Uses cases:
If the underlay has an MTU of 1500, then the maximum packet size that can be sent over the VXLAN is 1500 – 50 (1450 bytes). Note that this 1450 bytes is not raw data size, some headers contributed to the 1450: like 20 bytes IPv4 header + 8 bytes ICMP header (if using PING to test for example). Max raw data = 1422 bytes.
If the underlay has an MTU of 1500, and the VXLAN over IPSec is deployed then the maximum packet size that can be sent over the VXLAN in this case is 1500 – 100 to 107 (1393 - 1400 bytes). Note that this 1393 - 1400 bytes is not raw data size, some headers contributed to the 1393 - 1400: like 20 bytes IPv4 header + 8 bytes ICMP header (if using PING to test for example). Max raw data = 1365 - 1372 bytes.
If using Wireshark to capture these packets, it is possible to see additional 14 bytes added, which is the Ethernet header (this does not count in MTU calculation, and it is necessary to concentrate on the ones that count only).
After this analysis, it will be possible to know how to send safely over the VXLAN, if the VXLAN is facing an MTU issue or will likely face an MTU issue in the future if deployed.
The trick is to ensure the packet size after encapsulation (with VXLAN) did not or will not exceed 1500 bytes or the underlay MTU.
Fix: If already deploying the VXLAN and facing an MTU issue, this is what it is possible to do.
Note: Fragmentation is widely seen as a way to resolve large MTU issues, but the case is different with VXLAN as it is strict or does not work if frag. If thinking of fragmenting the VXLAN packets on the VTEPs, do not do it. VXLAN rfc7348 warned about the use of fragmentation on VXLAN packets. See details below:
|