Я пытаюсь создать модель SDN на OMNet v5.2.1. Однако в INET отсутствует модуль контроллера SDN. Вот почему я использую модуль standartHost в качестве контроллера. Могу ли я получить разумный результат?
Кроме того, я использую протокол UDP в своей сети. Так как я хочу отправлять пакет по этому пути:
клиент -> коммутатор -> контроллер -> коммутатор -> хост2 ,
Я определил протокол клиента как UDPBasicApp, а протокол контроллера — UDPEcho. Однако протокол UDPEcho делает путь:
клиент -> коммутатор -> контроллер -> коммутатор -> клиент
Подводя итог, клиент получает пакет, который он отправляет .. Как я могу это исправить?
Я прилагаю часть файла .INI, связанную с протоколами UDP
[Config Step1]
network = Test
description = "Fully automatic static routing table configuration"
*.client.numUdpApps = 1
*.client.udpApp[0].typename = "UDPBasicApp"*.client.udpApp[0].destAddresses = "controller"*.client.udpApp[0].destPort = 5000
*.client.udpApp[0].messageLength = 1000B
*.client.udpApp[0].sendInterval = exponential(12ms)
*.client.udpApp[0].packetName = "UDPData"
*.controller.numUdpApps = 1
*.controller.udpApp[0].typename = "UDPEchoApp"*.controller.udpApp[0].localPort = 5000
*.controller.pingApp[*].destAddr = "host2"
Существует расширение SDN для INET, см. Эта бумага и соответствующий код на GitHub.
относительно UDPEchoApp
: это поведение предназначено. Эхо-приложение отвечает на любой отправленный запрос; если вы отправите запрос контроллеру (как в вашей конфигурации) и запустите EchoApp на контроллере, на ваш UDP-пакет будет получен ответ от контроллера. Однако вам вообще не нужен контроллер для сценария без SDN (вы просто используете client->switch->host2
).
Других решений пока нет …