def get_used_vlans(range_len=1, direct_output=False):
    """
    Returns a list with the VLANs used within this OpenFlow aggregate
    @param direct_output defines if only one aggregate is present (True) or more (False)
    """
    range_len = None
    from openflow.optin_manager.opts.vlans.vlanController import vlanController
    import random
    vlans = vlanController.offer_vlan_tags(range_len)
    if not direct_output or range_len > 1:
        return list(set(range(4096)) - set(vlans))
    else:
        rnd = random.randrange(0, len(vlans))
        # Return random VLAN [from 0 to len(vlans)-1] for all the available to minimise collisions
        return [vlans[rnd]]
Exemple #2
0
def get_used_vlans(range_len=1, direct_output=False):
    """
    Returns a list with the VLANs used within this OpenFlow aggregate
    @param direct_output defines if only one aggregate is present (True) or more (False)
    """
    range_len = None
    from openflow.optin_manager.opts.vlans.vlanController import vlanController
    import random
    vlans =  vlanController.offer_vlan_tags(range_len)
    if not direct_output or range_len > 1:
        return list(set(range(4096)) - set(vlans))
    else:
        rnd = random.randrange(0, len(vlans))
        # Return random VLAN [from 0 to len(vlans)-1] for all the available to minimise collisions
        return [vlans[rnd]]
def get_offered_vlans(set=None):
    from openflow.optin_manager.opts.vlans.vlanController import vlanController
    vlans = vlanController.offer_vlan_tags(set)
    return vlans
Exemple #4
0
def get_offered_vlans(set=None):
    from openflow.optin_manager.opts.vlans.vlanController import vlanController
    vlans =  vlanController.offer_vlan_tags(set)
    return vlans