Энтропия Шеннона:
\r\n\r\n is the end of a HTPP header:
Неполный HTTP-заголовок:
У меня есть дамп сети в формате PCAP (dump.pcap), и я пытаюсь вычислить энтропию количества пакетов в HTTP-протоколе с \r\n\r\n
и без \r\n\r\n
в заголовке с помощью Python и сравнить их. Я прочитал пакеты, используя:
import pyshark
pkts = pyshark.FileCapture('dump.pcap')
Я думаю, что Ti
в формуле shannon - это данные моего файла дампа.
dump.pcap: https://uploadfiles.io/y5c7k
Я уже вычислил энтропию IP-номеров:
import numpy as np
import collections
sample_ips = [
"131.084.001.031",
"131.084.001.031",
"131.284.001.031",
"131.284.001.031",
"131.284.001.000",
]
C = collections.Counter(sample_ips)
counts = np.array(list(C.values()),dtype=float)
#counts = np.array(C.values(),dtype=float)
prob = counts/counts.sum()
shannon_entropy = (-prob*np.log2(prob)).sum()
print (shannon_entropy)
Любая идея? Можно ли вычислить энтропию количества пакетов в HTTP-протоколе с \r\n\r\n
и без \r\n\r\n
в заголовке или это глупость?
Несколько строк дампа:
30 2017/246 11:20:00.304515 192.168.1.18 192.168.1.216 HTTP 339 GET / HTTP/1.1
GET / HTTP/1.1
Host: 192.168.1.216
accept-language: en-US,en;q=0.5
accept-encoding: gzip, deflate
accept: */*
user-agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Firefox/45.0
Connection: keep-alive
content-type: application/x-www-form-urlencoded; charset=UTF-8