Changes between Version 1 and Version 2 of Tutorials/Optical/Mininet Optical Tutorial1


Ignore:
Timestamp:
Jul 27, 2022, 12:00:38 AM (22 months ago)
Author:
lantz
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Tutorials/Optical/Mininet Optical Tutorial1

    v1 v2  
    66This is a Mininet-Optical version of the tutorial at [wiki:Tutorials/Optical/Tutorial1]. It is intended to show how an experiment designed for the COSMOS testbed may be  adapted for use in a software emulation environment, and how Mininet-Optical may be used to design experiments that will later be run on the COSMOS hardware testbed.
    77
    8 Please refer to [wiki:Tutorials/Optical/Tutorial1] for comparison between the hardware and software testbed environments.
     8Please refer to [wiki:Tutorials/Optical/Tutorial1] to compare the hardware and software testbed environments.
    99
    1010Author: Bob Lantz
     
    186186}}}
    187187
    188 ----
    189 
    190 
    191 WORK IN PROGRESS!!!
    192 
    193 ...
    194 
    195 
    196 
    197 = ROADMs Configuration =
     188
     189
     190= ROADM Configuration =
     191
    198192All of these configurations can be performed by Python scripts developed to work with the COSMOS test-bed. The Python commands send NETCONF commands to the ROADM.
    199193
    200194== Setting “Snake” Connection ==
    201 Correct ROADM operation requires Line In port of a ROADM to always receive a light. That is why there is a dedicated transceiver (tengigabitethernet 1/33 on ToR) that sends light through all ROADMs by passing through loop-back connection on Calient S320 (port 5.5.1) and redirecting back, so the light is received on the same transceiver.
    202 This kind of connection is called “Snake”.
    203 
    204 In order maintain this “Snake” for “Experiment_1” next connections form Table 1 must be in place: 1,3,5,6,8,9.
    205 
    206 === tengigabitethernet 1/33/1 on ToR configuration ===
    207 
    208 Snake Interface (to passe through all ROADMs in loop): 60 (DWDM Channel C60) 1529,55 nm 196,00 Thz with frequency range [195.95,196.05] Thz
     195
     196(This is not currently part of the Mininet-Optical software emulated configuration.)
     197
     198=== Transceiver 33 (ports 330/331) on ToR configuration ===
     199
     200(This is not currently part of the Mininet-Optical software emulated configuration,
     201but it would be:
     20260 (DWDM Channel C60) 1529,55 nm 196,00 Thz with frequency range [195.95,196.05] Thz)
    209203
    210204=== MUX/DEMUX configuration ===
    211205
     206As a reminder, here are the ROADM port numbers:
     207
    212208* ROADM 4:
    213         DEMUX IN/OUT port: 5101/5204
    214         MUX IN/OUT port: 4104/4201
     209        DEMUX IN/OUT (ADD1/LINEOUT) port: 5101/5204
     210        MUX IN/OUT (LINEIN/DROP1)port: 4104/4201
    215211* ROADM 1:
    216         DEMUX IN/OUT port: 5101/5201
    217         MUX IN/OUT port: 4101/4201
     212        DEMUX IN/OUT (ADD1/LINEOUT) port: 5101/5201
     213        MUX IN/OUT (LINEIN/DROP1) port: 4101/4201
    218214* ROADM 2:
    219         DEMUX IN/OUT port: 5101/5201
    220         MUX IN/OUT port: 4101/4201
     215        DEMUX IN/OUT (ADD1/LINEOUT) port: 5101/5201
     216        MUX IN/OUT (LINEIN/DROP1) port: 4101/4201
    221217* ROADM 3:
    222         DEMUX IN/OUT port: 5101/5204
    223         MUX IN/OUT port: 4104/4201
     218        DEMUX IN/OUT (ADD1/LINEOUT) port: 5101/5204
     219        MUX IN/OUT (LINEIN/DROP1) port: 4104/4201
     220
     221Note that the servers are connected to ADD2/DROP2 while DROP1/ADD1 are used
     222as passthrough ports between ROADM 1 and ROADM 2.
    224223
    225224=== ALS Disable Sequence (for 60 seconds) ===
    226225
    227 1. ROADM 4 booster,
    228 2. ROADM 2 booster,
    229 3. ROADM 3 booster,
    230 4. ROADM 1 booster,
    231 
    232 == Setting “Experiment_1” Connections ==
     226(This is not currently done in the Mininet-Optical configuration.)
     227
     228== Configuring ROADMs in Mininet-Optical ==
     229
     230ROADMs in Mininet-Optical may be configured via several mechanisms. An internal Python API may be used for configuration within the script that creates the network. More realistically, two external SDN/RPC control interfaces are provided: a simple REST interface and a more realistic NETCONF interface which is partially compatible with the NETCONF interface of the hardware Lumentum ROADM20.
     231
     232To start with, we will implement the connections using the REST API.
     233
     234== Setting “Experiment_1” Connections using REST ==
     235
     236=== Configuring ToR1<->ToR2 Connection 1 on Mininet-Optical using REST ===
     237
     238* ROADM 4:
     2391. Enable MUX port 4102 “From ToR 1”
     2402. Add Connection “Exp1-FromTor1” with Input/ Output Port 4102/4201 with bandwidth [192.95;193.05]
     2413. Enable DEMUX port 5202 “Towards ToR 1”
     2424. Add Connection “Exp1-TorwardTor1” with I/O Port 5101/5202
     243
     244192.95THz..193.05THz has a middle frequency of 193.00 THz, which corresponds to channel C32
     245on Mininet-Optical's default 50GHz channel grid.
     246C1's middle frequency is 191400 GHz, so C33 is at 191400 + 32*50 = 193000 GHz.
     247
     248We use curl to send a REST request to ROADM4 to add/drop ch33:
     249
     250    curl "localhost:8080/connect?node=roadm4&port1=4102&port2=4201&channels=33"
     251    curl "localhost:8080/connect?node=roadm4&port1=5101&port2=5202&channels=33"
     252
     253* ROADM 1:
     2545. Enable MUX port 4102 “From ToR 2”
     2556. Add Connection “From ToR 2” with I/O Port 4102/4201 with bandwidth [192.95;193.05]
     2567. Enable DEMUX port 5202 “Towards ToR 2”
     2578. Add Connection “Towards ToR 2” with I/O Port 5101/5202
     258
     259We use curl to send a REST request to ROADM4 to add/drop ch33:
     260
     261    curl "localhost:8080/connect?node=roadm1&port1=4102&port2=4201&channels=33"
     262    curl "localhost:8080/connect?node=roadm1&port1=5101&port2=5202&channels=33"
     263
     264
     265=== Configuring ToR1<->ToR3 Connection 2 on Mininet-Optical using REST ===
     266
     267* ROADM 4 (Same As For Connection 1):
     2681. Enable MUX port 4102 “From ToR 1”
     2692. Add Connection “From ToR 1” with I/O Port 4102/4201 with bandwidth [192.95;193.05]
     2703. Enable DEMUX port 5202 “Towards ToR 1”
     2714. Add Connection “Towards ToR 1” with I/O Port 5101/5202 with bandwidth [192.95;193.05]
     272
     273    curl "localhost:8080/connect?node=roadm4&port1=4102&port2=4201&channels=33"
     274    curl "localhost:8080/connect?node=roadm4&port1=5101&port2=5202&channels=33"
     275
     276* ROADM 1 <Not Same!>:
     2775. Enable MUX port 4101 “Through Port” (enabled for Snake)
     2786. Add Connection “Through In” with I/O Port 4101/4201 with bandwidth [192.95;193.05]
     2797. Enable DEMUX port 5201 “Through Port” (enabled for Snake)
     2808. Add Connection “Through Out” with I/O Port 5101/5201 with bandwidth [192.95;193.05]
     281
     282This time we pass channel 33 through ROADM1:
     283
     284    curl "localhost:8080/connect?node=roadm1&port1=4101&port2=4201&channels=33"
     285    curl "localhost:8080/connect?node=roadm1&port1=5101&port2=5201&channels=33"
     286
     287* ROADM 2 (Same As For ROADM1):
     2889. Enable MUX port 4101 “Through Port” (enabled for Snake)
     28910. Add Connection “Through In” with I/O Port 4101/4201 with bandwidth [192.95;193.05]
     29011. Enable DEMUX port 5201 “Through Port” (enabled for Snake)
     29112. Add Connection “Through Out” with I/O Port 5101/5201 with bandwidth [192.95;193.05]
     292
     293And pass through ROADM2:
     294
     295    curl "localhost:8080/connect?node=roadm2&port1=4101&port2=4201&channels=33"
     296    curl "localhost:8080/connect?node=roadm2&port1=5101&port2=5201&channels=33"
     297
     298* ROADM 3 (Same As For ROADM4):
     29913. Enable MUX port 4102 “From ToR 3”
     30014. Add Connection “From ToR 3” with I/O Port 4102/4201 with bandwidth [192.95;193.05]
     30115. Enable DEMUX port 5202 “Towards ToR 3”
     30216. Add Connection “Towards ToR 3” with I/O Port 5101/5202 with bandwidth [192.95;193.05]
     303
     304And we drop at ROADM3:
     305
     306    curl "localhost:8080/connect?node=roadm3&port1=4102&port2=4201&channels=33"
     307    curl "localhost:8080/connect?node=roadm3&port1=5101&port2=5202&channels=33"
     308
     309----
     310
     311== Setting “Experiment_1” Connections using NETCONF ==
     312
     313(TBD)
    233314
    234315=== Configuring ToR1<->ToR2 Connection 1 ===