3 Replies Latest reply on Aug 23, 2015 7:54 PM by Sandy_Intel

    Creating software bridge with SR-IOV PF NIC

    Meganathan

      Hi,

       

      Test 1:

      We are trying to create a software bridge as mentioned below on SR-IOV enabled 40 gig PF NIC. Then We tried to create VM on the two vnet interface. The issue is whenever VM is sending some broadcast packet, it receiving it back by itself.

       

      [root@hyp-1 ~]# brctl show brosf

      bridge name bridge id STP enabled interfaces

      brosf 8000.6805ca2d50c0 no ens3f0

                                                  vnet4

                                                  vnet7

      # brctl showmacs brosf

      port no mac addr is local? ageing timer

        1 68:05:ca:2d:50:c0 yes   0.00

        1 fa:ac:a4:00:f8:03 no   0.10

        1 fa:ac:a4:00:f9:03 no   0.09

        1 fa:ac:a4:01:f1:03 no   0.04

        1 fa:ac:a4:02:73:03 no   0.03

        2 fe:ac:a4:00:f8:03 yes   0.00

        3 fe:ac:a4:00:f9:03 yes   0.00

       

      where

      Port 1 is ens3f0 (PF)

      port 2 is vnet4

      port 3 is vnet7

       

      # ip link show ens3f0

      7: ens3f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq master brosf state UP mode DEFAULT qlen 1000

          link/ether 68:05:ca:2d:50:c0 brd ff:ff:ff:ff:ff:ff

          vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto

          vf 1 MAC 00:00:00:00:00:00, spoof checking on, link-state auto

       

      Test 2:

      We tried same thing by disabling the num of vf on the same 40 gig NIC. It is working fine. The details are as below:

      [root@hyp-3 0000:04:00.0]# brctl show brosf

      bridge name bridge id STP enabled interfaces

      brosf 8000.6805ca2e7f00 no ens3

        vnet2

        vnet5

       

      [root@hyp-3 0000:04:00.0]# brctl showmacs brosf

      port no mac addr is local? ageing timer

        1 68:05:ca:2e:7f:00 yes   0.00

        1 fa:ac:a4:00:f8:03 no   0.11

        1 fa:ac:a4:00:f9:03 no   0.00

        2 fa:ac:a4:01:f1:03 no   0.07

        3 fa:ac:a4:02:73:03 no   0.04

        2 fe:ac:a4:01:f1:03 yes   0.00

        3 fe:ac:a4:02:73:03 yes   0.00

       

      [root@hyp-3 0000:04:00.0]# ip link show  ens3

      31: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master brosf state UP mode DEFAULT qlen 1000

          link/ether 68:05:ca:2e:7f:00 brd ff:ff:ff:ff:ff:ff

       

       

      Details:

      Host Os

      Centos 7

       

      PF:

      04:00.0 Ethernet controller: Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+ (rev 01)

       

      # modinfo i40e

      filename:       /lib/modules/3.10.0-123.9.3.el7.x86_64/kernel/drivers/net/ethernet/intel/i40e/i40e.ko

      version:        1.0.15

      license:        GPL

      description:    Intel(R) Ethernet Connection XL710 Network Driver

      vermagic:       3.10.0-123.9.3.el7.x86_64 SMP mod_unload modversions

       

      Observation

      In both scenario, there is difference in population mac address.

       

      Query

      I gone through some article, they mentioned if SR IOV is enabled, Physical Function (PF) does not work in bridge mode. May i know the reason for this?

      May i know the reason, why with vf is enabled, the broadcast packets are received by VM itself.