예제 #1
0
 def setSource(self,policyUnit,endHosts_toAssign):
    # assert isinstance(policyUnit,Policy)
     for each_endHost in endHosts_toAssign:
         p=Policy()
         p.setSource(each_endHost)
         p.setAction(policyUnit.getAction())
         p.setDest(policyUnit.getDest())
         self.policies.append(p)
예제 #2
0
    def addMeasurementPolicies(self, listNodes):

        for each_node in listNodes:
            assert isinstance(each_node, Node)
            p = Policy()
            p.setDest(each_node.dstIP)
            a = Action(3)  # action type: count
            p.setAction(a)
            p.setSource(each_node.srcIP)
            self.listPolicies.append(p)
    def addMeasurementPolicies(self,listNodes):

        for each_node in listNodes:
            assert isinstance(each_node,Node)
            p=Policy()
            p.setDest(each_node.dstIP)
            a = Action(3)   # action type: count
            p.setAction(a)
            p.setSource(each_node.srcIP)
            self.listPolicies.append(p)
예제 #4
0
    def createPolicyUnits(self, numPolicyUnits, num_spannedAPs, accessPoints):

        policyUnits = []
        # from DestGraph, we can just set Destinations and actions for Policy Units
        for index in range(0, numPolicyUnits, 1):
            #### accessPointsInCurrentPolicyUnit = accessPoints spanned in the current policy units
            accessPointsInCurrentPolicyUnit = random.sample(
                accessPoints, num_spannedAPs)
            list_subnetAddr = []
            # get all subnets
            for each_router in accessPointsInCurrentPolicyUnit:
                list_subnetAddr.extend(each_router)
            if len(list_subnetAddr) > 20:
                list_destAddresses = random.sample(list_subnetAddr, 20)
            else:
                list_destAddresses = list_subnetAddr
            p = Policy()
            p.setDest(list_destAddresses)
            a = Action.forward  # action type: forward
            p.setAction(a)
            policyUnits.append(p)

            ### Update set_selectedDestIPs
            subSet_destIPs = set([])
            ### add each subnet address in  accessPointsInCurrentPolicyUnit,
            ### add that subnet address into set_selectedDestIps
            self.set_selectedDestIPs.update(set(list_destAddresses))
            #subSet_destIPs = list(sublist_destIPs)
            #self.set_selectedDestIPs.update(subSet_destIPs)

        return policyUnits