|  | 196 | = Creating the Mininet-Optical Network = | 
          
            |  | 197 |  | 
          
            |  | 198 | All of these commands should be run in a terminal window for the VM or server where Mininet-Optical is installed. | 
          
            |  | 199 |  | 
          
            |  | 200 | We will run Mininet-Optical from the top directory of the source tree: | 
          
            |  | 201 |  | 
          
            |  | 202 | {{{ | 
          
            |  | 203 | cd ~/mininet-optical | 
          
            |  | 204 | }}} | 
          
            |  | 205 |  | 
          
            |  | 206 | We should check to make sure that the tutorial scripts are present: | 
          
            |  | 207 |  | 
          
            |  | 208 | {{{ | 
          
            |  | 209 | ls examples/cosmostutorial.py | 
          
            |  | 210 | ls examples/config-cosmostutorial.sh | 
          
            |  | 211 | }}} | 
          
            |  | 212 |  | 
          
            |  | 213 | If they are missing, we can fetch and install the appropriate branch: | 
          
            |  | 214 |  | 
          
            |  | 215 | {{{ | 
          
            |  | 216 | git fetch | 
          
            |  | 217 | git checkout cosmos-tutorial | 
          
            |  | 218 | make install | 
          
            |  | 219 | }}} | 
          
            |  | 220 |  | 
          
            |  | 221 | Since the NETCONF agents for the ROADMs use SSL, we first have to generate a set of | 
          
            |  | 222 | (self-signed) SSL certificates for them to use: | 
          
            |  | 223 |  | 
          
            |  | 224 | {{{ | 
          
            |  | 225 | make certs | 
          
            |  | 226 | }}} | 
          
            |  | 227 |  | 
          
            |  | 228 | Now we should be able to run the tutorial script to create the emulated network: | 
          
            |  | 229 |  | 
          
            |  | 230 | {{{ | 
          
            |  | 231 | sudo HOME=~ examples/cosmostutorial.py | 
          
            |  | 232 | }}} | 
          
            |  | 233 |  | 
          
            |  | 234 | This should start up Mininet-Optical, create the tutorial network, and start the CLI: | 
          
            |  | 235 |  | 
          
            |  | 236 | {{{ | 
          
            |  | 237 | COSM-IC mini-tutorial topology: | 
          
            |  | 238 |  | 
          
            |  | 239 | roadm4 <-> roadm1 <-> roadm2 <-22km-> roadm3 | 
          
            |  | 240 | |          |                          | | 
          
            |  | 241 | tor1       tor2                       tor3 | 
          
            |  | 242 | |          |                          | | 
          
            |  | 243 | server1    server2                    server3 | 
          
            |  | 244 |  | 
          
            |  | 245 | This is for the COSMOS mini-tutorial at: | 
          
            |  | 246 | https://wiki.cosmos-lab.org/wiki/Tutorials/Optical/MininetOpticalTutorial1 | 
          
            |  | 247 |  | 
          
            |  | 248 | *** Starting CLI: | 
          
            |  | 249 | mininet-optical> | 
          
            |  | 250 | }}} | 
          
            |  | 251 |  | 
          
            |  | 252 | Mininet-Optical CLI commands may be entered at the mininet-optical> prompt. | 
          
            |  | 253 |  | 
          
            |  | 254 | If you don't have one open already, open up another terminal window and | 
          
            |  | 255 | connect to the Linux VM or server where Mininet-Optical is installed. | 
          
            |  | 256 | You may wish to enter the source directory in this window as well: | 
          
            |  | 257 |  | 
          
            |  | 258 | {{{ | 
          
            |  | 259 | cd ~/mininet-optical | 
          
            |  | 260 | }}} | 
          
            |  | 261 |  | 
          
            |  | 262 | Unless specified otherwise, all of the configuration commands below should | 
          
            |  | 263 | be entered in this second window at the shell prompt. |