在 OMNet 上实现 SDN 控制器
implementation of SDN controller on OMNet
我正在尝试在 OMNet v5.2.1 上创建 SDN 模型。但是,INET 中没有 SDN 控制器模块。这就是我使用 standartHost 模块作为控制器的原因。我能得到合理的结果吗?
此外,我在网络上使用 UDP 协议。 因为我想发送数据包遵循这条路径:
客户端 -> 交换机 -> 控制器 -> 交换机 -> host2 ,
我将客户端协议定义为 UDPBasicApp,将控制器协议定义为 UDPEcho。然而 UDPEcho 协议使路径:
客户端 -> 交换机 -> 控制器 -> 交换机 -> 客户端
综上所述,客户端收到了他发送的数据包。我该如何解决?
我附上了与 UDP 协议相关的 .INI 文件部分
[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"
INET 有一个 SDN 扩展,请参阅 this paper and the corresponding code on github。
关于 UDPEchoApp
:此行为是有意的。回声应用程序响应发送的任何请求;如果您将请求发送到控制器(如在您的配置中),并且 运行 控制器上的 EchoApp,控制器将响应您的 UDP 数据包。但是,对于非 SDN 场景,您根本不需要控制器(您只需使用 client->switch->host2
)。
我正在尝试在 OMNet v5.2.1 上创建 SDN 模型。但是,INET 中没有 SDN 控制器模块。这就是我使用 standartHost 模块作为控制器的原因。我能得到合理的结果吗?
此外,我在网络上使用 UDP 协议。 因为我想发送数据包遵循这条路径:
客户端 -> 交换机 -> 控制器 -> 交换机 -> host2 ,
我将客户端协议定义为 UDPBasicApp,将控制器协议定义为 UDPEcho。然而 UDPEcho 协议使路径:
客户端 -> 交换机 -> 控制器 -> 交换机 -> 客户端
综上所述,客户端收到了他发送的数据包。我该如何解决?
我附上了与 UDP 协议相关的 .INI 文件部分
[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"
INET 有一个 SDN 扩展,请参阅 this paper and the corresponding code on github。
关于 UDPEchoApp
:此行为是有意的。回声应用程序响应发送的任何请求;如果您将请求发送到控制器(如在您的配置中),并且 运行 控制器上的 EchoApp,控制器将响应您的 UDP 数据包。但是,对于非 SDN 场景,您根本不需要控制器(您只需使用 client->switch->host2
)。