MCPcopy Create free account
hub / github.com/bobolike123/NetworkTrafficAnalysis / run_big_data

Function run_big_data

tools/PacketNumPerClass.py:40–82  ·  view source on GitHub ↗

对某一类数量巨大(比如接近一千万)的种类进行分批次数量统计, 如总数=批次1+批次2+……批次n :param root_path: :return:

(root_path,classname)

Source from the content-addressed store, hash-verified

38 print(sum_dict)
39
40def run_big_data(root_path,classname):
41 '''
42 对某一类数量巨大(比如接近一千万)的种类进行分批次数量统计,
43 如总数=批次1+批次2+……批次n
44 :param root_path:
45 :return:
46 '''
47 sum = 0
48 sum_list=[] #储存不同批次的计数结果
49 sum_dict = {}
50 dir_list = os.listdir(root_path)
51 print(dir_list)
52 for dir in dir_list:
53 if dir != classname :continue
54 else:
55 file_list = glob.glob(root_path + '\\' + dir + '\\*.pcap')
56 flen=len(file_list)
57 print(f'类别{dir}的Packet数正在统计,该类packet数为{flen}')
58 for i in range(10):
59 for file in file_list[int(i*flen/10):int((i+1)*flen/10)]:
60 # print(file)
61 packet_num_in_file = len(rdpcap(file))
62 sum += packet_num_in_file
63 print(f'批次{i}的Packet num = {sum}')
64 sum_list.append(sum)
65 sum = None
66 gc.collect()
67 print(sum_list)
68 '''
69 USTC-TFC2016 的benign类统计数据
70 {'BitTorrent': 15000, 'Facetime': 6000, 'FTP': 360000, 'Gmail': 25000, 'MySQL': 200000, 'Outlook': 15000,
71 'Skype': 12000, 'SMB-1': 771886, 'SMB-2': 153566, 'Weibo-1': 756067, 'Weibo-2': 151674, 'Weibo-3': 151069,
72 'Weibo-4': 151249, 'WorldOfWarcraft': 140000}
73
74 USTC-TFC2016 的malware类统计数据
75 {'Cridex': 461452, 'Geodo': 213238, 'Htbot': 169371, 'Miuref': 81208, 'Neris': 497857, 'Nsis-ay': 351537,
76 'Shifu': 499777, 'Tinba': 21912, 'Virut': 437549, 'Zeus': 86198}
77 '''
78
79 '''
80 CICIDS2017的数据
81 BotNet:18168 BruteForce:274938 DoS_DDoS: 2440595 Infiltration: 148956 PortScan:1604317 WebAttack:40791 Normal:11709971
82 '''
83
84if __name__ == '__main__':
85 # path=path_list[0]

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected