2022虚拟机交换机技术规范_第1页
2022虚拟机交换机技术规范_第2页
2022虚拟机交换机技术规范_第3页
2022虚拟机交换机技术规范_第4页
2022虚拟机交换机技术规范_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

虚拟机交换机技术规范PAGEPAGE5/24目录范围 8规范性引用文件 8缩略语 9概述与应用场景 10云/虚拟化场景 11云资源池SDN场景 12NFV场景 15定位与价值 17参考架构 17控制面/管理面架构 18控制面与转发面的接口 19转发面架构 20内核态转发 20用户态转发 21转发模型 22功能要求 22数据帧转发 23BUM数据帧处理 23虚拟局域网 24IP协议及分布式路由 24传输协议支持 25流量过滤 25QoS控制 25安全组 26MTU设置 26服务链 27封装协议 27多链路聚合 27巨帧支持 28DPDK 28运维能力要求 28监控功能 28流量监控 28状态监控 28资源监控 29流量镜像 29流量采样 29流量统计 29告警功能 29流量告警 30故障告警 30资源告警 30日志功能 30故障定位 30接口要求 31与外部控制器之间的接口 31运维管理相关接口 31计算虚拟化兼容要求 32基于虚拟机形态部署的兼容方式 32嵌入Hypervisor部署的兼容方式 33可靠性要求 34故障自愈及故障隔离能力 34与控制器的一致性检查 34附录A:OpenvSwitch 35OpenvSwitch概述 35OpenvSwitch与本规范的关系 36PAGEPAGE38/241范围本规范描述虚拟交换机的典型应用场景及参考架构,并对虚拟交换机的功能要求、接口要求、运维能力要求和计算兼容性、可靠性等进行了规范。本规范适用于云/虚拟化场景、云资源SDN、NFV等场景的虚拟交换机技术要求。规范性引用文件IEEE802.1D 介质访问控制(MAC)桥IEEE802.1p LAN第二层QoS/CoS议IEEE802.1Q 虚拟桥接局域网IEEE802.3ad 链路聚合协议IETFRFC768 用户数据包协议IETFRFC791 互联网协议IETFRFC793 传输控制协议IETFRFC922 存在子网时的互联网数据包广播IETFRFC950 互联网标准子网划分规程IETFRFC2474 IPv4与IPv6包头中差分服务字段的定义IETFRFC4632 无类域间路由IETFRFC7047 OpenvSwitch数据库管理协议IETFRFC7348 虚拟可扩展局域网openflow-spec-v1.3.0 OpenFlow 交换机规范1.3.0版缩略语APIApplicationProgrammingInterface应用程序编程接口ARPAddressResolutionProtocol地址解析协议BUMBroadcast,unknownunicast,multicast广播,未知单播,组播CPUCentralProcessingUnit中央处理器DPDKDataPlaneDevelopmentKit数据平面开发套件DSCPDifferentiatedServicesCodePoint差分服务代码点IPInternetProtocol互联网协议MACMediaAccessControl媒体访问控制MTUMaximumTransmissionUnit最大传输单元NFVNetworkfunctionvirtualization网络功能虚拟化NSHNetworkservicehead网络服务头部OVSDBOpenvSwitchDatabaseManagementProtocolOpenvSwitch数据库管理协议PBRPolicyBasedRouting策略路由QoSQualityofService服务质量SCServiceclassification服务分类SDNSoftwaredefinednetwork软件定义网络SFServicefunction服务功能SFCServicefunctionchaining服务链SFFServiceFunctionForwarder服务功能转发器TCtrafficcontrol流量控制TCPTransmissionControlProtocol传输控制协议VLANVirtualLocalAreaNetwork虚拟局域网VNFVirtualizednetworkfunction虚拟网络功能VXLANVirtualeXtensibleLAN可扩展虚拟局域网概述与应用场景虚拟交换机是指基于X86交换机以组件的形式运行在服务器上或以虚拟机形态部署虚拟交换机的上行端口。基于具体应用场景的需要,虚拟交换机实现不同的网络能力,包括基础的L2-3网络转发、报QoS云/虚拟化场景在云/L2网络交换,L2通信需求。虚拟交换机通过收到的报文学习MACBUM报文,在所有端口泛洪;对于已知MAC地址的报文,查表发送到对应的端口。虚拟交换机满足虚拟机L2网络通信需求:同虚拟交换机(同服务器)L2网络通信不同虚拟交换机(不同服务器)上虚拟机之间的L2通信类似于传统硬件交换机,除实现基本L2交换外,虚拟交换机一般也提供更丰富的辅助特性,例如,为实现L2广VLAN划分和VLAN报文识别;提供基于报文字段的流量过滤等等。除了与传统交换机类似的基本交换功能和交换机特性的管理,包括对主机的物理端口和虚拟机虚拟端口的管理。SDN在SDN软件定义网络(SDN:SoftwareDefineNetwork)技术可实现网络虚拟化,网络可灵活编程,快速响应业务要求,适应业务动态调整,在云资源池中与服务器虚拟化技术协同工作,可适应扩大的网络规模、虚拟机动态迁移和大规模租户隔离要求。控制器控制器计算接入层物理服务器VSAvSwitch虚拟化服务器网络服务层LeafVXLANLBSpineFirewall网络控制层业务呈现/协同层OpenStackVMM图4-1云资源池SDN网络结构如图4-1所示,云资源池SDN网络由以下层次组成:业务呈现/协同层,负责计算与网络的定义和协同,将网络的具体发放下放给网络控制器处理。网络控制层是SDN的核心,协同虚拟网络与物理网SDN网络控制与转发分离的关键部件。L2~L3网络服务,防火墙/L4~L7增值服务。计算接入层作为SDN网络虚拟化的起点和终点,虚拟交换机在计算接入层负责虚拟计算资源的SDN接入。OVSDB&OVSDB&OpenFlowRESTFUL/RESTCONF控制器NETCONFOVSDB&OpenFlowNETCONFUnderlay网络VXLANOverlayVM VM VMVM VM虚拟交换机(NVE)VM虚拟交换机(NVE)物理网卡物理网卡云平台虚拟化服务器

虚拟化服务器

服务器图4-2虚拟交换机在云资源池SDN场景的应用:作为NVE组件在该场景下,虚拟交换机作为SDN整体方案的基础组成API,实现网络业务编排及发放。通过虚拟交换机支持Overlay隧道技术,减少对物理网络的修改和依赖,实现虚拟QoS及网络运维能InternetInternet带安全组的虚拟交换机服务器服务器VMVMVMVM图4-3虚拟交换机的安全组应用安全组作为端口级的虚拟防火墙集成在虚拟交换机中,实现网络隔离和访问限制。虚拟机端口与安全组关联后,该安全组的规则会对进出该虚拟机端口的网络报文进行过滤,只有规则允许的报文才能通过。安全组能够按照协议、端口和状态对流量进行区分限制,防止未知协议和非法流量的攻击。用户可以定制安全组规则来保护易受攻击的服务,控制内外网之间的访问,集中管理内网的安全性。用户还可以通过带状态的安全组指定并记录报文所建立的连接状态,在决定新报文的过滤规则时,使用这些状态信息可以增加效率和速度。NFV网络功能虚拟化(NFV:NetworkFunctionVirtualization)采用通用硬件以及虚拟化技术,通过软件承载各类虚拟网络NFV通过软硬件解耦及功能抽NFV技术有效降低总体运营成本和缩短业务部署时间。虚拟交换机在NFV架构中属于基础设施范畴,为各虚拟网络功能(VNF)应用提供基础网络转发能力以及高级网络SFCSFCControllerNon-SFCNetworkSFCNetworkNon-SFCNetworkvSwitchvSwitchvSwitchvSwitchvAR vNGFW VNFvAR vNGFW VNFvAR vNGFW VNFvAR vNGFW VNF图4-4虚拟交换机与NFV其他组件的关系在NFV(ServiceFunctionChainSFC)SFC是目前正在研究和标准化的新型网络技术,用来将流量灵活调配到各个SF(ServiceFuntion,服务功能,如虚拟防火墙/负载均衡器/网关等)进行处理,提高虚拟网络的可靠性、安全性,实现业务处理的可见性等。在SFC网络中,虚拟交换机既可以作为SC(流分类)SFF(流转发)/SFFproxy节点,SFNSHNSH转发能力。当前SFC的实现方案主要分为两种一种基于NSH(networkserviceheader)NSH头,NSHPBR,在转发过程个SFC。相比较PBR方案,NSH能支持SFC网络路径的动态、灵活调整,对网络及SF的部署限制较小。定位与价值参考架构虚拟交换机的内部组成分成两部分:控制面/管理面和转发面。控制层/管理面:处理业务配置、路由计算,生成转发流表。报文收发。虚拟交换机虚拟交换机转发面管理面控制面图5-1虚拟交换机参考架构虚机交换机的控制面和管理面存在不同的具体实现方/了完整的控制面和管理面的组件,具备控制和管理的能力;对于外部控制/管理面实现方式,虚拟交换机内部的控制面/管理面属轻量化实现,用于与控制器或云平台交互获取配置和转发表项,虚拟交换机的控制和管理功能实质上由外部的控制器或云平台实现。控制面/管理面架构RPCRPCopenflowOVSDB管理面RPC/socket虚拟交换机转发面OVSCLIOVSDBservervswitchdagent控制器图5-2虚拟交换机控制面/管理面架构虚拟交换机的控制面/管理面采用如下几种协议:OpenFlow协议是ONF在SDN场景中定义的标准南向OpenFlow实现对虚拟交换机的转发控制(流表的下发、更新和删除等)、流OpenFlow协议定义的标准流表OpenFlowOpenFlow虚拟交换机和控制器之间的兼容问题。其中,OpenFlow1.3版本是当前使用较为广泛,被大多数虚拟交换机和控制器所支持。vswitchd进程用来实现OpenFlowOVSDB协议(RFC7047)OpenvSwitch采用的配置过OVSDB消息接口控制器实现对虚拟交换机的配置,比如配置端口、实现端口绑定、配置VLAN、修改OVSDBserver进程用来实现轻量级/删/改/查/处理。RPC消息接口作为虚拟交换机与控制器/云平台之间的轻量级消息接口,可以作为对OpenFlowOVSDB的agent进程用来实现虚拟交换机与控制器之间的代理组控制面与转发面的接口虚拟交换机的控制面与转发面之间涉及到转发表项下发、报文/事件/统计数据上送。报文上送和转发表项下发的效率会影响新业务的上线速度以及转发路径的快速刷新,事件/设备信息的及时感知和处理。因此,控制面与转发之间需要采用高速的消息通信接口。转发面架构根据虚拟交换机转发面组件运行在linux的内核态还是用户态,虚拟交换机的转发面又分为内核态和用户态两种。内核态转发虚拟交换机转发组件作为一个ko模块插入在内核中,虚拟机的后端网卡驱动vhost-net以及物理网卡驱动也工作在内核中,报文的收发处理均在内核中完成。并且,虚拟交换机的部分转发业务处理需要与内核TCP/IP协议栈交互来共同完成,比如通过TC模块来实现QoS能力。内核态虚拟交换机因在内核中因使用的CPU/内存资源受到限制,报文在内核协议栈中处理路径长、过程复杂,因此转发性能相对较差。VMVM用户态Vhost-netVhost-netTCP/IP议栈TCiptablesPort转发面转发组件物理网卡虚拟网卡VM图5-3虚拟交换机内核态转发架构用户态转发虚拟交换机的转发面组件部署在操作系统的用户态空DPDK用户态驱动将物理网卡从内核中卸载到用户态,虚拟交换机直接与用户态的虚拟机后端网卡驱动vhost-user进行交互,不再使用内核态网卡驱动、协议栈,报文的收发均在用户态中完成。Vhost-userVM虚拟网卡Vhost-user转发面用户态虚拟交换机基于DPDK通过大页内存、轮循、Vhost-userVM虚拟网卡Vhost-user转发面DPDK用户态驱动DPDK用户态驱动用户态内核态虚拟网卡VM物理网卡TCP/IP内核协议栈转发组件图5-4虚拟交换机用户态转发架构转发模型EgressQos/SecurityGroup/Mirror根据不同的应用场景,虚拟交换机可以选择不同的转发OpenFlowMAC/portEgressQos/SecurityGroup/MirrorIngressIngressQos/SecurityGroup/Mirror二选一MAC/port表项转发vlan/vxlan/DVROpenflow流表转发vlan/vxlan/DVR图5-5虚拟交换机的转发模型OpenFlow转发模型:虚拟交换机作为纯OpenFlow交OpenFlow流表以及协议定义的单级/OpenFlow流表定义灵复杂,进而导致转发效率不高。MAC/portMAC/port表项转OpenFlow流表指导转发。MAC/port表项定义相对精简和固化,查询效率高,因此不影响转发效率。功能要求数据帧转发支持数据帧转发功能,即在不同虚拟端口所连接的被桥接的链路层实体间转发MAC机利用包括MAC帧中的目的地址和源地址信息作智能转发决定,数据帧转发功能的实现应符合IEEE802.1D。BUMARPARP广播。ARP代答方式表示虚拟交换机通过OpenFlow协议PacketInARP请求上送到控制器,PacketOutARP应答发送到源端口。虚拟交换机的ARP代答的实现应符合openflow-spec-v1.3.0规范。BUM数据帧基于头端复制泛洪。对收到的地址为广播、组播和未知单播MAC地址的数据帧,虚拟交换机支持在本地实现帧的复制,并将复制帧通过数据帧转发或基于隧道转发到与源BUM数据帧抑制。虚拟交换机支持对广播、组播和未知单播数据帧实BUM的地址为广播、组播和未知单播MAC地址的数据帧采取丢弃处理。虚拟局域网各VLANVID(VLAN标识符)VLAN是原桥接的局域网的一个子集。虚拟交换机对VLAN功能的支IEEE802.1Q的规定。IPIPIETFRFC791。虚拟交换机应实现与IP相关的子网符合IETFRFC950),IP广播(IETFRFC922)和无类域间路由选择(IETFRFC4632)。除实现数据帧转发功能外,建议支持分布式路由。虚拟交换机根据收到的数据包中网络层地址及内部维护的路由表决定输出端口以及下一跳交换机地址或主机地址并重写链路层数据包头。不同子网间的网络流量在虚拟交换机可实现L3通信,无需依赖外部路由器处理。传输协议支持虚拟交换机应支持传输控制协议(TCP)和用户数据(UDPTCP的支持应符合IETFRFC793的规定。虚拟交换机对UDP的支持应符合IETFRFC768的规定。流量过滤虚拟交换机应支持为每个端口应用特定的流量过滤规则。虚拟交换机应支持的规则匹配方式包括但不限于:MACIPTCP/UDP端口;MAC地址、TCP/UDP端口;支持缺省组,用于匹配不符合其他所有匹配规则的报文。支持对匹配规则的流量设置处理方式,应支持的处理方式包括但不限于丢弃、转发。QoS支持为指定端口的二层帧头部写入指定的coscosIEEE802.1p。支持为指定端口的三层报文头部写入指定的DSCP标记值,DSCP标记的支持应符合RFC2474。对于需隧道封装报文,支持将DSCP标签复制至封装报文外层。支持基于端口的网络流量上下行限速配置,实际网络10%。支持基于流(基于五元组)的网络流量上下行限速,10%。安全组建议支持安全组规则配置,支持TCP、UDP、ICMP等网络协议。可将特定端口绑定到指定安全组。建议支持同一端口同时绑定到多个安全组。IP/MAC防欺诈功能。MTU支持物理端口的MTU最大数据包大小。支持虚拟端口的MTU最大数据包大小。服务链建议支持基于NSH的服务链,包括支持标准的封装、SC流分类功能、SFF流转发功能、SFFproxy功能。NSH(SC/SFF/SFFproxy)对接,包括物理和虚拟设备。封装协议VXLANVXLAN封装报文的识别,以及隧道内层报文报头信息的识别,以便进行虚拟转发、过滤等功能。虚拟交换机应支持识别但不限于内层报文的MACIP地址和TCP/UDP端口。虚拟交换机对VXLAN协议的支持应符合IETFRFC7348。支持对特定报文进行VXLANVXLANIETFRFC7348。支持VXLAN网络和VLAN网络之间的桥接。虚拟交换机应支持数据帧在指定的VXLAN和VLAN间的转发,实现VXLAN网络标识(VNI)和VLAN标识符(VLANID)的一一对应转换。虚拟交换机对VXLAN协议的支持应符合IETFRFC7348。多链路聚合多链路聚合在逻辑上将多条独立的链路作为一条单独链路使用,以获得灵活的高带宽及链路冗余。虚拟交换机应支持将多条上行物理链路的聚合,实现上行带宽增加、流量负载在多条物理链路的负载均衡。链路IEEE802.3ad。巨帧支持支持巨帧的识别和转发,减少数据包的数量,减轻包头处理的额外开销,以满足大文件传输等流量承载需求。巨帧支持使能后,虚拟交换机应支持最大帧长不9000字节的巨帧。DPDK建议转发面组件支持DPDK技术,通过大页内存、轮循、CPU绑核、避免系统调用、报文零拷贝等技术提高报文收发效率。运维能力要求监控功能流量监控IP方向等分类监控。状态监控支持端口状态监控,实时获取端口当前状态,包括正常工作状态、停止状态等。支持虚拟交换机关键进程状态监控,实时获取控制器组件相关进程、转发模块相关进程等进程状态。资源监控MACARP表等资源的使用情况监控。流量镜像支持针对指定端口的流量进行镜像,将流量镜像至指IP地址。流量采样支持进行网络流量采样,按照匹配流量规则采集特定流的统计数据,然后输出流记录到外部收集器。可配置采样频率、观测点数、同时支持的流量数、每秒可导出的记录数量、流量设置率等参数。流量统计支持以分钟、小时、天、周、月、年为单位,可自定义时间范围,对端口流量进行统计,并可按照协议类型、IP地址、会话、方向等进行分类统计。告警功能流量告警支持针对特定流量告警,出现异常流量或超流量阈值时进行告警。故障告警支持发生故障时告警,包括端口故障、关键进程故障等。资源告警支持资源(流表、转发表、端口等)使用情况阈值设置及告警。日志功能支持记录运行日志,可实时查看。支持异常日志等级划分及分类检索,如:EROR、WARN等。rsyslog、logback等。支持按照时间周期、日志文件大小等进行日志转储。支持同时向本地和远程日志服务器输出日志。支持日志集中查询、导出、一键式采集。故障定位MACARP障定位线索。接口要求与外部控制器之间的接口提供标准的OpenFlow协议接口,支持对虚拟交换机下发流表等操作。OpenFlow协议接口应符合openflow-spec-v1.3.0的规定。提供标准的OVSDB协议接口,支持对虚拟交换机的配置、查询等操作。OVSDB协议接口应符合IETFRFC7047的规定。运维管理相关接口状态和资源监控的参数配置、流量实时监控信息、状态信息和关键进程状态、资源(流表等转发资源)使用信息等的获取。流量镜像:端口流量镜像运维功能的配置下发和信息IP配置、镜像结果获取等。流量采样:流量采样配置下发和信息交互,如采样匹配规则、采样频率等参数的配置、采样配置结果获取等。流量统计:流量统计配置下发和信息交互,如时间范围参数、指定端口、协议类型、统计结果获取等。故障和资源告警的告警阈值等参数设置,流量、故障和资源告警信息获取等。日志功能:日志功能配置下发和信息交互,包括日志检索、日志采集协议配置、日志转储、日志输出等。故障定位:支持流表、MAC表、ARP表的查询。计算虚拟化兼容要求Hypervisor部署方式。基于虚拟机形态部署的兼容方式虚拟交换机以虚机方式部署,虚拟机基于Hypervisor提供的交换能力连接虚拟交换机,虚拟机之间的流量通过Hypervisor发送到虚拟交换机进行处理。基于虚拟机的部署方式能借助虚拟机镜像方式实现便捷部署,且对计算虚拟化的接口对接要求较低;缺点是虚拟交换性能受限于Hypervisor发性能损耗较大。图9-1虚拟机形态部署的虚拟交换机Hypervisor图9-2嵌入Hypervisor部署的虚拟交换机虚拟交换机可以组件的形态嵌入部署到Hypervisor拟交换机替换HypervisorHypervisor组件形态部署使虚拟机流量直接接入虚拟交换机,减少绕行路径,有利于达到更高的转发性能;缺点是需要改动Hypervisor,对计算虚拟化存在较高的接口开放要求。10可靠性要求故障自愈及故障隔离能力虚拟交换机在与控制器断链后,自动感知链路异常,新老业务流量均能正常转发。与控制器的一致性检查支持与控制器之间通过手动或者自动的方式进行配置和流表的一致性检查。支持配置和流表在不一致时通过手动或者自动的方式进行修正。附录A:OpenvSwitchOpenvSwitchOpenvSwitch是使用开源Apache2许可协议的高质量OpenvSwitch的目标是实现产品级质量的多层虚拟交换机。OpenvSwitch支持标准管理接口和协议,并支持转发能力的可编程扩展和控制。OpenvSwitch适合用于虚拟化环境中用作虚拟交换机。OpenvSwitch将标准控制和可视化接口暴露给虚拟网络层,OpenvSwitch支持多种基于Linux的虚拟化技术,包括Xen/XenServerKVM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论