mnoptical.examples.unilinear1
¶
- unilinear1.py: unidirectional linear network with
1-degree ROADMs and split Terminal uplink/downlink.
This may be more complicated than what we actually want. We are using the base unidirectional ROADMs without any interconnection between them, in order to avoid the looping bug in the simulator.
This does have the nice feature of minimizing ports at the expense of cabling complexity.
An alternate design, simpler in some ways, is to interconnect the ROADMs vertically to create real 2-degree, bi-directional ROADMs.
Module Contents¶
Classes¶
Topo with convenience methods for optical networks |
|
A linear network connected by two strings of |
|
CLI with config command |
Functions¶
|
Configure linear, unidirectional network |
|
Configure and test network |
Attributes¶
- class mnoptical.examples.unilinear1.OpticalTopo¶
Bases:
mininet.topo.Topo
Topo with convenience methods for optical networks
- wdmLink(node1, node2, port1, port2, **kwargs)¶
Convenience function to add a unidirectional link
- ethLink(*args, **kwargs)¶
Clarifying alias for addLink
- addTerminal(*args, **kwargs)¶
Convenience alias for addSwitch( … cls=Terminal )
- addROADM(*args, **kwargs)¶
Convenience alias for addSwitch( … cls=ROADM )
- class mnoptical.examples.unilinear1.UniLinearTopo¶
Bases:
OpticalTopo
A linear network connected by two strings of unidirectional ROADMs in opposite directions.
- linein = 1¶
- lineout = 2¶
- addport(dst)¶
- dropport(src)¶
- ethport(dst)¶
- uplink(dst)¶
- downlink(src)¶
- build(power=0 * dBm, nodecount=3)¶
Create a unidirectional linear network with the specified operational power and node and transceiver counts
- mnoptical.examples.unilinear1.config(net, mesh=False, root=1)¶
Configure linear, unidirectional network mesh: configure full mesh? False root: root node of star topology if not mesh Routing strategy: - We assign a channel to each (src, dst) pair to avoid conflicts. - For the star topology, we root everything at root. - For the full mesh, we route signals eastbound or westbound
as needed.
- class mnoptical.examples.unilinear1.CLI¶
Bases:
mnoptical.ofcdemo.demolib.OpticalCLI
CLI with config command
- do_config(_line)¶
- mnoptical.examples.unilinear1.test(net)¶
Configure and test network
- mnoptical.examples.unilinear1.topo¶