diff options
| author | 崔一鸣 <[email protected]> | 2019-12-23 01:20:51 +0800 |
|---|---|---|
| committer | 崔一鸣 <[email protected]> | 2019-12-23 01:20:51 +0800 |
| commit | bfc0df0f0df8ff75b0fb2546f48068333723bc7e (patch) | |
| tree | 79444e8917483a25ccd5b110325915fa67b1566a /Experiment/ExpertFeature | |
| parent | 5508ddeca08a5201451da9e3bb8ff61f1d0940fb (diff) | |
增加中期实验数据,代码,ppt
Diffstat (limited to 'Experiment/ExpertFeature')
| -rw-r--r-- | Experiment/ExpertFeature/.ipynb_checkpoints/tls_cert_length-checkpoint.ipynb | 2611 | ||||
| -rw-r--r-- | Experiment/ExpertFeature/tls_cert_length.ipynb | 542 |
2 files changed, 3153 insertions, 0 deletions
diff --git a/Experiment/ExpertFeature/.ipynb_checkpoints/tls_cert_length-checkpoint.ipynb b/Experiment/ExpertFeature/.ipynb_checkpoints/tls_cert_length-checkpoint.ipynb new file mode 100644 index 0000000..0dc2652 --- /dev/null +++ b/Experiment/ExpertFeature/.ipynb_checkpoints/tls_cert_length-checkpoint.ipynb @@ -0,0 +1,2611 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import os\n", + "import pandas as pd\n", + "import numpy as np\n", + "import json" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>0</th>\n", + " <th>1</th>\n", + " <th>2</th>\n", + " <th>3</th>\n", + " <th>4</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>192.168.50.150</td>\n", + " <td>61251</td>\n", + " <td>119.57.174.36</td>\n", + " <td>443</td>\n", + " <td>douyin</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>192.168.50.150</td>\n", + " <td>61253</td>\n", + " <td>119.57.174.36</td>\n", + " <td>443</td>\n", + " <td>douyin</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>192.168.50.150</td>\n", + " <td>61254</td>\n", + " <td>122.14.43.165</td>\n", + " <td>443</td>\n", + " <td>douyin</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>192.168.50.150</td>\n", + " <td>61258</td>\n", + " <td>119.57.174.38</td>\n", + " <td>443</td>\n", + " <td>douyin</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>192.168.50.150</td>\n", + " <td>61259</td>\n", + " <td>119.57.174.38</td>\n", + " <td>443</td>\n", + " <td>douyin</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10535</th>\n", + " <td>192.168.50.150</td>\n", + " <td>52563</td>\n", + " <td>182.61.128.198</td>\n", + " <td>443</td>\n", + " <td>zhihu</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10536</th>\n", + " <td>192.168.50.150</td>\n", + " <td>52561</td>\n", + " <td>182.61.128.198</td>\n", + " <td>443</td>\n", + " <td>zhihu</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10537</th>\n", + " <td>192.168.50.150</td>\n", + " <td>52562</td>\n", + " <td>182.61.128.198</td>\n", + " <td>443</td>\n", + " <td>zhihu</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10538</th>\n", + " <td>192.168.50.150</td>\n", + " <td>52568</td>\n", + " <td>121.29.54.234</td>\n", + " <td>443</td>\n", + " <td>zhihu</td>\n", + " </tr>\n", + " <tr>\n", + " <th>10539</th>\n", + " <td>192.168.50.150</td>\n", + " <td>52598</td>\n", + " <td>220.194.79.73</td>\n", + " <td>443</td>\n", + " <td>zhihu</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>10540 rows × 5 columns</p>\n", + "</div>" + ], + "text/plain": [ + " 0 1 2 3 4\n", + "0 192.168.50.150 61251 119.57.174.36 443 douyin\n", + "1 192.168.50.150 61253 119.57.174.36 443 douyin\n", + "2 192.168.50.150 61254 122.14.43.165 443 douyin\n", + "3 192.168.50.150 61258 119.57.174.38 443 douyin\n", + "4 192.168.50.150 61259 119.57.174.38 443 douyin\n", + "... ... ... ... ... ...\n", + "10535 192.168.50.150 52563 182.61.128.198 443 zhihu\n", + "10536 192.168.50.150 52561 182.61.128.198 443 zhihu\n", + "10537 192.168.50.150 52562 182.61.128.198 443 zhihu\n", + "10538 192.168.50.150 52568 121.29.54.234 443 zhihu\n", + "10539 192.168.50.150 52598 220.194.79.73 443 zhihu\n", + "\n", + "[10540 rows x 5 columns]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date = '2019-12-20_21'\n", + "example_label_file = '../../DataSet/result/' + date + '/stream_tag.txt'\n", + "example_label_df = pd.read_table(example_label_file, sep='\\s+', header=None)\n", + "example_label_df[3] = 443\n", + "example_label_df[4].value_counts()\n", + "example_label_df" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{('192.168.50.150', 61251, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61253, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61254, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 61258, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61259, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61261, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61266, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61267, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 61269, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 59975, '101.72.202.215', 443): 'douyin',\n", + " ('192.168.50.150', 61273, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 61270, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61277, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 61271, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61279, '203.187.160.135', 443): 'douyin',\n", + " ('192.168.50.150', 59990, '27.221.24.206', 443): 'douyin',\n", + " ('192.168.50.150', 61306, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 61305, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61307, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 61309, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61308, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61310, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61312, '122.14.43.38', 443): 'douyin',\n", + " ('192.168.50.150', 61313, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 60023, '61.240.132.230', 443): 'douyin',\n", + " ('192.168.50.150', 60034, '221.195.244.232', 443): 'douyin',\n", + " ('192.168.50.150', 60033, '61.240.132.233', 443): 'douyin',\n", + " ('192.168.50.150', 60038, '121.29.9.214', 443): 'douyin',\n", + " ('192.168.50.150', 60039, '27.221.48.52', 443): 'douyin',\n", + " ('192.168.50.150', 60060, '27.221.84.216', 443): 'douyin',\n", + " ('192.168.50.150', 60063, '27.221.34.226', 443): 'douyin',\n", + " ('192.168.50.150', 60070, '101.72.202.213', 443): 'douyin',\n", + " ('192.168.50.150', 60120, '27.221.34.221', 443): 'douyin',\n", + " ('192.168.50.150', 60123, '27.221.84.215', 443): 'douyin',\n", + " ('192.168.50.150', 60127, '121.18.239.211', 443): 'douyin',\n", + " ('192.168.50.150', 61318, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61320, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 61323, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 60138, '61.240.132.230', 443): 'douyin',\n", + " ('192.168.50.150', 60137, '61.240.132.230', 443): 'douyin',\n", + " ('192.168.50.150', 60140, '61.240.132.230', 443): 'douyin',\n", + " ('192.168.50.150', 60139, '61.240.132.230', 443): 'douyin',\n", + " ('192.168.50.150', 60142, '60.215.125.106', 443): 'douyin',\n", + " ('192.168.50.150', 61327, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61325, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61326, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61328, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 61331, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 61332, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 61334, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 61335, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61337, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61340, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61472, '122.14.43.38', 443): 'douyin',\n", + " ('192.168.50.150', 61491, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61598, '119.249.48.237', 443): 'douyin',\n", + " ('192.168.50.150', 61631, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 61639, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 61643, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61634, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61636, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61648, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 60168, '61.182.130.229', 443): 'douyin',\n", + " ('192.168.50.150', 61649, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61652, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.150', 60193, '121.18.239.213', 443): 'douyin',\n", + " ('192.168.50.150', 61657, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61659, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61661, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61663, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61662, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61660, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 61678, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61690, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61739, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61736, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61735, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61734, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61742, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61772, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61854, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61858, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 61955, '1.56.130.210', 443): 'douyin',\n", + " ('192.168.50.150', 61947, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 61951, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61964, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61939, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 61941, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62034, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62058, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62038, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62080, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62076, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62077, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62081, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62079, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62118, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62158, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62159, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62160, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62154, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62153, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62163, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62161, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62162, '203.187.160.135', 443): 'douyin',\n", + " ('192.168.50.150', 62165, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 62209, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62245, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62255, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62254, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62256, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62257, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62259, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62258, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62260, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62281, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62414, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62531, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 62648, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62676, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 62672, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62675, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 62679, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 62678, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 62677, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62673, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62691, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 62700, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62702, '1.56.130.215', 443): 'douyin',\n", + " ('192.168.50.150', 62703, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62744, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 62737, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 62697, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62739, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 62721, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 62748, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62747, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62746, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62751, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 62753, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 62752, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62757, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62759, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62778, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62820, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62811, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 62809, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62878, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62893, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62914, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62922, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62921, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 62915, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62918, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62919, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62923, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57380, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57383, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 57388, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57387, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 57391, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57394, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 57397, '58.250.9.19', 443): 'hupu',\n", + " ('192.168.50.148', 57392, '182.254.50.112', 443): 'hupu',\n", + " ('192.168.50.148', 57399, '182.254.52.249', 443): 'hupu',\n", + " ('192.168.50.148', 57404, '182.254.52.210', 443): 'hupu',\n", + " ('192.168.50.148', 51366, '122.14.43.168', 443): 'hupu',\n", + " ('192.168.50.148', 51361, '124.132.134.228', 443): 'hupu',\n", + " ('192.168.50.148', 57408, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57409, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57419, '58.250.9.19', 443): 'hupu',\n", + " ('192.168.50.148', 57418, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57423, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 51433, '124.165.121.24', 443): 'hupu',\n", + " ('192.168.50.148', 57430, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57431, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 51434, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 51435, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.150', 62926, '122.14.43.38', 443): 'douyin',\n", + " ('192.168.50.150', 62925, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 51442, '123.135.106.19', 443): 'hupu',\n", + " ('192.168.50.148', 51452, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.150', 62930, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57442, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57446, '182.254.50.112', 443): 'hupu',\n", + " ('192.168.50.148', 57449, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57451, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57454, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57450, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 62933, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 62934, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.148', 57458, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 62939, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62935, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 62943, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62944, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 62948, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62947, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 62960, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63032, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63153, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63282, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.150', 63355, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63353, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63356, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 63352, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.150', 63357, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.150', 63354, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63351, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.148', 51583, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.150', 63363, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63364, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63367, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63365, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63368, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63369, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63370, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63489, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63525, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63519, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63524, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63520, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63521, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.148', 57475, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57478, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.148', 57484, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 51607, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 57492, '122.14.43.41', 443): 'hupu',\n", + " ('192.168.50.148', 57494, '122.14.43.41', 443): 'hupu',\n", + " ('192.168.50.148', 57487, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57496, '122.14.43.41', 443): 'hupu',\n", + " ('192.168.50.148', 57499, '122.14.43.41', 443): 'hupu',\n", + " ('192.168.50.148', 57500, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 51620, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.148', 57501, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57503, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.150', 63530, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 63531, '122.14.43.167', 443): 'douyin',\n", + " ('192.168.50.150', 63533, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63532, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63534, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63535, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63536, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 60460, '101.72.202.212', 443): 'douyin',\n", + " ('192.168.50.150', 60465, '60.221.194.226', 443): 'douyin',\n", + " ('192.168.50.150', 63542, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 63549, '182.254.56.55', 443): 'douyin',\n", + " ('192.168.50.150', 60468, '27.221.84.217', 443): 'douyin',\n", + " ('192.168.50.150', 63554, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 63556, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 63563, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63569, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 63566, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63571, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63567, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63570, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63568, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 63598, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63596, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63597, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 60543, '27.221.84.217', 443): 'douyin',\n", + " ('192.168.50.150', 63594, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63595, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63599, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63601, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63603, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63605, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63610, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.148', 57513, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 63613, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63614, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.148', 51658, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.150', 63620, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63622, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 63619, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63621, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63663, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63665, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63647, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63677, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63695, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63707, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63718, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63734, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63792, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63793, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63795, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63796, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63771, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63791, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63794, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63790, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63799, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63800, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.148', 57520, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57519, '182.254.50.112', 443): 'hupu',\n", + " ('192.168.50.150', 63806, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63807, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 63810, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 63813, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63814, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63816, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 63815, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57530, '121.41.49.36', 443): 'hupu',\n", + " ('192.168.50.150', 63819, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57532, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 51685, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.150', 63822, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 63824, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63828, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63827, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63830, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63831, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63833, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63832, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 63848, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63846, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63847, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63845, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 63849, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 63858, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 63857, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 63853, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 63856, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 63855, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 60903, '124.132.134.224', 443): 'douyin',\n", + " ('192.168.50.150', 63869, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63873, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63877, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63875, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63876, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63874, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63879, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63878, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63872, '203.187.160.136', 443): 'douyin',\n", + " ('192.168.50.150', 63880, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 63882, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 63881, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 63886, '123.58.119.34', 443): 'douyin',\n", + " ('192.168.50.150', 63887, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 63885, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 63888, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 63890, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 63889, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 63891, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63894, '122.14.43.38', 443): 'douyin',\n", + " ('192.168.50.150', 63896, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63897, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63900, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 63899, '203.119.214.125', 443): 'douyin',\n", + " ('192.168.50.150', 60941, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63917, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63926, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63925, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 60957, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.148', 51782, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.150', 63931, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 63930, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 60967, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 63934, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63933, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.148', 51813, '27.221.84.217', 443): 'hupu',\n", + " ('192.168.50.148', 51817, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.148', 51833, '60.28.125.14', 443): 'hupu',\n", + " ('192.168.50.150', 60976, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.148', 51834, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 51857, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.148', 51870, '111.6.228.231', 443): 'hupu',\n", + " ('192.168.50.148', 51864, '122.14.43.171', 443): 'hupu',\n", + " ('192.168.50.148', 57585, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57589, '121.40.10.71', 443): 'hupu',\n", + " ('192.168.50.148', 57587, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57591, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 63942, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57593, '122.14.43.165', 443): 'hupu',\n", + " ('192.168.50.148', 57592, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 60989, '101.72.202.217', 443): 'douyin',\n", + " ('192.168.50.148', 57596, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57599, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 51899, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 51898, '60.28.125.14', 443): 'hupu',\n", + " ('192.168.50.150', 63944, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63943, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.148', 57601, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57602, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.150', 60994, '27.221.34.225', 443): 'douyin',\n", + " ('192.168.50.148', 51907, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 51908, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.148', 57608, '182.254.52.210', 443): 'hupu',\n", + " ('192.168.50.148', 57609, '182.254.50.112', 443): 'hupu',\n", + " ('192.168.50.148', 57610, '121.41.48.9', 443): 'hupu',\n", + " ('192.168.50.148', 57612, '58.250.9.19', 443): 'hupu',\n", + " ('192.168.50.148', 51912, '114.113.88.123', 443): 'hupu',\n", + " ('192.168.50.150', 61001, '221.204.173.231', 443): 'douyin',\n", + " ('192.168.50.150', 61000, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 61005, '121.29.9.220', 443): 'douyin',\n", + " ('192.168.50.150', 63946, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.148', 51929, '203.119.214.124', 443): 'hupu',\n", + " ('192.168.50.150', 61030, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63948, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 63951, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 61042, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63953, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 61052, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63955, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63957, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 63959, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 61070, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63964, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 63963, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61078, '60.221.194.227', 443): 'douyin',\n", + " ('192.168.50.150', 61082, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63971, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63973, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63974, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 61093, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63975, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 63976, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 63978, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 61108, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63981, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63983, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61122, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 63987, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63990, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 63992, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61130, '101.72.202.214', 443): 'douyin',\n", + " ('192.168.50.150', 63996, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 61135, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 61161, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 64001, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64000, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 64004, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 61179, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 64006, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 61184, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 64007, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 64009, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 61199, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 64050, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 64046, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 64061, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 64063, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 64304, '203.119.214.125', 443): 'douyin',\n", + " ('192.168.50.150', 64321, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 64326, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 64340, '60.28.125.2', 443): 'douyin',\n", + " ('192.168.50.150', 64343, '60.28.125.2', 443): 'douyin',\n", + " ('192.168.50.150', 64360, '119.249.48.222', 443): 'douyin',\n", + " ('192.168.50.150', 64361, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 64386, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 64385, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 64384, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 64387, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 64389, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 64390, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 64391, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 64394, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 64392, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 64393, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 64428, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 64427, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 61637, '111.161.122.18', 443): 'douyin',\n", + " ('192.168.50.150', 61687, '121.29.9.224', 443): 'douyin',\n", + " ('192.168.50.150', 64478, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64526, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 64558, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 64638, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 64758, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64781, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64817, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64860, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 64892, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64944, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 64954, '122.14.43.40', 443): 'douyin',\n", + " ('192.168.50.150', 65181, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 65166, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 65202, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 65428, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 65530, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 49490, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49487, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49491, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 49488, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49486, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 49493, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 49492, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 61696, '124.132.134.229', 443): 'douyin',\n", + " ('192.168.50.150', 61703, '27.221.84.216', 443): 'douyin',\n", + " ('192.168.50.150', 61706, '101.72.202.216', 443): 'douyin',\n", + " ('192.168.50.150', 49535, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 49538, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 49576, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49575, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 49599, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 49597, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 49600, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 49595, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49596, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49604, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49655, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 49808, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 49836, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 49865, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 49866, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 49862, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 49864, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 49861, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 49950, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 49953, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49954, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 49957, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 49952, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 50042, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 50076, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 50063, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50089, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 50095, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50091, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50094, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50128, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 50129, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 61782, '101.72.202.214', 443): 'douyin',\n", + " ('192.168.50.150', 50166, '122.14.43.38', 443): 'douyin',\n", + " ('192.168.50.150', 50169, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 61807, '221.195.244.229', 443): 'douyin',\n", + " ('192.168.50.150', 50269, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 50310, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50309, '122.14.43.125', 443): 'douyin',\n", + " ('192.168.50.150', 50335, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 50337, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 50368, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 50367, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 50406, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 50405, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 62417, '218.12.228.81', 443): 'douyin',\n", + " ('192.168.50.150', 62427, '27.221.34.223', 443): 'douyin',\n", + " ('192.168.50.150', 62432, '221.195.244.231', 443): 'douyin',\n", + " ('192.168.50.150', 62435, '221.204.173.226', 443): 'douyin',\n", + " ('192.168.50.150', 62438, '119.167.220.234', 443): 'douyin',\n", + " ('192.168.50.150', 51244, '203.119.214.125', 443): 'douyin',\n", + " ('192.168.50.150', 51284, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 51452, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 51455, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 51491, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51493, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 63170, '27.221.84.213', 443): 'douyin',\n", + " ('192.168.50.150', 51784, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 64991, '27.221.84.218', 443): 'douyin',\n", + " ('192.168.50.150', 51786, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 51787, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 51788, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 51793, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 65058, '27.221.34.224', 443): 'douyin',\n", + " ('192.168.50.150', 51799, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51800, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51808, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51810, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 51812, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 51815, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51872, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 51984, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 51992, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49246, '27.221.34.221', 443): 'douyin',\n", + " ('192.168.50.150', 52002, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 52006, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52007, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52008, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52012, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52013, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52014, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52015, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 49311, '52.51.36.149', 443): 'douyin',\n", + " ('192.168.50.150', 52019, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52020, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52022, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52024, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50138, '27.221.84.211', 443): 'douyin',\n", + " ('192.168.50.150', 52043, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52057, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52056, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52061, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 50699, '124.132.134.229', 443): 'douyin',\n", + " ('192.168.50.150', 52071, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 52070, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52074, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 52072, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 52075, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52097, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52142, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52145, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52146, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 52148, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52144, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 52143, '122.14.43.165', 443): 'douyin',\n", + " ('192.168.50.150', 52158, '203.119.214.125', 443): 'douyin',\n", + " ('192.168.50.150', 52159, '122.14.43.27', 443): 'douyin',\n", + " ('192.168.50.150', 50928, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52178, '203.119.214.125', 443): 'douyin',\n", + " ('192.168.50.150', 50962, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 50963, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52189, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52188, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52193, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52210, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52214, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52227, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52233, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52231, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52230, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52240, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52217, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 52228, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52232, '182.254.57.120', 443): 'douyin',\n", + " ('192.168.50.150', 52246, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52249, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52252, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52250, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52251, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52253, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52247, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52289, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52286, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52283, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52290, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52301, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52303, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52304, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52302, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52315, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52311, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52320, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52316, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52319, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52321, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 52307, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51000, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52308, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52327, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52335, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52337, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52334, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52338, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52349, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52347, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52346, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52364, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52369, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52368, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52400, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52401, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52399, '119.249.48.220', 443): 'douyin',\n", + " ('192.168.50.150', 52403, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52402, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52406, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52408, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52409, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 51061, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52412, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52416, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52414, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52413, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52415, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 52417, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52419, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52418, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52420, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52425, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52427, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52428, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52426, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52431, '182.254.56.55', 443): 'douyin',\n", + " ('192.168.50.150', 52432, '182.254.56.55', 443): 'douyin',\n", + " ('192.168.50.150', 51079, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52434, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52433, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52439, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52435, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52436, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52437, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52438, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52455, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52471, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52469, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52470, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52473, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52476, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52475, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52477, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52496, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52494, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52497, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52498, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52501, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 52502, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52504, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52509, '119.249.48.220', 443): 'douyin',\n", + " ('192.168.50.150', 52507, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52506, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52508, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52510, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51097, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52527, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52529, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52528, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52526, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52530, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52524, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52525, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52537, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52535, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52540, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 52536, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52541, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52559, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52600, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 52601, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 52602, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52598, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52604, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 52603, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 52605, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 51103, '101.72.202.214', 443): 'douyin',\n", + " ('192.168.50.150', 51108, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52614, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52613, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52637, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52648, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52649, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52650, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52647, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52653, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52664, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52663, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52665, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52671, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52667, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52670, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52669, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52683, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52682, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51129, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52686, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52694, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52695, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 52724, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52726, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 52727, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52728, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52729, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52731, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 52732, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 52730, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 51155, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52734, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 51175, '101.72.202.215', 443): 'douyin',\n", + " ('192.168.50.150', 52737, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 52736, '60.28.226.130', 443): 'douyin',\n", + " ('192.168.50.150', 52757, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 52760, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 52762, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 52765, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52766, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51190, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52769, '121.51.12.100', 443): 'douyin',\n", + " ('192.168.50.150', 52772, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 52776, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52773, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52771, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52787, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52786, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52791, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52788, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 52790, '122.14.43.170', 443): 'douyin',\n", + " ('192.168.50.150', 52789, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52795, '111.161.117.2', 443): 'douyin',\n", + " ('192.168.50.150', 51224, '123.6.30.184', 443): 'douyin',\n", + " ('192.168.50.150', 51225, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52797, '111.161.117.2', 443): 'douyin',\n", + " ('192.168.50.150', 52796, '111.161.117.2', 443): 'douyin',\n", + " ('192.168.50.150', 51235, '18.207.13.4', 443): 'douyin',\n", + " ('192.168.50.150', 52798, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 52799, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52801, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52802, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 52800, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 51285, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52819, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52818, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 52828, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52829, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52832, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52833, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51313, '27.221.84.212', 443): 'douyin',\n", + " ('192.168.50.150', 52861, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 52865, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 51322, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 52873, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52870, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52879, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52888, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52884, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52883, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52887, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 51354, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 52890, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52897, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52902, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52905, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52904, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52910, '119.249.48.237', 443): 'douyin',\n", + " ('192.168.50.150', 52911, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52912, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52915, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52917, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 52909, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52899, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 52933, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52949, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 52955, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52954, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 52964, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 52961, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 51371, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 52967, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52970, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 52966, '122.14.43.37', 443): 'douyin',\n", + " ('192.168.50.150', 52978, '119.249.48.185', 443): 'douyin',\n", + " ('192.168.50.150', 53038, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53035, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53040, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53033, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53034, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53039, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53045, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 53036, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53044, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53047, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53046, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51394, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 51405, '27.221.84.216', 443): 'douyin',\n", + " ('192.168.50.150', 53049, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53052, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53050, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53058, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53089, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53143, '119.249.48.185', 443): 'douyin',\n", + " ('192.168.50.150', 53159, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 53155, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53154, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53158, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53148, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 53161, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53146, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53157, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51414, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 51426, '27.221.84.216', 443): 'douyin',\n", + " ('192.168.50.150', 53165, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 53169, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 53174, '119.249.48.220', 443): 'douyin',\n", + " ('192.168.50.150', 53171, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 53170, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 53172, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 53180, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53181, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53197, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53204, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 53203, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53199, '122.14.43.41', 443): 'douyin',\n", + " ('192.168.50.150', 51450, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 51462, '27.221.84.213', 443): 'douyin',\n", + " ('192.168.50.150', 53218, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53220, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53222, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 51479, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53224, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53246, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53249, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53247, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53282, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53278, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53283, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53281, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53276, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53280, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53284, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53287, '119.249.48.221', 443): 'douyin',\n", + " ('192.168.50.150', 53285, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53286, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53293, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53333, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 53343, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53344, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53345, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53346, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53350, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53348, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53349, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53347, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51496, '27.221.84.213', 443): 'douyin',\n", + " ('192.168.50.150', 51505, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 51518, '123.6.34.228', 443): 'douyin',\n", + " ('192.168.50.150', 53359, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51562, '27.221.34.224', 443): 'douyin',\n", + " ('192.168.50.150', 53361, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51579, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 51617, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53379, '119.249.48.222', 443): 'douyin',\n", + " ('192.168.50.150', 53391, '182.254.56.55', 443): 'douyin',\n", + " ('192.168.50.150', 53393, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 53409, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 53412, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 53411, '122.14.43.39', 443): 'douyin',\n", + " ('192.168.50.150', 51623, '27.221.84.217', 443): 'douyin',\n", + " ('192.168.50.150', 53417, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53420, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 51663, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53422, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 53423, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 53426, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53428, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53430, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53431, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53432, '119.249.48.222', 443): 'douyin',\n", + " ('192.168.50.150', 53436, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53435, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51694, '124.132.134.229', 443): 'douyin',\n", + " ('192.168.50.150', 51703, '27.221.84.212', 443): 'douyin',\n", + " ('192.168.50.150', 51708, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53442, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 53444, '122.14.43.166', 443): 'douyin',\n", + " ('192.168.50.150', 51735, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53449, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 53451, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 53453, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 53457, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 53461, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53471, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53469, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51758, '27.221.84.217', 443): 'douyin',\n", + " ('192.168.50.150', 51766, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53476, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 53514, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 53539, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53540, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 53538, '122.14.43.169', 443): 'douyin',\n", + " ('192.168.50.150', 53542, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53544, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53545, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53546, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53547, '114.113.88.125', 443): 'douyin',\n", + " ('192.168.50.150', 53552, '122.14.43.168', 443): 'douyin',\n", + " ('192.168.50.150', 53551, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 51776, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53555, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53557, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 51800, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53570, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 51831, '27.221.34.223', 443): 'douyin',\n", + " ('192.168.50.150', 53582, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53584, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53583, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53580, '119.57.174.38', 443): 'douyin',\n", + " ('192.168.50.150', 53591, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53592, '122.14.43.171', 443): 'douyin',\n", + " ('192.168.50.150', 53596, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 51853, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 51868, '27.221.34.223', 443): 'douyin',\n", + " ('192.168.50.150', 51871, '121.22.232.213', 443): 'douyin',\n", + " ('192.168.50.150', 53599, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53598, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53601, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53603, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53604, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53605, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53606, '119.57.174.36', 443): 'douyin',\n", + " ('192.168.50.150', 53600, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53621, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53618, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53619, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53620, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53617, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53641, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53643, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53644, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53642, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53646, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53645, '119.249.48.236', 443): 'douyin',\n", + " ('192.168.50.150', 53647, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 51888, '110.249.203.244', 443): 'douyin',\n", + " ('192.168.50.150', 53650, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53649, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53648, '119.57.174.35', 443): 'douyin',\n", + " ('192.168.50.150', 53651, '114.113.88.123', 443): 'douyin',\n", + " ('192.168.50.150', 53653, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 53652, '122.14.43.42', 443): 'douyin',\n", + " ('192.168.50.150', 51912, '110.249.203.245', 443): 'douyin',\n", + " ('192.168.50.150', 53665, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 53667, '122.14.43.43', 443): 'douyin',\n", + " ('192.168.50.150', 53668, '119.57.174.35', 443): 'douyin',\n", + " ...}" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "example_label = {tuple(example_label_df.iloc[i,0:4].values):example_label_df.iloc[i,4] for i in example_label_df.index}\n", + "example_label" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0\n", + "1\n", + "2\n", + "3\n", + "4\n", + "5\n", + "6\n", + "7\n", + "8\n", + "9\n", + "10\n", + "11\n", + "12\n", + "13\n", + "14\n", + "15\n", + "1460\n", + "1461\n", + "1462\n", + "1463\n", + "1464\n", + "1465\n", + "1466\n", + "1467\n", + "1468\n", + "1469\n", + "1470\n", + "1471\n", + "1472\n", + "1473\n", + "1474\n", + "1475\n", + "1476\n", + "1477\n", + "1478\n", + "1479\n", + "1480\n", + "1481\n", + "1482\n", + "1483\n", + "1484\n", + "1485\n", + "1486\n", + "1487\n", + "1488\n", + "1489\n", + "1490\n", + "1491\n", + "1492\n", + "1493\n", + "1494\n", + "1495\n", + "1496\n", + "1497\n", + "1498\n", + "1499\n", + "1500\n", + "1501\n", + "1502\n", + "1503\n", + "1504\n", + "1505\n", + "1506\n", + "1507\n", + "1508\n", + "1509\n", + "1510\n", + "1511\n", + "1512\n", + "1513\n", + "1514\n", + "1515\n", + "1516\n", + "1517\n", + "2281\n", + "2282\n", + "2283\n", + "2284\n", + "3553\n", + "3554\n", + "3555\n", + "3556\n", + "3557\n", + "3558\n", + "3559\n", + "3560\n", + "3561\n", + "3562\n", + "3563\n", + "3564\n", + "3565\n", + "3566\n", + "3567\n", + "3568\n", + "3569\n", + "3570\n", + "3571\n", + "3572\n", + "3573\n", + "3574\n", + "3575\n", + "3576\n", + "3577\n", + "3578\n", + "3579\n", + "3580\n", + "3581\n", + "3582\n", + "3583\n", + "3584\n", + "3585\n", + "3586\n", + "3587\n", + "3588\n", + "3589\n", + "3590\n", + "3591\n", + "3592\n", + "3593\n", + "3594\n", + "3595\n", + "3596\n", + "3597\n", + "3598\n", + "3599\n", + "3600\n", + "3601\n", + "3602\n", + "3603\n", + "3604\n", + "3605\n", + "3606\n", + "3607\n", + "3608\n", + "3609\n", + "3610\n", + "3611\n", + "3612\n", + "3613\n", + "3614\n", + "3615\n", + "3616\n", + "3617\n", + "3618\n", + "3619\n", + "3620\n", + "3621\n", + "3622\n", + "3623\n", + "3624\n", + "3625\n", + "3626\n", + "3627\n", + "3628\n", + "3629\n", + "3630\n", + "3631\n", + "3632\n", + "3633\n", + "3634\n", + "3635\n", + "3636\n", + "3637\n", + "3638\n", + "3639\n", + "3640\n", + "3641\n", + "3642\n", + "3643\n", + "3644\n", + "3645\n", + "3646\n", + "3647\n", + "3648\n", + "3649\n", + "3650\n", + "3651\n", + "3652\n", + "3653\n", + "3654\n", + "3655\n", + "3656\n", + "3657\n", + "3658\n", + "3659\n", + "3660\n", + "3661\n", + "3662\n", + "3663\n", + "3664\n", + "3665\n", + "3666\n", + "3667\n", + "3668\n", + "3669\n", + "3670\n", + "3671\n", + "3672\n", + "3673\n", + "3674\n", + "3675\n", + "3676\n", + "3677\n", + "3678\n", + "3679\n", + "3680\n", + "3681\n", + "3682\n", + "3683\n", + "3684\n", + "3685\n", + "3686\n", + "3687\n", + "3688\n", + "3689\n", + "3690\n", + "3691\n", + "3692\n", + "3693\n", + "3694\n", + "3695\n", + "3696\n", + "3697\n", + "3698\n", + "3699\n", + "3700\n", + "3701\n", + "3702\n", + "3703\n", + "3704\n", + "3705\n", + "3706\n", + "3707\n", + "3708\n", + "3709\n", + "3710\n", + "3711\n", + "3712\n", + "3713\n", + "3714\n", + "3715\n", + "3716\n", + "3717\n", + "3718\n", + "3719\n", + "3720\n", + "3721\n", + "3722\n", + "3723\n", + "3724\n", + "3725\n", + "3726\n", + "3727\n", + "3728\n", + "3729\n", + "3730\n", + "3731\n", + "3732\n", + "3733\n", + "3734\n", + "3735\n", + "3736\n", + "3737\n", + "3738\n", + "3739\n", + "3740\n", + "3741\n", + "3742\n", + "3743\n", + "3744\n", + "3745\n", + "3746\n", + "3747\n", + "3748\n", + "3749\n", + "3750\n", + "3751\n", + "3752\n", + "3753\n", + "3754\n", + "3755\n", + "3756\n", + "3757\n", + "3758\n", + "3759\n", + "3760\n", + "3761\n", + "3762\n", + "3763\n", + "3764\n", + "3765\n", + "3766\n", + "3767\n", + "3768\n", + "3769\n", + "3770\n", + "3771\n", + "3772\n", + "3773\n", + "3774\n", + "3775\n", + "3776\n", + "3777\n", + "3778\n", + "3779\n", + "3780\n", + "3781\n", + "3782\n", + "3783\n", + "3784\n", + "3785\n", + "3786\n", + "3787\n", + "3788\n", + "3789\n", + "3790\n", + "3791\n", + "3792\n", + "3793\n", + "3794\n", + "3795\n", + "3796\n", + "3797\n", + "3798\n", + "3799\n", + "3800\n", + "3801\n", + "3802\n", + "3803\n", + "3804\n", + "3805\n", + "3806\n", + "3807\n", + "3808\n", + "3809\n", + "3810\n", + "3811\n", + "3812\n", + "3813\n", + "3814\n", + "3815\n", + "3816\n", + "3817\n", + "3818\n", + "3819\n", + "3820\n", + "3821\n", + "3822\n", + "3823\n", + "3824\n", + "3825\n", + "3826\n", + "3827\n", + "3828\n", + "3829\n", + "3830\n", + "3831\n", + "3832\n", + "3833\n", + "3834\n", + "3835\n", + "3836\n", + "3837\n", + "3838\n", + "3839\n", + "3840\n", + "3841\n", + "3842\n", + "3843\n", + "3844\n", + "3845\n", + "3846\n", + "3847\n", + "3848\n", + "3849\n", + "3850\n", + "3851\n", + "3852\n", + "3853\n", + "3854\n", + "3855\n", + "3856\n", + "3857\n", + "3858\n", + "3859\n", + "3860\n", + "3861\n", + "3862\n", + "3863\n", + "3864\n", + "3865\n", + "3866\n", + "3867\n", + "3868\n", + "3869\n", + "3870\n", + "3871\n", + "3872\n", + "3873\n", + "3874\n", + "3875\n", + "3876\n", + "3877\n", + "3878\n", + "4254\n", + "4255\n", + "4256\n", + "4257\n", + "4258\n", + "4259\n", + "4260\n", + "4261\n", + "4262\n", + "4263\n", + "4264\n", + "4265\n", + "4266\n", + "4267\n", + "4268\n", + "4269\n", + "4270\n", + "4271\n", + "4272\n", + "4273\n", + "4274\n", + "4275\n", + "4276\n", + "4277\n", + "4278\n", + "4279\n", + "4280\n", + "4281\n", + "4282\n", + "4283\n", + "4284\n", + "4285\n", + "4286\n", + "4287\n", + "4712\n", + "4713\n", + "4714\n", + "4715\n", + "4716\n", + "4717\n", + "4718\n", + "4719\n", + "4720\n", + "4721\n", + "4722\n", + "4723\n", + "4724\n", + "4725\n", + "4726\n", + "4727\n", + "4728\n", + "4729\n", + "4730\n", + "4732\n", + "4733\n", + "4734\n", + "4735\n", + "4736\n", + "4737\n", + "4739\n", + "4740\n", + "4741\n", + "4742\n", + "4743\n", + "4744\n", + "4745\n", + "4746\n", + "4747\n", + "4748\n", + "4749\n", + "4750\n", + "4751\n", + "4752\n", + "4753\n", + "4754\n", + "4755\n", + "4756\n", + "4757\n", + "4758\n", + "4759\n", + "4760\n", + "4761\n", + "4762\n", + "4763\n", + "4764\n", + "4765\n", + "4766\n", + "4767\n", + "4768\n", + "4769\n", + "4770\n", + "4771\n", + "4772\n", + "4773\n", + "4774\n", + "4775\n", + "4776\n", + "4777\n", + "4778\n", + "4779\n", + "4780\n", + "4781\n", + "4782\n", + "4783\n", + "4784\n", + "4785\n", + "4786\n", + "4787\n", + "4788\n", + "4789\n", + "4790\n", + "4791\n", + "4792\n", + "4793\n", + "4794\n", + "4795\n", + "4796\n", + "4797\n", + "4798\n", + "4799\n", + "4800\n", + "4801\n", + "4802\n", + "4803\n", + "4804\n", + "4805\n", + "4806\n", + "4807\n", + "4808\n", + "4809\n", + "4810\n", + "4811\n", + "4812\n", + "4813\n", + "4814\n", + "4815\n", + "4816\n", + "4817\n", + "4818\n", + "4819\n", + "4820\n", + "4821\n", + "4822\n", + "4823\n", + "4824\n", + "4825\n", + "4826\n", + "4827\n", + "4828\n", + "4829\n", + "4830\n", + "4831\n", + "4832\n", + "4833\n", + "4834\n", + "4835\n", + "4836\n", + "4837\n", + "4838\n", + "4839\n", + "4840\n", + "4841\n", + "4842\n", + "4843\n", + "4844\n", + "4845\n", + "4846\n", + "4847\n", + "4848\n", + "4849\n", + "4850\n", + "4851\n", + "4852\n", + "4853\n", + "4854\n", + "4855\n", + "4856\n", + "4857\n", + "4858\n", + "4859\n", + "4860\n", + "4861\n", + "4862\n", + "4863\n", + "4864\n", + "4865\n", + "4866\n", + "4867\n", + "4868\n", + "4869\n", + "4870\n", + "4871\n", + "4872\n", + "4873\n", + "4874\n", + "4875\n", + "4876\n", + "4877\n", + "4878\n", + "4879\n", + "4880\n", + "4881\n", + "4882\n", + "4883\n", + "4884\n", + "4885\n", + "4886\n", + "4887\n", + "4888\n", + "4889\n", + "4890\n", + "4891\n", + "4892\n", + "4893\n", + "4894\n", + "4895\n", + "4896\n", + "4897\n", + "4898\n", + "4899\n", + "4900\n", + "4901\n", + "4902\n", + "4903\n", + "4904\n", + "4905\n", + "4906\n", + "4907\n", + "4908\n", + "4909\n", + "4910\n", + "4911\n", + "4912\n", + "4913\n", + "4914\n", + "4915\n", + "4916\n", + "4917\n", + "4918\n", + "4919\n", + "4920\n", + "4921\n", + "4922\n", + "4923\n", + "4924\n", + "4925\n", + "4926\n", + "4927\n", + "4928\n", + "4929\n", + "4930\n", + "4931\n", + "4932\n", + "4933\n", + "4934\n", + "4935\n", + "4936\n", + "4937\n", + "4938\n", + "4939\n", + "4940\n", + "4941\n", + "4942\n", + "4943\n", + "4944\n", + "4945\n", + "4946\n", + "4947\n", + "4948\n", + "4949\n", + "4950\n", + "4951\n", + "4952\n", + "4953\n", + "4954\n", + "4955\n", + "4956\n", + "4957\n", + "4958\n", + "4959\n", + "4960\n", + "4961\n", + "4962\n", + "4963\n", + "4964\n", + "4965\n", + "4966\n", + "4967\n", + "4968\n", + "4969\n", + "4970\n", + "4971\n", + "4972\n", + "4973\n", + "4974\n", + "4975\n", + "4976\n", + "4977\n", + "4978\n", + "4979\n", + "4980\n", + "4981\n", + "4982\n", + "4983\n", + "4984\n", + "4985\n", + "4986\n", + "4987\n", + "4988\n", + "4989\n", + "4990\n", + "4991\n", + "4992\n", + "4993\n", + "4994\n", + "4995\n", + "4996\n", + "4997\n", + "4998\n", + "4999\n", + "5000\n", + "5001\n", + "5002\n", + "5003\n", + "5004\n", + "5005\n", + "5006\n", + "5007\n", + "5008\n", + "5009\n", + "5010\n", + "5011\n", + "5012\n", + "5013\n", + "5014\n", + "5015\n", + "5016\n", + "5017\n", + "5018\n", + "5019\n", + "5020\n", + "5021\n", + "5022\n", + "5023\n", + "5024\n", + "5025\n", + "5026\n", + "5027\n", + "5028\n", + "5029\n", + "5030\n", + "5031\n", + "5032\n", + "5033\n", + "5034\n", + "5035\n", + "5036\n", + "5037\n", + "5038\n", + "5039\n", + "5040\n", + "5041\n", + "5042\n", + "5043\n", + "5044\n", + "5045\n", + "5046\n", + "5047\n", + "5048\n", + "5049\n", + "5050\n", + "5051\n", + "5052\n", + "5053\n", + "5054\n", + "5055\n", + "5056\n", + "5057\n", + "5058\n", + "5059\n", + "5060\n", + "5061\n", + "5062\n", + "5063\n", + "5064\n", + "5065\n", + "5066\n", + "5067\n", + "5068\n", + "5069\n", + "5070\n", + "5071\n", + "5072\n", + "5073\n", + "5074\n", + "5075\n", + "5076\n", + "5077\n", + "5078\n", + "5079\n", + "5080\n", + "5081\n", + "5082\n", + "5083\n", + "5084\n", + "5085\n", + "5086\n", + "5087\n", + "5088\n", + "5089\n", + "5090\n", + "5091\n", + "5092\n", + "5093\n", + "5094\n", + "5095\n", + "5096\n", + "5097\n", + "5098\n", + "5099\n", + "5100\n", + "5101\n", + "5102\n", + "5103\n", + "5104\n", + "5105\n", + "5106\n", + "5107\n", + "5108\n", + "5109\n", + "5110\n", + "5111\n", + "5112\n", + "5113\n", + "5114\n", + "5115\n", + "5116\n", + "5117\n", + "5118\n", + "5119\n", + "5120\n", + "5121\n", + "5122\n", + "5123\n", + "5124\n", + "5125\n", + "5126\n", + "5127\n", + "5128\n", + "5129\n", + "5130\n", + "5131\n", + "5132\n", + "5133\n", + "5134\n", + "5135\n", + "5136\n", + "5137\n", + "5138\n", + "5139\n", + "5140\n", + "5141\n", + "5142\n", + "5143\n", + "5144\n", + "5145\n", + "5146\n", + "5147\n", + "5148\n", + "5149\n", + "5150\n", + "5151\n", + "5152\n", + "5153\n", + "5154\n", + "5155\n", + "5156\n", + "5157\n", + "5158\n", + "5159\n", + "5160\n", + "5161\n", + "5162\n", + "5163\n", + "5164\n", + "5165\n", + "5166\n", + "5167\n", + "5168\n", + "5169\n", + "5170\n", + "5171\n", + "5172\n", + "5173\n", + "5174\n", + "5175\n", + "5176\n", + "5177\n", + "5178\n", + "5179\n", + "5180\n", + "5181\n", + "5182\n", + "5183\n", + "5184\n", + "5185\n", + "5186\n", + "5187\n", + "5188\n", + "5189\n", + "5190\n", + "5191\n", + "5192\n", + "5193\n", + "5194\n", + "5195\n", + "5196\n", + "5197\n", + "5198\n", + "5199\n", + "5200\n", + "5201\n", + "5202\n", + "5203\n", + "5204\n", + "5205\n", + "5206\n", + "5207\n", + "5208\n", + "5209\n", + "5210\n", + "5211\n", + "5212\n", + "5213\n", + "5214\n", + "5215\n", + "5216\n", + "5217\n", + "5218\n", + "5219\n", + "5220\n", + "5221\n", + "5222\n", + "5223\n", + "5224\n", + "5225\n", + "5226\n", + "5227\n", + "5228\n", + "5229\n", + "5230\n", + "5231\n", + "5232\n", + "5233\n", + "5234\n", + "5235\n", + "5236\n", + "5237\n", + "5238\n", + "5239\n", + "5240\n", + "5241\n", + "5242\n", + "5243\n", + "5244\n", + "5245\n", + "5246\n", + "5247\n", + "5248\n", + "5249\n", + "5251\n", + "5252\n", + "5253\n", + "5254\n", + "5255\n", + "5256\n", + "5257\n", + "5258\n", + "5259\n", + "5260\n", + "5261\n", + "5262\n", + "5263\n", + "5264\n", + "5265\n", + "5266\n", + "5267\n", + "5268\n", + "5269\n", + "5270\n", + "5271\n", + "5272\n", + "5273\n", + "5274\n", + "5275\n", + "5276\n", + "5277\n", + "5278\n", + "5279\n", + "5280\n", + "5281\n", + "5282\n", + "5283\n", + "5284\n", + "5285\n", + "5286\n", + "5287\n", + "5288\n", + "5289\n", + "5290\n", + "5291\n", + "5292\n", + "5293\n", + "5294\n", + "5295\n", + "5296\n", + "5297\n", + "5298\n", + "5299\n", + "5300\n", + "5301\n", + "5302\n", + "5303\n", + "5304\n", + "5305\n", + "5306\n", + "5307\n", + "5308\n", + "5309\n", + "5310\n", + "5311\n", + "5312\n", + "5313\n", + "5314\n", + "5315\n", + "5316\n", + "5317\n", + "5318\n", + "5319\n", + "5320\n", + "5321\n", + "5322\n", + "5323\n", + "5324\n", + "5325\n", + "5326\n", + "5327\n", + "5328\n", + "5329\n", + "5330\n", + "5331\n", + "5332\n", + "5333\n", + "5334\n", + "5335\n", + "5336\n", + "5337\n", + "5338\n", + "5339\n", + "5340\n", + "5341\n", + "5342\n", + "5343\n", + "5344\n", + "5345\n", + "5346\n", + "5347\n", + "5348\n", + "5349\n", + "5350\n", + "5351\n", + "5352\n", + "5353\n", + "5354\n", + "5355\n", + "5356\n", + "5357\n", + "5358\n", + "5359\n", + "5360\n", + "5361\n", + "5362\n", + "5363\n", + "5364\n", + "5365\n", + "5366\n", + "5367\n", + "5368\n", + "5369\n", + "5370\n", + "5371\n", + "5372\n", + "5373\n", + "5374\n", + "5375\n", + "5376\n", + "5377\n", + "5378\n", + "5379\n", + "5380\n", + "5381\n", + "5382\n", + "5383\n", + "5384\n", + "5385\n", + "5386\n", + "5387\n", + "5388\n", + "5389\n", + "5390\n", + "5391\n", + "5392\n", + "5393\n", + "5394\n", + "5395\n", + "5396\n", + "5397\n", + "5398\n", + "5399\n", + "5400\n", + "5401\n", + "5402\n", + "5403\n", + "5404\n", + "5405\n", + "5406\n", + "5407\n", + "5408\n", + "5409\n", + "5410\n", + "5411\n", + "5412\n", + "5413\n", + "5414\n", + "5415\n", + "5416\n", + "5417\n", + "5418\n", + "5419\n", + "5420\n", + "5421\n", + "5422\n", + "5423\n", + "5424\n", + "5425\n", + "5426\n", + "5427\n", + "5428\n", + "5429\n", + "5430\n", + "5431\n", + "5432\n", + "5433\n", + "5434\n", + "5435\n", + "5436\n", + "5437\n", + "5438\n", + "5439\n", + "5440\n", + "5441\n", + "5442\n", + "5443\n" + ] + } + ], + "source": [ + "example_json_file = '../datasets/2019-12-21/ssl_stat.txt'\n", + "example_json_f = open(example_json_file, 'r')\n", + "#array_shape = (1771,6)\n", + "result_data = list()\n", + "result_label = list()\n", + "result_key = list()\n", + "i = 0\n", + "for line in example_json_f.readlines():\n", + " example_json = ''\n", + " try:\n", + " example_json = json.loads(line)\n", + " except Exception:\n", + " continue\n", + " #标签\n", + " try:\n", + " flow_key = (example_json['sip'], example_json['sport'], example_json['dip'], example_json['dport'])\n", + " result_label.append(example_label[flow_key])\n", + " result_key.append(flow_key)\n", + " except Exception:\n", + " continue\n", + " #print(example_json)\n", + " san_count = 0\n", + " cert_length = [0,0,0,0]\n", + " if 'san' in example_json:\n", + " san_count = len(example_json['san'].split(';'))\n", + " cert = example_json['Cert']\n", + " cert_count = cert['cert_count']\n", + " if cert_count != 0:\n", + " cert_length = [c['length'] for c in cert['cert_list']]\n", + " for i in range(4 - len(cert_length)):\n", + " cert_length.append(0)\n", + " result = [san_count, cert_count]\n", + " result += cert_length\n", + " #print(len(result))\n", + " result_data.append(result)\n", + " i += 1\n", + "header = ['san_count', 'cert_count', 'cert_length1', 'cert_length2', 'cert_length3','cert_length4']\n", + "result_df = pd.DataFrame(result_data, columns=header)\n", + "result_df['label'] = np.array(result_label)\n", + "keys = set(example_label.keys()).difference(set(result_key))\n", + "example_keys = example_label_df.iloc[:,0:4].values.copy()\n", + "for i,value in enumerate(list(example_keys)):\n", + " #print(tuple(value))\n", + " if tuple(value) in keys:\n", + " print(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:430: FutureWarning: Default solver will be changed to 'lbfgs' in 0.22. Specify a solver to silence this warning.\n", + " warnings.warn(\"Default solver will be changed to 'lbfgs' in 0.22. \"\n", + "c:\\python38\\lib\\site-packages\\sklearn\\linear_model\\logistic.py:467: FutureWarning: Default multi_class will be changed to 'auto' in 0.22. Specify the multi_class option to silence this warning.\n", + " warnings.warn(\"Default multi_class will be changed to 'auto' in\"\n", + "c:\\python38\\lib\\site-packages\\sklearn\\svm\\base.py:189: FutureWarning: The default value of gamma will change from 'auto' to 'scale' in version 0.22 to account better for unscaled features. Set gamma explicitly to 'auto' or 'scale' to avoid this warning.\n", + " warnings.warn(\"The default value of gamma will change \"\n", + "c:\\python38\\lib\\site-packages\\sklearn\\ensemble\\forest.py:244: FutureWarning: The default value of n_estimators will change from 10 in version 0.20 to 100 in 0.22.\n", + " warn(\"The default value of n_estimators will change from \"\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.8947815019092066, 0.8947815019092066, 0.8947815019092066]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAFcCAYAAADYnEUIAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO3de5yVZb338c+XEcRUtBSNQGQ0zAMyyEHBA5o+prndmnlAysRK2YpmZe0dvep5do/t/djBTM2MNMVDHsrHMjXylHgOQxBQEIgQddJMNBVB5fTbf9z3wGKYYRYwzLW47+/79ZoX6z7Mmt8sZr5zreu+7utSRGBmZpu/TqkLMDOz9uFANzMrCAe6mVlBONDNzArCgW5mVhAOdDOzgnCgm+Uk9ZEUkrZIXYvZhnCgW6lJWiDpf6Wuw6w9ONDNzArCgW6lJelGoDdwl6R3gFOaHT9D0nxJiyQ9L+mzSQo1q5J867+VmaQFwJkR8YCkPsDzQGdgS+AVYEhEzJHUA/hQRMxMVatZW9xCN2vdSqCfpK0i4hWHudU6B7pZCyJiMTACOBt4RdLvJe2ZuCyzdXKgW9m12ucYEfdGxJFAD2A2cHWHVWW2ARzoVnavArs13ylpZ0nHSdoaeB94B1jR0cWZrQ8HupXdRcC3Jb0JnFSxvxPwNeBl4A3gUGBMx5dnVj2PcjEzKwi30M3MCsKBbmZWEA50M7OCcKCbmRWEA93MrCCSzfu84447Rp8+fVJ9eTOzzdKUKVMWRkT3lo4lC/Q+ffrw1FNPpfryZmabJUkvtHbMXS5mZgXhQDczKwgHuplZQXgxXOtwy5Yto7Gxkffeey91KZulrl270qtXLzp37py6FKsxDnTrcI2NjWy77bb06dMHSanL2axEBK+//jqNjY3U19enLsdqjLtcrMO999577LDDDg7zDSCJHXbYwe9urEUOdEvCYb7h/NpZaxzoZu3owAMPXOfxY445hjfffLODqrGycR96QfQZ+/uqz13Q9TNVn7tvfe+qz31m1DNVn1tpfWqvxoLv/Uu7PM+KFSuoq6tbr8954okn1nl8woQJG1PSetucfy7aWxleC7fQrZQWLFjAnnvuyahRo+jfvz8nnXQSS5YsoU+fPlx44YUcfPDB3Hbbbfz1r3/l6KOPZtCgQRxyyCHMnj0bgFdffZUTTjiBhoYGGhoaVgX5NttsA8Arr7zC8OHDGTBgAP369ePRRx8FsjukFy5cCMAll1xCv3796NevH5deeumquvbaay/OOuss9tlnHz7xiU/w7rvvdvTLY5spB7qV1pw5cxg9ejQzZsygW7duXHnllUA2LPCxxx7j1FNPZfTo0fzkJz9hypQpXHzxxYwZk61Cd/7553PooYcyffp0pk6dyj777LPGc998880cddRRTJs2jenTpzNgwIA1jk+ZMoXx48fz5JNPMmnSJK6++mqefvppAP7yl79w7rnnMnPmTLbffntuv/32Dng1rAjc5WKltcsuu3DQQQcBcNppp3H55ZcDMGLECADeeecdnnjiCU4++eRVn/P+++8D8OCDD3LDDTcAUFdXx3bbbbfGcw8ZMoQvfOELLFu2jE996lNrBfpjjz3GCSecwNZbbw3Apz/9aR599FGOO+446uvrV50/aNAgFixY0M7fuRWVW+hWWs1HizRtN4XsypUr2X777Zk2bdqqj+eee66q5x4+fDiPPPIIPXv25HOf+9yq8G+yrrV8t9xyy1WP6+rqWL58eVVf08yBbqX14osv8qc//QmAW265hYMPPniN4926daO+vp7bbrsNyEJ4+vTpABxxxBH87Gc/A7KLp2+//fYan/vCCy+w0047cdZZZ/HFL36RqVOnrnF8+PDh3HHHHSxZsoTFixfz29/+lkMOOWSTfJ9WHg50K6299tqL66+/nv79+/PGG29wzjnnrHXOTTfdxDXXXENDQwP77LMPv/vd7wC47LLLmDhxIvvuuy+DBg1i5syZa3zeQw89xIABA9hvv/24/fbb+fKXv7zG8YEDB3LGGWew//77c8ABB3DmmWey3377bbpv1krBfeiWXHsNM1xfnTp1Yty4cWvW0qy/ur6+nnvuuWetz915551XhXuld955B4BRo0YxatSotY5XPv8FF1zABRdcsMbxPn368Oyzz67a/vrXv97m92HWxC10M7OCcKBbKTVvCZsVgQPdzKwgHOhmZgXhQDczKwgHuplZQTjQzdrJggUL6NevH5CNQz/22GMTV2Rl43Holt53tmv7nPV6vrfW6/SIICLo1MntG9u8+SfYSqlpmtoxY8YwcOBAbrzxRoYNG8bAgQM5+eSTV90gNHnyZA488EAaGhrYf//9WbRoEQsWLOCQQw5h4MCBDBw4sM05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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.svm import SVC\n", + "from sklearn.naive_bayes import GaussianNB\n", + "from sklearn import tree\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn.metrics import f1_score,recall_score,precision_score\n", + "import random\n", + "examples = result_df.values.copy()\n", + "#print(examples)\n", + "score_df = pd.DataFrame(np.zeros((5,3)),index = ['LogisticRegression', 'SVM', 'GaussianNB', 'tree', 'RandomForest'], \\\n", + " columns = ['precision', 'recall', 'f1'])\n", + "#def a():\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = LogisticRegression()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['LogisticRegression'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = SVC()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['SVM'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = GaussianNB()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['GaussianNB'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = tree.DecisionTreeClassifier()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['tree'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = RandomForestClassifier()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['RandomForest'] = scores\n", + "ax = score_df.plot.bar(title='tls')\n", + "fig = ax.get_figure()\n", + "fig.savefig('../figure/ssl.svg')\n", + "print(scores)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Experiment/ExpertFeature/tls_cert_length.ipynb b/Experiment/ExpertFeature/tls_cert_length.ipynb new file mode 100644 index 0000000..4abb0e6 --- /dev/null +++ b/Experiment/ExpertFeature/tls_cert_length.ipynb @@ -0,0 +1,542 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "zhihu 3488\n", + "weibo 2705\n", + "douyin 2072\n", + "hupu 1217\n", + "toutiao 1058\n", + "Name: 4, dtype: int64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date = '2019-12-20_21'\n", + "root_dir = '/Users/Leo/Documents/github/GradProj/'\n", + "example_label_file = root_dir + 'DataSet/result/' + date + '/stream_tag.txt'\n", + "example_label_df = pd.read_table(example_label_file, sep='\\s+', header=None)\n", + "example_label_df[3] = 443\n", + "example_label_df[4].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "import os\n", + "import pandas as pd\n", + "import numpy as np\n", + "import json" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "ciper_suits = {\n", + " '1305':0,\n", + " 'C030':1,\n", + "\t'C02C':2,\n", + "\t'C028':3,\n", + "\t'C024':4,\n", + "\t'C014':5,\n", + "\t'C00A':6,\n", + "\t'00A5':7,\n", + "\t'00A3':8,\n", + "\t'00A1':9,\n", + "\t'009F':10,\n", + "\t'006B':11,\n", + "\t'006A':12,\n", + "\t'0069':13,\n", + "\t'0068':14,\n", + "\t'0039':15,\n", + "\t'0038':16,\n", + "\t'0037':17,\n", + "\t'0036':18,\n", + "\t'0088':19,\n", + "\t'0087':20,\n", + "\t'0086':21,\n", + "\t'0085':22,\n", + "\t'C019':23,\n", + "\t'00A7':24,\n", + "\t'006D':25,\n", + "\t'003A':26,\n", + "\t'0089':27,\n", + "\t'C032':28,\n", + "\t'C02E':29,\n", + "\t'C02A':30,\n", + "\t'C026':31,\n", + "\t'C00F':32,\n", + "\t'C005':33,\n", + "\t'009D':34,\n", + "\t'003D':35,\n", + "\t'0035':36,\n", + "\t'0084':37,\n", + "\t'008D':38,\n", + "\t'C02F':39,\n", + "\t'C02B':40,\n", + "\t'C027':41,\n", + "\t'C023':42,\n", + "\t'C013':43,\n", + "\t'C009':44,\n", + "\t'00A4':45,\n", + "\t'00A2':46,\n", + "\t'00A0':47,\n", + "\t'009E':48,\n", + "\t'0067':49,\n", + "\t'0040':50,\n", + "\t'003F':51,\n", + "\t'003E':52,\n", + "\t'0033':53,\n", + "\t'0032':54,\n", + "\t'0031':55,\n", + "\t'0030':56,\n", + "\t'009A':57,\n", + "\t'0099':58,\n", + "\t'0098':59,\n", + "\t'0097':60,\n", + "\t'0045':61,\n", + "\t'0044':62,\n", + "\t'0043':63,\n", + "\t'0042':64,\n", + "\t'C018':65,\n", + "\t'00A6':66,\n", + "\t'006C':67,\n", + "\t'0034':68,\n", + "\t'009B':69,\n", + "\t'0046':70,\n", + "\t'C031':71,\n", + "\t'C02D':72,\n", + "\t'C029':73,\n", + "\t'C025':74,\n", + "\t'C00E':75,\n", + "\t'C004':76,\n", + "\t'009C':77,\n", + "\t'003C':78,\n", + "\t'002F':79,\n", + "\t'0096':80,\n", + "\t'0041':81,\n", + "\t'008C':82,\n", + "\t'C012':83,\n", + "\t'C008':84,\n", + "\t'0016':85,\n", + "\t'0013':86,\n", + "\t'0010':87,\n", + "\t'000D':88,\n", + "\t'C017':89,\n", + "\t'001B':90,\n", + "\t'C00D':91,\n", + "\t'C003':92,\n", + "\t'000A':93,\n", + "\t'0007':94,\n", + "\t'008B':95,\n", + "\t'0021':96,\n", + "\t'001F':97,\n", + "\t'0025':98,\n", + "\t'0023':99,\n", + "\t'C011':100,\n", + "\t'C007':101,\n", + "\t'C016':102,\n", + "\t'0018':103,\n", + "\t'C00C':104,\n", + "\t'C002':105,\n", + "\t'0005':106,\n", + "\t'0004':107,\n", + "\t'008A':108,\n", + "\t'0020':109,\n", + "\t'0024':110,\n", + "\t'C010':111,\n", + "\t'C006':112,\n", + "\t'C015':113,\n", + "\t'C00B':114,\n", + "\t'C001':115,\n", + "\t'003B':116,\n", + "\t'0002':117,\n", + "\t'0001':118,\n", + " '1301':119,\n", + "\t'1302':120,\n", + "\t'1303':121,\n", + "\t'1304':122\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "extensions = { \n", + " 0:0, \n", + " 1:1, \n", + " 2:2, \n", + " 3:3, \n", + " 4:4, \n", + " 5:5, \n", + " 6:6, \n", + " 7:7, \n", + " 8:8, \n", + " 9:9, \n", + " 10:10, \n", + " 11:11, \n", + " 12:12, \n", + " 13:13, \n", + " 14:14, \n", + " 15:15, \n", + " 16:16, \n", + " 17:17, \n", + " 18:18, \n", + " 19:19, \n", + " 20:20, \n", + " 21:21, \n", + " 22:22, \n", + " 23:23, \n", + " 24:24, \n", + " 25:25, \n", + " 26:26, \n", + " 27:27, \n", + " 28:28, \n", + " 29:29, \n", + " 30:30, \n", + " 31:31, \n", + " 35:32, \n", + " 65281:33 \n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "#TODO: 加入cipher suites,extensions特征\n", + "stream_stat_json_file = root_dir + 'DataSet/result/' + date + '/stream_stat.txt'\n", + "stm2cipherDict = dict()\n", + "stm2extenDict = dict()\n", + "with open(stream_stat_json_file) as f:\n", + " lines = f.readlines()\n", + " for line in lines:\n", + " line = json.loads(line)\n", + " flow_key = (line['sip'], line['sport'], line['dip'], line['dport'])\n", + " cipher_suites = line['tls']['cipher_suites']\n", + " extension_list = line['tls']['extensions_list']\n", + " stm2cipherDict[flow_key] = cipher_suites\n", + " stm2extenDict[flow_key] = extension_list" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "example_label = {tuple(example_label_df.iloc[i,0:4].values):example_label_df.iloc[i,4] for i in example_label_df.index}" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "end\n" + ] + }, + { + "data": { + "text/plain": [ + "'\\nkeys = set(example_label.keys()).difference(set(result_key))\\nexample_keys = example_label_df.iloc[:,0:4].values.copy()\\nfor i,value in enumerate(list(example_keys)):\\n #print(tuple(value))\\n if tuple(value) in keys:\\n print(i)\\n'" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "example_json_file = root_dir + 'DataSet/result/' + date + '/ssl_stat.txt'\n", + "example_json_f = open(example_json_file, 'r')\n", + "#array_shape = (1771,6)\n", + "result_data = list()\n", + "result_label = list()\n", + "result_key = list()\n", + "i = 0\n", + "for line in example_json_f.readlines():\n", + " example_json = ''\n", + " try:\n", + " example_json = json.loads(line)\n", + " except Exception:\n", + " continue\n", + " #标签\n", + " try:\n", + " flow_key = (example_json['sip'], example_json['sport'], example_json['dip'], example_json['dport'])\n", + " result_label.append(example_label[flow_key])\n", + " result_key.append(flow_key)\n", + " ciphers = stm2cipherDict[flow_key]\n", + " extensions_list = stm2extenDict[flow_key]\n", + " except Exception:\n", + " continue\n", + " #print(example_json)\n", + " san_count = 0\n", + " cert_length = [0,0,0,0]\n", + " if 'san' in example_json:\n", + " san_count = len(example_json['san'].split(';'))\n", + " cert = example_json['Cert']\n", + " cert_count = cert['cert_count']\n", + " if cert_count != 0:\n", + " cert_length = [c['length'] for c in cert['cert_list']]\n", + " for i in range(4 - len(cert_length)):\n", + " cert_length.append(0)\n", + " result = [san_count, cert_count]\n", + " result += cert_length\n", + " #print(len(result))\n", + " \n", + " #tls\n", + " extensions_arr = np.zeros(34, dtype=np.uint8)\n", + " cipher_suits_arr = np.zeros(123, dtype=np.uint8)\n", + " for extension in extensions_list:\n", + " try:\n", + " extensions_arr[extensions[extension]]=1\n", + " except Exception:\n", + " pass\n", + " for cipher in ciphers:\n", + " try:\n", + " cipher = cipher.upper()\n", + " cipher_suits_arr[ciper_suits[cipher]]=1\n", + " except Exception:\n", + " pass\n", + " result += list(cipher_suits_arr)\n", + " result += list(extensions_arr)\n", + " result_data.append(result)\n", + " i += 1\n", + " \n", + "extensions_head = list()\n", + "for i in range(len(extensions)):\n", + " extensions_head.append('extension'+str(i))\n", + "cipher_head = ['cipher'+str(i) for i in range(len(ciper_suits))]\n", + "base_head = ['san_count', 'cert_count', 'cert_length1', 'cert_length2', 'cert_length3','cert_length4']\n", + "header = base_head+cipher_head+extensions_head\n", + "result_df = pd.DataFrame(result_data, columns=header)\n", + "result_df['label'] = np.array(result_label)\n", + "\n", + "print('end')\n", + "'''\n", + "keys = set(example_label.keys()).difference(set(result_key))\n", + "example_keys = example_label_df.iloc[:,0:4].values.copy()\n", + "for i,value in enumerate(list(example_keys)):\n", + " #print(tuple(value))\n", + " if tuple(value) in keys:\n", + " print(i)\n", + "'''" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "import os\n", + "import numpy as np\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "164\n", + " precision recall f1\n", + "LogisticRegression 0.886296 0.886296 0.886296\n", + "SVM 0.897751 0.897751 0.897751\n", + "GaussianNB 0.694103 0.694103 0.694103\n", + "tree 0.911328 0.911328 0.911328\n", + "RandomForest 0.905388 0.905388 0.905388\n" + ] + }, + { + "data": { + "image/png": "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\ndr1wf+KJJ/jyl7/MVlttBcBXvvIVHn/8cYYPH07v3r3XtN93332pq6ur8G9uReAzdyusxqNOGrYb\nAveTTz5h2223ZebMmWu+XnjhhbKe++CDD+axxx6je/fufPOb31zzRtBgY4vkdOzYcc3jmpoaVq3y\ncqzWcg53K6xXX32Vp59+GoAbb7yRAw88cJ3jXbp0oXfv3tx6661AEsizZs0CYNiwYUycOBFILrwu\nWbJkne9duHAh22+/PaeddhqnnnoqM2bMWOf4wQcfzB133MEHH3zA8uXLuf322znooIM2y+9pxdSm\nu2XcFWGfRt++fbnmmmv4zne+Q58+fTjjjDO45JJL1mlz/fXXc8YZZ/Czn/2MlStXMnLkSPr378+E\nCRMYPXo0V111FTU1NUycOJGhQ4eu+b5HHnmEX/7yl7Rv357OnTuvd+Y+YMAATj75ZAYPHgwkF1T3\n2Wcfd8FYxbTpcLd8qNTQxZZq164dl19++bq1NArX3r17c9999633vTvssAN33nnnevuXLVsGwEkn\nncRJJ5203vHS5x83bhzjxo1b53htbS3PP//8mu3vf//7zf4eZk1xt4yZWQ453K2QGp8hm+WNw93M\nLIcc7mZmOeRwNzPLIYe7mVkOOdzNKqSuro499tgDSMa5H3300RlXZEXmce6WvXO3ab5Ni57v/RY1\njwgignbtfK5j+eF/zVZIdXV19O3blzFjxjBgwACuu+46hg4dyoABA/jqV7+65makqVOnsv/++9O/\nf38GDx7M0qVLqaur46CDDmLAgAEMGDCg2TnczbLgcLfCmjdvHieeeCIPPPAAV111FQ8++CAzZsxg\n4MCBXHTRRaxYsYIRI0YwYcIEZs2axYMPPsiWW27J9ttvzwMPPMCMGTO4+eabOeuss7L+VczW424Z\nK6xevXoxZMgQ7rnnHubOnbtm+t8VK1YwdOhQ5s2bx4477sigQYOAZCIxgOXLlzN27FhmzpxJTU0N\nL730Uma/g9mGONytsBqm9o0IDj/8cG688cZ1js+ePbvJxagvvvhidthhB2bNmsUnn3xCp06dWqVe\ns5Zwt4wV3pAhQ3jyySeZP38+AB988AEvvfQSu+++O4sWLWLq1KkALF26lFWrVvH++++z44470q5d\nO6677jpWr16dZflmTXK4W+F169aNq6++mlGjRrHXXnsxZMgQXnzxRTp06MDNN9/Md7/7Xfr378/h\n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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x1110cfe80>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.svm import SVC\n", + "from sklearn.naive_bayes import GaussianNB\n", + "from sklearn import tree\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn.metrics import f1_score,recall_score,precision_score\n", + "import random\n", + "examples = result_df.values.copy()\n", + "print(len(examples[0]))\n", + "score_df = pd.DataFrame(np.zeros((5,3)),index = ['LogisticRegression', 'SVM', 'GaussianNB', 'tree', 'RandomForest'], \\\n", + " columns = ['precision', 'recall', 'f1'])\n", + "#def a():\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = LogisticRegression()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['LogisticRegression'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = SVC()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['SVM'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = GaussianNB()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['GaussianNB'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = tree.DecisionTreeClassifier()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['tree'] = scores\n", + "\n", + "f1_score_list = list()\n", + "recall_score_list = list()\n", + "precision_score_list = list()\n", + "for i in range(1):\n", + " #np.random.shuffle(examples)\n", + " examples_train = examples[:int(len(examples)*0.75)]\n", + " examples_test = examples[int(len(examples)*0.75):]\n", + " x_train = examples_train[:,0:-1]\n", + " y_train = examples_train[:,-1]\n", + " x_test = examples_test[:,0:-1]\n", + " y_test = examples_test[:,-1]\n", + " classifer = RandomForestClassifier()\n", + " classifer.fit(x_train, y_train)\n", + " y_pred = classifer.predict(x_test)\n", + " f1_score_list.append(f1_score(y_test, y_pred, average='micro'))\n", + " recall_score_list.append(recall_score(y_test, y_pred, average='micro'))\n", + " precision_score_list.append(precision_score(y_test, y_pred, average='micro'))\n", + " \n", + "scores = [np.mean(precision_score_list), np.mean(recall_score_list), np.mean(f1_score_list)]\n", + "score_df.loc['RandomForest'] = scores\n", + "print(score_df)\n", + "ax = score_df.plot.bar(title='ssl-fingerprint')\n", + "fig = ax.get_figure()\n", + "#fig.savefig('../figure/ssl.svg')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} |
