|  | 105 | == Upgrading to 11.1.C.Ae == #Ae | 
          
            |  | 106 | This is the production version of the !OpenFlow capable firmware for the IP8800. Unlike the experimental version, once you upgrade you don't need the SD card. | 
          
            |  | 107 | === 1. Firmware upgrade === | 
          
            |  | 108 | The firmware should have an extension of '.gz'. The easiest way to upgrade is to copy the firmware onto an SD card with a bootable file (e.g. something with extension '.img'^2^) along with the proper license; The switch will boot using the image file stored on the card, and will keep the SD card mounted and accessible under /mnt. | 
          
            |  | 109 |  | 
          
            |  | 110 | Now run `ppupgrade` as admin, specifying the full path to the new firmware: | 
          
            |  | 111 | {{{ | 
          
            |  | 112 | ppupgrade /mnt/nec.gz | 
          
            |  | 113 | }}} | 
          
            |  | 114 | And let the switch do the work. The whole process should take a minute or two. The switch will reboot unless given the `no-reload` flag with `ppupgrade`. The bootloader will search for .img files to load to memory upon startup. If you want the switch to boot into the new firmware when it reboots after the upgrade, you can either: | 
          
            |  | 115 |  | 
          
            |  | 116 | 1. Issue `ppupdate` with the `no-reload` command. Run `reload stop` to halt the OS, and restart the switch after you (safely) remove the card ^1^. | 
          
            |  | 117 | 2. Rename k.img to something else so it is not recognized as a bootable image. | 
          
            |  | 118 |  | 
          
            |  | 119 | === 2. !OpenFlow configurations === | 
          
            |  | 120 | The !OpenFlow components of the new firmware have been integrated into the CLI. There are contexts for !OpenFlow (conveniently called `openflow`) under the `show` and `configure` contexts. | 
          
            |  | 121 |  | 
          
            |  | 122 | {{{ | 
          
            |  | 123 | sw-gp# show openflow ? | 
          
            |  | 124 | controller-session  Display the session of OpenFlow Controller | 
          
            |  | 125 | detail              Display the detailed OpenFlow information | 
          
            |  | 126 | openflow-id         Specifies OpenFlow ID | 
          
            |  | 127 | statistics          Display the OpenFlow statistics information | 
          
            |  | 128 | table               Display the flow table information | 
          
            |  | 129 | <cr> | 
          
            |  | 130 | }}} | 
          
            |  | 131 |  | 
          
            |  | 132 | {{{ | 
          
            |  | 133 | sw-gp(config)# openflow openflow-id [id] | 
          
            |  | 134 | real-switch     OpenFlow ID 1 specified for real-switch ( When real-switch is set, virtual-switch can't be set ) | 
          
            |  | 135 | virtual-switch  OpenFlow ID 1 to 16 specified for virtual-switch ( When virtual-switch is set, real-switch can't be set ) | 
          
            |  | 136 | <cr> | 
          
            |  | 137 | }}} | 
          
            |  | 138 |  | 
          
            |  | 139 | {{{ | 
          
            |  | 140 | sw-gp(config)# openflow openflow-id 1 virtual-switch | 
          
            |  | 141 | !sw-gp(config-of)# ? | 
          
            |  | 142 |  | 
          
            |  | 143 | connect               Specify the time to connect the OpenFlow Controller | 
          
            |  | 144 | controller            Specify the OpenFlow Controller | 
          
            |  | 145 | dpid                  Specify the data path ID | 
          
            |  | 146 | echo-reply            Specify the max time of receiving Echo-Reply frame from the OpenFlow Controller | 
          
            |  | 147 | echo-request          Specify the interval time of sending Echo-Request frame to the OpenFlow Controller | 
          
            |  | 148 | emergency-mode        Specify enable or disable of the emergency mode | 
          
            |  | 149 | enable                Enable OpenFlow | 
          
            |  | 150 | end                   Exit from configure mode | 
          
            |  | 151 | exit                  Return to previous mode | 
          
            |  | 152 | flow-statistics-mode  Specify the collection type of the flow statistics mode information | 
          
            |  | 153 | mac-learning          Specify enable or disable of MAC learning | 
          
            |  | 154 | maxflow               Specify the number of the upper limits of flow | 
          
            |  | 155 | mishit-action         Specify the process when the mishit-action occurred | 
          
            |  | 156 | no                    Delete configurations | 
          
            |  | 157 | openflow-vlan         Specify the VLAN which it belongs to Virtual Switch | 
          
            |  | 158 | outbound              Specify the band limit of the output rate of VLAN on interface | 
          
            |  | 159 | port-modify-access    Specify set permission of the access port change from Controller. (reason down of the port) | 
          
            |  | 160 | port-modify-trunk     Specify set permission of the trunk port change from Controller. (reason down of the port) | 
          
            |  | 161 | quit                  Return to previous mode | 
          
            |  | 162 | save                  Save configuration file | 
          
            |  | 163 | show                  View configurations | 
          
            |  | 164 | status                Show configure status | 
          
            |  | 165 | top                   Change to global configuration mode | 
          
            |  | 166 | wildcard-hwaccel      Specify the priority when wildcard entry is written in hardware | 
          
            |  | 167 | write                 Save configuration file | 
          
            |  | 168 | }}} | 
          
            |  | 169 |  | 
          
            |  | 170 | Not sure what this means. Yet. | 
          
            |  | 171 | {{{ | 
          
            |  | 172 | sw-gp(config)# openflow openflow-id 1 real-switch | 
          
            |  | 173 | openflow : Specified switch type is not revokable. | 
          
            |  | 174 | }}} | 
          
            |  | 175 |  | 
          
            |  | 176 |  |