= OpenFlow 1.3 on InstaGENI Hardware Switch = Several InstaGENI racks have hardware switches that support !OpenFlow 1.3. See the [wiki:GeniAggregate GENI Aggregates] to determine which version of !OpenFlow each GENI site supports in the `"OF Supported"` column. == Run the OpenFlow 1.3 Controller == 1. To request an !OpenFlow 1.3 controller host with supported OF controllers installed and ready to run you can use the request RSPec: - https://raw.githubusercontent.com/GENI-NSF/geni-tutorials/master/OpenFlowCtrls/Controllers_all.xml - or the GENI Portal RSpec as `"XEN OpenFlow Controllers"`. 2. Once the controller node is up, login to the controller and download a Ryu module developed specifically for the InstaGENI OF 1.3 hardware switches. This Ryu module uses the required use of Rule Table ID 100 for HP switches: {{{ wget https://raw.githubusercontent.com/GENI-NSF/geni-support/master/Utilities/simple_switch_13_ig.py cp simple_switch_13_ig.py /tmp/ryu/app/simple_switch_13_ig.py cd /tmp/ryu ./bin/ryu-manager ryu/app/simple_switch_13_ig.py }}} You are now running an !OpenFlow 1.3 simple switch controller! 3. While logged in determine the IP address of the controller hosts to use in the next section. == Run the Experiment == 4. Selected OF 1.3 aggregate sites from the [wiki:GeniAggregate GENI Aggregates] page, define a topology that has nodes at different GENI sites using stitched links. The key is the link, which must be associated with the controller. Following is an example for !OpenFlow over a stitched link between GPO IG and VT IG: {{{ }}} ''where: XX.XX.XX.XX is your controller IP address.'' If you are using the Portal select the stitched link between the 2 sites and in the left-hand panel: a. Choose `Stitched` in the `"Link Type"` pull-down. b. Click on the `Openflow` option, which will enable a blank field where you can enter ''tcp:XX.XX.XX.XX:6633'', where: ''XX.XX.XX.XX'' is your controller IP address. 5. Reserve the resources and you are now ready to run your !OpenFlow experiment.