The Test case has the Following steps
• Step1 : Create a VLAN 1000 and Add Port(s) Ethernet1- Ethernet24 as Untagged VLAN Members. The L3 VLAN Interface is created with the L3 VLAN IP as 192.162.0.1/24
• Step2 : PTF (Traffic Generator) sends 10 packet to the VLAN member ports with the Incrementing SA to Check FDB Learning. (Expectation: All 24 Ports has 10 FDB learned Entries)
o DA = L3 VLAN Interface MAC
o SA = Incrementing MAC with Count 10.
o EtherType = 0x1234
• Step3 : PTF (Traffic Generator) sends the following packet to one of the VLAN member ports as Follows to check the FDB Switching based on learned entries.
o DA = L3 VLAN Interface MAC
o SA = PTF Interface MAC Address
o EtherType = 0x1234
• Step4: PTF (Traffic Generator) sends the following packet to DUT to check the FDB Switching based on learned entries.
o DA = PTF Interface MAC Address which is learned by DUT
o SA = PTF Interface MAC Address (This is Wrongly Populated by test script)
o EtherType = 0x1234
• Step5: Testcase checks whether all the MAC address are learned Properly and provides the result
Where the test Case Fails ?
The Test case fails in the Step 4.
PTF try to generate the packet with the DA = PTF Interface MAC Address which is learned by DUT (learning is done in Steps3) and SA = PTF Interface MAC Address.
The test case expects the packet is switched back to the PTF since the DA of the PTF interface is already in DUT, but the packet is not switched back due to DA MAC = SA MAC issue, causing the test case to Fail.
Deep Analysis of the Issue
In Step 4, the PTF expects the packet as shown Below.
"========== EXPECTED ==========",
"dst : DestMACField = 'ac:1f:6b:7e:2d:bb' (None)",
"src : SourceMACField = 'ac:1f:6b:7e:2d:bb' (None)",
"type : XShortEnumField = 4660 (0)",
"--",
"load : StrField = '0000000000000000000000000000000000000000000000' ('')",
"--",
"0000 AC 1F 6B 7E 2D BB AC 1F 6B 7E 2D BB 12 34 30 30 ..k~-...k~-..400",
"0010 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000",
"0020 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000",
"0030 30 30 30 30 30 30 30 30 30 30 30 30 000000000000",
"========== RECEIVED ==========",
If we closely examine the packet we see the packet is having a DA MAC = SA MAC which is wrong. This Mac entries are read by the test script from ARP table of the PTF server and filled in DA and SA fields. The test script expectation is send a Packet from one interface say eth0 , the packet will be switched back to eth1 by DUT and received in eth1 interface of PTF, since the MAC address of the eth1 is already learned in the DUT (in Step3) Since DA and SA are filled wrongly with the same MAC in the packet, the packet is dropped since DA and SA are pointing to same Ports after SA learning of the malformed packet (Source Port Suppression)
The Test case has the Following steps
• Step1 : Create a VLAN 1000 and Add Port(s) Ethernet1- Ethernet24 as Untagged VLAN Members. The L3 VLAN Interface is created with the L3 VLAN IP as 192.162.0.1/24
• Step2 : PTF (Traffic Generator) sends 10 packet to the VLAN member ports with the Incrementing SA to Check FDB Learning. (Expectation: All 24 Ports has 10 FDB learned Entries)
o DA = L3 VLAN Interface MAC
o SA = Incrementing MAC with Count 10.
o EtherType = 0x1234
• Step3 : PTF (Traffic Generator) sends the following packet to one of the VLAN member ports as Follows to check the FDB Switching based on learned entries.
o DA = L3 VLAN Interface MAC
o SA = PTF Interface MAC Address
o EtherType = 0x1234
• Step4: PTF (Traffic Generator) sends the following packet to DUT to check the FDB Switching based on learned entries.
o DA = PTF Interface MAC Address which is learned by DUT
o SA = PTF Interface MAC Address (This is Wrongly Populated by test script)
o EtherType = 0x1234
• Step5: Testcase checks whether all the MAC address are learned Properly and provides the result
Where the test Case Fails ?
The Test case fails in the Step 4.
PTF try to generate the packet with the DA = PTF Interface MAC Address which is learned by DUT (learning is done in Steps3) and SA = PTF Interface MAC Address.
The test case expects the packet is switched back to the PTF since the DA of the PTF interface is already in DUT, but the packet is not switched back due to DA MAC = SA MAC issue, causing the test case to Fail.
Deep Analysis of the Issue
In Step 4, the PTF expects the packet as shown Below.
If we closely examine the packet we see the packet is having a DA MAC = SA MAC which is wrong. This Mac entries are read by the test script from ARP table of the PTF server and filled in DA and SA fields. The test script expectation is send a Packet from one interface say eth0 , the packet will be switched back to eth1 by DUT and received in eth1 interface of PTF, since the MAC address of the eth1 is already learned in the DUT (in Step3) Since DA and SA are filled wrongly with the same MAC in the packet, the packet is dropped since DA and SA are pointing to same Ports after SA learning of the malformed packet (Source Port Suppression)