ovs-vsctl和ovs-dpctl之间的区别

时间:2015-08-08 01:11:40

标签: openflow openvswitch

如果我要设置一个通过OpenFlow控制的开关设备,使用 ovs-dpctl ovs-vsctl 的条件是什么?如果使用 ovs-vswitchd ovs-dpctl 的手册页会说使用 ovs-vsctl

那么你会在什么情况下使用 ovs-dpctl ?你不能做什么呢?

一个后续问题是OF" datapath"价值来自。这将是OF控制器用于识别OF开关的OF规范中的64位数字。是自动计算此值还是必须输入?

感谢您提供任何帮助。

2 个答案:

答案 0 :(得分:5)

OVS-dpctl:

用于创建,修改和删除Open vSwitch数据路径的工具。 以下是一些示例(命令是随机的):

– ovs-dpctl add-dp dp1
– ovs-dpctl add-if dp1 eth0
– ovs-dpctl show
– ovs-dpctl dump-flows

OVS-vsctl:

用于查询和更新ovs-vswitchd配置的实用程序(在ovsdb-server的帮助下)。端口配置,网桥添加/删除,绑定和VLAN标记只是此命令可用的一些选项。

以下是一些示例(命令是随机的):

– ovs-vsctl –V : Prints the current version of openvswitch.
– ovs-vsctl show : Prints a brief overview of the switch database configuration.
– ovs-vsctl list-br : Prints a list of configured bridges
– ovs-vsctl list-ports <bridge> : Prints a list of ports on a specific bridge.
– ovs-vsctl list interface : Prints a list of interfaces.
– ovs-vsctl add-br <bridge> : Creates a bridge in the switch database.

ovs-ofctl:

我认为值得一提这个工具。用于监视和管理OpenFlow交换机的命令行工具。它用于列出OVS内核模块

中实现的流程
- ovs-ofctl add-flow <bridge> <flow>
- ovs-ofctl add-flow <bridge> <match-field> actions=all
- ovs-ofctl del-flows <bridge> <flow>

对我而言,似乎ovs-vsctl用于配置开放vswitch本身,如配置端口,网桥等。虽然ovs-dpctl用于处理数据路径和接口。

来源:

  1. openvswitch and ovsdb
  2. OpenVSwitch slides
  3. openvswitch cheat sheet
  4. 你的第二个问题 - &gt; OF datapath:对于我来说,openflow上下文中的数据路径是一个表示控制器和交换机之间连接的对象。我相信OF控制器数据显示出来但它依赖于OF控制器。

答案 1 :(得分:3)

ovs-vsctl用于管理openvswitch,ovs-dpctl可用于管理openvswitch中的数据路径。

可以在dpif-provider.h

中找到解释数据路径的相关注释
A datapath is a collection of physical or virtual ports that are
exposed over OpenFlow as a single switch.  Datapaths and the 
collections of ports that they contain may be fixed or dynamic.

Openvswitch提供了不同数据路径实现的功能。 OVS porting guide中的下图显示了不同的数据路径如何适应OVS架构。

            _
           |   +-------------------+
           |   |    ovs-vswitchd   |<-->ovsdb-server
           |   +-------------------+
           |   |      ofproto      |<-->OpenFlow controllers
           |   +--------+-+--------+  _
           |   | netdev | |ofproto-|   |
 userspace |   +--------+ |  dpif  |   |
           |   | netdev | +--------+   |
           |   |provider| |  dpif  |   |
           |   +---||---+ +--------+   |
           |       ||     |  dpif  |   | implementation of
           |       ||     |provider|   | ofproto provider
           |_      ||     +---||---+   |
                   ||         ||       |
            _  +---||-----+---||---+   |
           |   |          |datapath|   |
    kernel |   |          +--------+  _|
           |   |                   |
           |_  +--------||---------+
                        ||
                     physical
                       NIC