def __init__(self, inbound_port=50005, outbound_port=50006, timeout=0.05, debug_level=logging.INFO): self.logger = utils.Logger(self.__class__.__name__, debug_level) self.inbound_port = inbound_port self.outbound_port = outbound_port self.simulator = channelsimulator.ChannelSimulator(inbound_port=inbound_port, outbound_port=outbound_port, debug_level=debug_level) self.simulator.rcvr_setup(timeout) self.simulator.sndr_setup(timeout)
def __init__(self, inbound_port=50006, outbound_port=50005, timeout=1, debug_level=logging.INFO): self.logger = utils.Logger(self.__class__.__name__, debug_level) self.inbound_port = inbound_port self.outbound_port = outbound_port self.simulator = channelsimulator.ChannelSimulator( inbound_port=inbound_port, outbound_port=outbound_port, debug_level=debug_level) self.simulator.sndr_setup(timeout) self.simulator.rcvr_setup(timeout) # multithreading reference: https://www.tutorialspoint.com/python/python_multithreading.htm self.queue_lock = threading.Lock() self.index_queue = Queue.Queue() self.threads = [] self.finished = False self.received_acks = {}
import channelsimulator import logging if __name__ == "__main__": # test out corrupt() test_data = bytearray([76, 65, 75, 88, 95, 102, 66, 82, 75, 103, 55, 92]) c = channelsimulator.ChannelSimulator(inbound_port=44444, outbound_port=55555, debug_level=logging.DEBUG) print c.corrupt(test_data, drop_error_prob=0, swap_error_prob=0, random_error_prob=1)