def __test_single_flow(sender, receiver, times_ms, capacities_kbps, jitter): """ Simulates a RMCAT single flow on a variable capacity link. """ link_simulator = LinkSimulator(None, jitter) now_ms = 0.0 for i in range(len(capacities_kbps)): link_simulator.capacity_kbps = capacities_kbps[i] end_time_ms = times_ms[i] while now_ms < end_time_ms: packet = sender.create_packet() link_simulator.send_packet(packet) if packet.arrival_time_ms is not None: receiver.receive_packet(packet) feedback = receiver.get_feedback() if feedback is not None: sender.receive_feedback(feedback) now_ms = packet.send_time_ms __print(receiver) __plot(receiver, times_ms, capacities_kbps)