文档首页 > > 安装指南> Open vSwitch 安装指南(CentOS 7.6)>

介绍

介绍

分享
更新时间:2021/02/20 GMT+08:00

简要介绍

OVS(Open vSwitch)是一个基于Apache 2.0开源协议的多层软件交换机,致力于提供一个生产级质量的交换平台。OVS支持标准管理接口,并开放前向函数,以实现程序扩展和控制。由于OVS基于多种平台底座存在多种变体,本文以基础版本作为介绍对象。

图1 OVS架构

OVS软件主要的架构由内核态的Datapath和用户态的vswitchd、ovsdb组成。

Datapath是负责数据交换的内核模块,从网口读取数据,快速匹配FlowTable中的流表项,成功的直接转发,失败的上交vswitchd进程进行处理。在OVS初始化和port binding时注册钩子函数,把端口的报文处理接管到内核模块;

vswitchd是负责OVS管理和控制的守护进程,通过Unix Socket将配置信息保存到ovsdb中,并通过Netlink和内核模块进行交互;

ovsdb是OVS数据库,保存了OVS的配置信息。

此外,OVS发布包中还包含了一系列管理工具(ovs-vsctl、ovs-dpctl、ovs-ofctl、ovs-appctl、ovs-docker等),方便用户对OVS进行配置和使用。

OVS在虚拟机和容器等场景中作为虚拟交换机做了很好的适配,除了对外暴露了虚拟网络层的标准控制接口和可视化接口之外,它也提供了跨多物理节点的分布式支持,在多种虚拟化和容器技术中均进行了支持。

当前OVS支持以下特性:

  • Standard 802.1Q VLAN model with trunk and access ports
  • NIC bonding with or without LACP on upstream switch
  • NetFlow, sFlow(R), and mirroring for increased visibility
  • QoS (Quality of Service) configuration, plus policing
  • Geneve, GRE, VXLAN, STT, and LISP tunneling
  • 802.1ag connectivity fault management
  • OpenFlow 1.0 plus numerous extensions
  • Transactional configuration database with C and Python bindings
  • High-performance forwarding using a Linux kernel module

其中Linux kernel module支持需要Linux内核版本高于3.10,此外,OVS还可以无需内核模块支持,完全以用户态模式运行,例如使用DPDK模式等,该内容在本文中对此内容不做详细介绍。

安装OVS软件需采用源码编译方式进行安装。

建议的版本

建议使用的版本为“2.12.0”。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区论坛频道来与我们联系探讨

智能客服提问云社区提问