From Fedora Project Wiki

Description

This test is intended to test test the function of jumbo frame support


How to test

  1. determine the nicmodel of the guest: nicmodel
  2. determine the max frame length supported by the nicmodel: max_frame_length (mtu)
  3. determine the max icmp packet length support by the nic_model: _max_icmp_packet_size = max_frame_length
  4. packet_size = [ 0, 1, 48, 64, 512, 1440, 1500, 1505, 4096, 4192, 32767, 65507 ]
  5. start the virtual machine with interface name of IFNAME
  6. determine the bridge whcih IFNAME is connected: bridge
    qemu-kvm -net nic,model=nicmodel,macaddr={macaddr},ifname=IFNAME -net tap ...
  7. change the MTU of the tap device in the host
    ifconfig IFNAME mtu 65521
  8. change the MTU of the ethernet device in the guest
    ifconfig eth0 mtu _max_frame_length_
  9. if needed, add a dedicated route entry in the host [Resolution]
    route add guest_ip IFNAME
  10. if needed, add an static entry for guest nic
    arp -s guest_ip guest_mac
  11. ping the guest in the host with path mtu discovery
    ping -M do guest_ip -s max_icmp_packet_size -c 10
  12. check the packet loss ratio, if the ratio is not zero, fail the whole cases.
  13. execute the following script in the guest
    while true; do ifconfig eth0 mtu 1500; ifconfig eth0 mtu max_fram_length done
  14. and in the same time flood ping the guest in the host for five minutes:
    ping -f -s max_icmp_packet_size
  15. ping the guest in the host and see if the packet loss ratio is zero, if not, fail the whole case
    ping -c 2 guest_ip 
  16. restore the mtu
    ifconfig eth0 mtu 1500

Expected Results

  1. Test results meet the requirements above