安装
编译安装:

 




 ovs-ctl stop
ovs-vsctl add-br br0
 

创建桥的时候会创建一个和桥名字一样的接口,并自动作为该桥的一个端口,那么这个虚拟接口的作用,一方面是可以作为交换机的管理端口,另一方面也是基于这个虚拟接口,实现了桥的功能。

常用操作:




OpenVswitch架构

OVS主要由三大部分组成:ovsdb-server ovs-vswitched ovs kernel module
1. ovs-vswitchd:OVS守护进程,OVS的核心部件,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换(flow-based switching)。它和上层 controller 通信遵从 OPENFLOW 协议,它与 ovsdb-server 通信使用 OVSDB 协议,它和内核模块通过netlink通信,它支持多个独立的 datapath(网桥),它通过更改flow table 实现了绑定和VLAN等功能。
2. ovsdb-server:轻量级的数据库服务,主要保存了整个OVS 的配置信息,包括接口,交换内容,VLAN。ovs-vswitchd 会根据数据库中的配置信息工作。它于 manager 和 ovs-vswitchd 交换信息使用了OVSDB(JSON-RPC)的方式。
3. ovs-dpctl:一个工具,用来配置交换机内核模块,可以控制转发规则。
4. ovs-vsctl:主要是获取或者更改ovs-vswitchd 的配置信息,此工具操作的时候会更新ovsdb-server 中的数据库。
5. ovs-appctl:主要是向OVS 守护进程发送命令的,一般用不上。
6. ovsdbmonitor:GUI 工具来显示ovsdb-server 中数据信息。
7. ovs-controller:一个简单的OpenFlow 控制器
8. ovs-ofctl:用来控制OVS 作为OpenFlow 交换机工作时候的流表内容。
 
OVS各程序功能
 1 ovs-vswitchd: 主要模块,实现switch的daemon,包括一个支持流交换的Linux内核模块;
 2 ovsdb-server: 轻量级数据库服务器,提供ovs-vswitchd获取配置信息,例如vlan、port等信息;
 3 ovs-brcompatd: 让ovs-vswitch替换linux bridge,包括获取bridge ioctls的Linux内核模块;
 4 ovs-dpctl:用来配置switch内核模块;
 5 ovs-vsctl: 查询和更新ovs-vswitchd的配置;
 6 ovs-appctl: 发送命令消息,运行相关daemon;
 7 ovs-ofctl: 查询和控制OpenFlow交换机和控制器;
 8 ovs-openflowd:一个简单的OpenFlow交换机;
 9 ovs-controller:一个简单的OpenFlow控制器;
10 ovs-pki:OpenFlow交换机创建和管理公钥框架;
11 ovs-tcpundump:tcpdump的补丁,解析OpenFlow的消息;
12 ovs-bugtool:管理openvswitch的bug信息。
原文:https://www.cnblogs.com/dissipate/p/13086821.html