计算机系统应用教程网站

网站首页 > 技术文章 正文

虚拟化网络- 虚拟交换机ovs(虚拟交换机有什么用)

btikc 2024-11-17 07:17:53 技术文章 24 ℃ 0 评论

OVS(Open vSwitch)是一种开源的、多层次的虚拟交换机,允许管理和控制计算机网络的数据流。OVS 主要用于虚拟化环境,如虚拟机和容器,以及用于构建和管理软件定义网络(SDN)和网络功能虚拟化(NFV)。

在2012年3月18日发布的内核版本 3.3 中,实现将Open vSwitch合并到Linux内核主线;官方 Linux 软件包适用于Debian、Fedora、openSUSE、Ubuntu、FreeBSD 和 NetBSD 等。

OVS整体架构

OVS模块说明

类型

名称

作用

内核空间

openvswitch.ko

OVS的核心内核模块,它实现了虚拟交换机的核心功能,包括交换机的数据面和控制面。

用户空间

ovs-vswitchd

实现vswitch的守候进程daemon

用户空间

ovsdb-server

轻量级数据库服务器,用于ovs的配置信息

工具集

ovs-dpctl

用来配置vswitch内核模块的一个工具

工具集

ovs-ofctl

查询和控制OpenFlow虚拟交换机的流表

工具集

ovs-appctl

发送命令消息到ovs进程

工具集

ovs-vsctl

通过和ovsdb-server通信,查询和更新vswitch的配置

工具集

ovsdb-client

用于与 OVSDB 服务器交互

OVS 特性

  • 虚拟机之间通过 NetFlow、sFlow、IP 流信息导出(IPFIX)、交换端口分析器(SPAN)、远程交换端口分析器(RSPAN) 以及使用通用路由封装(GRE)建立隧道的端口镜像进行公开通信
  • 通过链路聚合控制协议(LACP、IEEE 802.1AX -2008)进行链路聚合
  • 用于网络分区的标准802.1Q 虚拟 LAN (VLAN) 模型,支持中继
  • 支持使用互联网组管理协议(IGMP)版本 1、2 和 3 的多播侦听
  • 支持最短路径桥接媒体访问控制(SPBM) 以及对链路层发现协议(LLDP)的相关基本支持
  • 支持双向转发检测(BFD) 和 802.1ag 链路监控
  • 支持生成树协议(STP、IEEE 802.1D -1998)和快速生成树协议(RSTP、IEEE 802.1D-2004)
  • 针对不同应用程序、用户或数据流的细粒度服务质量(QoS) 控制
  • 支持分层公平服务曲线(HFSC)排队规则(qdisc)
  • 虚拟机接口级别的流量监管
  • 网络接口控制器(NIC)绑定,通过源MAC地址进行负载平衡、主动备份和第 4 层 哈希
  • 支持OpenFlow协议,包括各种虚拟化相关扩展
  • 完整的IPv6支持
  • 支持多种隧道协议,包括 GRE、虚拟可扩展 LAN (VXLAN)、无状态传输隧道 (STT) 和Geneve,并额外支持互联网协议安全(IPsec)分层
  • 远程配置协议,具有C和Python编程语言的现有绑定
  • 在内核空间或用户空间中实现数据包转发引擎,通过在不离开内核空间的情况下处理大多数转发的数据包以及使用多线程内核空间和用户空间组件来提供额外的灵活性和性能改进
  • 带有流缓存引擎的多表转发管道
  • 转发层抽象,使Open vSwitch更容易移植到新的软硬件平台

OVS内核模块

内核名称

作用

openvswitch

实现了虚拟交换机的核心功能

brcompat

向后兼容旧版的Linux网桥(bridge)模块,以确保OVS与旧版网络配置和工具兼容

openvswitch_mod

openvswitch_mod通常被openvswitch模块取代

vport

用于创建和管理虚拟端口(vport)

gre

用于支持GRE(Generic Routing Encapsulation)隧道的模块

vxlan

用于支持VXLAN(Virtual Extensible LAN)隧道的模块

geneve

用于支持Geneve隧道协议的模块

nf_conntrack

Linux内核的连接跟踪模块,它用于在OVS上跟踪连接状态,以支持网络地址转换(NAT)和防火墙等功能。

tun

用于支持TUN设备,它允许将网络流量从用户空间传递到内核空间和反之,以实现虚拟网络设备的通信。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表