最近一直在学习RYU控制器,在使用的过程中,发现有以下几方面的优点:RYU控制器完全使用Python语言编写,在理解起来和上手速度上是挺快的;RYU控制器的整体架构清晰明了,在日后有时间我会整理一个关于RYU控制器的架构性的文章供大家参考;RYU控制器本身是一个功能强大的网络实验平台,可以和openstack很好的兼容,对于openstack我不是很熟悉,就知道通过openstack可以实现的数据中心云计算方面的功能;RYU控制器本身自带很多编写好的APP,通过对这些APP的熟悉,可以很好的掌握通过RYU这个框架自己编写APP的能力,这在其他的SDN/OpenFlow控制器是无法比拟的;同时,因为RYU控制器本身已经编写的功能已经很全面了,网络开发者基本可以利用这个框架来编写自己的APP,减少二次开发的工作,这也是一个优点。


下面说一下在simple-switch.py的APP的测试过程,通过这个APP实现流表的自动下发。

在mininet上模拟一台交换机(s1)三台主机(h1,h2,h3),然后远端连接RYU控制器,使用127.0.0.1,和6633端口建立连接

打开两个终端terminal,一个用于mininet建立网络拓扑模拟环境,一个用于模拟远程RYU控制器。

第一,在RYU控制器开启simple-switch.py的APP,输入命令:ryu-manager simple-switch.py,开启后如图:

基于RYU控制器(controller)上的simple-switch 的APP做的测试-SDN/OpenFlow

第二,在另外一个终端上建立mininet模拟拓扑,输入命令:mn --topo single,3 --mac --switch ovsk --controller remote

然后在RYU的那个终端就会显示连接的建立,同时,也会同步一些交换机和控制器建立连接的信息,如图:

基于RYU控制器(controller)上的simple-switch 的APP做的测试-SDN/OpenFlow

此时,在交换机的转发流表是空的,因此此时主机之间是不可以通信的,在使用h1去ping h2的时候,就会自动建立流表

基于RYU控制器(controller)上的simple-switch 的APP做的测试-SDN/OpenFlow

注意是先进行广播,然后建立反方向的流表,然后建立正方向的流表。流表如图:

基于RYU控制器(controller)上的simple-switch 的APP做的测试-SDN/OpenFlow

相关文章:

  • 2022-02-06
  • 2021-11-09
  • 2022-12-23
  • 2021-10-23
  • 2021-06-22
  • 2022-12-23
  • 2021-09-25
猜你喜欢
  • 2022-12-23
  • 2021-09-28
  • 2021-04-28
  • 2021-08-22
  • 2022-01-17
  • 2022-12-23
  • 2021-11-30
相关资源
相似解决方案