Changes between Version 6 and Version 7 of Omni


Ignore:
Timestamp:
09/10/10 13:31:12 (14 years ago)
Author:
Josh Karlin
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Omni

    v6 v7  
    189189== Omnispecs ==
    190190
     191=== OpenFlow ===
     192
     193A native OpenFlow advertisement RSpec looks like this:
     194{{{
     195<rspec>
     196    <network name="Stanford" location="Stanford, CA, USA">
     197        <switches>
     198            <switch urn="urn:publicid:IDN+openflow:stanford+switch:0" />
     199            <switch urn="urn:publicid:IDN+openflow:stanford+switch:1" />
     200            <switch urn="urn:publicid:IDN+openflow:stanford+switch:2" />
     201        </switches>
     202        <links>
     203            <link
     204            src_urn="urn:publicid:IDN+openflow:stanford+switch:0+port:0"
     205            dst_urn="urn:publicid:IDN+openflow:stanford+switch:1+port:0"
     206            />
     207            <link
     208            src_urn="urn:publicid:IDN+openflow:stanford+switch:1+port:0"
     209            dst_urn="urn:publicid:IDN+openflow:stanford+switch:0+port:0"
     210            />
     211            <link
     212            src_urn="urn:publicid:IDN+openflow:stanford+switch:0+port:1"
     213            dst_urn="urn:publicid:IDN+openflow:stanford+switch:2+port:0"
     214            />
     215            <link
     216            src_urn="urn:publicid:IDN+openflow:stanford+switch:2+port:0"
     217            dst_urn="urn:publicid:IDN+openflow:stanford+switch:0+port:1"
     218            />
     219            <link
     220            src_urn="urn:publicid:IDN+openflow:stanford+switch:1+port:1"
     221            dst_urn="urn:publicid:IDN+openflow:stanford+switch:2+port:1"
     222            />
     223            <link
     224            src_urn="urn:publicid:IDN+openflow:stanford+switch:2+port:1"
     225            dst_urn="urn:publicid:IDN+openflow:stanford+switch:1+port:1"
     226            />
     227            </links>
     228            </network>
     229            <network name="Princeton" location="USA">
     230            <switches>
     231            <switch urn="urn:publicid:IDN+openflow:stanford+switch:3" />
     232            <switch urn="urn:publicid:IDN+openflow:stanford+switch:4" />
     233            </switches>
     234            <links>
     235            <link
     236            src_urn="urn:publicid:IDN+openflow:stanford+switch:3+port:0"
     237            dst_urn="urn:publicid:IDN+openflow:stanford+switch:4+port:0"
     238            />
     239            <link
     240            src_urn="urn:publicid:IDN+openflow:stanford+switch:4+port:0"
     241            dst_urn="urn:publicid:IDN+openflow:stanford+switch:3+port:0"
     242            />
     243        </links>
     244    </network>
     245</rspec>
     246}}}
     247
     248This gets converted by Omni (when you call listresources) into an rspec that looks like this:
     249
     250{{{
     251{
     252    "urn": "urn:publicid:IDN+openflow:stanford+authority+am",
     253    "type": "rspec_of",
     254    "resources": {
     255        "urn:publicid:IDN+openflow:stanford+switch:2": {
     256            "name": "Stanford:openflow:stanford",
     257            "misc": {},
     258            "allocate": false,
     259            "allocated": false,
     260            "type": "switch",
     261            "options": {
     262                "dl_type": "from=*, to=*",
     263                "port:1": "switch:1 port:1",
     264                "port:0": "switch:0 port:1",
     265                "nw_dst": "from=*, to=*",
     266                "dl_src": "from=*, to=*",
     267                "nw_proto": "from=*, to=*",
     268                "tp_dst": "from=*, to=*",
     269                "tp_src": "from=*, to=*",
     270                "dl_dst": "from=*, to=*",
     271                "nw_src": "from=*, to=*",
     272                "vlan_id": "from=*, to=*"
     273            },
     274            "description": "OpenFlow Switch"
     275        },
     276        "urn:publicid:IDN+openflow:stanford+switch:3": {
     277            "name": "Princeton:openflow:stanford",
     278            "misc": {},
     279            "allocate": false,
     280            "allocated": false,
     281            "type": "switch",
     282            "options": {
     283                "dl_type": "from=*, to=*",
     284                "port:0": "switch:4 port:0",
     285                "nw_dst": "from=*, to=*",
     286                "dl_src": "from=*, to=*",
     287                "nw_proto": "from=*, to=*",
     288                "tp_dst": "from=*, to=*",
     289                "tp_src": "from=*, to=*",
     290                "dl_dst": "from=*, to=*",
     291                "nw_src": "from=*, to=*",
     292                "vlan_id": "from=*, to=*"
     293            },
     294            "description": "OpenFlow Switch"
     295        },
     296        "urn:publicid:IDN+openflow:stanford+switch:0": {
     297            "name": "Stanford:openflow:stanford",
     298            "misc": {},
     299            "allocate": false,
     300            "allocated": false,
     301            "type": "switch",
     302            "options": {
     303                "dl_type": "from=*, to=*",
     304                "port:1": "switch:2 port:0",
     305                "port:0": "switch:1 port:0",
     306                "nw_dst": "from=*, to=*",
     307                "dl_src": "from=*, to=*",
     308                "nw_proto": "from=*, to=*",
     309                "tp_dst": "from=*, to=*",
     310                "tp_src": "from=*, to=*",
     311                "dl_dst": "from=*, to=*",
     312                "nw_src": "from=*, to=*",
     313                "vlan_id": "from=*, to=*"
     314            },
     315            "description": "OpenFlow Switch"
     316        },
     317        "urn:publicid:IDN+openflow:stanford+switch:1": {
     318            "name": "Stanford:openflow:stanford",
     319            "misc": {},
     320            "allocate": false,
     321            "allocated": false,
     322            "type": "switch",
     323            "options": {
     324                "dl_type": "from=*, to=*",
     325                "port:1": "switch:2 port:1",
     326                "port:0": "switch:0 port:0",
     327                "nw_dst": "from=*, to=*",
     328                "dl_src": "from=*, to=*",
     329                "nw_proto": "from=*, to=*",
     330                "tp_dst": "from=*, to=*",
     331                "tp_src": "from=*, to=*",
     332                "dl_dst": "from=*, to=*",
     333                "nw_src": "from=*, to=*",
     334                "vlan_id": "from=*, to=*"
     335            },
     336            "description": "OpenFlow Switch"
     337        },
     338        "urn:publicid:IDN+openflow:stanford+user+sliceinfo": {
     339            "name": "sliceinfo",
     340            "misc": {},
     341            "allocate": false,
     342            "allocated": false,
     343            "type": "user",
     344            "options": {
     345                "project_description": "Internet performance research to ...",
     346                "controller_url": "tcp:localhost:6633",
     347                "slice_name": "Crazy Load Balancing Experiment",
     348                "firstname": "John",
     349                "lastname": "Doe",
     350                "project_name": "Stanford Networking Group",
     351                "fv_password": "slice_pass",
     352                "slice_description": "Does crazy load balancing and plate spinning",
     353                "email": "jdoe@geni.net"
     354            },
     355            "description": "Slice information for FlowVisor Access"
     356        },
     357        "urn:publicid:IDN+openflow:stanford+switch:4": {
     358            "name": "Princeton:openflow:stanford",
     359            "misc": {},
     360            "allocate": false,
     361            "allocated": false,
     362            "type": "switch",
     363            "options": {
     364                "dl_type": "from=*, to=*",
     365                "port:0": "switch:3 port:0",
     366                "nw_dst": "from=*, to=*",
     367                "dl_src": "from=*, to=*",
     368                "nw_proto": "from=*, to=*",
     369                "tp_dst": "from=*, to=*",
     370                "tp_src": "from=*, to=*",
     371                "dl_dst": "from=*, to=*",
     372                "nw_src": "from=*, to=*",
     373                "vlan_id": "from=*, to=*"
     374            },
     375            "description": "OpenFlow Switch"
     376        }
     377    }
     378}
     379
     380
     381}}}
     382
     383