diff --git a/pcap_analysis/plots/bandwidth_alternate-baseline_no_udp-frr_no_udp.png b/pcap_analysis/plots/bandwidth_alternate-baseline_no_udp-frr_no_udp.png index 0e81b592..8b9b0999 100644 Binary files a/pcap_analysis/plots/bandwidth_alternate-baseline_no_udp-frr_no_udp.png and b/pcap_analysis/plots/bandwidth_alternate-baseline_no_udp-frr_no_udp.png differ diff --git a/pcap_analysis/plots/bandwidth_alternate-baseline_udp-frr.png b/pcap_analysis/plots/bandwidth_alternate-baseline_udp-frr.png index 4b376956..2d8dc6e5 100644 Binary files a/pcap_analysis/plots/bandwidth_alternate-baseline_udp-frr.png and b/pcap_analysis/plots/bandwidth_alternate-baseline_udp-frr.png differ diff --git a/pcap_analysis/plots/bandwidth_alternate-no-udp.png b/pcap_analysis/plots/bandwidth_alternate-no-udp.png new file mode 100644 index 00000000..a59f8aac Binary files /dev/null and b/pcap_analysis/plots/bandwidth_alternate-no-udp.png differ diff --git a/pcap_analysis/plots/bandwidth_alternate-udp.png b/pcap_analysis/plots/bandwidth_alternate-udp.png new file mode 100644 index 00000000..e676cd22 Binary files /dev/null and b/pcap_analysis/plots/bandwidth_alternate-udp.png differ diff --git a/pcap_analysis/plots/bandwidth_primary-baseline_no_udp-frr_no_udp.png b/pcap_analysis/plots/bandwidth_primary-baseline_no_udp-frr_no_udp.png index 91e95229..ec8f27e3 100644 Binary files a/pcap_analysis/plots/bandwidth_primary-baseline_no_udp-frr_no_udp.png and b/pcap_analysis/plots/bandwidth_primary-baseline_no_udp-frr_no_udp.png differ diff --git a/pcap_analysis/plots/bandwidth_primary-baseline_udp-frr.png b/pcap_analysis/plots/bandwidth_primary-baseline_udp-frr.png index 0df2e3cc..ad279925 100644 Binary files a/pcap_analysis/plots/bandwidth_primary-baseline_udp-frr.png and b/pcap_analysis/plots/bandwidth_primary-baseline_udp-frr.png differ diff --git a/pcap_analysis/plots/bandwidth_primary-no-udp.png b/pcap_analysis/plots/bandwidth_primary-no-udp.png new file mode 100644 index 00000000..8e1c59ca Binary files /dev/null and b/pcap_analysis/plots/bandwidth_primary-no-udp.png differ diff --git a/pcap_analysis/plots/bandwidth_primary-udp.png b/pcap_analysis/plots/bandwidth_primary-udp.png new file mode 100644 index 00000000..cf36f71a Binary files /dev/null and b/pcap_analysis/plots/bandwidth_primary-udp.png differ diff --git a/pcap_analysis/plots/delay_all-baseline_no_udp-frr_no_udp.png b/pcap_analysis/plots/delay_all-baseline_no_udp-frr_no_udp.png index 8e5a0185..c91769e4 100644 Binary files a/pcap_analysis/plots/delay_all-baseline_no_udp-frr_no_udp.png and b/pcap_analysis/plots/delay_all-baseline_no_udp-frr_no_udp.png differ diff --git a/pcap_analysis/plots/delay_all-baseline_udp-frr.png b/pcap_analysis/plots/delay_all-baseline_udp-frr.png index fa761785..1dae508a 100644 Binary files a/pcap_analysis/plots/delay_all-baseline_udp-frr.png and b/pcap_analysis/plots/delay_all-baseline_udp-frr.png differ diff --git a/pcap_analysis/plots/delay_alternate-baseline_no_udp-frr_no_udp.png b/pcap_analysis/plots/delay_alternate-baseline_no_udp-frr_no_udp.png index 1259fc22..493ef828 100644 Binary files a/pcap_analysis/plots/delay_alternate-baseline_no_udp-frr_no_udp.png and b/pcap_analysis/plots/delay_alternate-baseline_no_udp-frr_no_udp.png differ diff --git a/pcap_analysis/plots/delay_alternate-baseline_udp-frr.png b/pcap_analysis/plots/delay_alternate-baseline_udp-frr.png index 71c3815b..7a2cfe9f 100644 Binary files a/pcap_analysis/plots/delay_alternate-baseline_udp-frr.png and b/pcap_analysis/plots/delay_alternate-baseline_udp-frr.png differ diff --git a/pcap_analysis/plots/delay_primary-baseline_no_udp-frr_no_udp.png b/pcap_analysis/plots/delay_primary-baseline_no_udp-frr_no_udp.png index eaf54deb..8cb4476f 100644 Binary files a/pcap_analysis/plots/delay_primary-baseline_no_udp-frr_no_udp.png and b/pcap_analysis/plots/delay_primary-baseline_no_udp-frr_no_udp.png differ diff --git a/pcap_analysis/plots/delay_primary-baseline_udp-frr.png b/pcap_analysis/plots/delay_primary-baseline_udp-frr.png index ace8a6e3..9e9ce97b 100644 Binary files a/pcap_analysis/plots/delay_primary-baseline_udp-frr.png and b/pcap_analysis/plots/delay_primary-baseline_udp-frr.png differ diff --git a/pcap_analysis/process_pcap.py b/pcap_analysis/process_pcap.py index 190ba422..4e75bc09 100644 --- a/pcap_analysis/process_pcap.py +++ b/pcap_analysis/process_pcap.py @@ -3,7 +3,7 @@ import sys from scapy.all import * import matplotlib.pyplot as plt - +import numpy as np def read_pcap(filename): packets = [] @@ -60,49 +60,108 @@ def flow_completion_time(packets): # def save_plot(timestamp, completion_time, stream_direction): -# os.makedirs("/host/pcap_analysis/plots", exist_ok=True) +# os.makedirs("../pcap_analysis/plots", exist_ok=True) # plt.plot(timestamp, completion_time, label=stream_direction, marker='o') # plt.xlabel("time stamp of the sender of the packet") # plt.ylabel("transfer completion time") # -# plt.savefig("/host/pcap_analysis/plots/completion_time-timestamp.png") +# plt.savefig("../pcap_analysis/plots/completion_time-timestamp.png") + +def get_avg_fc_time(source_directory): + + seeds = os.listdir(source_directory) + fc_time = 0.0 + for seed in seeds: + sd = f"{source_directory}/{seed}/-TrafficSender0-1.pcap" + result = flow_completion_time(read_pcap(sd)) + assert result is not None, "Unable to read from directory" + fc_time += result + print(source_directory, fc_time / len(seeds)) + return fc_time / len(seeds) + +def record_result(source_directory, variable, queue_size, scenario, results): + fc_time = get_avg_fc_time(f"{source_directory}{variable}/{queue_size}/{scenario}") + results.append((scenario.replace("-", "_"), queue_size, fc_time, variable)) + + +def generate_queue_size_dict(): + return {"20": 0.0, "40": 0.0, "60": 0.0, "80": 0.0, "base": 0.0} +def generate_variable_dict(variables): + return {variable: generate_queue_size_dict() for variable in variables} + +scenarios = ["baseline-no-udp", "baseline-udp", "frr-no-udp", "frr"] + +cases = ["no-udp", "udp"] def record_flow_completion_time(source_directory, result_directory, mode): variables = os.listdir(source_directory) - results = [] + results = {case: generate_variable_dict(variables) for case in cases} + for variable in variables: if os.path.isdir(os.path.join(source_directory, variable)): queue_sizes = os.listdir(source_directory + variable) - for queue_size in queue_sizes: - if os.path.isdir(os.path.join(source_directory + variable + "/" + queue_size)) and queue_size != '99': - senderPackets = read_pcap( - source_directory + variable + "/" + queue_size + "/" + "baseline-no-udp/-TrafficSender-1.pcap") - fc_time = flow_completion_time(senderPackets) - results.append(("baseline_no_udp", queue_size, fc_time, variable)) - - senderPackets = read_pcap( - source_directory + variable + "/" + queue_size + "/" + "baseline-udp/-TrafficSender-1.pcap") - fc_time = flow_completion_time(senderPackets) - results.append(("baseline_udp", queue_size, fc_time, variable)) - - senderPackets = read_pcap( - source_directory + variable + "/" + queue_size + "/" + "frr-no-udp/-TrafficSender-1.pcap") - fc_time = flow_completion_time(senderPackets) - results.append(("frr_no_udp", queue_size, fc_time, variable)) - - senderPackets = read_pcap( - source_directory + variable + "/" + queue_size + "/" + "frr/-TrafficSender-1.pcap") - fc_time = flow_completion_time(senderPackets) - results.append(("frr", queue_size, fc_time, variable)) - + for case in cases: + for queue_size in queue_sizes: + if os.path.isdir(os.path.join(source_directory + variable + "/" + queue_size)) and queue_size != '99': + if case == "udp": + results[case][variable][queue_size] = get_avg_fc_time(f"{source_directory}{variable}/{queue_size}/frr") + else: + results[case][variable][queue_size] = get_avg_fc_time(f"{source_directory}{variable}/{queue_size}/frr-{case}") + results[case][variable]['base'] = get_avg_fc_time(f"{source_directory}{variable}/20/baseline-{case}") + filepath = os.path.join(result_directory, f"{mode}.txt") with open(filepath, 'w') as f: - for result in results: - f.write(str(result) + "\n") + for case, variables in results.items(): + for variable, queue_sizes in variables.items(): + for queue_size, result in queue_sizes.items(): + f.write(f"{case} {variable} {queue_size} {result}\n") return results +def get_scaling_results(results, case, queue_size): + output = {} + for variable, queue_sizes in results[case].items(): + output[variable] = queue_sizes[queue_size] + return output + +queue_sizes = ["20", "40", "60", "80", "base"] + +def extract_integer(string): + for i in range(len(string)): + if not string[i].isdigit() and string[i] != ".": + return float(string[:i]) + return None + +def plot_flow_comp_time(results, case, mode): + plt.figure(figsize=(12, 6)) # Increase the width to 12 inches and height to 6 inches + + for queue_size in queue_sizes: + output = get_scaling_results(results, case, queue_size) + + best_fit = False + + scaling_var = sorted(list(output.keys())) + scaling_results = [float(output[var]) for var in scaling_var] + + if best_fit: + floats = list(map(extract_integer, scaling_var)) + scaling_var_float = np.array(floats) + + x, y = np.polyfit(scaling_var_float, np.array(scaling_results), 1) + plt.plot(scaling_var, x*scaling_var_float+y, label=queue_size) + else: + plt.plot(scaling_var, scaling_results, label=queue_size) + # plt.plot(scaling_var, scaling_results, label=queue_size) + + plt.ylabel("flow completion time in seconds") + plt.xlabel(mode) + plt.legend() + + plt.savefig(f"../pcap_analysis/plots/{mode}-{case}.png", dpi=300) + plt.clf() + + def plot_flow_completion_time(results, mode, cases): sorted_results = sorted(results, @@ -175,39 +234,44 @@ def plot_flow_completion_time(results, mode, cases): figure.subplots_adjust(left=0.2) # figure.tight_layout() - figure.savefig(f"/host/pcap_analysis/plots/{mode}-{cases[0]}-{cases[1]}.png", dpi=300) + figure.savefig(f"../pcap_analysis/plots/{mode}-{cases[0]}-{cases[1]}.png", dpi=300) if __name__ == '__main__': - os.makedirs("/host/pcap_analysis/results", exist_ok=True) - os.makedirs("/host/pcap_analysis/plots", exist_ok=True) + os.makedirs("../pcap_analysis/results", exist_ok=True) + os.makedirs("../pcap_analysis/plots", exist_ok=True) + + bandwidth_primary_results = record_flow_completion_time("../traces/bandwidth_primary/", + "../pcap_analysis/results", "bandwidth_primary") + plot_flow_comp_time(bandwidth_primary_results, "udp", "bandwidth_primary") + plot_flow_comp_time(bandwidth_primary_results, "no-udp", "bandwidth_primary") - bandwidth_primary_results = record_flow_completion_time("/host/experiments/bandwidth-primary/", - "/host/pcap_analysis/results", "bandwidth_primary") - plot_flow_completion_time(bandwidth_primary_results, "bandwidth_primary", ['baseline_no_udp', 'frr_no_udp']) + #plot_flow_completion_time(bandwidth_primary_results, "bandwidth_primary", ['baseline_no_udp', 'frr_no_udp']) # no udp - plot_flow_completion_time(bandwidth_primary_results, "bandwidth_primary", ['baseline_udp', 'frr']) + #plot_flow_completion_time(bandwidth_primary_results, "bandwidth_primary", ['baseline_udp', 'frr']) # with udp - bandwidth_alternate_results = record_flow_completion_time("/host/experiments/bandwidth-alternate/", - "/host/pcap_analysis/results", "bandwidth_alternate") - plot_flow_completion_time(bandwidth_alternate_results, "bandwidth_alternate", ['baseline_no_udp', 'frr_no_udp']) - plot_flow_completion_time(bandwidth_alternate_results, "bandwidth_alternate", ['baseline_udp', 'frr']) + #bandwidth_alternate_results = record_flow_completion_time("../traces/bandwidth_alternate/", + # "../pcap_analysis/results", "bandwidth_alternate") + #plot_flow_comp_time(bandwidth_alternate_results, "udp", "bandwidth_alternate") + #plot_flow_comp_time(bandwidth_alternate_results, "no-udp", "bandwidth_alternate") + #plot_flow_completion_time(bandwidth_alternate_results, "bandwidth_alternate", ['baseline_no_udp', 'frr_no_udp']) + #plot_flow_completion_time(bandwidth_alternate_results, "bandwidth_alternate", ['baseline_udp', 'frr']) - delay_all_results = record_flow_completion_time("/host/experiments/delay-all/", - "/host/pcap_analysis/results", "delay_all") - plot_flow_completion_time(delay_all_results, "delay_all", ['baseline_no_udp', 'frr_no_udp']) - plot_flow_completion_time(delay_all_results, "delay_all", ['baseline_udp', 'frr']) + #delay_all_results = record_flow_completion_time("../traces/delay_all/", + # "../pcap_analysis/results", "delay_all") + #plot_flow_completion_time(delay_all_results, "delay_all", ['baseline_no_udp', 'frr_no_udp']) + #plot_flow_completion_time(delay_all_results, "delay_all", ['baseline_udp', 'frr']) - delay_primary_results = record_flow_completion_time("/host/experiments/delay-primary/", - "/host/pcap_analysis/results", "delay_primary") - plot_flow_completion_time(delay_primary_results, "delay_primary", ['baseline_no_udp', 'frr_no_udp']) - plot_flow_completion_time(delay_primary_results, "delay_primary", ['baseline_udp', 'frr']) + #delay_primary_results = record_flow_completion_time("../traces/delay_primary/", +# "../pcap_analysis/results", "delay_primary") + #plot_flow_completion_time(delay_primary_results, "delay_primary", ['baseline_no_udp', 'frr_no_udp']) + #plot_flow_completion_time(delay_primary_results, "delay_primary", ['baseline_udp', 'frr']) - delay_alternate_results = record_flow_completion_time("/host/experiments/delay-alternate/", - "/host/pcap_analysis/results", "delay_alternate") - plot_flow_completion_time(delay_alternate_results, "delay_alternate", ['baseline_no_udp', 'frr_no_udp']) - plot_flow_completion_time(delay_alternate_results, "delay_alternate", ['baseline_udp', 'frr']) + #delay_alternate_results = record_flow_completion_time("../traces/delay_alternate/", +# "../pcap_analysis/results", "delay_alternate") + #plot_flow_completion_time(delay_alternate_results, "delay_alternate", ['baseline_no_udp', 'frr_no_udp']) + #plot_flow_completion_time(delay_alternate_results, "delay_alternate", ['baseline_udp', 'frr']) # results = [] # @@ -224,8 +288,8 @@ def plot_flow_completion_time(results, mode, cases): # results.append(result) # # save_plot(timestamp, completion_time, stream_direction) # - # os.makedirs("/host/pcap_analysis/results", exist_ok=True) + # os.makedirs("../pcap_analysis/results", exist_ok=True) # - # with open("/host/pcap_analysis/results/results.txt", "w") as f: + # with open("../pcap_analysis/results/results.txt", "w") as f: # for result in results: # f.write(result) diff --git a/pcap_analysis/results/bandwidth_alternate.txt b/pcap_analysis/results/bandwidth_alternate.txt index 0d398b33..d7dfcda2 100644 --- a/pcap_analysis/results/bandwidth_alternate.txt +++ b/pcap_analysis/results/bandwidth_alternate.txt @@ -1,80 +1,90 @@ -('baseline_no_udp', '60', Decimal('6.390986'), '800Kbps') -('baseline_udp', '60', Decimal('8.900453'), '800Kbps') -('frr_no_udp', '60', Decimal('3.233893'), '800Kbps') -('frr', '60', Decimal('3.636093'), '800Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '800Kbps') -('baseline_udp', '20', Decimal('8.900453'), '800Kbps') -('frr_no_udp', '20', Decimal('2.946426'), '800Kbps') -('frr', '20', Decimal('3.501319'), '800Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '800Kbps') -('baseline_udp', '80', Decimal('8.900453'), '800Kbps') -('frr_no_udp', '80', Decimal('3.262639'), '800Kbps') -('frr', '80', Decimal('4.251466'), '800Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '800Kbps') -('baseline_udp', '40', Decimal('8.900453'), '800Kbps') -('frr_no_udp', '40', Decimal('3.018293'), '800Kbps') -('frr', '40', Decimal('3.306693'), '800Kbps') -('baseline_no_udp', '60', Decimal('6.390986'), '1000Kbps') -('baseline_udp', '60', Decimal('8.900453'), '1000Kbps') -('frr_no_udp', '60', Decimal('3.047039'), '1000Kbps') -('frr', '60', Decimal('4.745221'), '1000Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '1000Kbps') -('baseline_udp', '20', Decimal('8.900453'), '1000Kbps') -('frr_no_udp', '20', Decimal('2.817066'), '1000Kbps') -('frr', '20', Decimal('5.015125'), '1000Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '1000Kbps') -('baseline_udp', '80', Decimal('8.900453'), '1000Kbps') -('frr_no_udp', '80', Decimal('3.104533'), '1000Kbps') -('frr', '80', Decimal('5.043573'), '1000Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '1000Kbps') -('baseline_udp', '40', Decimal('8.900453'), '1000Kbps') -('frr_no_udp', '40', Decimal('2.903306'), '1000Kbps') -('frr', '40', Decimal('4.245994'), '1000Kbps') -('baseline_no_udp', '60', Decimal('6.390986'), '200Kbps') -('baseline_udp', '60', Decimal('8.900453'), '200Kbps') -('frr_no_udp', '60', Decimal('3.751333'), '200Kbps') -('frr', '60', Decimal('6.023146'), '200Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '200Kbps') -('baseline_udp', '20', Decimal('8.900453'), '200Kbps') -('frr_no_udp', '20', Decimal('3.666266'), '200Kbps') -('frr', '20', Decimal('5.896239'), '200Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '200Kbps') -('baseline_udp', '80', Decimal('8.900453'), '200Kbps') -('frr_no_udp', '80', Decimal('3.780079'), '200Kbps') -('frr', '80', Decimal('6.534879'), '200Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '200Kbps') -('baseline_udp', '40', Decimal('8.900453'), '200Kbps') -('frr_no_udp', '40', Decimal('6.108559'), '200Kbps') -('frr', '40', Decimal('7.952719'), '200Kbps') -('baseline_no_udp', '60', Decimal('6.390986'), '600Kbps') -('baseline_udp', '60', Decimal('8.900453'), '600Kbps') -('frr_no_udp', '60', Decimal('3.236239'), '600Kbps') -('frr', '60', Decimal('5.426933'), '600Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '600Kbps') -('baseline_udp', '20', Decimal('8.900453'), '600Kbps') -('frr_no_udp', '20', Decimal('2.948773'), '600Kbps') -('frr', '20', Decimal('3.091626'), '600Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '600Kbps') -('baseline_udp', '80', Decimal('8.900453'), '600Kbps') -('frr_no_udp', '80', Decimal('3.263813'), '600Kbps') -('frr', '80', Decimal('4.438213'), '600Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '600Kbps') -('baseline_udp', '40', Decimal('8.900453'), '600Kbps') -('frr_no_udp', '40', Decimal('3.022399'), '600Kbps') -('frr', '40', Decimal('4.931786'), '600Kbps') -('baseline_no_udp', '60', Decimal('6.390986'), '400Kbps') -('baseline_udp', '60', Decimal('8.900453'), '400Kbps') -('frr_no_udp', '60', Decimal('2.882919'), '400Kbps') -('frr', '60', Decimal('4.140639'), '400Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '400Kbps') -('baseline_udp', '20', Decimal('8.900453'), '400Kbps') -('frr_no_udp', '20', Decimal('3.076373'), '400Kbps') -('frr', '20', Decimal('4.464826'), '400Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '400Kbps') -('baseline_udp', '80', Decimal('8.900453'), '400Kbps') -('frr_no_udp', '80', Decimal('2.963146'), '400Kbps') -('frr', '80', Decimal('4.420373'), '400Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '400Kbps') -('baseline_udp', '40', Decimal('8.900453'), '400Kbps') -('frr_no_udp', '40', Decimal('3.075786'), '400Kbps') -('frr', '40', Decimal('5.853919'), '400Kbps') +no-udp 400Kbps 20 2.333640 +no-udp 400Kbps 40 2.549240 +no-udp 400Kbps 60 2.894200 +no-udp 400Kbps 80 2.721720 +no-udp 400Kbps base 4.521973 +no-udp 325Kbps 20 2.333640 +no-udp 325Kbps 40 2.441440 +no-udp 325Kbps 60 2.829520 +no-udp 325Kbps 80 2.700160 +no-udp 325Kbps base 4.521973 +no-udp 275Kbps 20 2.333640 +no-udp 275Kbps 40 2.441440 +no-udp 275Kbps 60 2.829520 +no-udp 275Kbps 80 2.700160 +no-udp 275Kbps base 4.521973 +no-udp 200Kbps 20 2.376760 +no-udp 200Kbps 40 2.398320 +no-udp 200Kbps 60 2.549240 +no-udp 200Kbps 80 2.721720 +no-udp 200Kbps base 4.521973 +no-udp 350Kbps 20 2.333640 +no-udp 350Kbps 40 2.441440 +no-udp 350Kbps 60 2.829520 +no-udp 350Kbps 80 2.700160 +no-udp 350Kbps base 4.521973 +no-udp 225Kbps 20 2.376760 +no-udp 225Kbps 40 2.398320 +no-udp 225Kbps 60 2.549240 +no-udp 225Kbps 80 2.721720 +no-udp 225Kbps base 4.521973 +no-udp 250Kbps 20 2.333640 +no-udp 250Kbps 40 2.441440 +no-udp 250Kbps 60 2.829520 +no-udp 250Kbps 80 2.700160 +no-udp 250Kbps base 4.521973 +no-udp 300Kbps 20 2.333640 +no-udp 300Kbps 40 2.441440 +no-udp 300Kbps 60 2.829520 +no-udp 300Kbps 80 2.700160 +no-udp 300Kbps base 4.521973 +no-udp 375Kbps 20 2.333640 +no-udp 375Kbps 40 2.441440 +no-udp 375Kbps 60 2.829520 +no-udp 375Kbps 80 2.700160 +no-udp 375Kbps base 4.521973 +udp 400Kbps 20 2.333640 +udp 400Kbps 40 2.549240 +udp 400Kbps 60 3.897306 +udp 400Kbps 80 2.721720 +udp 400Kbps base 8.540880 +udp 325Kbps 20 2.333640 +udp 325Kbps 40 2.441440 +udp 325Kbps 60 2.829520 +udp 325Kbps 80 2.700160 +udp 325Kbps base 8.540880 +udp 275Kbps 20 2.333640 +udp 275Kbps 40 2.441440 +udp 275Kbps 60 2.829520 +udp 275Kbps 80 2.700160 +udp 275Kbps base 8.540880 +udp 200Kbps 20 2.376760 +udp 200Kbps 40 2.398320 +udp 200Kbps 60 2.549240 +udp 200Kbps 80 2.721720 +udp 200Kbps base 8.540880 +udp 350Kbps 20 2.333640 +udp 350Kbps 40 2.441440 +udp 350Kbps 60 2.829520 +udp 350Kbps 80 2.700160 +udp 350Kbps base 8.540880 +udp 225Kbps 20 2.376760 +udp 225Kbps 40 2.398320 +udp 225Kbps 60 2.549240 +udp 225Kbps 80 2.721720 +udp 225Kbps base 8.540880 +udp 250Kbps 20 2.333640 +udp 250Kbps 40 2.441440 +udp 250Kbps 60 2.829520 +udp 250Kbps 80 2.700160 +udp 250Kbps base 8.540880 +udp 300Kbps 20 2.333640 +udp 300Kbps 40 2.441440 +udp 300Kbps 60 2.829520 +udp 300Kbps 80 2.700160 +udp 300Kbps base 8.540880 +udp 375Kbps 20 2.333640 +udp 375Kbps 40 2.441440 +udp 375Kbps 60 2.829520 +udp 375Kbps 80 2.700160 +udp 375Kbps base 8.540880 diff --git a/pcap_analysis/results/bandwidth_primary.txt b/pcap_analysis/results/bandwidth_primary.txt index e4b87301..d2746e00 100644 --- a/pcap_analysis/results/bandwidth_primary.txt +++ b/pcap_analysis/results/bandwidth_primary.txt @@ -1,48 +1,110 @@ -('baseline_no_udp', '60', Decimal('6.390986'), '150Kbps') -('baseline_udp', '60', Decimal('8.900453'), '150Kbps') -('frr_no_udp', '60', Decimal('3.236239'), '150Kbps') -('frr', '60', Decimal('5.426933'), '150Kbps') -('baseline_no_udp', '20', Decimal('6.390986'), '150Kbps') -('baseline_udp', '20', Decimal('8.900453'), '150Kbps') -('frr_no_udp', '20', Decimal('2.948773'), '150Kbps') -('frr', '20', Decimal('3.091626'), '150Kbps') -('baseline_no_udp', '80', Decimal('6.390986'), '150Kbps') -('baseline_udp', '80', Decimal('8.900453'), '150Kbps') -('frr_no_udp', '80', Decimal('3.263813'), '150Kbps') -('frr', '80', Decimal('4.438213'), '150Kbps') -('baseline_no_udp', '40', Decimal('6.390986'), '150Kbps') -('baseline_udp', '40', Decimal('8.900453'), '150Kbps') -('frr_no_udp', '40', Decimal('3.022399'), '150Kbps') -('frr', '40', Decimal('4.931786'), '150Kbps') -('baseline_no_udp', '60', Decimal('2.343226'), '300Kbps') -('baseline_udp', '60', Decimal('5.846693'), '300Kbps') -('frr_no_udp', '60', Decimal('2.573199'), '300Kbps') -('frr', '60', Decimal('2.815066'), '300Kbps') -('baseline_no_udp', '20', Decimal('2.343226'), '300Kbps') -('baseline_udp', '20', Decimal('5.846693'), '300Kbps') -('frr_no_udp', '20', Decimal('1.897653'), '300Kbps') -('frr', '20', Decimal('1.947653'), '300Kbps') -('baseline_no_udp', '80', Decimal('2.343226'), '300Kbps') -('baseline_udp', '80', Decimal('5.846693'), '300Kbps') -('frr_no_udp', '80', Decimal('3.004400'), '300Kbps') -('frr', '80', Decimal('2.588719'), '300Kbps') -('baseline_no_udp', '40', Decimal('2.343226'), '300Kbps') -('baseline_udp', '40', Decimal('5.846693'), '300Kbps') -('frr_no_udp', '40', Decimal('2.616319'), '300Kbps') -('frr', '40', Decimal('2.701146'), '300Kbps') -('baseline_no_udp', '60', None, '75Kbps') -('baseline_udp', '60', Decimal('10.067200'), '75Kbps') -('frr_no_udp', '60', Decimal('4.491760'), '75Kbps') -('frr', '60', None, '75Kbps') -('baseline_no_udp', '20', None, '75Kbps') -('baseline_udp', '20', Decimal('10.067200'), '75Kbps') -('frr_no_udp', '20', Decimal('5.720426'), '75Kbps') -('frr', '20', Decimal('7.686906'), '75Kbps') -('baseline_no_udp', '80', None, '75Kbps') -('baseline_udp', '80', Decimal('10.067200'), '75Kbps') -('frr_no_udp', '80', Decimal('4.355466'), '75Kbps') -('frr', '80', Decimal('10.067200'), '75Kbps') -('baseline_no_udp', '40', None, '75Kbps') -('baseline_udp', '40', Decimal('10.067200'), '75Kbps') -('frr_no_udp', '40', Decimal('4.272693'), '75Kbps') -('frr', '40', Decimal('5.272506'), '75Kbps') +no-udp 2.4Mbps 20 8.387727 +no-udp 2.4Mbps 40 10.208512 +no-udp 2.4Mbps 60 8.945613 +no-udp 2.4Mbps 80 13.109191 +no-udp 2.4Mbps base 8.918390 +no-udp 1.8Mbps 20 20.060585 +no-udp 1.8Mbps 40 7.364336 +no-udp 1.8Mbps 60 6.659601 +no-udp 1.8Mbps 80 7.969463 +no-udp 1.8Mbps base 10.100289 +no-udp 2.5Mbps 20 12.758067 +no-udp 2.5Mbps 40 12.758067 +no-udp 2.5Mbps 60 12.758067 +no-udp 2.5Mbps 80 12.758067 +no-udp 2.5Mbps base 12.758067 +no-udp 2.0Mbps 20 18.461964 +no-udp 2.0Mbps 40 11.115478 +no-udp 2.0Mbps 60 7.705913 +no-udp 2.0Mbps 80 8.192123 +no-udp 2.0Mbps base 9.837756 +no-udp 1.6Mbps 20 20.060615 +no-udp 1.6Mbps 40 5.659696 +no-udp 1.6Mbps 60 7.953970 +no-udp 1.6Mbps 80 8.169736 +no-udp 1.6Mbps base 12.286875 +no-udp 1.7Mbps 20 20.060599 +no-udp 1.7Mbps 40 5.505123 +no-udp 1.7Mbps 60 9.538374 +no-udp 1.7Mbps 80 8.087294 +no-udp 1.7Mbps base 11.387968 +no-udp 1.5Mbps 20 20.060633 +no-udp 1.5Mbps 40 15.571125 +no-udp 1.5Mbps 60 9.502702 +no-udp 1.5Mbps 80 5.628473 +no-udp 1.5Mbps base 10.166992 +no-udp 1.9Mbps 20 18.122182 +no-udp 1.9Mbps 40 7.909327 +no-udp 1.9Mbps 60 7.835575 +no-udp 1.9Mbps 80 10.192582 +no-udp 1.9Mbps base 14.141026 +no-udp 2.3Mbps 20 5.042366 +no-udp 2.3Mbps 40 8.498029 +no-udp 2.3Mbps 60 6.443622 +no-udp 2.3Mbps 80 7.517414 +no-udp 2.3Mbps base 9.217164 +no-udp 2.1Mbps 20 6.740178 +no-udp 2.1Mbps 40 4.897802 +no-udp 2.1Mbps 60 6.356414 +no-udp 2.1Mbps 80 7.397543 +no-udp 2.1Mbps base 10.727173 +no-udp 2.2Mbps 20 7.892270 +no-udp 2.2Mbps 40 6.982858 +no-udp 2.2Mbps 60 7.118296 +no-udp 2.2Mbps 80 7.291877 +no-udp 2.2Mbps base 9.133778 +udp 2.4Mbps 20 12.053757 +udp 2.4Mbps 40 12.178178 +udp 2.4Mbps 60 12.272221 +udp 2.4Mbps 80 12.272221 +udp 2.4Mbps base 12.272221 +udp 1.8Mbps 20 12.417207 +udp 1.8Mbps 40 13.777111 +udp 1.8Mbps 60 11.487594 +udp 1.8Mbps 80 13.496065 +udp 1.8Mbps base 10.966330 +udp 2.5Mbps 20 13.309856 +udp 2.5Mbps 40 13.309856 +udp 2.5Mbps 60 13.309856 +udp 2.5Mbps 80 13.309856 +udp 2.5Mbps base 13.309856 +udp 2.0Mbps 20 12.354992 +udp 2.0Mbps 40 12.784960 +udp 2.0Mbps 60 12.859072 +udp 2.0Mbps 80 12.356720 +udp 2.0Mbps base 12.645904 +udp 1.6Mbps 20 12.385364 +udp 1.6Mbps 40 12.236896 +udp 1.6Mbps 60 12.335200 +udp 1.6Mbps 80 12.893216 +udp 1.6Mbps base 11.098204 +udp 1.7Mbps 20 11.222280 +udp 1.7Mbps 40 12.036390 +udp 1.7Mbps 60 11.987047 +udp 1.7Mbps 80 13.204899 +udp 1.7Mbps base 11.437526 +udp 1.5Mbps 20 12.269349 +udp 1.5Mbps 40 12.457999 +udp 1.5Mbps 60 12.313023 +udp 1.5Mbps 80 12.836842 +udp 1.5Mbps base 10.955583 +udp 1.9Mbps 20 12.575093 +udp 1.9Mbps 40 13.269851 +udp 1.9Mbps 60 12.497408 +udp 1.9Mbps 80 11.414583 +udp 1.9Mbps base 11.261655 +udp 2.3Mbps 20 11.831956 +udp 2.3Mbps 40 11.245233 +udp 2.3Mbps 60 12.216328 +udp 2.3Mbps 80 12.216328 +udp 2.3Mbps base 12.216328 +udp 2.1Mbps 20 13.839963 +udp 2.1Mbps 40 12.463342 +udp 2.1Mbps 60 12.574896 +udp 2.1Mbps 80 11.948758 +udp 2.1Mbps base 11.948758 +udp 2.2Mbps 20 12.667370 +udp 2.2Mbps 40 12.089002 +udp 2.2Mbps 60 11.963674 +udp 2.2Mbps 80 11.963674 +udp 2.2Mbps base 11.963674 diff --git a/pcap_analysis/results/delay_all.txt b/pcap_analysis/results/delay_all.txt index 2a7beed9..e69de29b 100644 --- a/pcap_analysis/results/delay_all.txt +++ b/pcap_analysis/results/delay_all.txt @@ -1,48 +0,0 @@ -('baseline_no_udp', '60', Decimal('6.506596'), '2ms') -('baseline_udp', '60', Decimal('8.440879'), '2ms') -('frr_no_udp', '60', Decimal('2.584346'), '2ms') -('frr', '60', Decimal('3.662106'), '2ms') -('baseline_no_udp', '20', Decimal('6.506596'), '2ms') -('baseline_udp', '20', Decimal('8.440879'), '2ms') -('frr_no_udp', '20', Decimal('2.440613'), '2ms') -('frr', '20', Decimal('2.819733'), '2ms') -('baseline_no_udp', '80', Decimal('6.506596'), '2ms') -('baseline_udp', '80', Decimal('8.440879'), '2ms') -('frr_no_udp', '80', Decimal('2.276026'), '2ms') -('frr', '80', Decimal('2.468293'), '2ms') -('baseline_no_udp', '40', Decimal('6.506596'), '2ms') -('baseline_udp', '40', Decimal('8.440879'), '2ms') -('frr_no_udp', '40', Decimal('2.541226'), '2ms') -('frr', '40', Decimal('3.209306'), '2ms') -('baseline_no_udp', '60', Decimal('5.960079'), '100ms') -('baseline_udp', '60', Decimal('8.814053'), '100ms') -('frr_no_udp', '60', Decimal('6.693119'), '100ms') -('frr', '60', Decimal('7.901839'), '100ms') -('baseline_no_udp', '20', Decimal('5.960079'), '100ms') -('baseline_udp', '20', Decimal('8.814053'), '100ms') -('frr_no_udp', '20', Decimal('5.328293'), '100ms') -('frr', '20', Decimal('5.480079'), '100ms') -('baseline_no_udp', '80', Decimal('5.960079'), '100ms') -('baseline_udp', '80', Decimal('8.814053'), '100ms') -('frr_no_udp', '80', Decimal('6.290719'), '100ms') -('frr', '80', Decimal('8.015546'), '100ms') -('baseline_no_udp', '40', Decimal('5.960079'), '100ms') -('baseline_udp', '40', Decimal('8.814053'), '100ms') -('frr_no_udp', '40', Decimal('6.420666'), '100ms') -('frr', '40', Decimal('6.970586'), '100ms') -('baseline_no_udp', '60', Decimal('6.390986'), '20ms') -('baseline_udp', '60', Decimal('8.900453'), '20ms') -('frr_no_udp', '60', Decimal('3.236239'), '20ms') -('frr', '60', Decimal('5.426933'), '20ms') -('baseline_no_udp', '20', Decimal('6.390986'), '20ms') -('baseline_udp', '20', Decimal('8.900453'), '20ms') -('frr_no_udp', '20', Decimal('2.948773'), '20ms') -('frr', '20', Decimal('3.091626'), '20ms') -('baseline_no_udp', '80', Decimal('6.390986'), '20ms') -('baseline_udp', '80', Decimal('8.900453'), '20ms') -('frr_no_udp', '80', Decimal('3.263813'), '20ms') -('frr', '80', Decimal('4.438213'), '20ms') -('baseline_no_udp', '40', Decimal('6.390986'), '20ms') -('baseline_udp', '40', Decimal('8.900453'), '20ms') -('frr_no_udp', '40', Decimal('3.022399'), '20ms') -('frr', '40', Decimal('4.931786'), '20ms') diff --git a/pcap_analysis/results/delay_alternate.txt b/pcap_analysis/results/delay_alternate.txt index f5de1268..cf8976c4 100644 --- a/pcap_analysis/results/delay_alternate.txt +++ b/pcap_analysis/results/delay_alternate.txt @@ -1,96 +1,128 @@ -('baseline_no_udp', '60', Decimal('6.390986'), '40ms') -('baseline_udp', '60', Decimal('8.900453'), '40ms') -('frr_no_udp', '60', Decimal('3.013226'), '40ms') -('frr', '60', Decimal('3.856906'), '40ms') -('baseline_no_udp', '20', Decimal('6.390986'), '40ms') -('baseline_udp', '20', Decimal('8.900453'), '40ms') -('frr_no_udp', '20', Decimal('2.713919'), '40ms') -('frr', '20', Decimal('4.073279'), '40ms') -('baseline_no_udp', '80', Decimal('6.390986'), '40ms') -('baseline_udp', '80', Decimal('8.900453'), '40ms') -('frr_no_udp', '80', Decimal('3.130746'), '40ms') -('frr', '80', Decimal('3.765386'), '40ms') -('baseline_no_udp', '40', Decimal('6.390986'), '40ms') -('baseline_udp', '40', Decimal('8.900453'), '40ms') -('frr_no_udp', '40', Decimal('3.096933'), '40ms') -('frr', '40', Decimal('3.411519'), '40ms') -('baseline_no_udp', '60', Decimal('6.390986'), '80ms') -('baseline_udp', '60', Decimal('8.900453'), '80ms') -('frr_no_udp', '60', Decimal('3.561306'), '80ms') -('frr', '60', Decimal('4.803066'), '80ms') -('baseline_no_udp', '20', Decimal('6.390986'), '80ms') -('baseline_udp', '20', Decimal('8.900453'), '80ms') -('frr_no_udp', '20', Decimal('2.247733'), '80ms') -('frr', '20', Decimal('2.414586'), '80ms') -('baseline_no_udp', '80', Decimal('6.390986'), '80ms') -('baseline_udp', '80', Decimal('8.900453'), '80ms') -('frr_no_udp', '80', Decimal('3.420746'), '80ms') -('frr', '80', Decimal('4.650079'), '80ms') -('baseline_no_udp', '40', Decimal('6.390986'), '80ms') -('baseline_udp', '40', Decimal('8.900453'), '80ms') -('frr_no_udp', '40', Decimal('3.584453'), '80ms') -('frr', '40', Decimal('3.193146'), '80ms') -('baseline_no_udp', '60', Decimal('6.390986'), '100ms') -('baseline_udp', '60', Decimal('8.900453'), '100ms') -('frr_no_udp', '60', Decimal('3.334506'), '100ms') -('frr', '60', Decimal('7.730426'), '100ms') -('baseline_no_udp', '20', Decimal('6.390986'), '100ms') -('baseline_udp', '20', Decimal('8.900453'), '100ms') -('frr_no_udp', '20', Decimal('2.745199'), '100ms') -('frr', '20', Decimal('3.017493'), '100ms') -('baseline_no_udp', '80', Decimal('6.390986'), '100ms') -('baseline_udp', '80', Decimal('8.900453'), '100ms') -('frr_no_udp', '80', Decimal('3.205146'), '100ms') -('frr', '80', Decimal('6.189919'), '100ms') -('baseline_no_udp', '40', Decimal('6.390986'), '100ms') -('baseline_udp', '40', Decimal('8.900453'), '100ms') -('frr_no_udp', '40', Decimal('2.572719'), '100ms') -('frr', '40', Decimal('3.108506'), '100ms') -('baseline_no_udp', '60', Decimal('6.390986'), '60ms') -('baseline_udp', '60', Decimal('8.900453'), '60ms') -('frr_no_udp', '60', Decimal('2.963866'), '60ms') -('frr', '60', Decimal('4.019199'), '60ms') -('baseline_no_udp', '20', Decimal('6.390986'), '60ms') -('baseline_udp', '20', Decimal('8.900453'), '60ms') -('frr_no_udp', '20', Decimal('2.141519'), '60ms') -('frr', '20', Decimal('2.275653'), '60ms') -('baseline_no_udp', '80', Decimal('6.390986'), '60ms') -('baseline_udp', '80', Decimal('8.900453'), '60ms') -('frr_no_udp', '80', Decimal('2.986959'), '60ms') -('frr', '80', Decimal('4.663493'), '60ms') -('baseline_no_udp', '40', Decimal('6.390986'), '60ms') -('baseline_udp', '40', Decimal('8.900453'), '60ms') -('frr_no_udp', '40', Decimal('3.191253'), '60ms') -('frr', '40', Decimal('5.007173'), '60ms') -('baseline_no_udp', '60', Decimal('6.390986'), '20ms') -('baseline_udp', '60', Decimal('8.900453'), '20ms') -('frr_no_udp', '60', Decimal('3.236239'), '20ms') -('frr', '60', Decimal('5.426933'), '20ms') -('baseline_no_udp', '20', Decimal('6.390986'), '20ms') -('baseline_udp', '20', Decimal('8.900453'), '20ms') -('frr_no_udp', '20', Decimal('2.948773'), '20ms') -('frr', '20', Decimal('3.091626'), '20ms') -('baseline_no_udp', '80', Decimal('6.390986'), '20ms') -('baseline_udp', '80', Decimal('8.900453'), '20ms') -('frr_no_udp', '80', Decimal('3.263813'), '20ms') -('frr', '80', Decimal('4.438213'), '20ms') -('baseline_no_udp', '40', Decimal('6.390986'), '20ms') -('baseline_udp', '40', Decimal('8.900453'), '20ms') -('frr_no_udp', '40', Decimal('3.022399'), '20ms') -('frr', '40', Decimal('4.931786'), '20ms') -('baseline_no_udp', '60', Decimal('6.390986'), '0ms') -('baseline_udp', '60', Decimal('8.900453'), '0ms') -('frr_no_udp', '60', Decimal('2.889386'), '0ms') -('frr', '60', Decimal('4.923359'), '0ms') -('baseline_no_udp', '20', Decimal('6.390986'), '0ms') -('baseline_udp', '20', Decimal('8.900453'), '0ms') -('frr_no_udp', '20', Decimal('2.756319'), '0ms') -('frr', '20', Decimal('3.414959'), '0ms') -('baseline_no_udp', '80', Decimal('6.390986'), '0ms') -('baseline_udp', '80', Decimal('8.900453'), '0ms') -('frr_no_udp', '80', Decimal('2.903306'), '0ms') -('frr', '80', Decimal('3.899199'), '0ms') -('baseline_no_udp', '40', Decimal('6.390986'), '0ms') -('baseline_udp', '40', Decimal('8.900453'), '0ms') -('frr_no_udp', '40', Decimal('2.658959'), '0ms') -('frr', '40', Decimal('3.586479'), '0ms') +('baseline_no_udp', '20', Decimal('4.521973'), '40ms') +('baseline_udp', '20', Decimal('8.540880'), '40ms') +('frr_no_udp', '20', Decimal('4.521973'), '40ms') +('frr', '20', Decimal('8.540880'), '40ms') +('baseline_no_udp', '40', Decimal('4.521973'), '40ms') +('baseline_udp', '40', Decimal('8.540880'), '40ms') +('frr_no_udp', '40', Decimal('4.521973'), '40ms') +('frr', '40', Decimal('8.540880'), '40ms') +('baseline_no_udp', '60', Decimal('4.521973'), '40ms') +('baseline_udp', '60', Decimal('8.540880'), '40ms') +('frr_no_udp', '60', Decimal('4.521973'), '40ms') +('frr', '60', Decimal('8.540880'), '40ms') +('baseline_no_udp', '80', Decimal('4.521973'), '40ms') +('baseline_udp', '80', Decimal('8.540880'), '40ms') +('frr_no_udp', '80', Decimal('4.521973'), '40ms') +('frr', '80', Decimal('8.540880'), '40ms') +('baseline_no_udp', '20', Decimal('4.521973'), '20ms') +('baseline_udp', '20', Decimal('8.540880'), '20ms') +('frr_no_udp', '20', Decimal('4.521973'), '20ms') +('frr', '20', Decimal('8.540880'), '20ms') +('baseline_no_udp', '40', Decimal('4.521973'), '20ms') +('baseline_udp', '40', Decimal('8.540880'), '20ms') +('frr_no_udp', '40', Decimal('4.521973'), '20ms') +('frr', '40', Decimal('8.540880'), '20ms') +('baseline_no_udp', '60', Decimal('4.521973'), '20ms') +('baseline_udp', '60', Decimal('8.540880'), '20ms') +('frr_no_udp', '60', Decimal('4.521973'), '20ms') +('frr', '60', Decimal('8.540880'), '20ms') +('baseline_no_udp', '80', Decimal('4.521973'), '20ms') +('baseline_udp', '80', Decimal('8.540880'), '20ms') +('frr_no_udp', '80', Decimal('4.521973'), '20ms') +('frr', '80', Decimal('8.540880'), '20ms') +('baseline_no_udp', '20', Decimal('4.521973'), '30ms') +('baseline_udp', '20', Decimal('8.540880'), '30ms') +('frr_no_udp', '20', Decimal('4.521973'), '30ms') +('frr', '20', Decimal('8.540880'), '30ms') +('baseline_no_udp', '40', Decimal('4.521973'), '30ms') +('baseline_udp', '40', Decimal('8.540880'), '30ms') +('frr_no_udp', '40', Decimal('4.521973'), '30ms') +('frr', '40', Decimal('8.540880'), '30ms') +('baseline_no_udp', '60', Decimal('4.521973'), '30ms') +('baseline_udp', '60', Decimal('8.540880'), '30ms') +('frr_no_udp', '60', Decimal('4.521973'), '30ms') +('frr', '60', Decimal('8.540880'), '30ms') +('baseline_no_udp', '80', Decimal('4.521973'), '30ms') +('baseline_udp', '80', Decimal('8.540880'), '30ms') +('frr_no_udp', '80', Decimal('4.521973'), '30ms') +('frr', '80', Decimal('8.540880'), '30ms') +('baseline_no_udp', '20', Decimal('4.521973'), '0ms') +('baseline_udp', '20', Decimal('8.540880'), '0ms') +('frr_no_udp', '20', Decimal('4.521973'), '0ms') +('frr', '20', Decimal('8.540880'), '0ms') +('baseline_no_udp', '40', Decimal('4.521973'), '0ms') +('baseline_udp', '40', Decimal('8.540880'), '0ms') +('frr_no_udp', '40', Decimal('4.521973'), '0ms') +('frr', '40', Decimal('8.540880'), '0ms') +('baseline_no_udp', '60', Decimal('4.521973'), '0ms') +('baseline_udp', '60', Decimal('8.540880'), '0ms') +('frr_no_udp', '60', Decimal('4.521973'), '0ms') +('frr', '60', Decimal('8.540880'), '0ms') +('baseline_no_udp', '80', Decimal('4.521973'), '0ms') +('baseline_udp', '80', Decimal('8.540880'), '0ms') +('frr_no_udp', '80', Decimal('4.521973'), '0ms') +('frr', '80', Decimal('8.540880'), '0ms') +('baseline_no_udp', '20', Decimal('4.521973'), '100ms') +('baseline_udp', '20', Decimal('8.540880'), '100ms') +('frr_no_udp', '20', Decimal('4.521973'), '100ms') +('frr', '20', Decimal('8.540880'), '100ms') +('baseline_no_udp', '40', Decimal('4.521973'), '100ms') +('baseline_udp', '40', Decimal('8.540880'), '100ms') +('frr_no_udp', '40', Decimal('4.521973'), '100ms') +('frr', '40', Decimal('8.540880'), '100ms') +('baseline_no_udp', '60', Decimal('4.521973'), '100ms') +('baseline_udp', '60', Decimal('8.540880'), '100ms') +('frr_no_udp', '60', Decimal('4.521973'), '100ms') +('frr', '60', Decimal('8.540880'), '100ms') +('baseline_no_udp', '80', Decimal('4.521973'), '100ms') +('baseline_udp', '80', Decimal('8.540880'), '100ms') +('frr_no_udp', '80', Decimal('4.521973'), '100ms') +('frr', '80', Decimal('8.540880'), '100ms') +('baseline_no_udp', '20', Decimal('4.521973'), '60ms') +('baseline_udp', '20', Decimal('8.540880'), '60ms') +('frr_no_udp', '20', Decimal('4.521973'), '60ms') +('frr', '20', Decimal('8.540880'), '60ms') +('baseline_no_udp', '40', Decimal('4.521973'), '60ms') +('baseline_udp', '40', Decimal('8.540880'), '60ms') +('frr_no_udp', '40', Decimal('4.521973'), '60ms') +('frr', '40', Decimal('8.540880'), '60ms') +('baseline_no_udp', '60', Decimal('4.521973'), '60ms') +('baseline_udp', '60', Decimal('8.540880'), '60ms') +('frr_no_udp', '60', Decimal('4.521973'), '60ms') +('frr', '60', Decimal('8.540880'), '60ms') +('baseline_no_udp', '80', Decimal('4.521973'), '60ms') +('baseline_udp', '80', Decimal('8.540880'), '60ms') +('frr_no_udp', '80', Decimal('4.521973'), '60ms') +('frr', '80', Decimal('8.540880'), '60ms') +('baseline_no_udp', '20', Decimal('4.521973'), '10ms') +('baseline_udp', '20', Decimal('8.540880'), '10ms') +('frr_no_udp', '20', Decimal('4.521973'), '10ms') +('frr', '20', Decimal('8.540880'), '10ms') +('baseline_no_udp', '40', Decimal('4.521973'), '10ms') +('baseline_udp', '40', Decimal('8.540880'), '10ms') +('frr_no_udp', '40', Decimal('4.521973'), '10ms') +('frr', '40', Decimal('8.540880'), '10ms') +('baseline_no_udp', '60', Decimal('4.521973'), '10ms') +('baseline_udp', '60', Decimal('8.540880'), '10ms') +('frr_no_udp', '60', Decimal('4.521973'), '10ms') +('frr', '60', Decimal('8.540880'), '10ms') +('baseline_no_udp', '80', Decimal('4.521973'), '10ms') +('baseline_udp', '80', Decimal('8.540880'), '10ms') +('frr_no_udp', '80', Decimal('4.521973'), '10ms') +('frr', '80', Decimal('8.540880'), '10ms') +('baseline_no_udp', '20', Decimal('4.521973'), '80ms') +('baseline_udp', '20', Decimal('8.540880'), '80ms') +('frr_no_udp', '20', Decimal('4.521973'), '80ms') +('frr', '20', Decimal('8.540880'), '80ms') +('baseline_no_udp', '40', Decimal('4.521973'), '80ms') +('baseline_udp', '40', Decimal('8.540880'), '80ms') +('frr_no_udp', '40', Decimal('4.521973'), '80ms') +('frr', '40', Decimal('8.540880'), '80ms') +('baseline_no_udp', '60', Decimal('4.521973'), '80ms') +('baseline_udp', '60', Decimal('8.540880'), '80ms') +('frr_no_udp', '60', Decimal('4.521973'), '80ms') +('frr', '60', Decimal('8.540880'), '80ms') +('baseline_no_udp', '80', Decimal('4.521973'), '80ms') +('baseline_udp', '80', Decimal('8.540880'), '80ms') +('frr_no_udp', '80', Decimal('4.521973'), '80ms') +('frr', '80', Decimal('8.540880'), '80ms') diff --git a/pcap_analysis/results/delay_primary.txt b/pcap_analysis/results/delay_primary.txt index 975cb74b..208eda2e 100644 --- a/pcap_analysis/results/delay_primary.txt +++ b/pcap_analysis/results/delay_primary.txt @@ -1,96 +1,128 @@ -('baseline_no_udp', '60', Decimal('5.081786'), '40ms') -('baseline_udp', '60', None, '40ms') -('frr_no_udp', '60', Decimal('2.966959'), '40ms') -('frr', '60', Decimal('3.597253'), '40ms') -('baseline_no_udp', '20', Decimal('5.081786'), '40ms') -('baseline_udp', '20', None, '40ms') -('frr_no_udp', '20', Decimal('3.079999'), '40ms') -('frr', '20', Decimal('3.410399'), '40ms') -('baseline_no_udp', '80', Decimal('5.081786'), '40ms') -('baseline_udp', '80', None, '40ms') -('frr_no_udp', '80', Decimal('3.026399'), '40ms') -('frr', '80', Decimal('3.785839'), '40ms') -('baseline_no_udp', '40', Decimal('5.081786'), '40ms') -('baseline_udp', '40', None, '40ms') -('frr_no_udp', '40', Decimal('2.954533'), '40ms') -('frr', '40', Decimal('6.114773'), '40ms') -('baseline_no_udp', '60', Decimal('4.849359'), '80ms') -('baseline_udp', '60', Decimal('9.567173'), '80ms') -('frr_no_udp', '60', Decimal('3.961306'), '80ms') -('frr', '60', Decimal('4.596133'), '80ms') -('baseline_no_udp', '20', Decimal('4.849359'), '80ms') -('baseline_udp', '20', Decimal('9.567173'), '80ms') -('frr_no_udp', '20', Decimal('3.774453'), '80ms') -('frr', '20', Decimal('5.761813'), '80ms') -('baseline_no_udp', '80', Decimal('4.849359'), '80ms') -('baseline_udp', '80', Decimal('9.567173'), '80ms') -('frr_no_udp', '80', Decimal('3.961306'), '80ms') -('frr', '80', Decimal('4.229333'), '80ms') -('baseline_no_udp', '40', Decimal('4.849359'), '80ms') -('baseline_udp', '40', Decimal('9.567173'), '80ms') -('frr_no_udp', '40', Decimal('3.788826'), '80ms') -('frr', '40', Decimal('4.736853'), '80ms') -('baseline_no_udp', '60', Decimal('4.934373'), '100ms') -('baseline_udp', '60', Decimal('9.469573'), '100ms') -('frr_no_udp', '60', Decimal('3.686959'), '100ms') -('frr', '60', Decimal('4.937599'), '100ms') -('baseline_no_udp', '20', Decimal('4.934373'), '100ms') -('baseline_udp', '20', Decimal('9.469573'), '100ms') -('frr_no_udp', '20', Decimal('3.775706'), '100ms') -('frr', '20', Decimal('3.842479'), '100ms') -('baseline_no_udp', '80', Decimal('4.934373'), '100ms') -('baseline_udp', '80', Decimal('9.469573'), '100ms') -('frr_no_udp', '80', Decimal('3.784506'), '100ms') -('frr', '80', Decimal('4.461679'), '100ms') -('baseline_no_udp', '40', Decimal('4.934373'), '100ms') -('baseline_udp', '40', Decimal('9.469573'), '100ms') -('frr_no_udp', '40', Decimal('3.686959'), '100ms') -('frr', '40', Decimal('6.422719'), '100ms') -('baseline_no_udp', '60', Decimal('4.649359'), '60ms') -('baseline_udp', '60', Decimal('9.577146'), '60ms') -('frr_no_udp', '60', Decimal('3.190053'), '60ms') -('frr', '60', Decimal('3.729413'), '60ms') -('baseline_no_udp', '20', Decimal('4.649359'), '60ms') -('baseline_udp', '20', Decimal('9.577146'), '60ms') -('frr_no_udp', '20', Decimal('3.247546'), '60ms') -('frr', '20', Decimal('3.206346'), '60ms') -('baseline_no_udp', '80', Decimal('4.649359'), '60ms') -('baseline_udp', '80', Decimal('9.577146'), '60ms') -('frr_no_udp', '80', Decimal('3.305039'), '60ms') -('frr', '80', Decimal('3.954293'), '60ms') -('baseline_no_udp', '40', Decimal('4.649359'), '60ms') -('baseline_udp', '40', Decimal('9.577146'), '60ms') -('frr_no_udp', '40', Decimal('3.163839'), '60ms') -('frr', '40', Decimal('7.520399'), '60ms') -('baseline_no_udp', '60', Decimal('6.390986'), '20ms') -('baseline_udp', '60', Decimal('8.900453'), '20ms') -('frr_no_udp', '60', Decimal('3.236239'), '20ms') -('frr', '60', Decimal('5.426933'), '20ms') -('baseline_no_udp', '20', Decimal('6.390986'), '20ms') -('baseline_udp', '20', Decimal('8.900453'), '20ms') -('frr_no_udp', '20', Decimal('2.948773'), '20ms') -('frr', '20', Decimal('3.091626'), '20ms') -('baseline_no_udp', '80', Decimal('6.390986'), '20ms') -('baseline_udp', '80', Decimal('8.900453'), '20ms') -('frr_no_udp', '80', Decimal('3.263813'), '20ms') -('frr', '80', Decimal('4.438213'), '20ms') -('baseline_no_udp', '40', Decimal('6.390986'), '20ms') -('baseline_udp', '40', Decimal('8.900453'), '20ms') -('frr_no_udp', '40', Decimal('3.022399'), '20ms') -('frr', '40', Decimal('4.931786'), '20ms') -('baseline_no_udp', '60', Decimal('6.164159'), '0ms') -('baseline_udp', '60', Decimal('8.449306'), '0ms') -('frr_no_udp', '60', Decimal('2.613199'), '0ms') -('frr', '60', Decimal('2.930133'), '0ms') -('baseline_no_udp', '20', Decimal('6.164159'), '0ms') -('baseline_udp', '20', Decimal('8.449306'), '0ms') -('frr_no_udp', '20', Decimal('2.340853'), '0ms') -('frr', '20', Decimal('4.144053'), '0ms') -('baseline_no_udp', '80', Decimal('6.164159'), '0ms') -('baseline_udp', '80', Decimal('8.449306'), '0ms') -('frr_no_udp', '80', Decimal('2.657066'), '0ms') -('frr', '80', Decimal('3.339013'), '0ms') -('baseline_no_udp', '40', Decimal('6.164159'), '0ms') -('baseline_udp', '40', Decimal('8.449306'), '0ms') -('frr_no_udp', '40', Decimal('2.555706'), '0ms') -('frr', '40', Decimal('3.339919'), '0ms') +('baseline_no_udp', '20', Decimal('4.121413'), '40ms') +('baseline_udp', '20', Decimal('10.043066'), '40ms') +('frr_no_udp', '20', Decimal('4.121413'), '40ms') +('frr', '20', Decimal('10.043066'), '40ms') +('baseline_no_udp', '40', Decimal('4.121413'), '40ms') +('baseline_udp', '40', Decimal('10.043066'), '40ms') +('frr_no_udp', '40', Decimal('4.121413'), '40ms') +('frr', '40', Decimal('10.043066'), '40ms') +('baseline_no_udp', '60', Decimal('4.121413'), '40ms') +('baseline_udp', '60', Decimal('10.043066'), '40ms') +('frr_no_udp', '60', Decimal('4.121413'), '40ms') +('frr', '60', Decimal('10.043066'), '40ms') +('baseline_no_udp', '80', Decimal('4.121413'), '40ms') +('baseline_udp', '80', Decimal('10.043066'), '40ms') +('frr_no_udp', '80', Decimal('4.121413'), '40ms') +('frr', '80', Decimal('10.043066'), '40ms') +('baseline_no_udp', '20', Decimal('4.521973'), '20ms') +('baseline_udp', '20', Decimal('8.540880'), '20ms') +('frr_no_udp', '20', Decimal('4.521973'), '20ms') +('frr', '20', Decimal('8.540880'), '20ms') +('baseline_no_udp', '40', Decimal('4.521973'), '20ms') +('baseline_udp', '40', Decimal('8.540880'), '20ms') +('frr_no_udp', '40', Decimal('4.521973'), '20ms') +('frr', '40', Decimal('8.540880'), '20ms') +('baseline_no_udp', '60', Decimal('4.521973'), '20ms') +('baseline_udp', '60', Decimal('8.540880'), '20ms') +('frr_no_udp', '60', Decimal('4.521973'), '20ms') +('frr', '60', Decimal('8.540880'), '20ms') +('baseline_no_udp', '80', Decimal('4.521973'), '20ms') +('baseline_udp', '80', Decimal('8.540880'), '20ms') +('frr_no_udp', '80', Decimal('4.521973'), '20ms') +('frr', '80', Decimal('8.540880'), '20ms') +('baseline_no_udp', '20', Decimal('4.601973'), '30ms') +('baseline_udp', '20', Decimal('8.470299'), '30ms') +('frr_no_udp', '20', Decimal('4.601973'), '30ms') +('frr', '20', Decimal('8.470299'), '30ms') +('baseline_no_udp', '40', Decimal('4.601973'), '30ms') +('baseline_udp', '40', Decimal('8.470299'), '30ms') +('frr_no_udp', '40', Decimal('4.601973'), '30ms') +('frr', '40', Decimal('8.470299'), '30ms') +('baseline_no_udp', '60', Decimal('4.601973'), '30ms') +('baseline_udp', '60', Decimal('8.470299'), '30ms') +('frr_no_udp', '60', Decimal('4.601973'), '30ms') +('frr', '60', Decimal('8.470299'), '30ms') +('baseline_no_udp', '80', Decimal('4.601973'), '30ms') +('baseline_udp', '80', Decimal('8.470299'), '30ms') +('frr_no_udp', '80', Decimal('4.601973'), '30ms') +('frr', '80', Decimal('8.470299'), '30ms') +('baseline_no_udp', '20', Decimal('4.318853'), '0ms') +('baseline_udp', '20', Decimal('7.112480'), '0ms') +('frr_no_udp', '20', Decimal('4.318853'), '0ms') +('frr', '20', Decimal('7.112480'), '0ms') +('baseline_no_udp', '40', Decimal('4.318853'), '0ms') +('baseline_udp', '40', Decimal('7.112480'), '0ms') +('frr_no_udp', '40', Decimal('4.318853'), '0ms') +('frr', '40', Decimal('7.112480'), '0ms') +('baseline_no_udp', '60', Decimal('4.318853'), '0ms') +('baseline_udp', '60', Decimal('7.112480'), '0ms') +('frr_no_udp', '60', Decimal('4.318853'), '0ms') +('frr', '60', Decimal('7.112480'), '0ms') +('baseline_no_udp', '80', Decimal('4.318853'), '0ms') +('baseline_udp', '80', Decimal('7.112480'), '0ms') +('frr_no_udp', '80', Decimal('4.318853'), '0ms') +('frr', '80', Decimal('7.112480'), '0ms') +('baseline_no_udp', '20', Decimal('4.614080'), '100ms') +('baseline_udp', '20', Decimal('5.247626'), '100ms') +('frr_no_udp', '20', Decimal('4.614080'), '100ms') +('frr', '20', Decimal('5.247626'), '100ms') +('baseline_no_udp', '40', Decimal('4.614080'), '100ms') +('baseline_udp', '40', Decimal('5.247626'), '100ms') +('frr_no_udp', '40', Decimal('4.614080'), '100ms') +('frr', '40', Decimal('5.247626'), '100ms') +('baseline_no_udp', '60', Decimal('4.614080'), '100ms') +('baseline_udp', '60', Decimal('5.247626'), '100ms') +('frr_no_udp', '60', Decimal('4.614080'), '100ms') +('frr', '60', Decimal('5.247626'), '100ms') +('baseline_no_udp', '80', Decimal('4.614080'), '100ms') +('baseline_udp', '80', Decimal('5.247626'), '100ms') +('frr_no_udp', '80', Decimal('4.614080'), '100ms') +('frr', '80', Decimal('5.247626'), '100ms') +('baseline_no_udp', '20', Decimal('4.195173'), '60ms') +('baseline_udp', '20', Decimal('4.539840'), '60ms') +('frr_no_udp', '20', Decimal('4.195173'), '60ms') +('frr', '20', Decimal('4.539840'), '60ms') +('baseline_no_udp', '40', Decimal('4.195173'), '60ms') +('baseline_udp', '40', Decimal('4.539840'), '60ms') +('frr_no_udp', '40', Decimal('4.195173'), '60ms') +('frr', '40', Decimal('4.539840'), '60ms') +('baseline_no_udp', '60', Decimal('4.195173'), '60ms') +('baseline_udp', '60', Decimal('4.539840'), '60ms') +('frr_no_udp', '60', Decimal('4.195173'), '60ms') +('frr', '60', Decimal('4.539840'), '60ms') +('baseline_no_udp', '80', Decimal('4.195173'), '60ms') +('baseline_udp', '80', Decimal('4.539840'), '60ms') +('frr_no_udp', '80', Decimal('4.195173'), '60ms') +('frr', '80', Decimal('4.539840'), '60ms') +('baseline_no_udp', '20', Decimal('4.441973'), '10ms') +('baseline_udp', '20', Decimal('7.424240'), '10ms') +('frr_no_udp', '20', Decimal('4.441973'), '10ms') +('frr', '20', Decimal('7.424240'), '10ms') +('baseline_no_udp', '40', Decimal('4.441973'), '10ms') +('baseline_udp', '40', Decimal('7.424240'), '10ms') +('frr_no_udp', '40', Decimal('4.441973'), '10ms') +('frr', '40', Decimal('7.424240'), '10ms') +('baseline_no_udp', '60', Decimal('4.441973'), '10ms') +('baseline_udp', '60', Decimal('7.424240'), '10ms') +('frr_no_udp', '60', Decimal('4.441973'), '10ms') +('frr', '60', Decimal('7.424240'), '10ms') +('baseline_no_udp', '80', Decimal('4.441973'), '10ms') +('baseline_udp', '80', Decimal('7.424240'), '10ms') +('frr_no_udp', '80', Decimal('4.441973'), '10ms') +('frr', '80', Decimal('7.424240'), '10ms') +('baseline_no_udp', '20', Decimal('4.370960'), '80ms') +('baseline_udp', '20', Decimal('4.838986'), '80ms') +('frr_no_udp', '20', Decimal('4.370960'), '80ms') +('frr', '20', Decimal('4.838986'), '80ms') +('baseline_no_udp', '40', Decimal('4.370960'), '80ms') +('baseline_udp', '40', Decimal('4.838986'), '80ms') +('frr_no_udp', '40', Decimal('4.370960'), '80ms') +('frr', '40', Decimal('4.838986'), '80ms') +('baseline_no_udp', '60', Decimal('4.370960'), '80ms') +('baseline_udp', '60', Decimal('4.838986'), '80ms') +('frr_no_udp', '60', Decimal('4.370960'), '80ms') +('frr', '60', Decimal('4.838986'), '80ms') +('baseline_no_udp', '80', Decimal('4.370960'), '80ms') +('baseline_udp', '80', Decimal('4.838986'), '80ms') +('frr_no_udp', '80', Decimal('4.370960'), '80ms') +('frr', '80', Decimal('4.838986'), '80ms') diff --git a/src/combined-baseline-udp.cc b/src/combined-baseline-udp.cc index 116856b9..65b5bc1e 100644 --- a/src/combined-baseline-udp.cc +++ b/src/combined-baseline-udp.cc @@ -69,13 +69,16 @@ uint32_t segmentSize = 1024; uint32_t MTU_bytes = segmentSize + 54; // Topology parameters -std::string bandwidth_primary = "300Kbps"; -std::string bandwidth_access = "200kbps"; -std::string bandwidth_udp_access = "100kbps"; +std::string bandwidth_primary = "2Mbps"; +std::string bandwidth_access = "1Mbps"; +std::string bandwidth_udp_access = "1.5Mbps"; + std::string delay_bottleneck = "20ms"; std::string delay_access = "20ms"; std::string delay_alternate = "20ms"; -std::string bandwidth_alternate = "300kbps"; + +std::string bandwidth_alternate = "2Mbps"; + void SetupTCPConfig() { @@ -292,7 +295,7 @@ int main(int argc, char* argv[]) udp_source.SetAttribute("PacketSize", UintegerValue(1024)); ApplicationContainer udp_app = udp_source.Install(nodes.Get(0)); - udp_app.Start(Seconds(2.0)); + udp_app.Start(Seconds(5.0)); udp_app.Stop(Seconds(10.0)); DataRate b_access(bandwidth_access); diff --git a/src/combined-frr.cc b/src/combined-frr.cc index bb5987d1..a992a75b 100644 --- a/src/combined-frr.cc +++ b/src/combined-frr.cc @@ -68,13 +68,15 @@ uint32_t segmentSize = 1024; uint32_t MTU_bytes = segmentSize + 54; // Topology parameters -std::string bandwidth_primary = "300Kbps"; -std::string bandwidth_access = "200kbps"; -std::string bandwidth_udp_access = "100kbps"; + +std::string bandwidth_primary = "2Mbps"; +std::string bandwidth_access = "1Mbps"; +std::string bandwidth_udp_access = "1.5Mbps"; + std::string delay_bottleneck = "20ms"; std::string delay_access = "20ms"; std::string delay_alternate = "20ms"; -std::string bandwidth_alternate = "300kbps"; +std::string bandwidth_alternate = "2Mbps"; void SetupTCPConfig() { @@ -269,7 +271,7 @@ int main(int argc, char* argv[]) udp_source.SetAttribute("PacketSize", UintegerValue(1024)); ApplicationContainer udp_app = udp_source.Install(nodes.Get(0)); - udp_app.Start(Seconds(2.0)); + udp_app.Start(Seconds(5.0)); udp_app.Stop(Seconds(10.0)); DataRate b_access(bandwidth_access);