First, I wanna say that I hope everyone is safe and healthy during the covid pandemia.
Regarding to the title, here is my question. I have an ASR920 and I'd like to send packets with MTU bigger than 1500 over a BDI interface. I've changed the IP MTU on both physical and BDI interfaces and when I do a ping bigger than 1500 to a directly connected ip to the BDI 200 (physical is gi0/0/11) it works, but when I source it from another interface it doesn't.
I've seen in past IOS-XE versions that there were some limitations regarding MTU and BDI interfaces, but I'm running IOS-XE 3.18.4SP and I believe this isn't the case anymore.
In my opinion the ping works when sourced from the BDI because of the MTU used is the one applied on the physical interface and not the one on the BDI, since it hasn't changed despite the configuration:
ASR920#sh run int gi 0/0/11 Building configuration...
Current configuration : 342 bytes ! interface GigabitEthernet0/0/11 mtu 1600 <----------------------MTU 1600 service instance 200 ethernet encapsulation dot1q 200 rewrite ingress tag pop 1 symmetric bridge-domain 200
ASR920#sh int gi 0/0/11 GigabitEthernet0/0/11 is up, line protocol is up MTU 1600 bytes, BW 1000000 Kbit/sec, DLY 10 usec <----------------------MTU 1600
ASR920#sh run int bdi 200 Building configuration...
interface BDI200 ip address 18.104.22.168 255.255.255.252 ip mtu 1600 <----------------------MTU 1600
ASR920#show inter bdi 200 BDI200 is up, line protocol is up Internet address is 22.214.171.124/30 MTU 1500 bytes, <----------------------!!! MTU 1500 !!!
Am I right and there is some limitation on that? If so, is there another IOS version which corrects this behaviour? Maybe any command I'm missing? We're thinking about upgrading to 16.9.4 and this could be another reason to do it. Thanks!
thanks for your clarification I was afraid the command was not supported but I decided to make a note about it.
the mtu command applies to all protocols that can run over an interface like IPv4 or IPv6.
What creates more confusion is that MTU can be a L3 concept = max size of IPv4 packet or it can be an OSI L2 concept = max size of the frame (ethernet in case of LAN interfaces and their logical relatives like BDI).
For example in IOS XR the mtu is a L2 concept and the size of MTU on an ethernet interface is 1514 bytes (only the 4 bytes of final FCS checksum are skipped it accounts for the 6 bytes destination MAC address the 6 bytes source MAC address and two bytes of ethertype).
In IOS XR an 802.1Q subinterface has an MTU of 1518 bytes greater then the one of the physical interface.
At this point it would be interesting to check if any "switch like" command like system mtu in global config is supported and can have an effect on the MTU of the BDI interfaces.
Because there should be a way to increase this MTU.