|
- #!/usr/bin/env python
-
- import argparse
- import os
- import sys
- import math
-
- from scapy.all import *
-
- if __name__ == '__main__':
- parser = argparse.ArgumentParser(description='Plot two PCAP files')
- parser.add_argument('--client', metavar='<pcap file name>', help='pcap file to parse', required=True)
- parser.add_argument('--server', metavar='<pcap file name>', help='pcap file to parse', required=True)
- args = parser.parse_args()
-
- if not os.path.isfile(args.server):
- print('"{}" does not exist'.format(args.server), file=sys.stderr)
- sys.exit(-1)
- if not os.path.isfile(args.client):
- print('"{}" does not exist'.format(args.client), file=sys.stderr)
- sys.exit(-1)
-
- # calc owd
- packets_send = rdpcap(args.client)
- packets_rec = rdpcap(args.server)
-
- # check len
- PACKAGES = 4000
- if (not len(packets_send) >= PACKAGES) or (not len(packets_rec) >= PACKAGES):
- print("Nicht genug Pakete!")
- exit()
-
- owds = []
- for i in range(0, PACKAGES):
- owd = packets_rec[i].time - packets_send[i].time
- owds.append(owd)
-
- mittwelwert = sum(owds) / len(owds)
- varianz = 0
- for owd in owds:
- varianz = varianz + (owd - mittwelwert)**2
- varianz = varianz / len(owds)
- stdabw = math.sqrt(varianz)
-
- print("Mittelwert: " + str(mittwelwert))
- print("Varianz: " + str(varianz))
- print("Standardabweichung: " + str(stdabw))
|