Update README
- Correct OFDPA version <-> branch mapping
- Provide more information about how to connect switch to test controller
Change-Id: I42ce45eb6c1b8f2a4751aaa3225ffd09f575a215
diff --git a/README.md b/README.md
index 69703df..ecf9656 100755
--- a/README.md
+++ b/README.md
@@ -10,87 +10,107 @@
At this moment the switches supported are Accton switches. For more information abot that check the wiki page at wiki.opencord.org
-This code base was forked from github.com/macauleycheng/oftest/ which was forked from github.com/floodlight/oftest.
-
-This documentationn aims to describe the specific test cases developed for OpenCord. To get started on the basics of OFTest please check their documentation.
+This code base was forked from [macauleycheng](github.com/macauleycheng/oftest) which was forked from [floodlight](github.com/floodlight/oftest). This documentationn aims to describe the specific test cases developed for OpenCord. To get started on the basics of OFTest please check their documentation.
---
-# How It is Organized
+## How it is organized
This codebase is organized by branches. Each OFDPA release correspond to a different branch. At this moment the following releases are available:
- * i12_17 (master)
- * i19
- * i12
- * ga2.0
- * EA3
-The OFDPA release i12_17 is the current stable version utilized by the cord project and is the master branch.
+OFDPA version | Branch | Status
+------------- | ------------ | ------
+i19 | i19 | Archived
+i12 | i12 | Archived
+**i12_1.7** | **cord-1.0** | **Released <- current branch**
+2.0 GA | 2.0-ga | Archived
+3.0 EA0 | master | Developing
The test case collection for OpenCord are under the folder ofdpa. They are listed under the section Test case collection.
-# Installing OFTest
+## Installing Prerequisites
-You can check out OFTest with git with the following commands:
+Following packages need to be installed before running OFTest:
- sudo apt-get install python python-pip python-dev python-lxml -y
- sudo pip install ncclient
- sudo pip install scapy pycripto
- sudo apt-get install python-ecdsa git
- git clone git://github.com/opencord/fabric-oftest
+```
+sudo apt-get install python python-pip python-dev python-lxml -y
+sudo pip install ncclient
+sudo pip install scapy pycripto
+sudo apt-get install python-ecdsa git
+```
+
+## Start Testing
+
+On the switch side:
+
+1. Purge the switch flow/group table by running
+
+ ```
+ client_cfg_purge
+ ```
+
+2. Connect the switch to the testing controller
+
+ ```
+ brcm-indigo-ofdpa-ofagent -t <controller_ip>
+ ```
+
+On the controller side:
+
+1. Clone the source code and switch to the correct branch
+
+ ```
+ git clone -b cord-1.0 git://github.com/opencord/fabric-oftest
+ ```
+
+2. Run **all test cases** in OFTest
+
+ ```
+ sudo ./oft -V1.3 --test-dir=ofdpa flows -i 24@eth1 -i 12@eth2
+ ```
+ This command assumes you connected the switch port 24 to interface eth1 on the OFtest server and port 12 to eth2
+
+## Useful commands
+
+* List all available test cases
+
+ ```
+ ./oft --list --test-dir=ofdpa flows
+ ```
+
+* Run only specific test case
+
+ ```
+ sudo ./oft -V1.3 --test-dir=ofdpa flows.PacketInArp -i 24@eth1 -i 12@eth2
+ ```
---
-In order to test version ga2.0 of the OFDPA software follow the following
-
-# Quick Start
-
-Make sure your switch is running and trying to connect to a controller on the machine where you're running oft (normally port `6653`).
-
- cd fabric-oftest
- ./oft --list --test-dir=ofdpa flows
- sudo ./oft -V1.3 --test-dir=ofdpa flows.PacketInArp -i 1@veth1 -i 2@veth3
-
-This command assumes you connected the switch port 1 to interface veth1 in the OFtest server and port 2 to veth3
-
----
-
-# Testing a different release
-
-To test the ga2.0 release do:
-
- cd fabric-oftest
- git checkout ga2.0
- sudo ./oft -V1.3 --test-dir=ofdpa flows -i 12@eth1 -i 24@eth2
-
-Don't forget to make sure your switch is attempting to establish a OpenFlow connection to the OFTest server.
----
-
-## Test Results
+# Test Result Summary
The following tests are implemented and these are their results.
-Test Results | i12_1.7 | ga2.0 | EA3
-------- | ------- | --- | ----- | ---
-/0Ucast | false | ? | ok
-/24UnicastTagged | ok | ok | ok
-/32UnicastTagged | ok | ok | ok
-/24ECMPL3 | ok | ok | ok
-/32ECMPL3 | ok | ok | ok
-/24ECMPVPN | ok | ok | ok
-/32ECMPVPN | ok | ok | ok
-/32VPN | ok | ok | ok
-/24VPN | ok | ok | ok
-EcmpGroupMod | ? | ? | ok
-PacketInArp | ok | ok | ok
-MTU1500 | ? | ? | ok
-MplsTermination | ok | ok | ok
-MplsFwd | ? | ok | ok
-L2FloodQinQ | | | ok
-L2UnicastTagged | ok | ok | ok
-L3McastToL3 | ok | ? | ?
-L3McastToL2 | ok | ? | ?
-FloodGroupMod | ? | ? | ok
-PacketInUDP | ok | ok | ok
-Unfiltered | ? | ok | ?
+Test Results | i12_1.7 | 2.0 GA | 3.0 EA0
+------- | ------- | ------ | -------
+/0Ucast | X | ok | ok
+/24UnicastTagged | ok | ok | ok
+/32UnicastTagged | ok | ok | ok
+/24ECMPL3 | ok | ok | ok
+/32ECMPL3 | ok | ok | ok
+/24ECMPVPN | ok | ok | ok
+/32ECMPVPN | ok | ok | ok
+/32VPN | ok | ok | ok
+/24VPN | ok | ok | ok
+EcmpGroupMod | X | X | ok
+PacketInArp | ok | ok | ok
+MTU1500 | ok | ok | ok
+MplsTermination | ok | ok | ok
+MplsFwd | X | ok | ok
+L2FloodQinQ | ok | ok | ok
+L2UnicastTagged | ok | ok | ok
+L3McastToL3 | ok | X | X
+L3McastToL2 | ok | X | X
+FloodGroupMod | X | X | ok
+PacketInUDP | ok | ok | ok
+Unfiltered | X | ok | X