Главная страница
Навигация по странице:

  • Самоорганизующиеся сети

  • Разработка распределенной системы анализа трафика телекоммуникационных сетей Исходные данные

  • Сбор данных о трафике в сети

  • Программная реализация алгоритма

  • Скрипт mapper.py

  • Скрипт reducer.py

  • вариант 0. М. А. БончБруевича институт непрерывного образования (ино) Контрольная работа


    Скачать 30.42 Kb.
    НазваниеМ. А. БончБруевича институт непрерывного образования (ино) Контрольная работа
    Дата10.12.2022
    Размер30.42 Kb.
    Формат файлаdocx
    Имя файлавариант 0.docx
    ТипКонтрольная работа
    #837556

    Санкт-Петербургский государственный университет телекоммуникаций им. проф. М. А.Бонч-Бруевича

    ____________________________________________________________

    ИНСТИТУТ НЕПРЕРЫВНОГО ОБРАЗОВАНИЯ (ИНО)

    Контрольная работа
    Дисциплина: Самоорганизующиеся сети

    Выполнил:
    группа:

    курс:

    номер зачётной книжки:

    Проверил:
    Дата сдачи работы:

    Санкт-Петербург

    2020

    Разработка распределенной системы анализа трафика телекоммуникационных сетей
    Исходные данные

    Вариант

    Для каждого

    Определить

    ...




    9

    Получателя

    Максимальный

    Размер пакетов





    Сбор данных о трафике в сети

    Для сбора трафика выполняем следующие действия:

    1. На компьютере, подключенном к телекоммуникационной сети, открываем Wireshark.

    2. В окне Wireshark нажимаем Capture options.

    3. В открывшемся окне выбираем интерфейсы для сбора трафика, поле Capture filter оставляем пустым.

    4. Нажимаем Start.

    5. Дожидаемся появления не менее 5 000 строк.

    6. Останавливаем запись нажав соответствующую кнопку в левом верхнем углу на панели инструментов.

    7. Экспортируем записанные пакеты путем выбора меню File ->Export ->File…

    8. В открывшемся окне выбираем директорию для экспорта, вводим название файла (http), выбираем тип файла CSV (commaseparatedvalue), нажимаем Save.

    Получаем файл вида: (см. следующую страницу)

    "1","0.000000","87.240.129.129","192.168.0.98","TLSv1.2","395","Application Data"

    "2","0.049020","192.168.0.98","87.240.129.129","TLSv1.2","188","Application Data"

    "3","0.000008","192.168.0.98","87.240.129.129","TCP","188","[TCP Retransmission] 49649 > 443 [PSH, ACK] Seq=1 Ack=342 Win=16396 Len=134"

    "4","0.018836","87.240.129.129","192.168.0.98","TCP","54","443 > 49649 [ACK] Seq=342 Ack=135 Win=356 Len=0"

    "5","0.000685","87.240.129.129","192.168.0.98","TLSv1.2","390","Application Data"

    "6","0.023881","192.168.0.98","87.240.129.129","TLSv1.2","188","Application Data"

    "7","0.000007","192.168.0.98","87.240.129.129","TCP","188","[TCP Retransmission] 49649 > 443 [PSH, ACK] Seq=135 Ack=678 Win=16312 Len=134"

    "8","0.059235","87.240.129.129","192.168.0.98","TCP","54","443 > 49649 [ACK] Seq=678 Ack=269 Win=356 Len=0"

    "9","2.130245","87.240.129.129","192.168.0.98","TLSv1.2","395","Application Data"

    "10","0.031263","192.168.0.98","87.240.129.129","TLSv1.2","188","Application Data"

    "11","0.000008","192.168.0.98","87.240.129.129","TCP","188","[TCP Retransmission] 49649 > 443 [PSH, ACK] Seq=269 Ack=1019 Win=16227 Len=134"

    "12","0.018203","87.240.129.129","192.168.0.98","TCP","54","443 > 49649 [ACK] Seq=1019 Ack=403 Win=356 Len=0"

    "13","2.422363","fe80::1e5f:2bff:fe86:4f70","ff02::1:ff83:d41","ICMPv6","86","Neighbor Solicitation for fe80::302f:a3c6:4583:d41 from 1c:5f:2b:86:4f:70"

    "14","0.001910","fe80::302f:a3c6:4583:d41","ff02::1:ff86:4f70","ICMPv6","86","Neighbor Solicitation for fe80::1e5f:2bff:fe86:4f70 from 84:4b:f5:d0:93:01"

    "15","0.111183","fe80::302f:a3c6:4583:d41","ff02::16","ICMPv6","90","Multicast Listener Report Message v2"

    "16","0.040468","fe80::302f:a3c6:4583:d41","ff02::16","ICMPv6","90","Multicast Listener Report Message v2"

    "17","0.015333","fe80::302f:a3c6:4583:d41","ff02::16","ICMPv6","90","Multicast Listener Report Message v2"

    Программная реализация алгоритма:

    Порядок действий:

    1. Устанавливаем ПО OracleVirtualBox.

    2. Импортируем ClouderaQuickStartVM.

    3. В папке /home/Cloudera виртуальной машины создаем папку, куда копируем собранный ранее лог Wireshark.

    4. Загружаем данную папку в HDFS. Для этого открываем Terminal и вводим команду: Hadoop fs –put /home/Cloudera/QWERTY/

    5. Создаем python-скрипты для реализации шагов Map и Reduce и назваем их, mapper.py и reducer.py.

    6. Запускаем задание Map Reduce при помощи команды:

    yarnjar /usr/lib/hadoop-mapreduce/hadoop-streaming.jar –input QWERTY/* -outputresults1 -file mapper.py -file reducer.py -mapper "python mapper.py" –reducer "python reducer.py"

    7. Смотрим результаты при помощи команды:

    hadoop fs -text results1/*
    Скрипт__mapper.py'>Скрипт mapper.py

    #!/usr/bin/python

    import sys

    def do_map(packet):

    splitted = packet.split(",")

    splitted_key = splitted[3]

    splitted_key = splitted_key[1:-1]

    lenght_key = splitted[5]

    lenght_key = lenght_key[1:-1]

    yield splitted_key, lenght_key

    for line in sys.stdin:

    for key, value in do_map(line):

    print(key + "\t" + str(value))
    Скрипт reducer.py

    #!/usr/bin/python

    import sys

    def do_reduce(address, values):

    return address, max(values)

    prev_key = None

    values = []

    for line in sys.stdin:

    key, value = line.split("\t")

    if key != prev_key and prev_key is not None:

    result_key, result_value = do_reduce(prev_key, values)

    print(result_key + "\t" + str(result_value))

    values = []

    prev_key = key

    values.append(int(value))

    if prev_key is not None:

    result_key, result_value = do_reduce(prev_key, values)

    print(result_key + "\t" + str(result_value))
    Результат:

    104.26.0.24 1454

    104.28.19.183 766

    173.194.220.155 1484

    173.194.220.156 1484

    173.194.73.154 571

    173.194.73.95 1039

    178.250.0.157 721

    178.250.2.130 677

    178.250.2.146 670

    178.250.2.150 696

    178.250.2.151 797

    178.250.6.18 867

    185.235.84.164 876

    192.168.0.1 93

    192.168.0.255 243

    192.168.0.98 1506

    194.226.130.227 571

    2.20.254.128 136

    2.20.254.89 136

    209.85.233.154 577

    209.85.233.157 745

    217.69.133.145 1464

    224.0.0.251 186

    224.0.0.252 64

    239.255.255.250 216

    255.255.255.255 342

    2606:4700:20::681a:118 86

    2a02:26f0:d0::214:fe59 86

    2a02:26f0:d0::214:fe80 86

    31.13.72.36 876

    5.45.58.214 356

    5.62.36.58 1506

    54.186.106.198 89

    64.233.161.105 1484

    64.233.161.95 571

    64.233.162.94 1484

    64.233.162.97 571

    64.233.165.138 636

    64.233.165.139 1435

    64.233.165.94 571

    69.171.250.25 571

    77.88.21.119 1464

    82.202.192.242 571

    87.240.129.129 188

    87.240.129.131 1030

    87.240.137.139 1464

    87.240.185.130 571

    87.240.185.134 571

    87.240.185.135 571

    87.240.185.137 571

    87.240.185.138 66

    87.240.185.144 571

    87.240.185.146 571

    87.240.185.147 571

    87.240.185.148 571

    87.240.185.153 652

    87.240.185.159 571

    87.240.185.160 571

    87.240.185.163 571

    87.240.185.167 571

    87.240.185.168 571

    87.240.190.67 1324

    87.240.190.72 1464

    87.240.190.78 1464

    87.250.251.119 1464

    93.186.225.198 1464

    93.186.225.201 1464

    93.186.225.208 1464

    93.186.227.128 571

    93.186.227.130 571

    93.186.227.131 571

    93.186.227.132 571

    93.186.227.133 571

    93.186.227.134 66

    93.186.227.137 571

    93.186.227.139 571

    93.186.227.140 571

    93.186.227.141 571

    93.186.227.144 571

    93.186.227.146 571

    93.186.227.147 571

    93.186.227.150 571

    93.186.227.154 571

    93.186.227.155 571

    94.100.180.197 866

    Broadcast 42

    D-LinkIn_86:4f:70 42

    Universa_e3:f9:18 42

    fd01::44c3:7a36:e103:c398 134

    fd01::851d:20b4:bc1:cadf 134

    fe80::1e5f:2bff:fe86:4f70 113

    fe80::851d:20b4:bc1:cadf 244

    ff02::1 190

    ff02::16 90

    ff02::1:3 84

    ff02::1:ff27:7ede 86

    ff02::1:ff83:d41 86

    ff02::1:ff86:4f70 86

    ff02::fb 206




    написать администратору сайта