我们经常说的:当我们不下发流表项时,ovs默认是工作在二层网络下的二层交换机。而实际上并非如此!!!

如果SDN网络中没有流表项,整个网络是无法进行通讯的!!!

我们可以通过以下方式下发流表项:

1.    手动下发流表项,使得网络可以工作在二层网络下。此时OVS功能如同二层交换机

2.    配置外部(mininet之外)控制器(可以实现对更高层级协议的处理),如:Ryu,使用控制器开启Hub功能,实现控制器充当L2 MAC学习交换机。

3.    配置内部控制器,如:ovs-testcontroller,只充当L2 MAC学习交换机或者集线器(只能实现二层交换机功能,不能处理上层协议)

注意:ovs-testcontroller和ovs-controller是相同的,前者是后者的重命名。

--controller: 自定义控制器,如 default | none | nox | ovsc | ref |remote | ryu

(一)不设置控制器的情况

SDN实验---流表项对网络的影响

发现不下发流表项时,网络无法正常通信!!!

(二)设置控制器,但是控制器不下发流表项

SDN实验---流表项对网络的影响

控制器不做任何处理,不下发流表项

SDN实验---流表项对网络的影响

发现不下发流表项时,网络无法正常通信!!!

(三)使用默认内部控制器(即ovsc)

sudo mn --topo=linear,4 --switch=ovsk

sudo mn --topo=linear,4 --switch=ovsk --controller=ovsc

sudo mn --topo=linear,4 --switch=ovsk --controller=default

SDN实验---流表项对网络的影响

SDN实验---流表项对网络的影响

ovs-testcontroller-用于测试的简单OpenFlow控制器

是一个简单的OpenFlow控制器,可管理任意数量的交换机,通过OpenFlow协议,使得它们充当L2 MAC学习交换机或集线器。 它适用于OpenFlow网络的初始测试。

所以,在mininet中,虽然我们不主动去设置控制器,但是内部会去调用ovs-testcontroller控制器作为我们SDN网络的控制器去下发流表,使得我们的交换机成为L2 MAV学习交换机或集线器!!!

相关文章:

  • 2022-12-23
  • 2021-06-05
  • 2021-12-01
  • 2021-09-30
  • 2021-05-03
  • 2021-10-23
  • 2022-12-23
  • 2021-06-29
猜你喜欢
  • 2022-01-28
  • 2021-09-08
  • 2022-12-23
  • 2021-12-27
  • 2021-05-13
  • 2021-12-14
  • 2021-05-13
相关资源
相似解决方案