Тестовый файл: https://disk.yandex.ru/d/lFB1y6IHtfWS8w,
Задача №1
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: В поле для ответа укажите максимальный объём сессии (max size).
Способ решения задачи:
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн в котором анализируем текстовый файл по строчно.
где :
- tail — выводит последние строки из файла, поэтому используем параметр -n без значений
- -n — обработка всего файла
- +1 — пропускаем первую позицию (заголовок)
- network_logs.csv — имя исследуемого файла
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- print $8 — номер позиции
- sort -nr — сортировать по убыванию
- head -n 1 — вывести только одно (1) значение
Результат решения задачи 1
1500
Задача №2
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: В поле для ответа укажите самое большое время сессии (max time).
Способ решения задачи:
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- tail — выводит последние строки из файла, поэтому используем параметр -n без значений
- -n — обработка всего файла
- +1 — пропускаем первую позицию (заголовок)
- network_logs.csv — имя исследуемого файла
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- print $9 — номер позиции
- sort -nr — сортировать по убыванию
- head -n 1 — вывести только одно (1) значение
Результат решения задачи
9.99999893496658
Задача №3
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: Укажите количество записей с протоколом TCP
Способ решения задачи:
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- tail — выводит последние строки из файла, поэтому используем параметр -n без значений
- -n — обработка всего файла
- +1 — пропускаем первую позицию (заголовок)
- network_logs.csv — имя исследуемого файла
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- print $7 — номер позиции
- grep -c «TCP» — выводит количество строк, в которых найдено совпадение с указанным шаблоном
Результат решения задачи
3333561
Задача №4
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: Укажите количество записей с протоколом UDP
Способ решения задачи :
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- tail — выводит последние строки из файла, поэтому используем параметр -n без значений
- -n — обработка всего файла
- +1 — пропускаем первую позицию (заголовок)
- network_logs.csv — имя исследуемого файла
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- print $7 — номер позиции
- grep -c «UDP» — выводит количество строк, в которых найдено совпадение с указанным шаблоном
Результат решения задачи
3331747
Задача №5
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: В поле для ответа укажите количество записей, где IP-адрес отправителя (src.ip) и IP-адрес получателя (dst.ip) совпадают.
Способ решения задачи :
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- $1 == $4 — сравниваем значения
- network_logs.csv — имя файла
- wc -l — считает количество строк
Результат решения задачи
Задача №6
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: В поле для ответа укажите количество записей с уникальными IP-адресами отправителя (src.ip).
Способ решения задачи :
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- NR > 1 — не учитываем заголовок
- !a[$1]++ — это условие. В awk ненулевое значение (в том числе 1) считается истиной, а ноль — ложью. Поэтому ! инвертирует логику: если элемент массива a с ключом $1 ещё не существует, условие считается истинным, и блок кода выполняется. Проще говоря: если в массиве a для текущего первого поля $1 пока нет ключа — мы его создаём (автоматически присваиваем значение 0, так как в awk неинициализированные числовые элементы равны 0), а затем увеличиваем счётчик (++). Если ключ уже есть — условие ложно, блок не выполняется, и строка пропускается
- network_logs.csv — имя файла
- wc -l — считает количество строк
Результат решения задачи
101
Задача №7
Формат записи в скачанном файле: src.ip,src.port,src.geo,dst.ip,dst.port,dst.geo,proto,size,time
где src.ip — IP-адрес отправителя, src.port — порт отправителя, src.geo — страна IP-адреса отправителя, dst.ip — IP-адрес получателя, dst.port — порт получателя, dst.geo — страна IP-адреса получателя, proto — протокол, size — объём трафика сессии, time — время сессии.
Пример записи: 183.105.250.226,43460,CHN,51.211.197.165,61258,FRA,ICMP,1172,6.184687067936206.
Задание: В поле для ответа укажите количество записей, в которых объём трафика сессии (size) больше значения 3500.
Способ решения задачи :
Открываем консоль переходим в директорию с исследуемым файлом и строим пайплайн
где :
- awk — универсальная утилита для обработки и анализа текстовых файлов
- -F’,’ — разделитель в файле
- NR > 1 — не учитываем заголовок
- $8>3500 — проверяем условие
- network_logs.csv — имя файла
- wc -l — считает количество строк
Оставить комментарий
Вы должны быть авторизованы для комментирования.