在 SDN 环境中使用 Pox 和 Mininet 开发 Northbound 应用程序时,Northbound 应用程序是在 localhost 还是 Mininet 主机上运行?
即,应用程序通过 REST 与 Pox 控制器通信。是否从命令提示符启动应用程序:
$ python <application>
还是通过 Mininet 主机启动它
mininet> h1 python application
要首先回答您的问题,我需要澄清一下 SDN 框架。SDN 框架由 3 个主要层组成,位于图像底部的数据平面、在您的情况下 POX 控制器的控制平面和位于图像顶部的应用程序层。
在编写 NorthBound 应用程序时,该应用程序的作用是与控制器通信,并指示 ie POX 应如何处理转发设备(mininet ie 中的交换机)中的流量请求。理解这一点,在 mininet 上的主机上运行 NorthBound 应用程序根本没有任何意义,因为框架设置会失败。
因此,要回答这个问题,您应该在本地主机或任何其他与 POX 控制器带外连接的主机上运行您的 NorthBound 应用程序,但能够使用即 Rest API 与他交谈。
图片取自此pdf,我认为这是 SDN 读者和学习者必读的内容。