1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import os
- from metrics import anonymity_metrics
- import pandas as pd
- import json
- from datetime import datetime
- import reg_phase
- import argparse
- def main(conf):
- logging_dir = os.path.join(conf["logging"]["dir"],
- datetime.utcnow().isoformat().replace(':', '_'))
- print(f"Logs are saved to {logging_dir}")
- os.makedirs(logging_dir, exist_ok=True)
- gr_start = reg_phase.run(logging_dir, conf)
- #packetLogsDir = os.path.join(logging_dir,'packet_log.csv')
- #packetLogs = pd.read_csv(packetLogsDir, delimiter=';')
- messageLogsDir = os.path.join(logging_dir,'message_log.csv')
- msgLogs = pd.read_csv(messageLogsDir, delimiter=';')
- latency = anonymity_metrics.computeAverageE2ELatency(msgLogs, gr_start)
- print("-------- Performance metrics --------")
- print(">> Overall latency: %f seconds" % (latency))
- print("--------------------------------------------")
- if __name__ == "__main__":
- parser = argparse.ArgumentParser()
- parser.add_argument('filename')
- args = parser.parse_args()
- with open(args.filename) as f:
- conf = json.load(f)
- conf["packet"] = {"packet_size" : 0}
- conf["misc"] = {
- "id_len": 4,
- "num_target_packets": 1
- }
- conf["message"] = {
- "min_msg_size": 2,
- "max_msg_size": 2
- }
- conf["clients"]["sim_add_buffer"] = 0.0
- conf["clients"]["cover_traffic"] = False
- conf["clients"]["cover_traffic_rate"] = 1.0
- conf["clients"]["dummies_acks"] = False
- conf["clients"]["ACK"] = False
- conf["mixnodes"]["batch"] = True
- conf["mixnodes"]["avg_delay"] = 0.1
- main(conf)
|