示例#1
0
    def run(self):
        dummy_port = None

        if len(self.snmp_ports) == 0:
            self.logger.error("The ICD has no ports satisfying the sequence" \
                              " criteria. Hence sending from a dummy SNMP port")
            dummy_port = (Factory.GET_SNMP_DummyPort(),)
            self.snmp_ports = dummy_port

        self.sendRSET()
        for rxPort in self.snmp_ports:
            oid_1 = getMIBOID('afdxEquipmentStatus')
            oids_4kb = getMIBOIDBySize(220)
            oids_8kb = getMIBOIDBySize(452)
            self.logger.info("Sending an SNMP get request")
            self.sendSNMP(rxPort, [oid_1])
            self.logger.info("Sending an SNMP get request of " \
                                "size ~4Ko")
            self.sendSNMP(rxPort, oids_4kb)
            self.logger.info("Sending an SNMP get request of " \
                                "size ~8Ko")
            self.sendSNMP(rxPort, oids_8kb)

        if dummy_port:
            Factory.REM_Port(dummy_port[0])

        if get('SNMP_TRAPS_ENABLED').lower() == 'true':
                self.logger.info("Listening for traps. Duration : 10 seconds")
                time.sleep(10)
示例#2
0
    def sequence2(self):
        if len(self.sap_ports) == 0:
            self.logger.error("The ICD has no ports satisfying the sequence" \
                              " criteria")
            return
        self.captureForSequence(2)
        self.sendRSET()
        for port in self.sap_ports:
            oid = getMIBOID('afdxEquipmentStatus')
            self.logger.info("Sending SNMP request with afdxEquipmentStatus " \
                             "as oid")
            self.sendSNMP(port, [oid])
            
            oids_4kb = getMIBOIDBySize(220)
            oids_8kb = getMIBOIDBySize(452)

            self.sendSNMP(port, oids_4kb, 1)
            self.logger.info("Sending an SNMP get-next request for oids worth "\
                             "~4KB size")
            self.sendSNMP(port, oids_8kb, 1)
            self.logger.info("Sending an SNMP get-next request for oids worth "\
                             "~8KB size")
示例#3
0
 def sequence4(self):
     if len(self.sap_ports) == 0:
         self.logger.error("The ICD has no ports satisfying the sequence" \
                           " criteria")
         return
     self.captureForSequence(4)
     self.sendRSET()
     start = time.time()
     while True:
         for port in self.sap_ports:
             oid_8kb = getMIBOIDBySize(452)
             self.logger.info("Sending SNMP whose size is nearly equal to "\
                              "8KB size")
             self.sendSNMP(port, oid_8kb, 1)
         if time.time() - start > 10:
             break
示例#4
0
 def sequence3(self):
     if len(self.sap_ports) == 0 or len(self.input_ports) == 0:
         self.logger.error("The ICD has no ports satisfying the sequence" \
                           " criteria")
         return
     self.captureForSequence(3)
     self.sendRSET()
     message = "Traffic"
     sap_ports = copy.deepcopy(self.sap_ports)
     while True:
         if len(sap_ports) == 0:
             break
         for _ in range(0, 10):
             port = self.input_ports[random.randint(0, 
                                                 len(self.input_ports) - 1)]
             message = buildShortMessage(port, message)
             self.send(message, port)
             if _%5 == 0:
                 sap_port = sap_ports.pop()
 
                 oid_4kb = getMIBOIDBySize(220)
                 self.sendSNMP(sap_port, oid_4kb, 1)