Bug #2305
closedEthernet face reports MTU to be 1500 bytes on 9000 bytes interface
100%
Description
Tested Ethernet face on a Jumbo frame enabled face. The MTU is 9000 bytes.
$ ifconfig
p2p2: flags=4163 mtu 9000
inet xx netmask 255.255.255.252 broadcast xx
inet6 xx prefixlen 64 scopeid 0x20
ether xx txqueuelen 10000 (Ethernet)
RX packets 3024380 bytes 2175073663 (2.0 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6210823 bytes 7606515260 (7.0 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
NFD always reports MTU = 1500 bytes
1418755213.108174 WARNING: [EthernetFace] ifr_mtu = 9000
1418755213.108205 DEBUG: [EthernetFace] [id:-1,endpoint:p2p2] Interface MTU is: 1500
This happens since in /ndn-cxx/src/util/ethernet.hpp, MAX DATA LENGTH is 1500 bytes.
47: const size_t MAX_DATA_LEN = 1500;
and on NFD/daemon/face/ethernet-face.cpp,
447: mtu = std::min(mtu, static_cast(ifr.ifr_mtu));