SDN - ofsofswitch13 обработка пакетов
Я пытаюсь изменить существующий переключатель cpqd, чтобы он действовал как межсетевой экран с полным состоянием, который может определять записи потока, которые смотрят на флаги заголовков TCP.
Я использую проект с открытым исходным кодом: https://github.com/CPqD/ofsoftswitch13
У меня проблемы с пониманием того, где должны произойти изменения в коде, или, другими словами, где коммутатор слушает и контролирует трафик пакетов между хостами. Я не уверен, как отладить это, поэтому в настоящее время я использую отпечатки в коде. Любые предложения о том, как найти в коде места, где пакет отправлен или получен? или о том, как легко отлаживать код?
заранее спасибо
1 ответ
Вам необходимо создать приложение, которое использует Openflow для настройки таблиц потоков из коммутаторов. Эта библиотека представляет собой протокол Openflow, который знает, как взаимодействовать с коммутаторами с поддержкой Openflow.
Если вы хотите реализовать брандмауэр, вы должны написать приложение, которое будет использовать эту библиотеку для записи записей в таблицы потоков. Вам потребуется сетевая инфраструктура с коммутаторами (вы можете смоделировать ее с помощью Mininet)
Как показывает пример (см. Раздел "Установка потока для соответствия пакетам IPv6"), вы можете упростить эти примеры, чтобы создать запись потока для блокировки некоторого потока. Вам просто нужно создать Match без действия (что означает, что он будет блокировать потоки).
Я бы порекомендовал вам взглянуть на этот учебник: http://sdnhub.org/tutorials/opendaylight/. Это просто и понятно. Если вы хотите взаимодействовать с коммутаторами по REST, взгляните на это: http://www.frank-durr.de/?p=68.