Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

OpenFlow Conformance Test

The OF switch used to support the Fabric has to support a number of data-plane operations such as MPLS encapsulation and others described below.

In order to guarantee conformance of the switches , we decided to create a few use created few test cases using the OFTEST framework.

The OFTEST code can be found at https://github.com/floodlightcastroflavio/oftest.

In this document we will describe how you can setup your own testbed as well as describe the test cases implemented.

OFTEST Overview 

OFTEST The oftest framework consists of a testserver that connects test server connected to a target switch through an OpenFlow channel . The testserver also connects and directly to the dataplane ports of the OFswitch. After programming the switch the testserver , oftest inserts packets in the dataplane and verify verifies if the output is as expected.

...

Segment Routing Tests

 The following tests were are implemented:

Expand
  1. Packet In Src Mac Miss
  2. Packet In UDP
  3. Arp and L2
  4. Packet In Arp
  5. L2FloodQinQ
  6. L2Flood Tagged 
  7. L2Flood Unknown Src 
  8. L2 Unicast Tagged 
  9. MTU 1500 
  10. MTU 4100
  11. L3 Unicast Tagged 
  12. L3VPNMPLS 
  13. L3 VPN_32 
  14. MPLS Termination
  15. MPLSBUG
  16. L3 Mcast To L2
  17. L3 Mcast To L3

...

Baseline results from OFTEST

At this date the most stable version of ofdpa New releases of the ofdpa software come out reasonably fast, in order to be able to test multiple software versions we use different branches for each version.
The version used by the cord project is i12_1.7 .  The and it's the most stable one up to date. The following tests are currently successful.

 i12_1.7ga2.0

flows._24EcmpVpn

ok

ok

flows.PacketInUDPokok
flows._24ECMPL3okok
flows._32EcmpVpnokok
flows.L2UnicastTaggedokok
flows.L3McastToL3okok
flows._32UcastTaggedokok
flows.L3McastToL2okok
flows._MplsTerminationokok
flows.PacketInArpokok
flows._32ECMPL3okok
flows._32VPNokok
flows.Mtu1500okok
flows._24VPNokok
flows.L2FloodQinQokok
flows._24UcastTaggedokok
flows._MplsFwd ok

 

How to test a new switch

  • Install OFTEST
  • Run baseline test and create a new branch
  • Update the OFDPA software
  • Run/fix the test again until it's stable
  • Document changes and at Jirathe wikipage or JIRA