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

Ala*_*ect 4 openflow openvswitch

如果我要设置一个通过OpenFlow控制的开关设备,使用ovs-dpctlovs-vsctl的条件是什么?对于该名男子页OVS-dpctl说,使用OVS-vsctl如果OVS-vswitchd使用.

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

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

感谢您的帮助.

Ehs*_* Ab 5

OVS-dpctl:

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

– ovs-dpctl add-dp dp1
– ovs-dpctl add-if dp1 eth0
– ovs-dpctl show
– ovs-dpctl dump-flows
Run Code Online (Sandbox Code Playgroud)

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.
Run Code Online (Sandbox Code Playgroud)

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>
Run Code Online (Sandbox Code Playgroud)

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

资料来源:

  1. openvswitch和ovsdb
  2. OpenVSwitch幻灯片
  3. openvswitch备忘单

你的第二个问题 - > OF datapath :对我来说,openflow上下文中的数据路径是一个表示控制器和交换机之间连接的对象.我相信OF控制器数据显示出来但它依赖于OF控制器.


sea*_*der 5

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.
Run Code Online (Sandbox Code Playgroud)

Openvswitch 提供了不同数据路径实现的功能。OVS移植指南中的下图显示了不同的数据路径如何适应 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
Run Code Online (Sandbox Code Playgroud)