marvis.node.switch
Simulated network switch.
Classes
| This is representing a switch between other nodes. | 
- class marvis.node.switch.SwitchNode(name)[source]
- Bases: - marvis.node.base.Node- This is representing a switch between other nodes. - It uses ns-3 internals for routing. - bridge_device
- The ns-3 internal device to route packages. 
 - add_interface(interface, *args, **kwargs)[source]
- Add an interface to the node. - Warning: Do not call this function manually.
- The functionality is handled by the network and channels. 
 - Parameters
- interface ( - Interface) – The interface to add.
- name (str) – The name of the interface. 
- prefix (str) – If no name is supplied, the function works out a name by appending a number to the prefix. 
 
 
 - prepare(simulation)[source]
- Do all neccesary steps to prepare a node for the simulation. - Parameters
- simulation ( - Simulation) – The simulation to prepare the node for.
 
 - wants_ip_stack()[source]
- Indicates whether a IP stack shall be installed onto the node. - Installing is handled by the Channel. - Returns
- Trueindicates that a ns-3 IP stack shall be installed when preparing this node.
- Return type
- bool 
 
 - execute_command(command, user=None)[source]
- Execute a command within the node. - Parameters
- command (str or list of str) – The command to execute. 
- user (str) – If a user (name) is specified, the command is executed as this user. Warning: Not all nodes support this feature. 
 
 
 - go_offline()
- Disconnect the node from all channels. 
 - go_online()
- Connect the node back to all channels. 
 - set_position(x, y, z=0)
- Set the position of the node and updates the mobitlity model. - Parameters
- x (float) – The x-position. 
- y (float) – The y-position. 
- z (float) – The z-position. 
 
 
 - channels
- The cannels the node is connected to. 
 - name
- The name of the node. 
 - ns3_node
- The ns-3 internal node. 
 - position
- The position of the node (used by wifi models and visualization) 
 - color
- The color of the node used in the visualization. 
 - interfaces
- The interfaces (~network cards) of this node. 
 - command_executor
- The command executor for running (shell) commands. 
 
Inheritance Diagramm
