def __makeflow(self): while True: # if haveIPAddrGen: # srcip = str(ipaddr.IPv4Address(ipaddrgen.generate_addressv4(self.ipsrcgen))) # dstip = str(ipaddr.IPv4Address(ipaddrgen.generate_addressv4(self.ipdstgen))) # else: # # srcip = str(ipaddr.IPAddress(int(self.srcnet) + random.randint(0,self.srcnet.numhosts-1))) # # dstip = str(ipaddr.IPAddress(int(self.dstnet) + random.randint(0,self.dstnet.numhosts-1))) # # srcip = str(ipaddr.IPAddress(int(self.srcnet) + random.randint(0, 2))) # # dstip = str(ipaddr.IPAddress(int(self.dstnet) + random.randint(0, 2))) srcip = next(self.srcnet) dstip = next(self.dstnet) ipproto = next(self.ipproto) sport = next(self.srcports) dport = next(self.dstports) fsize = int(next(self.flowsizerv)) fstarttime = float(next(self.flowstarttimerv)) #networkControlLogic2object.trafficNum[int(srcip.split('.')[3])-1][int(dstip.split('.')[3])-1]+=1 flet = Flowlet(FlowIdent(srcip, dstip, ipproto, sport, dport), bytes=fsize, time=fstarttime) try: if fsize>ELEPHANTFLOWSIZE: flet.iselephant=True networkControlLogic2object.elephentsNum[int(srcip.split('.')[3])-1][int(dstip.split('.')[3])-1]+=1 print "networkControlLogic2object.elephentsNum[",int(srcip.split('.')[3])-1,"][",int(dstip.split('.')[3])-1,"]+=",1,";" except: print "Error Updating elephentsNum" pass #print "flettt", #print flet flet.iptos = next(self.iptosrv) if flet.key not in self.activeflows: break return flet