def __init__(self, upstream_ip, upstream_port, enable_tls=False, percentage_of_same_ips=0): Thread.__init__(self) self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.messageGenerator = MessageGenerator() self.upstream_ip = upstream_ip self.upstream_port = upstream_port self.should_stop = False self.enable_tls = enable_tls self.current_xid = 1 self.percentage_of_same_ips = percentage_of_same_ips self.last_sent_messages = [] self.matching_ips = [] self.non_matching_ips = [] for ip in itertools.product(range(231), range(3), range(256)): self.matching_ips.append('{}.{}.0.{}'.format(ip[0], ip[1], ip[2])) for ip in itertools.product(range(250, 256), range(63, 256), range(256)): self.non_matching_ips.append("{}.{}.{}.0".format( ip[0], ip[1], ip[2])) self.same_matching_ip = self.matching_ips[100] self.same_non_matching_ip = self.non_matching_ips[100] try: self.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) except (OSError, NameError): pass
def __init__(self, dpid, warmup_time_s, upstream_ip, upstream_port, initial_xid, throughput_mode, enable_tls=False): Thread.__init__(self) self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.dpid = dpid self.currentXid = initial_xid self.should_stop = self.getCurrentMicroSeconds() + 5000 * 1000000 self.results = [] self.warmup_time_s = warmup_time_s self.upstream_ip = upstream_ip self.upstream_port = upstream_port self.messageGenerator = MessageGenerator() self.last_packetin_sent = self.getCurrentMicroSeconds() self.throughput_mode = throughput_mode self.enable_tls = enable_tls try: self.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) except (OSError, NameError): pass self.messages_to_send = [(2, Hello().pack())]
def __init__(self, upstream_ip, upstream_port, enable_tls=False): Thread.__init__(self) self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.messageGenerator = MessageGenerator() self.upstream_ip = upstream_ip self.upstream_port = upstream_port self.should_stop = False self.enable_tls = enable_tls self.current_xid = 1 try: self.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) except (OSError, NameError): pass
def testInit(self): msgGen = MessageGenerator(msgBurstSize=9, msgGroupIdRange=10) self.assertIsInstance(msgGen, MessageGenerator) msgGen = MessageGenerator(msgBurstSize=9) self.assertIsInstance(msgGen, MessageGenerator) msgGen = MessageGenerator(msgGroupIdRange=10) self.assertIsInstance(msgGen, MessageGenerator) with self.assertRaises(AssertionError): msgGen = MessageGenerator(msgGroupIdRange=2.3) with self.assertRaises(AssertionError): msgGen = MessageGenerator(msgGroupIdRange=-1) with self.assertRaises(AssertionError): msgGen = MessageGenerator(msgBurstSize=2.3) with self.assertRaises(AssertionError): msgGen = MessageGenerator(msgBurstSize=-1)
def setUp(self): ## Test generator 1 self.g1 = msgGen = MessageGenerator(msgBurstSize=5, msgGroupIdRange=5) ## Test generator 2 self.g2 = msgGen = MessageGenerator(msgBurstSize=10, msgGroupIdRange=10)