Changes between Version 21 and Version 22 of Documentation/fSDN/OpenFlow


Ignore:
Timestamp:
Nov 19, 2013, 7:10:17 PM (8 years ago)
Author:
nkiran
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/fSDN/OpenFlow

    v21 v22  
    2727
    2828
    29 Preparing the switch for !OpenFlow mode includes: assigning h/w resources for !OpenFlow flows, enabling !OpenFlow mode and enabling specific versions (e.g., 1.1, 1.2 or 1.3), setting required ports as crossflow, and finally adding the 'match' and 'action' details for each flow. As a more standard alternative to the last step of introducing flow rules through the CLI, detailed for a remote !OpenFlow controller can be configured that will then receive headers/packets that are not handled locally on the designated crossflow ports. An example of each step is shown in the following excerpt from a CLI session:
     29Preparing the switch for !OpenFlow mode includes: assigning h/w resources for !OpenFlow flows, enabling !OpenFlow mode and enabling specific versions (e.g., 1.1, 1.2 or 1.3), setting ports as crossflow, and lastly adding the 'match' and 'action' rules for expected flow. As an alternative to locally introduced flow rules using the CLI, a remote !OpenFlow controller can be configured which will then receive OpenFlow notifications (PacketIns) for flows not handled locally. The following CLI session excerpt details the commands required to accomplish the above steps:
    3030
    3131{{{
    3232
    33 -- set tcam/routing table resources
     33-- 0. Load a 'clean' configuration to nullify changes made by previous experimenters --
     34
     35-- 1. In configure mode, set tcam/routing table resources
    3436
    3537XorPlus# set interface max-acl-rule-limit ingress 400
     
    3840[edit]
    3941
    40 -- (globally) enable OpenFlow, and set the working mode, i.e., either L2/L3 or TCAM modes
     42-- 2. Commit configuration and restart switch for resource allocation to take hold --
     43XorPlus# save running-to-startup
     44Save done.
     45[edit]
     46XorPlus# exit
     47XorPlus> request system reboot
     48
     49-- 3. In config mode, enable OpenFlow operation and set the working mode to L2/L3 or TCAM mode --
    4150
    4251XorPlus# set open-flow
     
    4554[edit]
    4655
    47 -- enable specific OF version, e.g., v 1.3
     56-- 4. Enable specific OF version, e.g., v 1.3
    4857
    4958XorPlus# set open-flow allowed-versions openflow-v1.3 disable false
    5059[edit]
    5160
    52 -- set required ports in crossflow mode, with or without local control
     61-- 5. Set required ports in crossflow mode, with or without local control
    5362
    5463XorPlus# set interface gigabit-ethernet ge-1/1/1 crossflow enable true
     
    5968[edit]
    6069
    61 -- add flow rules directly from CLI
     70-- 6. Add flow rules directly from CLI for ports with local control enabled
    6271
    6372XorPlus# set open-flow flow f1 match-field ethernet-destination-address 22:22:22:22:22:22
     
    7180XorPlus# set open-flow flow f1 action output interface ge-1/1/1
    7281
    73 -- configure controller IP/port/transport for non-local control
     82-- 7. Configure controller IP/port/transport for non-local control
    7483
    7584XorPlus# set open-flow controller contr-serv address 10.19.0.11
     
    8089[edit]
    8190XorPlus# commit
     91Waiting for merging configuration.
     92Commit OK.
     93Save done.
     94[edit]
     95XorPlus# exit
     96XorPlus>
    8297
    8398}}}
     
    91106
    92107=== Switching Modes using Web Service ===
    93 
     108Note:
     109The web service is being upgraded to conform to the latest ORBIT Management Framework software, hence the switch will remain in the L2/L3 mode at all times. This means the OVS and NFS modes are presently unavailable.
    94110
    95111=== Access to Switch CLI ===
    96112
    97 Access to the switch CLI while the switch is in the L2/L3 mode or the OVS mode is enabled through ssh using the following account credentials:
     113You can access switch CLI through a ssh session, if the switch is in either of L2/L3 or OVS modes:
    98114
    99115{{{
    100 ssh host/IP: sw-sb-09.orbit-lab.org/10.19.0.253
     116ssh hostname/IP: sw-sb-09.orbit-lab.org/10.19.0.253
    101117username: sb9user
    102118passwd: sb9passwd
    103119}}}
    104120
    105 Note that the ssh works from within sb9 only, and would therefore require the experimenter to have reserved a SB9 time slot.
     121Note: ssh access is restricted to from within the sb9 sandbox (incl. the sb9 console) and would therefore require the experimenter to have reserved SB9 to access the switch CLI.
    106122
    107 While in L2/L3 mode, the XorPlus CLI under the above account grants complete control to configure the switch and also to load/store configuration files on the root file system. However, it is requested that experimenters who want to preserve their configs to copy out their configurations files using tftp, etc., to external locations and load them when required again. Below are the relevant CLI steps with further details in the attached configuration guide. Please exercise prudence and caution when saving or moving configuration files in/out of the root file system.
     123=== Loading and Saving Switch Configurations ===
     124
     125While in L2/L3 mode, the XorPlus CLI under the above account grants complete control to configure the switch and also to load/store configuration files on the root file system. However, it is suggested that experimenters preserve their configs by copying out their configurations (using tftp, etc.) to external locations, and to load them back when required. Below are the relevant CLI commands with further details in the attached PicOS configuration guide from Pica8. Please exercise prudence and caution when saving or moving configuration files in/out of the root file system.
    108126
    109127{{{
    110128-- retrieve config file from external location; scp can be used in place of tftp
    111129
    112 XorPlus> file tftp get remote-file basic.conf local-file /pica/config/sb9user/ychen.conf <server IP>
     130XorPlus> file tftp get remote-file basic.conf local-file /pica/config/sb9user/iamxyz-mm-dd-yyyy.conf <server IP>
    113131XorPlus> configure
    114132
    115 -- load previously stored config file
     133-- load locally stored config file
    116134
    117 XorPlus# load ychen.conf
     135XorPlus# load iamxyz-mm-dd-yyyy.conf
     136
    118137-- make any number of changes and commit
    119138
     
    122141-- save current configuration changes to specific file
    123142
    124 XorPlus# save ychen-latest.conf
     143XorPlus# save iamxyz-latest.conf
    125144Save done.
    126145[edit]
     
    129148
    130149XorPlus# exit
    131 XorPlus> file tftp put local-file /pica/config/sb9user/ychen-latest.conf remote-file updated.conf <server IP>
     150XorPlus> file tftp put local-file /pica/config/sb9user/iamxyz-latest.conf remote-file updated.conf <server IP>
     151
    132152}}}
    133 
    134153
    135154
     
    137156
    138157 * [http://www.openflow.org/ OpenFlow]
    139  * [http://www.pica8.org/products/p3290.php Pronto 3290 (now simply P-3290)]
     158 * [http://www.pica8.org Pica8's Pronto 3290 (now simply P-3290)] | [http://pica8.com/support/resources.php Documentation on Installation/Configuration]
    140159 * [http://www.netfpga.org NetFPGA 1G and 10G cards]
    141160