Skip to content
  • Leigh B Stoller's avatar
    Add support for experimental networks on the control network. · df048b11
    Leigh B Stoller authored
    So what if your testbed has a control network but no experimental
    network? In the past you were SOL, but with this commit you can now
    create links and lans on the control network that look just like
    an experimental network link/lan.
    
    To make this work, ptopgen sports a new option (-C) that will put the
    control network links and wires and switches into the ptop file.
    
    libvtop generally operates as normal, but need to arrange for the
    physical ports to be put into dual tag/trunk mode, where the native
    vlan is the Control network. This is done with by setting attributes
    on the lan table entry that indicate dual and what to use for the
    native vlan. snmpit looks for these attributes.
    
    There are a couple of places that use the stack name (Control or
    Experiment) to determine if a vlan is control or experimental. This is
    not longer truu, and so need to use an attribute in the lan table
    entry. 
    
    The last bit of the puzzle is that snmpit has to be careful when
    disabling trunking on these ports. When this happens, all vlans are
    cleard from the ports (by the device layer), including the Control
    network itself, which would make the node unreachable. I had to add
    some special cases to watch for that, and return the ports to the
    control network.
    
    To turn this on, create a ControlNetVlans and enable it. The mapper
    looks for this and passes the -C argument to ptopgen.
    
    Nothing special in the NS file, except you have to turn on vlan
    encapsulation; tb-set-vlan-emulation vlan
    
    No delay nodes, but linkdelays work okay. Works for openvz containers
    as well.
    df048b11