164 | | = !OpenFlowv3 vs v2 and v1 = |
165 | | Although OpenFlow rspecs version 3 are completely different in structure from previous Openflow rspecs, the all basically describe the same information, so it should be straight forward, though manual, to translate from one rspec format to the other. |
| 164 | = !OpenFlowv3 vs v2 and v1 (FOAM vs Expedient)= |
| 165 | Although OpenFlow rspecs version 3 (supported by FOAM) are completely different in structure from previous Openflow rspecs (supported by Expedient), all of them basically describe the same information, so it should be straight forward, though manual, to translate from one rspec format to the other. |
| 166 | Before starting with the conversion get familiar with the Openflow v3 rspecs by looking at [wiki:http://groups.geni.net/geni/wiki/HowTo/WriteOFv3Rspecs/Examples examples]. |
| 167 | |
| 168 | If you are starting with an Expedient (v1 or v2) rspec basic guidlines are |
| 169 | * replace <recv_rspec> tag with the <rspec> tag, look at the [[https://openflow.stanford.edu/display/FOAM/rspec example rspec] for how this looks like. |
| 170 | * the <user>, <project>, <slice> tags do not exist anymore but some of the information there is used in the <openflow:sliver> and <openflow:controller> tags. In detail : |
| 171 | * <user email> => <openflow:sliver email> |
| 172 | * <project description> => <openflow:sliver description> |
| 173 | * <slice contorller_url> => <openflow:controller url> |
| 174 | * In <openflow:sliver> tag set the type attribute as primary |
| 175 | {{{ |
| 176 | #!xml |
| 177 | OPENFLOW v1-2 |
| 178 | <user affiliation="BBN" email="jane@example.net" firstname="Jane" lastname="Doe" password="itsme"/> |
| 179 | |
| 180 | <project name="jane@geni" description="Jane's project at GENI"/> |
| 181 | |
| 182 | <slice controller_url="tcp:naxos.example.net:33110" name="naxos-33110" description="Jane's controller."/> |
| 183 | |
| 184 | OPENFLOW v3 |
| 185 | <openflow:sliver email="jane@example.net" description="Jane's project at GENI" /> |
| 186 | <openflow:controller url="tcp:naxos.example.net:33110" type="primary" /> |
| 187 | }}} |
| 188 | |
| 189 | * The <flowspace> tag is now called <openflow:match> |
| 190 | * Both <port> and <switch> tags map to the <openflow:datapath> tag. |
| 191 | * a switch tag corresponds to a |