Использование Cbench для измерения параметров OpenFlow-сети

Cbench (контроллер Benchmarker) является расширением возможностей Oflops. Представляет собой программу для тестирования OpenFlow контроллеров путем создания пакетов в тесте для новых потоков. Cbench эмулирует определенное количество коммутаторов, которые подключаются к контроллеру, отправляют пакеты в сообщениях.

Для того, что бы установить программу Cbench, необходимо выполнить следующие команды:

  • а) команду «sudo apt-get install autoconf automake libtool libsnmp-dev libpcap-dev libconfig8 libconfig8-dev», для установки необходимых библиотек;
  • б) команду «git clone git://gitosis.stanford.edu/oflops.git && cd oflops && git submodule init && git submodule update», для скачивания пакета Oflops;
  • в) команду «git clone git://gitosis.stanford.edu/openflow.git && cd openflow && git checkout -b release/1.0.0 remotes/origin/release/1.0.0», для скачивания пакета OpenFlow;
  • г) команду «wget http://hyperrealm.eom/libconfig/libconfig-l.4.9.tar.gz && tar - xvzf libconfig-1.4.9.tar.gz && cd libconfig-1.4.9 && ./configure && make», для установки остальных библиотек;
  • д) команду «cd netfpga-packet-generator-c-library/ && ./autogen.sh && ./configure && make», компиляция необходимого пакета для Cbench в каталоге Oflops;
  • е) команду «cd .. && sh ./boot.sh && ./configure && make», для компиляции Oflops;
  • ж) команду «cd cbench && make», для компиляции Cbench.

Ниже в таблице 11 представлены некоторые аргументы запуска Cbench.

Таблица 11 - Аргументы Cbench

Параметр

Описание

1

2

-1

Количество испытаний в тесте

-S

Количество эмулируемых коммутаторов

Длительность теста

-W

Количество отбрасываемых испытаний в начале теста

Количество отбрасываемых испытаний в конце теста

-D

Определяет начальную задержку

-i

Задержка между подключаемыми коммутаторами

-t

Запуск испытаний с максимальной производительностью

Параметр указывает на контроллер, к которому следует подключаться (обязательный параметр). После адреса контроллера, можно указать вывод результатов в файл (>имя_файла).

Количество генерируемых МАС-адресов на коммутатор

Пример запуска: ./cbench -1 64 -s 64 -m 10000 -w 5 -С 1 -D 500 -M 100000 -t -с 1Р_адрес_сервера>имя_файла_с_результатами.

Ручное измерение временных характеристик

В OpenFlow сети возможно измерение параметром задержки и потери пакетов без использования специальных программ. Для этого достаточно встроенных средств Linux. Однако необходимо использовать как минимум два компьютера.

Измерение производительности таблиц OpenFlow возможно генерацией случайных MAC адресов (mac flood). Для этого необходим пакет ettercap (доступен по адресу http://ettercap.github.io/ettercap/), запускающийся с параметрами «ettercap TP rand_flood -i интерфейс», где «интерфейс» - сетевая карта, подключенная к OpenFlow коммутатору. На этом же компьютере и на соседнем необходимо запустить заранее программу для перехвата пакетов «tcpdump -i интерфейс -w файл» для записи трафика в файл.

После прекращения эксперимента и закрытия всех запущенных программ проводиться анализ пакетов в сохраненных файлах:

  • а) команда «tcpdump -г файл -ttt -q >файл2» используется для анализа временных меток и выдачи интервалов времени между пакетами;
  • б) команда «tcpdump -г файл -tt -q >файл2» используется для анализа временных меток и выдачи времени перехвата пакетов в микросекундах;
  • в) команда «tcpdump -г файл -tt -е -q >файл2» используется для анализа временных меток и MAC адресов, выдачи времени перехвата пакетов в микросекундах.

При последующем анализе результатов в табличных редакторах становится возможным получить количество потерянных пакетов, задержки передачи пакетов.

Задание на лабораторную работу

В рамках данной лабораторной работы необходимо сделать следующее:

  • а) с помощью эмулятора mininet создать программно-конфигурируемую сеть с двумя хостами, контроллером и одним коммутатором OpenFlow;
  • б) оценить производительность коммутатора OpenFlow, воспользовавшись инструментом Oflops;
  • в) оценить производительность контроллеров NOX и Floodlight,

воспользовавшись инструментом CBench;

г) оценить производительность контроллеров NOX и Floodlight,

воспользовавшись инструментами ettercap и tcpdump;

д) сделать выводы о работе программно-конфигурируемой сети и контроллеров OpenFlow.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ   След >