From ca3247f797187cff4e17a054e81df7556f17c601 Mon Sep 17 00:00:00 2001 From: Toni Uhlig Date: Tue, 5 Dec 2023 07:39:50 +0100 Subject: [PATCH] Add Monero protocol classification. Signed-off-by: Toni Uhlig --- src/include/ndpi_protocol_ids.h | 1 + src/lib/ndpi_main.c | 9 +- src/lib/ndpi_private.h | 9 +- src/lib/protocols/ethereum.c | 4 +- src/lib/protocols/monero.c | 82 ++++++++++++++++++ tests/cfgs/caches_cfg/result/ookla.pcap.out | 2 +- tests/cfgs/caches_cfg/result/teams.pcap.out | 2 +- tests/cfgs/default/pcap/monero-mining.pcap | Bin 0 -> 171804 bytes tests/cfgs/default/pcap/monero.pcap | Bin 171804 -> 62260 bytes tests/cfgs/default/pcap/zcash.pcap | Bin 22988 -> 0 bytes tests/cfgs/default/result/1kxun.pcap.out | 2 +- tests/cfgs/default/result/443-chrome.pcap.out | 2 +- tests/cfgs/default/result/443-opvn.pcap.out | 2 +- .../default/result/KakaoTalk_chat.pcap.out | 2 +- .../default/result/KakaoTalk_talk.pcap.out | 2 +- tests/cfgs/default/result/Oscar.pcap.out | 2 +- .../cfgs/default/result/alexa-app.pcapng.out | 2 +- tests/cfgs/default/result/amqp.pcap.out | 2 +- .../default/result/anyconnect-vpn.pcap.out | 2 +- .../result/bittorrent_tcp_miss.pcapng.out | 2 +- tests/cfgs/default/result/cassandra.pcap.out | 2 +- .../default/result/cloudflare-warp.pcap.out | 2 +- .../result/custom_rules_ipv6.pcapng.out | 10 +-- ...om_rules_same-ip_multiple_ports.pcapng.out | 6 +- tests/cfgs/default/result/edonkey.pcap.out | 2 +- tests/cfgs/default/result/emotet.pcap.out | 2 +- tests/cfgs/default/result/fastcgi.pcap.out | 2 +- .../default/result/ftp-start-tls.pcap.out | 2 +- tests/cfgs/default/result/ftp.pcap.out | 2 +- tests/cfgs/default/result/ftp_failed.pcap.out | 2 +- .../result/fuzz-2006-06-26-2594.pcap.out | 2 +- .../result/fuzz-2006-09-29-28586.pcap.out | 2 +- .../default/result/fuzz-2021-10-13.pcap.out | 2 +- tests/cfgs/default/result/google_ssl.pcap.out | 2 +- .../result/gquic_only_from_server.pcap.out | 2 - .../http_guessed_host_and_guessed.pcapng.out | 2 +- .../default/result/imap-starttls.pcap.out | 2 +- tests/cfgs/default/result/imap.pcap.out | 2 +- tests/cfgs/default/result/instagram.pcap.out | 2 +- tests/cfgs/default/result/irc.pcap.out | 2 +- .../default/result/iso9506-1-mms.pcap.out | 2 +- tests/cfgs/default/result/jabber.pcap.out | 2 +- tests/cfgs/default/result/kerberos.pcap.out | 2 +- .../result/log4j-webapp-exploit.pcap.out | 2 +- tests/cfgs/default/result/memcached.cap.out | 2 +- .../default/result/monero-mining.pcap.out | 27 ++++++ tests/cfgs/default/result/monero.pcap.out | 18 ++-- .../result/mongo_false_positive.pcapng.out | 2 +- tests/cfgs/default/result/mssql_tds.pcap.out | 2 +- .../default/result/nest_log_sink.pcap.out | 2 +- tests/cfgs/default/result/netbios.pcap.out | 2 +- tests/cfgs/default/result/nntp.pcap.out | 2 +- tests/cfgs/default/result/ookla.pcap.out | 2 +- tests/cfgs/default/result/openvpn.pcap.out | 2 +- .../result/openvpn_nohmac_tcp.pcapng.out | 2 +- tests/cfgs/default/result/oracle12.pcapng.out | 2 +- .../ossfuzz_seed_fake_traces_1.pcapng.out | 2 +- .../ossfuzz_seed_fake_traces_2.pcapng.out | 2 +- tests/cfgs/default/result/pgsql.pcap.out | 2 +- tests/cfgs/default/result/pop3.pcap.out | 2 +- tests/cfgs/default/result/pop3_stls.pcap.out | 2 +- tests/cfgs/default/result/protobuf.pcap.out | 2 +- .../result/radius_false_positive.pcapng.out | 2 - .../result/reasm_crash_anon.pcapng.out | 2 +- .../default/result/reasm_segv_anon.pcapng.out | 2 +- tests/cfgs/default/result/riot.pcapng.out | 2 +- tests/cfgs/default/result/rsh.pcap.out | 2 +- tests/cfgs/default/result/rtmp.pcap.out | 2 +- .../cfgs/default/result/s7comm-plus.pcap.out | 2 +- tests/cfgs/default/result/s7comm.pcap.out | 2 +- .../cfgs/default/result/shadowsocks.pcap.out | 2 +- tests/cfgs/default/result/skype.pcap.out | 2 +- .../default/result/skype_no_unknown.pcap.out | 2 +- tests/cfgs/default/result/smb_frags.pcap.out | 2 +- tests/cfgs/default/result/smbv1.pcap.out | 2 +- .../default/result/smtp-starttls.pcap.out | 2 +- tests/cfgs/default/result/smtp.pcap.out | 2 +- tests/cfgs/default/result/soap.pcap.out | 2 +- tests/cfgs/default/result/socks.pcap.out | 2 +- .../default/result/starcraft_battle.pcap.out | 2 +- tests/cfgs/default/result/synscan.pcap.out | 4 +- tests/cfgs/default/result/teams.pcap.out | 2 +- .../result/telegram_videocall.pcapng.out | 2 +- tests/cfgs/default/result/telnet.pcap.out | 2 +- tests/cfgs/default/result/threema.pcap.out | 2 +- tests/cfgs/default/result/tinc.pcap.out | 2 +- .../cfgs/default/result/tls-appdata.pcap.out | 2 +- .../result/tls_certificate_too_long.pcap.out | 2 +- .../result/tls_false_positives.pcapng.out | 2 +- .../default/result/tls_invalid_reads.pcap.out | 2 +- .../result/tls_missing_ch_frag.pcap.out | 2 +- tests/cfgs/default/result/viber.pcap.out | 2 +- tests/cfgs/default/result/vnc.pcap.out | 2 +- tests/cfgs/default/result/wa_video.pcap.out | 2 +- tests/cfgs/default/result/waze.pcap.out | 2 +- tests/cfgs/default/result/wechat.pcap.out | 2 +- tests/cfgs/default/result/whatsapp.pcap.out | 2 +- .../result/whatsapp_login_chat.pcap.out | 2 +- tests/cfgs/default/result/whois.pcapng.out | 2 +- tests/cfgs/default/result/z3950.pcapng.out | 2 +- tests/cfgs/default/result/zoom.pcap.out | 2 +- .../result/ookla.pcap.out | 2 +- .../disable_protocols/result/soap.pcap.out | 2 +- .../enable_payload_stat/result/1kxun.pcap.out | 2 +- windows/nDPI.vcxproj | 2 +- 105 files changed, 235 insertions(+), 119 deletions(-) create mode 100644 src/lib/protocols/monero.c create mode 100644 tests/cfgs/default/pcap/monero-mining.pcap delete mode 100644 tests/cfgs/default/pcap/zcash.pcap create mode 100644 tests/cfgs/default/result/monero-mining.pcap.out diff --git a/src/include/ndpi_protocol_ids.h b/src/include/ndpi_protocol_ids.h index f7d516e8abc..c1ef3372b67 100644 --- a/src/include/ndpi_protocol_ids.h +++ b/src/include/ndpi_protocol_ids.h @@ -397,6 +397,7 @@ typedef enum { NDPI_PROTOCOL_ISO9506_1_MMS = 366, NDPI_PROTOCOL_IEEE_C37118 = 367, NDPI_PROTOCOL_ETHERSBUS = 368, + NDPI_PROTOCOL_MONERO = 369, #ifdef CUSTOM_NDPI_PROTOCOLS #include "../../../nDPI-custom/custom_ndpi_protocol_ids.h" diff --git a/src/lib/ndpi_main.c b/src/lib/ndpi_main.c index 75e6d5a33a2..9c327aa096a 100644 --- a/src/lib/ndpi_main.c +++ b/src/lib/ndpi_main.c @@ -2174,6 +2174,10 @@ static void ndpi_init_protocol_defaults(struct ndpi_detection_module_struct *ndp "Ether-S-Bus", NDPI_PROTOCOL_CATEGORY_IOT_SCADA, ndpi_build_default_ports(ports_a, 0, 0, 0, 0, 0) /* TCP */, ndpi_build_default_ports(ports_b, 5050, 0, 0, 0, 0) /* UDP */); + ndpi_set_proto_defaults(ndpi_str, 1 /* cleartext */, 1 /* app proto */, NDPI_PROTOCOL_ACCEPTABLE, NDPI_PROTOCOL_MONERO, + "Monero", NDPI_PROTOCOL_CATEGORY_CRYPTO_CURRENCY, + ndpi_build_default_ports(ports_a, 0, 0, 0, 0, 0) /* TCP */, + ndpi_build_default_ports(ports_b, 0, 0, 0, 0, 0) /* UDP */); #ifdef CUSTOM_NDPI_PROTOCOLS #include "../../../nDPI-custom/custom_ndpi_main.c" @@ -5659,6 +5663,9 @@ static int ndpi_callback_init(struct ndpi_detection_module_struct *ndpi_str) { /* Ether-S-Bus */ init_ethersbus_dissector(ndpi_str, &a); + /* Monero Protocol */ + init_monero_dissector(ndpi_str, &a); + #ifdef CUSTOM_NDPI_PROTOCOLS #include "../../../nDPI-custom/custom_ndpi_main_init.c" #endif @@ -7209,7 +7216,7 @@ ndpi_protocol ndpi_detection_giveup(struct ndpi_detection_module_struct *ndpi_st /* Does it looks like some Mining protocols? */ if(ret.app_protocol == NDPI_PROTOCOL_UNKNOWN && ndpi_str->mining_cache && - ndpi_lru_find_cache(ndpi_str->mining_cache, make_mining_key(flow), + ndpi_lru_find_cache(ndpi_str->mining_cache, mining_make_lru_cache_key(flow), &cached_proto, 0 /* Don't remove it as it can be used for other connections */, ndpi_get_current_time(flow))) { ndpi_set_detected_protocol(ndpi_str, flow, cached_proto, NDPI_PROTOCOL_UNKNOWN, NDPI_CONFIDENCE_DPI_PARTIAL_CACHE); diff --git a/src/lib/ndpi_private.h b/src/lib/ndpi_private.h index 9829ef0c357..92034e9a894 100644 --- a/src/lib/ndpi_private.h +++ b/src/lib/ndpi_private.h @@ -414,15 +414,16 @@ int search_into_bittorrent_cache(struct ndpi_detection_module_struct *ndpi_struc struct ndpi_flow_struct *flow); -/* Mining */ -u_int32_t make_mining_key(struct ndpi_flow_struct *flow); - /* Stun */ int stun_search_into_zoom_cache(struct ndpi_detection_module_struct *ndpi_struct, struct ndpi_flow_struct *flow); /* TPKT */ int tpkt_verify_hdr(const struct ndpi_packet_struct * const packet); +/* Mining Protocols (Ethereum, Monero, ...) */ +u_int32_t mining_make_lru_cache_key(struct ndpi_flow_struct *flow); + + /* Protocols init */ void init_diameter_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_afp_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); @@ -470,8 +471,8 @@ void init_mail_smtp_dissector(struct ndpi_detection_module_struct *ndpi_struct, void init_maplestory_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_megaco_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_mgcp_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); -void init_mining_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_mms_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); +void init_monero_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_nats_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_mpegts_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); void init_mssql_tds_dissector(struct ndpi_detection_module_struct *ndpi_struct, u_int32_t *id); diff --git a/src/lib/protocols/ethereum.c b/src/lib/protocols/ethereum.c index 5aaafc641d7..6440330ab53 100644 --- a/src/lib/protocols/ethereum.c +++ b/src/lib/protocols/ethereum.c @@ -36,7 +36,7 @@ enum ether_disc_packet_type { /* ************************************************************************** */ -static u_int32_t ndpi_ether_make_lru_cache_key(struct ndpi_flow_struct *flow) { +u_int32_t mining_make_lru_cache_key(struct ndpi_flow_struct *flow) { u_int32_t key; /* network byte order */ @@ -53,7 +53,7 @@ static u_int32_t ndpi_ether_make_lru_cache_key(struct ndpi_flow_struct *flow) { static void ndpi_ether_cache_connection(struct ndpi_detection_module_struct *ndpi_struct, struct ndpi_flow_struct *flow) { if(ndpi_struct->mining_cache) - ndpi_lru_add_to_cache(ndpi_struct->mining_cache, ndpi_ether_make_lru_cache_key(flow), NDPI_PROTOCOL_ETHEREUM, ndpi_get_current_time(flow)); + ndpi_lru_add_to_cache(ndpi_struct->mining_cache, mining_make_lru_cache_key(flow), NDPI_PROTOCOL_ETHEREUM, ndpi_get_current_time(flow)); } /* ************************************************************************** */ diff --git a/src/lib/protocols/monero.c b/src/lib/protocols/monero.c new file mode 100644 index 00000000000..ef36dabd5bf --- /dev/null +++ b/src/lib/protocols/monero.c @@ -0,0 +1,82 @@ +/* + * monero.c + * + * Copyright (C) 2023 - ntop.org + * + * This file is part of nDPI, an open source deep packet inspection + * library based on the OpenDPI and PACE technology by ipoque GmbH + * + * nDPI is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * nDPI is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with nDPI. If not, see . + * + */ + +#include "ndpi_protocol_ids.h" + +#define NDPI_CURRENT_PROTO NDPI_PROTOCOL_MONERO + +#include "ndpi_api.h" +#include "ndpi_private.h" + +static void ndpi_int_monero_add_connection(struct ndpi_detection_module_struct *ndpi_struct, + struct ndpi_flow_struct *flow) +{ + NDPI_LOG_INFO(ndpi_struct, "found Monero Protocol\n"); + + ndpi_set_detected_protocol(ndpi_struct, flow, + NDPI_PROTOCOL_MONERO, NDPI_PROTOCOL_UNKNOWN, + NDPI_CONFIDENCE_DPI); + + if(ndpi_struct->mining_cache) + { + ndpi_lru_add_to_cache(ndpi_struct->mining_cache, + mining_make_lru_cache_key(flow), + NDPI_PROTOCOL_MONERO, + ndpi_get_current_time(flow)); + } +} + +static void ndpi_search_monero(struct ndpi_detection_module_struct *ndpi_struct, + struct ndpi_flow_struct *flow) +{ + struct ndpi_packet_struct const * const packet = &ndpi_struct->packet; + + NDPI_LOG_DBG(ndpi_struct, "search Monero Protocol\n"); + + if (packet->payload_packet_len < 8) + { + NDPI_EXCLUDE_PROTO(ndpi_struct, flow); + return; + } + + if (get_u_int64_t(packet->payload, 0) == ndpi_htonll(0x0121010101010101)) + { + ndpi_int_monero_add_connection(ndpi_struct, flow); + return; + } + + NDPI_EXCLUDE_PROTO(ndpi_struct, flow); +} + +void init_monero_dissector(struct ndpi_detection_module_struct *ndpi_struct, + u_int32_t *id) +{ + ndpi_set_bitmask_protocol_detection("Monero", ndpi_struct, *id, + NDPI_PROTOCOL_MONERO, + ndpi_search_monero, + NDPI_SELECTION_BITMASK_PROTOCOL_V4_V6_TCP_WITH_PAYLOAD_WITHOUT_RETRANSMISSION, + SAVE_DETECTION_BITMASK_AS_UNKNOWN, + ADD_TO_DETECTION_BITMASK); + + *id += 1; +} diff --git a/tests/cfgs/caches_cfg/result/ookla.pcap.out b/tests/cfgs/caches_cfg/result/ookla.pcap.out index a096988476c..215ad3f7867 100644 --- a/tests/cfgs/caches_cfg/result/ookla.pcap.out +++ b/tests/cfgs/caches_cfg/result/ookla.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 40 (6.67 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 5 (flows) -Num dissector calls: 527 (87.83 diss/flow) +Num dissector calls: 530 (88.33 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/caches_cfg/result/teams.pcap.out b/tests/cfgs/caches_cfg/result/teams.pcap.out index 01013c5c416..fcccf7ba914 100644 --- a/tests/cfgs/caches_cfg/result/teams.pcap.out +++ b/tests/cfgs/caches_cfg/result/teams.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 1 (1.00 pkts/flow) Confidence Unknown : 1 (flows) Confidence Match by port : 2 (flows) Confidence DPI : 80 (flows) -Num dissector calls: 519 (6.25 diss/flow) +Num dissector calls: 520 (6.27 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/9/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/pcap/monero-mining.pcap b/tests/cfgs/default/pcap/monero-mining.pcap new file mode 100644 index 0000000000000000000000000000000000000000..67d796882e90cbb77a65052f6926c3cbeed47f11 GIT binary patch literal 171804 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 z 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 yuL!bkIDh(zi!j49WbLCq;GDoRBvq5-8shEma> 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 literal 171804 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 z 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 [21bc:b273:7f68:88d7:77a8:585:3990:927b]:1991 [proto: 379/CustomProtocolE][IP: 379/CustomProtocolE][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/1287 bytes -> 0 pkts/0 bytes][Goodput ratio: 95/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No client to server traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0] - 2 UDP [247f:855b:5e16:3caf:3f2c:4134:9592:661b]:36098 -> [21bc:b273:7f68:88d7:77a8:585:3990:927b]:50621 [proto: 380/CustomProtocolF][IP: 380/CustomProtocolF][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/1287 bytes -> 0 pkts/0 bytes][Goodput ratio: 95/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0] - 3 UDP [3ffe:507::1:200:86ff:fe05:80da]:21554 <-> [3ffe:501:4819::42]:5333 [proto: 378/CustomProtocolD][IP: 378/CustomProtocolD][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/90 bytes <-> 1 pkts/510 bytes][Goodput ratio: 31/88][0.07 sec][PLAIN TEXT (itojun)][Plen Bins: 50,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 4 UDP [fe80::76ac:b9ff:fe6c:c124]:12717 -> [ff02::1]:64315 [proto: 381/CustomProtocolG][IP: 381/CustomProtocolG][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/318 bytes -> 0 pkts/0 bytes][Goodput ratio: 80/0][< 1 sec][PLAIN TEXT (BZ.qca956)][Plen Bins: 0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 5 UDP [fe80::76ac:b9ff:fe6c:c124]:12718 -> [ff02::1]:26993 [proto: 382/CustomProtocolH][IP: 382/CustomProtocolH][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/318 bytes -> 0 pkts/0 bytes][Goodput ratio: 80/0][< 1 sec][PLAIN TEXT (BZ.qca956)][Plen Bins: 0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 1 UDP [247f:855b:5e16:3caf:3f2c:4134:9592:661b]:100 -> [21bc:b273:7f68:88d7:77a8:585:3990:927b]:1991 [proto: 380/CustomProtocolE][IP: 380/CustomProtocolE][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/1287 bytes -> 0 pkts/0 bytes][Goodput ratio: 95/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No client to server traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0] + 2 UDP [247f:855b:5e16:3caf:3f2c:4134:9592:661b]:36098 -> [21bc:b273:7f68:88d7:77a8:585:3990:927b]:50621 [proto: 381/CustomProtocolF][IP: 381/CustomProtocolF][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/1287 bytes -> 0 pkts/0 bytes][Goodput ratio: 95/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0] + 3 UDP [3ffe:507::1:200:86ff:fe05:80da]:21554 <-> [3ffe:501:4819::42]:5333 [proto: 379/CustomProtocolD][IP: 379/CustomProtocolD][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/90 bytes <-> 1 pkts/510 bytes][Goodput ratio: 31/88][0.07 sec][PLAIN TEXT (itojun)][Plen Bins: 50,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 4 UDP [fe80::76ac:b9ff:fe6c:c124]:12717 -> [ff02::1]:64315 [proto: 382/CustomProtocolG][IP: 382/CustomProtocolG][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/318 bytes -> 0 pkts/0 bytes][Goodput ratio: 80/0][< 1 sec][PLAIN TEXT (BZ.qca956)][Plen Bins: 0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 5 UDP [fe80::76ac:b9ff:fe6c:c124]:12718 -> [ff02::1]:26993 [proto: 383/CustomProtocolH][IP: 383/CustomProtocolH][ClearText][Confidence: Unknown][DPI packets: 1][1 pkts/318 bytes -> 0 pkts/0 bytes][Goodput ratio: 80/0][< 1 sec][PLAIN TEXT (BZ.qca956)][Plen Bins: 0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/cfgs/default/result/custom_rules_same-ip_multiple_ports.pcapng.out b/tests/cfgs/default/result/custom_rules_same-ip_multiple_ports.pcapng.out index 6ce3b61223b..a09a5299f17 100644 --- a/tests/cfgs/default/result/custom_rules_same-ip_multiple_ports.pcapng.out +++ b/tests/cfgs/default/result/custom_rules_same-ip_multiple_ports.pcapng.out @@ -25,6 +25,6 @@ CustomProtocolA 3 222 1 CustomProtocolB 2 148 1 Unknown 3 222 1 - 1 TCP 192.168.1.245:56866 -> 3.3.3.3:443 [proto: 91.375/TLS.CustomProtocolA][IP: 375/CustomProtocolA][Encrypted][Confidence: Unknown][DPI packets: 1][cat: Web/5][3 pkts/222 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][3.05 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 2 TCP 192.168.1.245:58288 -> 3.3.3.3:446 [proto: 400/CustomProtocolC][IP: 377/Unknown][Encrypted][Confidence: Unknown][DPI packets: 1][3 pkts/222 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][3.04 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 3 TCP 192.168.1.245:59682 -> 3.3.3.3:444 [proto: 376/CustomProtocolB][IP: 376/CustomProtocolB][ClearText][Confidence: Unknown][DPI packets: 1][2 pkts/148 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][1.02 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 1 TCP 192.168.1.245:56866 -> 3.3.3.3:443 [proto: 91.376/TLS.CustomProtocolA][IP: 376/CustomProtocolA][Encrypted][Confidence: Unknown][DPI packets: 1][cat: Web/5][3 pkts/222 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][3.05 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 2 TCP 192.168.1.245:58288 -> 3.3.3.3:446 [proto: 400/CustomProtocolC][IP: 378/Unknown][Encrypted][Confidence: Unknown][DPI packets: 1][3 pkts/222 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][3.04 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 3 TCP 192.168.1.245:59682 -> 3.3.3.3:444 [proto: 377/CustomProtocolB][IP: 377/CustomProtocolB][ClearText][Confidence: Unknown][DPI packets: 1][2 pkts/148 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][1.02 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/cfgs/default/result/edonkey.pcap.out b/tests/cfgs/default/result/edonkey.pcap.out index 68807166c35..cdad885c534 100644 --- a/tests/cfgs/default/result/edonkey.pcap.out +++ b/tests/cfgs/default/result/edonkey.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 5 (5.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 132 (132.00 diss/flow) +Num dissector calls: 133 (133.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/emotet.pcap.out b/tests/cfgs/default/result/emotet.pcap.out index 52c21def0d8..deec5968268 100644 --- a/tests/cfgs/default/result/emotet.pcap.out +++ b/tests/cfgs/default/result/emotet.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 48 (8.00 pkts/flow) Confidence DPI : 6 (flows) -Num dissector calls: 199 (33.17 diss/flow) +Num dissector calls: 200 (33.33 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/fastcgi.pcap.out b/tests/cfgs/default/result/fastcgi.pcap.out index 8d5fb7b0fc2..993ffb1962a 100644 --- a/tests/cfgs/default/result/fastcgi.pcap.out +++ b/tests/cfgs/default/result/fastcgi.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 6 (6.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 156 (156.00 diss/flow) +Num dissector calls: 157 (157.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ftp-start-tls.pcap.out b/tests/cfgs/default/result/ftp-start-tls.pcap.out index 2750ad15ba7..a453dae09c9 100644 --- a/tests/cfgs/default/result/ftp-start-tls.pcap.out +++ b/tests/cfgs/default/result/ftp-start-tls.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 17 (17.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 158 (158.00 diss/flow) +Num dissector calls: 159 (159.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ftp.pcap.out b/tests/cfgs/default/result/ftp.pcap.out index 3cdd5315280..63dd800f4e0 100644 --- a/tests/cfgs/default/result/ftp.pcap.out +++ b/tests/cfgs/default/result/ftp.pcap.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 39 (13.00 pkts/flow) Confidence Unknown : 1 (flows) Confidence DPI : 2 (flows) -Num dissector calls: 528 (176.00 diss/flow) +Num dissector calls: 530 (176.67 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ftp_failed.pcap.out b/tests/cfgs/default/result/ftp_failed.pcap.out index c479cc2a67b..186d337c7cc 100644 --- a/tests/cfgs/default/result/ftp_failed.pcap.out +++ b/tests/cfgs/default/result/ftp_failed.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 8 (8.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 157 (157.00 diss/flow) +Num dissector calls: 158 (158.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/fuzz-2006-06-26-2594.pcap.out b/tests/cfgs/default/result/fuzz-2006-06-26-2594.pcap.out index 7135c244ef7..0578cce18b6 100644 --- a/tests/cfgs/default/result/fuzz-2006-06-26-2594.pcap.out +++ b/tests/cfgs/default/result/fuzz-2006-06-26-2594.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 5 (1.00 pkts/flow) Confidence Unknown : 34 (flows) Confidence Match by port : 27 (flows) Confidence DPI : 190 (flows) -Num dissector calls: 6650 (26.49 diss/flow) +Num dissector calls: 6662 (26.54 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/189/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/fuzz-2006-09-29-28586.pcap.out b/tests/cfgs/default/result/fuzz-2006-09-29-28586.pcap.out index c0269f48323..a230f935603 100644 --- a/tests/cfgs/default/result/fuzz-2006-09-29-28586.pcap.out +++ b/tests/cfgs/default/result/fuzz-2006-09-29-28586.pcap.out @@ -5,7 +5,7 @@ DPI Packets (other): 1 (1.00 pkts/flow) Confidence Unknown : 3 (flows) Confidence Match by port : 26 (flows) Confidence DPI : 11 (flows) -Num dissector calls: 1011 (25.27 diss/flow) +Num dissector calls: 1017 (25.42 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/87/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/fuzz-2021-10-13.pcap.out b/tests/cfgs/default/result/fuzz-2021-10-13.pcap.out index 93ef0756501..c08f0f1ab19 100644 --- a/tests/cfgs/default/result/fuzz-2021-10-13.pcap.out +++ b/tests/cfgs/default/result/fuzz-2021-10-13.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 1 (1.00 pkts/flow) Confidence Unknown : 1 (flows) -Num dissector calls: 128 (128.00 diss/flow) +Num dissector calls: 129 (129.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/google_ssl.pcap.out b/tests/cfgs/default/result/google_ssl.pcap.out index 567dd0b032b..75625de8586 100644 --- a/tests/cfgs/default/result/google_ssl.pcap.out +++ b/tests/cfgs/default/result/google_ssl.pcap.out @@ -2,7 +2,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 24 (24.00 pkts/flow) Confidence Match by port : 1 (flows) -Num dissector calls: 198 (198.00 diss/flow) +Num dissector calls: 199 (199.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/gquic_only_from_server.pcap.out b/tests/cfgs/default/result/gquic_only_from_server.pcap.out index 7a0f0605cf9..086f114ca11 100644 --- a/tests/cfgs/default/result/gquic_only_from_server.pcap.out +++ b/tests/cfgs/default/result/gquic_only_from_server.pcap.out @@ -1,5 +1,3 @@ -Guessed flow protos: 0 - DPI Packets (UDP): 1 (1.00 pkts/flow) Confidence DPI : 1 (flows) Num dissector calls: 1 (1.00 diss/flow) diff --git a/tests/cfgs/default/result/http_guessed_host_and_guessed.pcapng.out b/tests/cfgs/default/result/http_guessed_host_and_guessed.pcapng.out index ec3e1dfafa4..406490dd90c 100644 --- a/tests/cfgs/default/result/http_guessed_host_and_guessed.pcapng.out +++ b/tests/cfgs/default/result/http_guessed_host_and_guessed.pcapng.out @@ -2,7 +2,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 1 (1.00 pkts/flow) Confidence Match by port : 1 (flows) -Num dissector calls: 129 (129.00 diss/flow) +Num dissector calls: 130 (130.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/imap-starttls.pcap.out b/tests/cfgs/default/result/imap-starttls.pcap.out index a8f6dbf7f10..6b1ce2e755a 100644 --- a/tests/cfgs/default/result/imap-starttls.pcap.out +++ b/tests/cfgs/default/result/imap-starttls.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 19 (19.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 208 (208.00 diss/flow) +Num dissector calls: 209 (209.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/imap.pcap.out b/tests/cfgs/default/result/imap.pcap.out index 8b5a2da31f8..cebc3f418b3 100644 --- a/tests/cfgs/default/result/imap.pcap.out +++ b/tests/cfgs/default/result/imap.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 11 (11.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 208 (208.00 diss/flow) +Num dissector calls: 209 (209.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/instagram.pcap.out b/tests/cfgs/default/result/instagram.pcap.out index 3e7b2a9e87d..27686ca1374 100644 --- a/tests/cfgs/default/result/instagram.pcap.out +++ b/tests/cfgs/default/result/instagram.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 1 (1.00 pkts/flow) Confidence Unknown : 1 (flows) Confidence Match by port : 7 (flows) Confidence DPI : 30 (flows) -Num dissector calls: 1378 (36.26 diss/flow) +Num dissector calls: 1382 (36.37 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/24/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/irc.pcap.out b/tests/cfgs/default/result/irc.pcap.out index dbd066ac681..692a08519e9 100644 --- a/tests/cfgs/default/result/irc.pcap.out +++ b/tests/cfgs/default/result/irc.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 7 (7.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 163 (163.00 diss/flow) +Num dissector calls: 164 (164.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/iso9506-1-mms.pcap.out b/tests/cfgs/default/result/iso9506-1-mms.pcap.out index 9a3a82348f2..4c72d880007 100644 --- a/tests/cfgs/default/result/iso9506-1-mms.pcap.out +++ b/tests/cfgs/default/result/iso9506-1-mms.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 7 (7.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 180 (180.00 diss/flow) +Num dissector calls: 181 (181.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/jabber.pcap.out b/tests/cfgs/default/result/jabber.pcap.out index 9685aa4c69b..d4ebc0f1695 100644 --- a/tests/cfgs/default/result/jabber.pcap.out +++ b/tests/cfgs/default/result/jabber.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 74 (6.17 pkts/flow) Confidence DPI : 12 (flows) -Num dissector calls: 1472 (122.67 diss/flow) +Num dissector calls: 1481 (123.42 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/kerberos.pcap.out b/tests/cfgs/default/result/kerberos.pcap.out index b9846873ecf..d1230e54510 100644 --- a/tests/cfgs/default/result/kerberos.pcap.out +++ b/tests/cfgs/default/result/kerberos.pcap.out @@ -4,7 +4,7 @@ DPI Packets (TCP): 77 (2.14 pkts/flow) Confidence Unknown : 2 (flows) Confidence Match by port : 23 (flows) Confidence DPI : 11 (flows) -Num dissector calls: 4059 (112.75 diss/flow) +Num dissector calls: 4084 (113.44 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/75/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/log4j-webapp-exploit.pcap.out b/tests/cfgs/default/result/log4j-webapp-exploit.pcap.out index 3fabd50ec20..2d991bac4ac 100644 --- a/tests/cfgs/default/result/log4j-webapp-exploit.pcap.out +++ b/tests/cfgs/default/result/log4j-webapp-exploit.pcap.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 56 (8.00 pkts/flow) Confidence Unknown : 2 (flows) Confidence DPI : 5 (flows) -Num dissector calls: 353 (50.43 diss/flow) +Num dissector calls: 354 (50.57 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/memcached.cap.out b/tests/cfgs/default/result/memcached.cap.out index 2f0350ae316..90fcad6cba8 100644 --- a/tests/cfgs/default/result/memcached.cap.out +++ b/tests/cfgs/default/result/memcached.cap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 6 (6.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 130 (130.00 diss/flow) +Num dissector calls: 131 (131.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/monero-mining.pcap.out b/tests/cfgs/default/result/monero-mining.pcap.out new file mode 100644 index 00000000000..68b861443ed --- /dev/null +++ b/tests/cfgs/default/result/monero-mining.pcap.out @@ -0,0 +1,27 @@ +DPI Packets (TCP): 8 (4.00 pkts/flow) +Confidence DPI : 2 (flows) +Num dissector calls: 52 (26.00 diss/flow) +LRU cache ookla: 0/0/0 (insert/search/found) +LRU cache bittorrent: 0/0/0 (insert/search/found) +LRU cache zoom: 0/0/0 (insert/search/found) +LRU cache stun: 0/0/0 (insert/search/found) +LRU cache tls_cert: 0/0/0 (insert/search/found) +LRU cache mining: 2/0/0 (insert/search/found) +LRU cache msteams: 0/0/0 (insert/search/found) +LRU cache stun_zoom: 0/0/0 (insert/search/found) +Automa host: 0/0 (search/found) +Automa domain: 0/0 (search/found) +Automa tls cert: 0/0 (search/found) +Automa risk mask: 0/0 (search/found) +Automa common alpns: 0/0 (search/found) +Patricia risk mask: 0/0 (search/found) +Patricia risk mask IPv6: 0/0 (search/found) +Patricia risk: 0/0 (search/found) +Patricia risk IPv6: 0/0 (search/found) +Patricia protocols: 4/0 (search/found) +Patricia protocols IPv6: 0/0 (search/found) + +Mining 319 166676 2 + + 1 TCP 192.168.2.148:46838 <-> 94.23.199.191:3333 [proto: 42/Mining][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Mining/99][159 pkts/143155 bytes <-> 113 pkts/13204 bytes][Goodput ratio: 93/43][1091.42 sec][currency: ZCash/Monero][bytes ratio: 0.831 (Upload)][IAT c2s/s2c min/avg/max/stddev: 0/0 7234/8131 71734/71815 15224/15291][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 900/117 1514/376 709/99][Risk: ** Unsafe Protocol **][Risk Score: 10][PLAIN TEXT (method)][Plen Bins: 28,2,0,1,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,29,0,0] + 2 TCP 192.168.2.148:53846 <-> 116.211.167.195:3333 [proto: 42/Mining][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Mining/99][24 pkts/4455 bytes <-> 23 pkts/5862 bytes][Goodput ratio: 70/78][1065.16 sec][currency: ZCash/Monero][bytes ratio: -0.136 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 46166/51528 195463/195463 61020/65306][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 186/255 1498/364 395/138][Risk: ** Unsafe Protocol **][Risk Score: 10][PLAIN TEXT (method)][Plen Bins: 4,13,4,8,0,0,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0] diff --git a/tests/cfgs/default/result/monero.pcap.out b/tests/cfgs/default/result/monero.pcap.out index 68b861443ed..416f87c8e22 100644 --- a/tests/cfgs/default/result/monero.pcap.out +++ b/tests/cfgs/default/result/monero.pcap.out @@ -1,12 +1,12 @@ -DPI Packets (TCP): 8 (4.00 pkts/flow) -Confidence DPI : 2 (flows) -Num dissector calls: 52 (26.00 diss/flow) +DPI Packets (TCP): 16 (4.00 pkts/flow) +Confidence DPI : 4 (flows) +Num dissector calls: 520 (130.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) LRU cache stun: 0/0/0 (insert/search/found) LRU cache tls_cert: 0/0/0 (insert/search/found) -LRU cache mining: 2/0/0 (insert/search/found) +LRU cache mining: 4/0/0 (insert/search/found) LRU cache msteams: 0/0/0 (insert/search/found) LRU cache stun_zoom: 0/0/0 (insert/search/found) Automa host: 0/0 (search/found) @@ -18,10 +18,12 @@ Patricia risk mask: 0/0 (search/found) Patricia risk mask IPv6: 0/0 (search/found) Patricia risk: 0/0 (search/found) Patricia risk IPv6: 0/0 (search/found) -Patricia protocols: 4/0 (search/found) +Patricia protocols: 8/0 (search/found) Patricia protocols IPv6: 0/0 (search/found) -Mining 319 166676 2 +Monero 60 61276 4 - 1 TCP 192.168.2.148:46838 <-> 94.23.199.191:3333 [proto: 42/Mining][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Mining/99][159 pkts/143155 bytes <-> 113 pkts/13204 bytes][Goodput ratio: 93/43][1091.42 sec][currency: ZCash/Monero][bytes ratio: 0.831 (Upload)][IAT c2s/s2c min/avg/max/stddev: 0/0 7234/8131 71734/71815 15224/15291][Pkt Len c2s/s2c min/avg/max/stddev: 66/66 900/117 1514/376 709/99][Risk: ** Unsafe Protocol **][Risk Score: 10][PLAIN TEXT (method)][Plen Bins: 28,2,0,1,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,29,0,0] - 2 TCP 192.168.2.148:53846 <-> 116.211.167.195:3333 [proto: 42/Mining][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Mining/99][24 pkts/4455 bytes <-> 23 pkts/5862 bytes][Goodput ratio: 70/78][1065.16 sec][currency: ZCash/Monero][bytes ratio: -0.136 (Mixed)][IAT c2s/s2c min/avg/max/stddev: 0/0 46166/51528 195463/195463 61020/65306][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 186/255 1498/364 395/138][Risk: ** Unsafe Protocol **][Risk Score: 10][PLAIN TEXT (method)][Plen Bins: 4,13,4,8,0,0,0,0,0,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,4,0,0] + 1 TCP 192.168.2.100:48882 <-> 159.69.36.66:18080 [proto: 369/Monero][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Crypto_Currency/106][10 pkts/907 bytes <-> 5 pkts/14808 bytes][Goodput ratio: 32/98][0.05 sec][bytes ratio: -0.885 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 6/6 25/19 10/8][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 91/2962 349/7314 86/2751][PLAIN TEXT (network)][Plen Bins: 0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,75] + 2 TCP 192.168.2.100:39378 <-> 78.56.22.89:18080 [proto: 369/Monero][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Crypto_Currency/106][7 pkts/709 bytes <-> 8 pkts/14970 bytes][Goodput ratio: 42/97][0.11 sec][bytes ratio: -0.910 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 21/9 54/50 26/18][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 101/1871 349/2958 101/1201][PLAIN TEXT (network)][Plen Bins: 0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,57] + 3 TCP 192.168.2.100:38004 <-> 100.42.27.58:18085 [proto: 369/Monero][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Crypto_Currency/106][5 pkts/577 bytes <-> 10 pkts/15078 bytes][Goodput ratio: 51/96][0.23 sec][bytes ratio: -0.926 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 75/14 115/110 53/36][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 115/1508 349/2958 117/915][PLAIN TEXT (network)][Plen Bins: 0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,66,0,22] + 4 TCP 192.168.2.100:42810 <-> 62.210.127.86:18080 [proto: 369/Monero][IP: 0/Unknown][ClearText][Confidence: DPI][DPI packets: 4][cat: Crypto_Currency/106][7 pkts/709 bytes <-> 8 pkts/13518 bytes][Goodput ratio: 42/97][< 1 sec][bytes ratio: -0.900 (Download)][IAT c2s/s2c min/avg/max/stddev: 0/0 10/4 25/24 12/9][Pkt Len c2s/s2c min/avg/max/stddev: 54/60 101/1690 349/2958 101/1130][PLAIN TEXT (network)][Plen Bins: 0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,42,0,42] diff --git a/tests/cfgs/default/result/mongo_false_positive.pcapng.out b/tests/cfgs/default/result/mongo_false_positive.pcapng.out index c2418ae8b02..d242c6a75f8 100644 --- a/tests/cfgs/default/result/mongo_false_positive.pcapng.out +++ b/tests/cfgs/default/result/mongo_false_positive.pcapng.out @@ -2,7 +2,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 14 (14.00 pkts/flow) Confidence Match by port : 1 (flows) -Num dissector calls: 272 (272.00 diss/flow) +Num dissector calls: 273 (273.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/mssql_tds.pcap.out b/tests/cfgs/default/result/mssql_tds.pcap.out index 638299a8bf4..11e978f9818 100644 --- a/tests/cfgs/default/result/mssql_tds.pcap.out +++ b/tests/cfgs/default/result/mssql_tds.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 18 (1.50 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 11 (flows) -Num dissector calls: 273 (22.75 diss/flow) +Num dissector calls: 274 (22.83 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/nest_log_sink.pcap.out b/tests/cfgs/default/result/nest_log_sink.pcap.out index 7b66167e0f8..f97d2c4a8cc 100644 --- a/tests/cfgs/default/result/nest_log_sink.pcap.out +++ b/tests/cfgs/default/result/nest_log_sink.pcap.out @@ -4,7 +4,7 @@ DPI Packets (TCP): 130 (10.00 pkts/flow) DPI Packets (UDP): 2 (2.00 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 13 (flows) -Num dissector calls: 1921 (137.21 diss/flow) +Num dissector calls: 1933 (138.07 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/netbios.pcap.out b/tests/cfgs/default/result/netbios.pcap.out index 4bd0c98e59f..83a5674732a 100644 --- a/tests/cfgs/default/result/netbios.pcap.out +++ b/tests/cfgs/default/result/netbios.pcap.out @@ -4,7 +4,7 @@ DPI Packets (TCP): 2 (2.00 pkts/flow) DPI Packets (UDP): 14 (1.00 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 14 (flows) -Num dissector calls: 143 (9.53 diss/flow) +Num dissector calls: 144 (9.60 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/nntp.pcap.out b/tests/cfgs/default/result/nntp.pcap.out index a9e58c752ef..0c4c4adb02f 100644 --- a/tests/cfgs/default/result/nntp.pcap.out +++ b/tests/cfgs/default/result/nntp.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 6 (6.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 136 (136.00 diss/flow) +Num dissector calls: 137 (137.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ookla.pcap.out b/tests/cfgs/default/result/ookla.pcap.out index 1f6125592f5..0a31627ecb4 100644 --- a/tests/cfgs/default/result/ookla.pcap.out +++ b/tests/cfgs/default/result/ookla.pcap.out @@ -4,7 +4,7 @@ DPI Packets (TCP): 40 (6.67 pkts/flow) Confidence DPI (partial cache): 1 (flows) Confidence DPI : 4 (flows) Confidence DPI (aggressive) : 1 (flows) -Num dissector calls: 527 (87.83 diss/flow) +Num dissector calls: 530 (88.33 diss/flow) LRU cache ookla: 4/2/2 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/openvpn.pcap.out b/tests/cfgs/default/result/openvpn.pcap.out index 7527cf09a72..2da3877fc12 100644 --- a/tests/cfgs/default/result/openvpn.pcap.out +++ b/tests/cfgs/default/result/openvpn.pcap.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 24 (8.00 pkts/flow) DPI Packets (UDP): 15 (3.00 pkts/flow) Confidence DPI : 8 (flows) -Num dissector calls: 1229 (153.62 diss/flow) +Num dissector calls: 1232 (154.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/openvpn_nohmac_tcp.pcapng.out b/tests/cfgs/default/result/openvpn_nohmac_tcp.pcapng.out index b8b3cc83ff7..300605f3df4 100644 --- a/tests/cfgs/default/result/openvpn_nohmac_tcp.pcapng.out +++ b/tests/cfgs/default/result/openvpn_nohmac_tcp.pcapng.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 6 (6.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 130 (130.00 diss/flow) +Num dissector calls: 131 (131.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/oracle12.pcapng.out b/tests/cfgs/default/result/oracle12.pcapng.out index 81bd7ab4394..8f863f1bf0f 100644 --- a/tests/cfgs/default/result/oracle12.pcapng.out +++ b/tests/cfgs/default/result/oracle12.pcapng.out @@ -2,7 +2,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 20 (20.00 pkts/flow) Confidence Match by port : 1 (flows) -Num dissector calls: 264 (264.00 diss/flow) +Num dissector calls: 265 (265.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ossfuzz_seed_fake_traces_1.pcapng.out b/tests/cfgs/default/result/ossfuzz_seed_fake_traces_1.pcapng.out index d46dca9c3aa..755ddfadfd3 100644 --- a/tests/cfgs/default/result/ossfuzz_seed_fake_traces_1.pcapng.out +++ b/tests/cfgs/default/result/ossfuzz_seed_fake_traces_1.pcapng.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 8 (1.33 pkts/flow) DPI Packets (UDP): 9 (2.25 pkts/flow) Confidence DPI : 10 (flows) -Num dissector calls: 724 (72.40 diss/flow) +Num dissector calls: 726 (72.60 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/ossfuzz_seed_fake_traces_2.pcapng.out b/tests/cfgs/default/result/ossfuzz_seed_fake_traces_2.pcapng.out index be4dbeebfa4..95f14b3b630 100644 --- a/tests/cfgs/default/result/ossfuzz_seed_fake_traces_2.pcapng.out +++ b/tests/cfgs/default/result/ossfuzz_seed_fake_traces_2.pcapng.out @@ -4,7 +4,7 @@ DPI Packets (TCP): 18 (6.00 pkts/flow) DPI Packets (UDP): 4 (2.00 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 4 (flows) -Num dissector calls: 666 (133.20 diss/flow) +Num dissector calls: 669 (133.80 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/pgsql.pcap.out b/tests/cfgs/default/result/pgsql.pcap.out index 14f89d9105a..0a4cf84fdbd 100644 --- a/tests/cfgs/default/result/pgsql.pcap.out +++ b/tests/cfgs/default/result/pgsql.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 36 (6.00 pkts/flow) Confidence DPI : 6 (flows) -Num dissector calls: 780 (130.00 diss/flow) +Num dissector calls: 786 (131.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/pop3.pcap.out b/tests/cfgs/default/result/pop3.pcap.out index 463de4498e0..fe15b7939cd 100644 --- a/tests/cfgs/default/result/pop3.pcap.out +++ b/tests/cfgs/default/result/pop3.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 83 (13.83 pkts/flow) Confidence DPI : 6 (flows) -Num dissector calls: 1181 (196.83 diss/flow) +Num dissector calls: 1187 (197.83 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/pop3_stls.pcap.out b/tests/cfgs/default/result/pop3_stls.pcap.out index 38649688b25..c22efa09762 100644 --- a/tests/cfgs/default/result/pop3_stls.pcap.out +++ b/tests/cfgs/default/result/pop3_stls.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 18 (18.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 196 (196.00 diss/flow) +Num dissector calls: 197 (197.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/protobuf.pcap.out b/tests/cfgs/default/result/protobuf.pcap.out index 0327cbcbce5..e8d0c96425a 100644 --- a/tests/cfgs/default/result/protobuf.pcap.out +++ b/tests/cfgs/default/result/protobuf.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 26 (5.20 pkts/flow) Confidence DPI : 5 (flows) -Num dissector calls: 698 (139.60 diss/flow) +Num dissector calls: 699 (139.80 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/radius_false_positive.pcapng.out b/tests/cfgs/default/result/radius_false_positive.pcapng.out index 9fc1b175067..59fc0c893fc 100644 --- a/tests/cfgs/default/result/radius_false_positive.pcapng.out +++ b/tests/cfgs/default/result/radius_false_positive.pcapng.out @@ -1,5 +1,3 @@ -Guessed flow protos: 0 - DPI Packets (UDP): 1 (1.00 pkts/flow) Confidence DPI : 1 (flows) Num dissector calls: 1 (1.00 diss/flow) diff --git a/tests/cfgs/default/result/reasm_crash_anon.pcapng.out b/tests/cfgs/default/result/reasm_crash_anon.pcapng.out index 705c1853b98..6f208782777 100644 --- a/tests/cfgs/default/result/reasm_crash_anon.pcapng.out +++ b/tests/cfgs/default/result/reasm_crash_anon.pcapng.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 23 (23.00 pkts/flow) Confidence Unknown : 1 (flows) -Num dissector calls: 252 (252.00 diss/flow) +Num dissector calls: 253 (253.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/reasm_segv_anon.pcapng.out b/tests/cfgs/default/result/reasm_segv_anon.pcapng.out index c207fd236f2..d194ffa85e9 100644 --- a/tests/cfgs/default/result/reasm_segv_anon.pcapng.out +++ b/tests/cfgs/default/result/reasm_segv_anon.pcapng.out @@ -2,7 +2,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 21 (21.00 pkts/flow) Confidence Match by port : 1 (flows) -Num dissector calls: 199 (199.00 diss/flow) +Num dissector calls: 200 (200.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/riot.pcapng.out b/tests/cfgs/default/result/riot.pcapng.out index a5ef1172ed6..b6c361991b8 100644 --- a/tests/cfgs/default/result/riot.pcapng.out +++ b/tests/cfgs/default/result/riot.pcapng.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 7 (3.50 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 1 (flows) -Num dissector calls: 189 (94.50 diss/flow) +Num dissector calls: 190 (95.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/rsh.pcap.out b/tests/cfgs/default/result/rsh.pcap.out index af73a857ff2..30c8a0bd7fb 100644 --- a/tests/cfgs/default/result/rsh.pcap.out +++ b/tests/cfgs/default/result/rsh.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 12 (6.00 pkts/flow) Confidence DPI : 2 (flows) -Num dissector calls: 306 (153.00 diss/flow) +Num dissector calls: 308 (154.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/rtmp.pcap.out b/tests/cfgs/default/result/rtmp.pcap.out index 760b44b18b3..e41a86ee0dd 100644 --- a/tests/cfgs/default/result/rtmp.pcap.out +++ b/tests/cfgs/default/result/rtmp.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 8 (8.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 160 (160.00 diss/flow) +Num dissector calls: 161 (161.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/s7comm-plus.pcap.out b/tests/cfgs/default/result/s7comm-plus.pcap.out index 81e672877d8..ea12e876c62 100644 --- a/tests/cfgs/default/result/s7comm-plus.pcap.out +++ b/tests/cfgs/default/result/s7comm-plus.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 9 (9.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 174 (174.00 diss/flow) +Num dissector calls: 175 (175.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/s7comm.pcap.out b/tests/cfgs/default/result/s7comm.pcap.out index 9a794e9997c..67933eb25c6 100644 --- a/tests/cfgs/default/result/s7comm.pcap.out +++ b/tests/cfgs/default/result/s7comm.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 3 (3.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 176 (176.00 diss/flow) +Num dissector calls: 177 (177.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/shadowsocks.pcap.out b/tests/cfgs/default/result/shadowsocks.pcap.out index 153cda694a6..766fd22e60e 100644 --- a/tests/cfgs/default/result/shadowsocks.pcap.out +++ b/tests/cfgs/default/result/shadowsocks.pcap.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 21 (10.50 pkts/flow) Confidence Unknown : 1 (flows) Confidence DPI : 1 (flows) -Num dissector calls: 342 (171.00 diss/flow) +Num dissector calls: 344 (172.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/skype.pcap.out b/tests/cfgs/default/result/skype.pcap.out index dd506e06f90..cb7a879857f 100644 --- a/tests/cfgs/default/result/skype.pcap.out +++ b/tests/cfgs/default/result/skype.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 5 (1.00 pkts/flow) Confidence Unknown : 59 (flows) Confidence Match by port : 28 (flows) Confidence DPI : 206 (flows) -Num dissector calls: 27376 (93.43 diss/flow) +Num dissector calls: 27462 (93.73 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/261/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/skype_no_unknown.pcap.out b/tests/cfgs/default/result/skype_no_unknown.pcap.out index 709c4691cd5..e5cd75d097c 100644 --- a/tests/cfgs/default/result/skype_no_unknown.pcap.out +++ b/tests/cfgs/default/result/skype_no_unknown.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 5 (1.00 pkts/flow) Confidence Unknown : 44 (flows) Confidence Match by port : 22 (flows) Confidence DPI : 201 (flows) -Num dissector calls: 22753 (85.22 diss/flow) +Num dissector calls: 22817 (85.46 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/198/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/smb_frags.pcap.out b/tests/cfgs/default/result/smb_frags.pcap.out index 7c4327948eb..7886472600b 100644 --- a/tests/cfgs/default/result/smb_frags.pcap.out +++ b/tests/cfgs/default/result/smb_frags.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 5 (5.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 159 (159.00 diss/flow) +Num dissector calls: 160 (160.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/smbv1.pcap.out b/tests/cfgs/default/result/smbv1.pcap.out index 5c0204a3358..b6ad43741cf 100644 --- a/tests/cfgs/default/result/smbv1.pcap.out +++ b/tests/cfgs/default/result/smbv1.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 3 (3.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 161 (161.00 diss/flow) +Num dissector calls: 162 (162.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/smtp-starttls.pcap.out b/tests/cfgs/default/result/smtp-starttls.pcap.out index ca9284cae07..36842ade089 100644 --- a/tests/cfgs/default/result/smtp-starttls.pcap.out +++ b/tests/cfgs/default/result/smtp-starttls.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 26 (13.00 pkts/flow) Confidence DPI : 2 (flows) -Num dissector calls: 157 (78.50 diss/flow) +Num dissector calls: 158 (79.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/smtp.pcap.out b/tests/cfgs/default/result/smtp.pcap.out index 9663c0c0c79..af1e233c820 100644 --- a/tests/cfgs/default/result/smtp.pcap.out +++ b/tests/cfgs/default/result/smtp.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 11 (11.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 202 (202.00 diss/flow) +Num dissector calls: 203 (203.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/soap.pcap.out b/tests/cfgs/default/result/soap.pcap.out index e236eb9a287..2e98045626e 100644 --- a/tests/cfgs/default/result/soap.pcap.out +++ b/tests/cfgs/default/result/soap.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 20 (6.67 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 2 (flows) -Num dissector calls: 386 (128.67 diss/flow) +Num dissector calls: 388 (129.33 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/socks.pcap.out b/tests/cfgs/default/result/socks.pcap.out index 0f51283973f..9369112008e 100644 --- a/tests/cfgs/default/result/socks.pcap.out +++ b/tests/cfgs/default/result/socks.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 23 (5.75 pkts/flow) Confidence DPI : 4 (flows) -Num dissector calls: 522 (130.50 diss/flow) +Num dissector calls: 526 (131.50 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/starcraft_battle.pcap.out b/tests/cfgs/default/result/starcraft_battle.pcap.out index 0bf5bddaffa..6ad9807c5ec 100644 --- a/tests/cfgs/default/result/starcraft_battle.pcap.out +++ b/tests/cfgs/default/result/starcraft_battle.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 1 (1.00 pkts/flow) Confidence Match by port : 12 (flows) Confidence DPI : 39 (flows) Confidence Match by IP : 1 (flows) -Num dissector calls: 1535 (29.52 diss/flow) +Num dissector calls: 1538 (29.58 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/39/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/synscan.pcap.out b/tests/cfgs/default/result/synscan.pcap.out index 8481dc0771b..0001c015171 100644 --- a/tests/cfgs/default/result/synscan.pcap.out +++ b/tests/cfgs/default/result/synscan.pcap.out @@ -129,7 +129,7 @@ iSCSI 2 116 2 45 TCP 172.16.0.8:36050 -> 64.13.134.52:2605 [proto: 13/BGP][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 46 TCP 172.16.0.8:36050 -> 64.13.134.52:3000 [proto: 26/ntop][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 47 TCP 172.16.0.8:36050 -> 64.13.134.52:3128 [proto: 131/HTTP_Proxy][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Web/5][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 48 TCP 172.16.0.8:36050 -> 64.13.134.52:3260 [proto: 369/iSCSI][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 48 TCP 172.16.0.8:36050 -> 64.13.134.52:3260 [proto: 370/iSCSI][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 49 TCP 172.16.0.8:36050 -> 64.13.134.52:3306 [proto: 20/MySQL][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Database/11][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 50 TCP 172.16.0.8:36050 -> 64.13.134.52:3389 [proto: 88/RDP][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: RemoteAccess/12][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Desktop/File Sharing **** Unidirectional Traffic **][Risk Score: 20][Risk Info: No server to client traffic / Found RDP][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 51 TCP 172.16.0.8:36050 -> 64.13.134.52:4343 [proto: 170/Whois-DAS][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] @@ -194,7 +194,7 @@ iSCSI 2 116 2 110 TCP 172.16.0.8:36051 -> 64.13.134.52:2605 [proto: 13/BGP][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 111 TCP 172.16.0.8:36051 -> 64.13.134.52:3000 [proto: 26/ntop][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 112 TCP 172.16.0.8:36051 -> 64.13.134.52:3128 [proto: 131/HTTP_Proxy][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Web/5][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] - 113 TCP 172.16.0.8:36051 -> 64.13.134.52:3260 [proto: 369/iSCSI][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] + 113 TCP 172.16.0.8:36051 -> 64.13.134.52:3260 [proto: 370/iSCSI][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 114 TCP 172.16.0.8:36051 -> 64.13.134.52:3306 [proto: 20/MySQL][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Database/11][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 115 TCP 172.16.0.8:36051 -> 64.13.134.52:3389 [proto: 88/RDP][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: RemoteAccess/12][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Desktop/File Sharing **** Unidirectional Traffic **][Risk Score: 20][Risk Info: No server to client traffic / Found RDP][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 116 TCP 172.16.0.8:36051 -> 64.13.134.52:4343 [proto: 170/Whois-DAS][IP: 0/Unknown][ClearText][Confidence: Match by port][DPI packets: 1][cat: Network/14][1 pkts/58 bytes -> 0 pkts/0 bytes][Goodput ratio: 0/0][< 1 sec][Risk: ** Unidirectional Traffic **][Risk Score: 10][Risk Info: No server to client traffic][Plen Bins: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] diff --git a/tests/cfgs/default/result/teams.pcap.out b/tests/cfgs/default/result/teams.pcap.out index 766aa6eb44c..987aa45ca19 100644 --- a/tests/cfgs/default/result/teams.pcap.out +++ b/tests/cfgs/default/result/teams.pcap.out @@ -7,7 +7,7 @@ Confidence Unknown : 1 (flows) Confidence Match by port : 2 (flows) Confidence DPI (partial) : 4 (flows) Confidence DPI : 76 (flows) -Num dissector calls: 519 (6.25 diss/flow) +Num dissector calls: 520 (6.27 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/9/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/telegram_videocall.pcapng.out b/tests/cfgs/default/result/telegram_videocall.pcapng.out index d87aed34b44..f8a9fdef873 100644 --- a/tests/cfgs/default/result/telegram_videocall.pcapng.out +++ b/tests/cfgs/default/result/telegram_videocall.pcapng.out @@ -7,7 +7,7 @@ Confidence Match by port : 8 (flows) Confidence DPI (cache) : 10 (flows) Confidence DPI : 15 (flows) Confidence Match by IP : 1 (flows) -Num dissector calls: 1933 (56.85 diss/flow) +Num dissector calls: 1941 (57.09 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/27/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/telnet.pcap.out b/tests/cfgs/default/result/telnet.pcap.out index ba3e0317e7d..49dd3ea0337 100644 --- a/tests/cfgs/default/result/telnet.pcap.out +++ b/tests/cfgs/default/result/telnet.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 33 (33.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 157 (157.00 diss/flow) +Num dissector calls: 158 (158.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/threema.pcap.out b/tests/cfgs/default/result/threema.pcap.out index cb85005bc5c..713d7292068 100644 --- a/tests/cfgs/default/result/threema.pcap.out +++ b/tests/cfgs/default/result/threema.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 2 DPI Packets (TCP): 66 (11.00 pkts/flow) Confidence DPI : 4 (flows) Confidence Match by IP : 2 (flows) -Num dissector calls: 1278 (213.00 diss/flow) +Num dissector calls: 1284 (214.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tinc.pcap.out b/tests/cfgs/default/result/tinc.pcap.out index 832fa5d1a4a..07eb2436b87 100644 --- a/tests/cfgs/default/result/tinc.pcap.out +++ b/tests/cfgs/default/result/tinc.pcap.out @@ -2,7 +2,7 @@ DPI Packets (TCP): 19 (9.50 pkts/flow) DPI Packets (UDP): 2 (1.00 pkts/flow) Confidence DPI (cache) : 2 (flows) Confidence DPI : 2 (flows) -Num dissector calls: 513 (128.25 diss/flow) +Num dissector calls: 515 (128.75 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tls-appdata.pcap.out b/tests/cfgs/default/result/tls-appdata.pcap.out index 241ef5a1395..f7ac6d2a157 100644 --- a/tests/cfgs/default/result/tls-appdata.pcap.out +++ b/tests/cfgs/default/result/tls-appdata.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 17 (8.50 pkts/flow) Confidence DPI : 2 (flows) -Num dissector calls: 131 (65.50 diss/flow) +Num dissector calls: 132 (66.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tls_certificate_too_long.pcap.out b/tests/cfgs/default/result/tls_certificate_too_long.pcap.out index 54f7f4760d1..25d67b66258 100644 --- a/tests/cfgs/default/result/tls_certificate_too_long.pcap.out +++ b/tests/cfgs/default/result/tls_certificate_too_long.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 2 (1.00 pkts/flow) Confidence Unknown : 1 (flows) Confidence Match by port : 1 (flows) Confidence DPI : 33 (flows) -Num dissector calls: 598 (17.09 diss/flow) +Num dissector calls: 601 (17.17 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tls_false_positives.pcapng.out b/tests/cfgs/default/result/tls_false_positives.pcapng.out index d04f982ff76..c953fe6f811 100644 --- a/tests/cfgs/default/result/tls_false_positives.pcapng.out +++ b/tests/cfgs/default/result/tls_false_positives.pcapng.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 13 (13.00 pkts/flow) Confidence Unknown : 1 (flows) -Num dissector calls: 259 (259.00 diss/flow) +Num dissector calls: 260 (260.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tls_invalid_reads.pcap.out b/tests/cfgs/default/result/tls_invalid_reads.pcap.out index e2b6353a858..42991f90710 100644 --- a/tests/cfgs/default/result/tls_invalid_reads.pcap.out +++ b/tests/cfgs/default/result/tls_invalid_reads.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 10 (3.33 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 2 (flows) -Num dissector calls: 131 (43.67 diss/flow) +Num dissector calls: 132 (44.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/tls_missing_ch_frag.pcap.out b/tests/cfgs/default/result/tls_missing_ch_frag.pcap.out index 65d5e1a0058..2dc522cd675 100644 --- a/tests/cfgs/default/result/tls_missing_ch_frag.pcap.out +++ b/tests/cfgs/default/result/tls_missing_ch_frag.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 3 (3.00 pkts/flow) Confidence DPI : 1 (flows) -Num dissector calls: 130 (130.00 diss/flow) +Num dissector calls: 131 (131.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/viber.pcap.out b/tests/cfgs/default/result/viber.pcap.out index bd9a967ecb7..ec87feb57ab 100644 --- a/tests/cfgs/default/result/viber.pcap.out +++ b/tests/cfgs/default/result/viber.pcap.out @@ -5,7 +5,7 @@ DPI Packets (UDP): 27 (1.93 pkts/flow) DPI Packets (other): 2 (1.00 pkts/flow) Confidence Match by port : 4 (flows) Confidence DPI : 25 (flows) -Num dissector calls: 453 (15.62 diss/flow) +Num dissector calls: 454 (15.66 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/12/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/vnc.pcap.out b/tests/cfgs/default/result/vnc.pcap.out index 735bd9098c9..be2d2f733d2 100644 --- a/tests/cfgs/default/result/vnc.pcap.out +++ b/tests/cfgs/default/result/vnc.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 10 (5.00 pkts/flow) Confidence DPI : 2 (flows) -Num dissector calls: 270 (135.00 diss/flow) +Num dissector calls: 272 (136.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/wa_video.pcap.out b/tests/cfgs/default/result/wa_video.pcap.out index 8aecc24ee94..c338788c9ed 100644 --- a/tests/cfgs/default/result/wa_video.pcap.out +++ b/tests/cfgs/default/result/wa_video.pcap.out @@ -5,7 +5,7 @@ DPI Packets (UDP): 13 (1.00 pkts/flow) Confidence DPI (cache) : 2 (flows) Confidence DPI : 11 (flows) Confidence Match by IP : 1 (flows) -Num dissector calls: 398 (28.43 diss/flow) +Num dissector calls: 399 (28.50 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/waze.pcap.out b/tests/cfgs/default/result/waze.pcap.out index 6a8a9112c32..39c158e4c49 100644 --- a/tests/cfgs/default/result/waze.pcap.out +++ b/tests/cfgs/default/result/waze.pcap.out @@ -5,7 +5,7 @@ DPI Packets (UDP): 1 (1.00 pkts/flow) Confidence Unknown : 1 (flows) Confidence Match by port : 9 (flows) Confidence DPI : 23 (flows) -Num dissector calls: 357 (10.82 diss/flow) +Num dissector calls: 358 (10.85 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/30/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/wechat.pcap.out b/tests/cfgs/default/result/wechat.pcap.out index 7aa0af4a03f..e708f4fde55 100644 --- a/tests/cfgs/default/result/wechat.pcap.out +++ b/tests/cfgs/default/result/wechat.pcap.out @@ -6,7 +6,7 @@ DPI Packets (other): 7 (1.00 pkts/flow) Confidence Match by port : 24 (flows) Confidence DPI : 78 (flows) Confidence Match by IP : 1 (flows) -Num dissector calls: 312 (3.03 diss/flow) +Num dissector calls: 313 (3.04 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/75/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/whatsapp.pcap.out b/tests/cfgs/default/result/whatsapp.pcap.out index ac3288884be..5aee1c862d7 100644 --- a/tests/cfgs/default/result/whatsapp.pcap.out +++ b/tests/cfgs/default/result/whatsapp.pcap.out @@ -1,6 +1,6 @@ DPI Packets (TCP): 344 (4.00 pkts/flow) Confidence DPI : 86 (flows) -Num dissector calls: 12728 (148.00 diss/flow) +Num dissector calls: 12814 (149.00 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/whatsapp_login_chat.pcap.out b/tests/cfgs/default/result/whatsapp_login_chat.pcap.out index 0cda1eba8e4..884c3f89cc5 100644 --- a/tests/cfgs/default/result/whatsapp_login_chat.pcap.out +++ b/tests/cfgs/default/result/whatsapp_login_chat.pcap.out @@ -1,7 +1,7 @@ DPI Packets (TCP): 17 (5.67 pkts/flow) DPI Packets (UDP): 7 (1.17 pkts/flow) Confidence DPI : 9 (flows) -Num dissector calls: 285 (31.67 diss/flow) +Num dissector calls: 286 (31.78 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/0/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/whois.pcapng.out b/tests/cfgs/default/result/whois.pcapng.out index 699e2ec2227..0804319a4ae 100644 --- a/tests/cfgs/default/result/whois.pcapng.out +++ b/tests/cfgs/default/result/whois.pcapng.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 16 (5.33 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 2 (flows) -Num dissector calls: 190 (63.33 diss/flow) +Num dissector calls: 191 (63.67 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/z3950.pcapng.out b/tests/cfgs/default/result/z3950.pcapng.out index b2745d20f04..d3218cdd835 100644 --- a/tests/cfgs/default/result/z3950.pcapng.out +++ b/tests/cfgs/default/result/z3950.pcapng.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 26 (13.00 pkts/flow) Confidence Match by port : 1 (flows) Confidence DPI : 1 (flows) -Num dissector calls: 463 (231.50 diss/flow) +Num dissector calls: 465 (232.50 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/default/result/zoom.pcap.out b/tests/cfgs/default/result/zoom.pcap.out index f461329b2dd..eadc2088e6f 100644 --- a/tests/cfgs/default/result/zoom.pcap.out +++ b/tests/cfgs/default/result/zoom.pcap.out @@ -5,7 +5,7 @@ DPI Packets (UDP): 23 (1.35 pkts/flow) DPI Packets (other): 2 (1.00 pkts/flow) Confidence Match by port : 2 (flows) Confidence DPI : 31 (flows) -Num dissector calls: 668 (20.24 diss/flow) +Num dissector calls: 670 (20.30 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 7/0/0 (insert/search/found) diff --git a/tests/cfgs/disable_aggressiveness/result/ookla.pcap.out b/tests/cfgs/disable_aggressiveness/result/ookla.pcap.out index 68d8a41eaa9..52c1722dd4f 100644 --- a/tests/cfgs/disable_aggressiveness/result/ookla.pcap.out +++ b/tests/cfgs/disable_aggressiveness/result/ookla.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 1 DPI Packets (TCP): 40 (6.67 pkts/flow) Confidence DPI (partial cache): 1 (flows) Confidence DPI : 5 (flows) -Num dissector calls: 527 (87.83 diss/flow) +Num dissector calls: 530 (88.33 diss/flow) LRU cache ookla: 4/1/1 (insert/search/found) LRU cache bittorrent: 0/3/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/disable_protocols/result/soap.pcap.out b/tests/cfgs/disable_protocols/result/soap.pcap.out index d1417060f40..05ca1befbda 100644 --- a/tests/cfgs/disable_protocols/result/soap.pcap.out +++ b/tests/cfgs/disable_protocols/result/soap.pcap.out @@ -3,7 +3,7 @@ Guessed flow protos: 2 DPI Packets (TCP): 20 (6.67 pkts/flow) Confidence Match by port : 2 (flows) Confidence DPI : 1 (flows) -Num dissector calls: 377 (125.67 diss/flow) +Num dissector calls: 379 (126.33 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/6/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/tests/cfgs/enable_payload_stat/result/1kxun.pcap.out b/tests/cfgs/enable_payload_stat/result/1kxun.pcap.out index 7b86352bf5a..1e00db350cf 100644 --- a/tests/cfgs/enable_payload_stat/result/1kxun.pcap.out +++ b/tests/cfgs/enable_payload_stat/result/1kxun.pcap.out @@ -5,7 +5,7 @@ DPI Packets (UDP): 120 (1.21 pkts/flow) Confidence Unknown : 14 (flows) Confidence Match by port : 6 (flows) Confidence DPI : 177 (flows) -Num dissector calls: 4626 (23.48 diss/flow) +Num dissector calls: 4629 (23.50 diss/flow) LRU cache ookla: 0/0/0 (insert/search/found) LRU cache bittorrent: 0/60/0 (insert/search/found) LRU cache zoom: 0/0/0 (insert/search/found) diff --git a/windows/nDPI.vcxproj b/windows/nDPI.vcxproj index 292f3f9fb9a..faceb94f049 100644 --- a/windows/nDPI.vcxproj +++ b/windows/nDPI.vcxproj @@ -180,7 +180,6 @@ - @@ -260,6 +259,7 @@ +