一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自动调谐虚拟防火墙的制作方法

2021-10-19 23:05:00 来源:中国专利 TAG:调谐 防火墙 虚拟 引用 申请

自动调谐虚拟防火墙
1.相关申请的交叉引用
2.本技术要求于2020年4月11日提交的名称为“autotuning a virtual firewall(自动调谐虚拟防火墙)”的印度非临时专利申请第202041015775号的优先权。该申请的全部内容明确地通过引用并入本文。
技术领域
3.本公开的实施例涉及防火墙领域,并且更具体地涉及自动调谐虚拟防火墙。


背景技术:

4.为了保护虚拟机和模拟虚拟机的计算机免受未经授权的访问和感染,可以实现防火墙。防火墙针对现有特性列表来检查传入和/或传出数据分组,该特性确定应允许分组继续到达其目的地还是应阻止分组。可以在模拟虚拟机的计算机上实现防火墙,或防火墙可以是在虚拟机上被实现的虚拟防火墙。


技术实现要素:

5.根据一些实现,一种方法可以包括:由设备接收与在计算设备上部署虚拟防火墙相关联的输入;由设备确定与虚拟防火墙相关联的第一特性集和与关联于计算设备的管理程序相关联的第二特性集;由设备基于第一特性集和第二特性集来自动调谐虚拟防火墙;并且由设备在调谐虚拟防火墙之后部署虚拟防火墙。
6.根据一些实现,一种设备可以包括一个或多个存储器和一个或多个处理器。一个或多个处理器可以被配置为:接收与部署虚拟防火墙相关联的输入;基于该输入来执行用以调谐虚拟防火墙的过程;基于虚拟防火墙的一个或多个特性来配置与虚拟防火墙相关联的管理程序;并且在调谐虚拟防火墙之后部署虚拟防火墙。
7.根据一些实现,一种非瞬态计算机可读介质可以存储一个或多个指令。该一个或多个指令在由一个或多个处理器执行时可以使该一个或多个处理器:接收与部署虚拟防火墙相关联的输入;基于该输入来确定虚拟防火墙的类型;基于该虚拟防火墙的该类型来确定与虚拟防火墙相关联的配置设置;基于该配置设置来自动调谐虚拟防火墙;以及在调谐虚拟防火墙之后部署虚拟防火墙。
附图说明
8.图1a至图1f是本文中所描述的一种或多种示例实现的示意图。
9.图2是图示了训练机器学习模型的示例的示意图。
10.图3是图示了将经训练的机器学习模型应用于新观察的示例的示意图。
11.图4是可以实现本文中所描述的系统和/或方法的示例环境的示意图。
12.图5是图4的一个或多个设备的示例组件的示意图。
13.图6至图8是用于自动调谐虚拟防火墙的示例过程的流程图。
具体实施方式
14.示例实现的以下详细描述参照附图。不同附图中的相同附图标记可以标识相同或类似元件。
15.虚拟机是由(例如物理机的)物理计算机资源模拟的模拟计算机。由于虚拟机旨在准确地模拟单独计算机,因此虚拟机通常具有与物理计算机相同的安全漏洞(vulnerability)。例如,虚拟机可能会受到恶意软件感染并且可能会遭受其他未经授权的访问。
16.为了保护虚拟机和模拟虚拟机的计算机免受未经授权的访问和感染,可以实现防火墙。防火墙针对现有特性列表来检查传入和/或传出数据分组,该特性确定应允许分组继续到达其目的地还是应阻止分组。防火墙可以在模拟虚拟机的计算机上被实现,可以由专用物理设备实现或可以是在虚拟机上被实现的虚拟防火墙。
17.虚拟防火墙可以被部署为未经调谐的虚拟防火墙或经调谐的虚拟防火墙。未经调谐的虚拟防火墙是使用现有管理程序和虚拟机设置的虚拟防火墙。然而,这些现有设置可能无法提供虚拟防火墙的最佳性能,从而导致相对于经调谐的虚拟防火墙的降低的性能和/或更高时延。
18.经调谐的虚拟防火墙是修改了现有管理程序和虚拟机设置以优化虚拟防火墙的性能的虚拟防火墙。然而,调谐虚拟防火墙是一个复杂的过程,该过程需要用户确定虚拟防火墙的特性、虚拟防火墙将在其上被实现的计算设备的特性、管理程序的特性等,以确定将如何基于所确定的特性来修改管理程序和虚拟机设置,并且然后修改管理程序和虚拟机设置。因为调谐虚拟防火墙是复杂的过程,所以用户可能不适当地和/或未能修改现有管理程序和虚拟机设置中的一个或多个,从而导致相对于经适当地调谐的虚拟防火墙和/或未经调谐的虚拟防火墙的降低的性能和/或更高时延。这也可以导致计算资源的消耗以对被不适当地调谐的虚拟防火墙进行故障排除,以尝试提高性能。
19.根据本文中所描述的一些实现,主机平台自动调谐虚拟防火墙。在一些实现中,主机平台可以接收与在计算设备上部署虚拟防火墙相关联的输入。主机平台可以确定与虚拟防火墙相关联的第一特性集和与关联于计算设备的管理程序相关联的第二特性集。主机平台可以基于第一特性集和第二特性集来自动调谐虚拟防火墙。在调谐虚拟防火墙之后,主机平台可以在计算设备上部署虚拟防火墙。以这种方式,主机平台通过在部署虚拟防火墙之前自动调谐虚拟防火墙来优化虚拟防火墙的性能和/或时延。此外,通过自动调谐虚拟防火墙,主机平台可以节省计算资源,否则这些计算资源将已经以其他方式被用于对被不适当地调谐的虚拟防火墙进行故障排除,以尝试提高性能。
20.图1a至图1f是本文中所描述的一种或多种示例实现100的示意图。如在图1a至图1f中所示,用户可以使用端点设备(例如膝上型计算机、平板计算机、手持式计算机、台式计算机、移动电话(例如智能电话、无线电话等)、个人数字助理、网络设备(例如路由器、网关、防火墙、集线器、桥接器等)、电话等)来访问云计算服务,以使主机平台(例如服务器设备、服务器设备类集等)自动调谐和/或部署虚拟防火墙。
21.如在图1a中通过附图标记105所示,主机平台接收与部署虚拟防火墙相关联的输入。例如,用户可以登录到与由主机平台提供的云计算服务相关联的门户中,以访问用于部署虚拟防火墙的用户界面。用户界面可以允许用户输入指示主机平台将在计算设备上实现
虚拟防火墙的信息。
22.在一些实现中,输入包括指示主机平台将在部署虚拟防火墙之前自动调谐虚拟防火墙的信息。例如,用户界面可以包括使得用户能够输入信息的旋钮、下拉菜单、可选图标等,该信息指示主机平台将自动调谐虚拟防火墙。主机平台可以基于由用户输入的信息在部署虚拟防火墙之前自动调谐虚拟防火墙。在一些实现中,主机平台可以部署未经调谐的防火墙并且可以自动调谐所部署的防火墙,如下文结合图1e所描述的。
23.在一些实现中,主机平台确定计算设备,虚拟防火墙将在该计算设备上进行部署。如在图1b中所示,计算设备包括硬件层、管理程序层、虚拟机层等。硬件层包括计算设备的物理硬件,诸如物理网络接口卡(nic)、中央处理单元(cpu)、存储器等。
24.管理程序层被设置于物理层顶部上并且包括一个或多个管理程序。管理程序管理和控制计算设备的物理资源,并且创建和管理在计算设备上被实现的访客虚拟机(例如虚拟防火墙)。管理程序可以是类型1管理程序或类型2管理程序,类型1管理程序直接在不具有主机操作系统的计算设备的物理硬件上运行,类型2管理程序在主机操作系统顶部上运行。
25.虚拟机层实现虚拟防火墙。虚拟机层包括可以实现路由模块和分组转发模块的访客操作系统。路由模块可以包括管理守护进程(daemon)(mgd)和路由协议守护进程(rpd)。mgd可以启用与虚拟防火墙相关联的过程之间的通信,可以提供通向配置数据库的接口等。rpd可以定义路由协议如何选择路由、维护转发表等。分组转发模块可以执行虚拟机的一种或多种安全性功能。例如,分组转发模块可以将过滤器、路由策略和/或其他安全性特征应用于由虚拟防火墙接收到的数据分组。
26.如在图1b中所示,分组转发模块包括高级服务模块、流处理模块、分组转发模块和数据平面开发工具(dpdk)模块。高级服务模块可以包括与由虚拟防火墙接收到的数据分组和/或通过虚拟防火墙建立的连接相关的一个或多个安全性特征。例如,高级服务模块可以将入站规则应用于传入数据分组(例如阻止与特定ip地址相关联的所有传入数据分组),可以将出站规则应用于出站数据分组(例如允许与特定设备相关联的所有出站业务),和/或可以应用连接安全性规则(例如要求两个对等计算设备在建立连接之前进行认证)。
27.流处理模块可以通过虚拟防火墙来控制数据分组流。例如,流处理模块可以将一个或多个过滤器应用于虚拟网络接口的输入和/或输出,以通过虚拟防火墙来控制数据分组流。
28.分组转发模块可以控制数据分组到目的地设备的转发。例如,分组转发模块可以将一个或多个路由策略应用于虚拟网络接口的输入和/或输出,以将由虚拟防火墙处理的数据分组转发到目的地设备。
29.dpdk模块可以执行与数据分组处理相关联的一种或多种功能。例如,dpdk模块可以包括数据平面库的集合和网络接口控制器驱动器,该数据平面库的集合和网络接口控制器驱动器可以用于通过实现无锁队列、预先分配的固定大小的缓冲器等来加速虚拟防火墙的分组处理工作负载。
30.如在图1c中通过附图标记110所示,主机平台确定与在计算设备上部署虚拟防护墙相关联的特性集。在一些实现中,主机平台基于以下来确定特性集:被存储在与主机平台相关联的存储器中的数据结构中的信息、由用户输入的信息、从与第三方(例如与计算设备
的物理硬件相关联的制造者、与计算设备相关联的制造者、与管理程序相关联的制造者、与虚拟防火墙相关联的制造者等)相关联的设备获得的信息等。如在图1c中所示,特性包括硬件特性、管理程序/虚拟机特性、虚拟防火墙特性等。
31.硬件特性可以包括与计算设备的硬件层相关联的一个或多个特性、性质、属性等。例如,硬件特性可以指示计算设备的类型(例如服务器设备、x86服务器、linux服务器等)、cpu的类型(例如x86 32位cpu、x86 64位cpu等)、与cpu相关联的多个核心(例如1个核心、2个核心、4个核心等)、与cpu(例如1.8ghz、2.3ghz、2.8ghz等)相关联的处理器速度(例如cpu以其操作并且能够处理信息的每秒的周期数)、可用于cpu的随机存取存储器(ram)的量、可用存储器的量、物理硬件(例如nic)是否能够支持单根输入/输出虚拟化(sr-iov)和/或多根输入/输出虚拟化(mr-iov)、在计算设备上运行的主机操作系统的类型和/或版本等。上面列出的硬件特性仅旨在作为可以使用的硬件特性的类型的示例。实际上,硬件特性可以包括上面列出的硬件特性中的任何一种或多种和/或上面并未列出的一种或多种其他类型的硬件特性。
32.管理程序/虚拟机特性可以包括与在计算设备上运行的管理程序和/或虚拟防火墙的部署相关联的一个或多个特性、性质、属性、设置等。例如,管理程序/虚拟机特性可以指示管理程序的类型(例如类型1、类型2、vmware、hyper-v、vsphere等)、将与虚拟防火墙相关联的多个scsi控制器、与虚拟防火墙相关联的引导顺序(例如检查引导设备(例如硬件接口、网络适配器、硬盘驱动器等)以启动访客操作系统的顺序)、是否启用安全引导特征、可供虚拟防火墙使用的存储器总量、是否将启用动态存储器特征、可供虚拟防火墙使用的最小ram存储器量、可供虚拟防火墙使用的最大ram存储器量、与动态存储器分配的增加相关联的存储器缓冲器的大小、将被指派给虚拟防火墙的存储器指派优先级、与虚拟防火墙相关联的虚拟cpu的数量、将对虚拟防火墙可用的最小物理cpu量、将与虚拟防火墙相关联的非一致存储器存取(numa)节点的数量、将与虚拟防火墙相关联的套接字的数量、将与虚拟防火墙相关联的numa拓扑、可以与numa节点相关联的最大数量的虚拟cpu、numa节点的最大大小、是否启用/禁用ip转发、是否启用/禁用irqbalance(例如平衡由cpu集合上的中断生成的cpu负载的过程)、是否启用/禁用与管理程序相关联的安全性模块、是否启用/禁用用于随机化地址空间的过程等。上面列出的管理程序/虚拟机特性仅旨在作为可以使用的管理程序/虚拟机特性的类型的示例。实际上,管理程序/虚拟机特性可以包括上面列出的管理程序/虚拟机特性中的任何一种或多种、和/或上面并未列出的一种或多种其他类型的管理程序/虚拟机特性。
33.虚拟防火墙特性可以包括与在计算设备上实现虚拟防火墙相关联的一个或多个特性、性质、属性等。例如,虚拟防火墙特性可以指示与虚拟防火墙相关联的制造者、与虚拟防火墙相关联的品牌、与虚拟防火墙相关联的软件版本、由虚拟防火墙支持的接口的数量、虚拟防火墙能够支持的业务量、虚拟防火墙能够支持的最大过滤器数量、虚拟防火墙能够处理业务的速率等。上面列出的虚拟防火墙特性仅旨在作为可以使用的虚拟防火墙特性的类型的示例。实际上,虚拟防火墙特性可以包括上面列出的虚拟防火墙特性中的任何一种或多种、和/或上面并未列出的一种或多种其他类型的虚拟防火墙特性。
34.如在图1d中通过附图标记115所示,主机平台可以确定用于调谐虚拟防火墙的配置设置。例如,主机平台可以确定与以下相关联的配置设置的集合:相对于基于关联于计算
设备的管理程序层和/或虚拟机层的当前或默认的配置设置的集合而被部署的虚拟防火墙提高虚拟防火墙的性能和/或减少关联于虚拟防火墙的时延。
35.在一些实现中,主机平台基于存储在数据结构中的信息来确定配置设置。数据结构可以包括多个条目。数据结构中的条目可以与特定类型的虚拟防火墙、特定类型的计算设备和/或特定类型的管理程序相关联。主机平台可以基于虚拟防火墙特性来确定虚拟防火墙的类型。主机平台可以基于硬件特性来确定计算设备的类型。主机平台可以基于管理程序/虚拟机特性来确定管理程序的类型。主机平台可以标识与虚拟防火墙的类型、计算设备的类型和管理程序的类型相关联的数据结构中的条目。条目可以包括标识用于自动调谐虚拟防火墙的配置设置的信息。
36.在一些实现中,条目可以包括多个配置设置的集合。每个配置设置的集合可以与附加虚拟防火墙特性、附加硬件特性和/或附加管理程序/虚拟机特性相关联。例如,配置设置的集合可以与虚拟防火墙的类型、具有含特定数量的核心的cpu的计算设备的类型和管理程序的类型相关联。另一配置设置的集合可以与虚拟防火墙的类型、计算设备的类型、管理程序的类型和关联于虚拟防火墙和/或管理程序的软件的特定版本相关联。
37.在一些实现中,如下文更详细地描述的,主机平台可以使用机器学习模型来确定配置设置。例如,主机平台可以基于与调谐虚拟防火墙相关联的一个或多个参数(诸如一个或多个硬件特性、一个或多个管理程序/虚拟机特性、一个或多个虚拟防火墙特性等)来训练机器学习模型。主机平台可以使用与确定配置设置相关联的历史数据,根据一个或多个参数来训练机器学习模型。将一个或多个参数用作机器学习模型的输入,主机平台可以确定将被用于自动调谐虚拟防火墙的配置设置。
38.如在图1e中通过附图标记120所示,主机平台可以通过基于配置设置来配置管理程序和/或虚拟机,从而调谐虚拟防火墙。例如,管理程序可以具有设置为默认值的虚拟cpu设置的数量。主机平台可以修改虚拟cpu设置的数量,以将虚拟cpu设置的数量从默认值改变为由配置设置指示的值。
39.在一些实现中,主机平台可以基于与虚拟防火墙相关联的优先级来调谐虚拟防火墙。例如,用户可以经由用户界面输入信息,该信息指示相对于与主机平台相关联的其他虚拟防火墙,该虚拟防火墙与高优先级相关联。主机平台可以基于虚拟防火墙与高优先级相关联来调谐虚拟防火墙。
40.在一些实现中,高优先级可以是与虚拟防火墙相关联的默认优先级。例如,除非用户提供(例如经由用户界面)指示虚拟防火墙将与低优先级相关联的输入,否则主机平台可以使将由主机平台部署的每个虚拟防火墙与高优先级相关联。
41.在一些实现中,当虚拟防火墙与低优先级相关联时,主机平台可以防止虚拟防火墙被调谐。例如,虚拟防火墙可以是由主机平台部署的多个虚拟防火墙中的一个。用户可以提供将特定虚拟防火墙标识为相对于其他虚拟防火墙与高优先级相关联的信息,和/或可以提供将其他虚拟防火墙标识为相对于特定虚拟防火墙与低优先级相关联的信息。主机平台可以基于特定虚拟防火墙与高优先级相关联来自动调谐特定虚拟防火墙。基于其他虚拟防火墙与低优先级相关联,主机平台可以不调谐其他虚拟防火墙和/或可以基于针对特定虚拟防火墙而被确定的配置设置来部署其他虚拟防火墙。
42.在一些实现中,主机平台可以确定无法调谐虚拟防火墙。例如,主机平台可以确定
用户并未与允许修改管理程序设置和/或虚拟机设置的特权相关联、确定主机平台无法访问特定硬件组件等。主机平台可以提供标识防止主机平台调谐虚拟防火墙的问题的信息、标识将由用户或主机平台采取以使主机平台能够调谐虚拟防火墙的校正动作的信息等。
43.在一些实现中,主机平台可以基于主机平台确定无法调谐虚拟防火墙来将虚拟防火墙部署为未经调谐的防火墙。在一些实现中,主机平台可以基于用户或主机平台执行校正动作而在部署虚拟防火墙之前或在部署虚拟防火墙之后,确定用户或主机平台已经执行了校正动作并且调谐虚拟防火墙。
44.在一些实现中,主机平台可以在调谐虚拟防火墙之后和/或在确定无法调谐虚拟防火墙之后执行资源可用性检查。可以执行资源可用性检查,以确定虚拟防火墙在其上将被实现的计算设备满足用于实现虚拟防火墙的特定最低要求。例如,资源可用性检查可以确定是否启用/禁用numa套接字/超线程、是否将在与nic端口相关联的numa上实现虚拟防火墙等。如果没有成功执行资源可用性检查(例如主机平台确定计算设备不满足最低要求),那么主机平台可以确定要在不同计算设备上部署虚拟防火墙,输出指示计算设备不满足最低要求的信息,防止虚拟防火墙被部署在计算设备上等。
45.如在图1f中通过附图标记125所示,主机平台可以在计算设备上部署经调谐的虚拟防火墙。在一些实现中,主机平台可以基于成功执行资源可用性检查来部署经调谐的虚拟防火墙。计算设备可以基于已配置的管理程序和/或虚拟机来实现虚拟防火墙。以这种方式,主机平台通过在部署虚拟防火墙之前自动调谐虚拟防火墙来优化虚拟防火墙的性能和/或时延。进一步地,通过自动调谐虚拟防火墙,主机设备可以防止虚拟防火墙由于用户不适当地和/或未能修改现有管理程序和/或虚拟机设置中的一者或多者而相对于经调谐的防火墙具有降低的性能和/或增加的时延。
46.如上文所指示,图1a至图1f仅仅被提供作为一个或多个示例。其他示例可以与关于图1a至图1f描述的示例不同。
47.图2是图示了训练机器学习模型的示例200的示意图。本文中所描述的机器学习模型训练可以使用机器学习系统来执行。机器学习系统可以包括计算设备、服务器、云计算环境等,诸如主机平台。
48.如通过附图标记205所示,可以使用观察集来训练机器学习模型。可以从历史数据(诸如在本文中所描述的一个或多个过程中收集的数据)获得和/或输入观察集。例如,如本文中的其他地方所描述的,观察集可以包括从用户与主机平台和/或端点设备的交互和/或用户向主机平台和/或端点设备的输入收集的数据。在一些实现中,机器学习系统可以从主机平台接收观察集(例如作为输入)。
49.如通过附图标记210所示,可以从观察集中得出特征集。特征集可以包括变量类型的集合。变量类型可以被称为特征。特定观察可以包括对应于该变量类型的集合的变量值的集合。变量值的集合可以特定于观察。在一些情况下,不同观察可以与变量值(有时被称为特征值)的不同集合相关联。在一些实现中,机器学习系统可以基于从主机平台接收到的输入来确定针对特定观察的变量值。例如,机器学习系统可以诸如通过从表的特定列中提取数据、从表单的特定字段中提取数据、从消息的特定字段中提取数据、提取以结构化数据格式接收到的数据等,来从向机器学习系统输入的结构化数据中标识特征集(例如一个或多个特征和/或对应特征值)。在一些实现中,机器学习系统可以诸如通过提取或生成列的
名称、提取或生成表单和/或消息的字段的名称、基于结构化数据格式提取或生成名称等,基于从主机平台和/或端点设备接收到的输入来确定特征集的特征(例如变量类型)。附加地或备选地,机器学习系统可以接收来自操作员的输入,以确定特征和/或特征值。在一些实现中,机器学习系统可以执行自然语言处理和/或另一种特征标识技术,以诸如通过从文本中标识关键词和/或与那些关键词相关联的值,来从向机器学习系统输入的文本(例如非结构化数据)中提取特征(例如变量类型)和/或特征值(例如变量值)。
50.作为示例,用于观察集的特征集可以包括虚拟防火墙(vf)特性的第一特征、管理程序特性的第二特征、主机设备(例如虚拟防火墙将在其上被实现的计算设备)特性的第三特征等。如所示的,针对第一观察,第一特征可以具有vf1的值(例如虚拟防火墙的第一类型、品牌、版本等),第二特征可以具有类型1的值,第三特征可以具有x86服务器的值等。这些特征和特征值仅作为示例而被提供,并且实际上可以是不同的。例如,特征集可以包括以下特征中的一个或多个:特定虚拟机特性、特定虚拟防火墙特性、特定管理程序特性、特定主机设备特性等。在一些实现中,机器学习系统可以预处理和/或执行降维以减少特征集和/或将特征集的特征组合为最小特征集。可以在最小特征集上训练机器学习模型,从而节省用于训练机器学习模型的机器学习系统的资源(例如处理资源、存储器资源等)。
51.如通过附图标记215所示,观察集可以与目标变量类型相关联。目标变量类型可以表示具有数值(例如整数值、浮点值等)的变量,可以表示具有数值的变量(该变量落入值的范围内或具有一些离散的可能值),可以表示可从多个选项中的一者中选择的变量(例如多种类别、分类、标签等中的一者),可以表示具有布尔值(例如0或1、真或假、是或否)的变量等。目标变量类型可以与目标变量值相关联,并且目标变量值可以特定于观察。在一些情况下,不同观察可以与不同目标变量值相关联。
52.目标变量可以表示机器学习模型正被训练要预测的值,并且特征集可以表示以下的变量:其向经训练的机器学习模型输入以预测目标变量的值。观察集可以包括目标变量值,使得可以训练机器学习模型以识别特征集中的产生目标变量值的模式。被训练为预测目标变量值的机器学习模型可以被称为监督学习模型、预测模型等。当目标变量类型与连续目标变量值(例如数字范围等)相关联时,机器学习模型可以采用回归技术。当目标变量类型与分类的目标变量值(例如类别、标签等)相关联时,机器学习模型可以采用分类技术。
53.在一些实现中,可以在不包括目标变量(或包括目标变量,但机器学习模型当前未被执行以预测目标变量)的观察集上训练机器学习模型。这可以被称为无监督学习模型、自动数据分析模型、自动信号提取模型等。在这种情况下,机器学习模型可以在不具有标签或监督的情况下从观察集中学习模式,并且可以诸如通过使用集群和/或关联来标识观察集内的项的相关组来提供指示这类模式的输出。
54.如进一步示出的,机器学习系统可以将观察集划分为训练集220,该训练集包括观察集的第一观察子集;和测试集225,该测试集包括观察集的第二观察子集。训练集220可以用于训练(例如拟合、调谐等)机器学习模型,而测试集225可以用于评估使用训练集220来训练的机器学习模型。例如,针对监督学习,测试集225可以用于使用第一观察子集的初始模型训练,并且测试集225可以用于测试经训练的模型是否准确地预测了第二观察子集中的目标变量。在一些实现中,机器学习系统可以通过在训练集220中包括观察集的第一部分或第一百分比(例如除了其他示例之外,75%、80%或85%)并且在测试集225中包括观察集
的第二部分或第二百分比(例如除了其他示例之外,25%、20%或15%),来将观察集划分为训练集220和测试集225。在一些实现中,机器学习系统可以随机选择将被包括在训练集220和/或测试集225中的观察。
55.如通过附图标记230所示,机器学习系统可以使用训练集220来训练机器学习模型。该训练可以包括由机器学习系统执行机器学习算法,以基于训练集220来确定模型参数集。在一些实现中,机器学习算法可以包括回归算法(例如线性回归、逻辑回归等),该回归算法可以包括正则化回归算法(例如套索回归、岭回归、弹性网回归等)。附加地或备选地,机器学习算法可以包括决策树算法,该决策树算法可以包括树集成(ensemble)算法(例如使用装袋和/或增强生成的)、随机森林算法、增强树算法等。模型参数可以包括从输入到模型(例如训练集220)中的数据中学习到的机器学习模型的属性。例如,针对回归算法,模型参数可以包括回归系数(例如权重)。作为示例,针对决策树算法,模型参数可以包括决策树分割位置。
56.如通过附图标记235所示,机器学习系统可以使用一个或多个超参数集240来调谐机器学习模型。超参数可以包括控制通过机器学习系统执行机器学习算法的结构参数,诸如应用于机器学习算法的约束。不同于模型参数,不从输入到模型中的数据中学习超参数。用于正则化回归算法的示例超参数包括应用于回归系数以减轻机器学习模型对训练集220的过度拟合的惩罚的强度(例如权重)。可以基于系数值的大小来应用惩罚(例如针对套索回归,诸如以惩罚较大系数值),可以基于系数值的平方大小来应用惩罚(例如针对岭回归,诸如以惩罚较大平方系数值),可以基于大小与平方大小的比率来应用惩罚(例如针对弹性网回归),可以通过将一个或多个特征值设置为零来应用惩罚(例如针对自动特征选择)等。用于决策树算法的示例超参数包括将被应用的树集成技术(例如装袋、增强、随机森林算法、增强树算法等)、要评估的多个特征、要使用的多个观察、每个决策树的最大深度(例如针对决策树允许的多个分支)、要包括在随机森林算法中的多个决策树等。
57.为了训练机器学习模型,机器学习系统可以标识将被训练的机器学习算法集(例如基于标识一个或多个机器学习算法的操作员输入、基于对机器学习算法集的随机选择等),并且可以使用训练集220来训练机器学习算法集(例如独立于集合中的每个机器学习算法)。机器学习系统可以使用一个或多个超参数集240来调谐每个机器学习算法(例如基于标识将被使用的超参数集240的操作员输入、基于随机生成的超参数值等)。机器学习系统可以使用特定机器学习算法和对应超参数集240来训练特定机器学习模型。在一些实现中,机器学习系统可以训练多个机器学习模型来为每个机器学习模型生成模型参数集,其中每个机器学习模型对应于机器学习算法与该机器学习算法的超参数集240的不同组合。
58.在一些实现中,机器学习系统可以在训练机器学习模型时执行交叉验证。交叉验证可以用于仅使用训练集220但不使用测试集225来获得对机器学习模型性能的可靠估计,诸如通过(例如基于标识组数的操作员输入、基于随机选择多个组等)将训练集220分割为多个组并且使用这些组来估计模型性能。例如,使用k折交叉验证,可以将训练集220中的观察分割为k个组(例如按顺序或随机)。针对训练过程,一个组可以被标记为留出(hold-out)组,而其余的组可以被标记为训练组。针对训练过程,机器学习系统可以在训练组上训练机器学习模型,然后在留出组上测试机器学习模型以生成交叉验证得分。机器学习系统可以使用不同的留出组和不同的测试组来重复该训练过程,以便为每个训练过程生成交叉验证
得分。在一些实现中,机器学习系统可以独立地训练机器学习模型k次,其中每个单独组被用作留出组一次并且被用作训练组k-1次。机器学习系统可以组合每个训练过程的交叉验证得分来为机器学习模型生成总交叉验证得分。总交叉验证得分可以包括例如平均交叉验证得分(例如跨所有训练过程)、跨交叉验证得分的标准差、跨交叉验证得分的标准误差等。
59.在一些实现中,机器学习系统可以在通过将训练集分割为多个组(例如基于标识组数的操作员输入、基于随机选择多个组等)来训练机器学习模型时执行交叉验证。机器学习系统可以执行多个训练过程,并且可以为每个训练过程生成交叉验证得分。机器学习系统可以为与特定机器学习算法相关联的每个超参数集240生成总交叉验证得分。机器学习系统可以比较与特定机器学习算法相关联的不同超参数集240的总交叉验证得分,并且可以选择具有最佳(例如最高准确度、最低误差、最接近于期望阈值的等)总交叉验证得分的超参数集240,以便训练机器学习模型。机器学习系统然后可以在无交叉验证的情况下使用所选择的超参数集240(例如使用不具有任何留出组的训练集220中的所有数据)来训练机器学习模型,以便为特定机器学习算法生成单个机器学习模型。机器学习系统然后可以使用测试集225来测试该机器学习模型,以生成性能得分,诸如均方误差(例如用于回归)、平均绝对误差(例如用于回归)、接收器操作特性曲线下方的面积(例如用于分类)等。如果机器学习模型充分地执行(例如具有满足阈值的性能得分),那么机器学习系统可以将该机器学习模型存储为经训练的机器学习模型245,以用于分析如下文结合图3所描述的新观察。
60.在一些实现中,机器学习系统可以针对多个机器学习算法(诸如正则化回归算法、不同类型的正则化回归算法、决策树算法、不同类型的决策树算法等)(例如独立地)执行如上文所描述的交叉验证。基于针对多个机器学习算法执行交叉验证,机器学习系统可以生成多个机器学习模型,其中每个机器学习模型针对对应的机器学习算法具有最佳的总交叉验证得分。机器学习系统然后可以使用整个训练集220(例如在无交叉验证的情况下)来训练每个机器学习模型,并且可以使用测试集225来测试每个机器学习模型,以便为每个机器学习模型生成对应的性能得分。机器学习模型可以比较每个机器学习模型的性能得分,并且可以选择具有最佳(例如最高准确度、最低误差、最接近于期望阈值的等)性能得分的机器学习模型作为经训练的机器学习模型245。
61.如上文所指示,图2被提供作为示例。其他示例可以与结合图2所描述的示例不同。例如,可以使用与结合图2所描述的过程不同的过程来训练机器学习模型。附加地或备选地,机器学习模型可以采用与结合图2所描述的机器学习算法不同的机器学习算法,诸如贝叶斯估计算法、k最近邻算法、先验算法、k均值算法、支持向量机算法、神经网络算法(例如卷积神经网络算法)、深度学习算法等。
62.图3是图示了将经训练的机器学习模型应用于新观察的示例300的示意图。新观察可以是针对存储经训练的机器学习模型305的机器学习系统的输入。在一些实现中,经训练的机器学习模型305可以是上文结合图2所描述的经训练的机器学习模型245。机器学习系统可以包括计算设备、服务器、云计算环境等,诸如主机平台。
63.如通过附图标记310所示,机器学习系统可以接收新观察(或新观察集),并且可以将新观察输入到机器学习模型305。如所示的,作为示例,新观察可以包括虚拟防火墙(vf)特性的第一特征、管理程序特性的第二特征、主机设备特性的第三特征等。机器学习系统可以将经训练的机器学习模型305应用于新观察以生成输出(例如结果)。输出的类型可以取
决于机器学习模型的类型和/或正在被执行的机器学习任务的类型。例如,输出可以诸如在采用监督学习时包括目标变量的预测(例如估计)值(例如在连续的值范围内的值、离散值、标签、类别、分类等)。附加地或备选地,输出可以诸如在采用无监督学习时包括:标识新观察所属的集群的信息、指示新观察与一个或多个先前观察(例如该先前观察先前可能已经是输入到机器学习模型的新观察和/或用于训练机器学习模型的观察)之间的相似度的信息等。
64.在一些实现中,经训练的机器学习模型305可以预测针对新观察的配置设置的目标变量的配置设置的集合(示出为设置y),如通过附图标记315所示。基于该预测,机器学习系统可以执行自动动作和/或可以使自动动作得以执行(例如通过指示另一设备执行自动动作),诸如基于针对新观察确定的配置设置来调谐与新观察相关联的虚拟防火墙。
65.在一些实现中,经训练的机器学习模型305可以对与虚拟防火墙的类型相关联的集群中的新观察进行分类(例如集群),如通过附图标记320所示。集群内的观察可以具有阈值相似度。基于对集群中的新观察进行分类,机器学习系统可以提供建议,诸如建议将被用于调谐虚拟防火墙等的配置设置。附加地或备选地,机器学习系统可以执行自动动作和/或可以使自动动作得以执行(例如通过指示另一设备执行该自动动作),诸如将虚拟防火墙部署到特定主机设备上。
66.以这种方式,机器学习系统可以应用严格且自动的过程来确定用于调谐虚拟防火墙的配置设置。机器学习系统支持识别和/或标识数十个、数百个、数千个或数百万个观察的数十个、数百个、数千个或数百万个特征和/或特征值,从而相对于需要为操作员分配计算资源以手动确定用于使用特征或特征值来调谐虚拟防火墙的配置设置,提高了调谐虚拟防火墙的准确度和一致性。
67.如上文所指示,图3被提供作为示例。其他示例可以与结合图3所描述的示例不同。
68.图4是可以实现本文中所描述的系统和/或方法的示例环境400的示意图。如在图4中所示,环境400可以包括端点设备405、在云计算环境420内实现的主机平台410和网络425。可以经由有线连接、无线连接或有线连接与无线连接的组合来互连环境400的设备。
69.端点设备405包括一个或多个设备,该一个或多个设备能够通过网络(例如网络425)接收和/或提供信息和/或能够生成、存储和/或处理通过网络接收和/或提供的信息。例如,端点设备405可以包括计算设备,诸如膝上型计算机、平板计算机、手持式计算机、台式计算机、移动电话(例如智能电话、无线电话等)、个人数字助理、网络设备(例如路由器、网关、防火墙、集线器、桥接器等)、电话或类似设备。
70.主机平台410包括被指派以支持和/或自动调谐虚拟防火墙的一种或多种计算资源。例如,主机平台410可以是由云计算环境420实现的平台,该平台可以自动调谐虚拟防火墙。在一些实现中,主机平台410由云计算环境420的计算资源415实现。
71.主机平台410可以包括服务器设备或一组服务器设备。在一些实现中,主机平台410可以被托管在云计算环境420中。值得注意的是,虽然本文中所描述的实现将主机平台410描述为被托管在云计算环境420中,但在一些实现中,主机平台410可以是不基于云的或可以是部分地基于云的。
72.云计算环境420包括将计算作为服务递送的环境,由此可以向主机平台410和/或端点设备405提供共享资源、服务等。云计算环境420可以提供不需要终端用户了解递送服
务的系统和/或设备的物理位置和配置的计算、软件、数据访问、存储和/或其他服务。如所示的,云计算环境420可以包括主机平台410和计算资源415。
73.计算资源415包括一个或多个个人计算机、工作站计算机、服务器设备或另一种类型的计算和/或通信设备。在一些实现中,计算资源415可以托管主机平台410。云资源可以包括在计算资源415中执行的计算实例、在计算资源415中提供的存储设备、由计算资源415提供的数据传递设备等。在一些实现中,计算资源415可以经由有线连接、无线连接或有线连接与无线连接的组合与其他计算资源415通信。
74.如在图4中进一步所示,计算资源415可以包括一组云资源,诸如,一个或多个应用(“app”)415-1、一个或多个虚拟机(“vm”)415-2、虚拟化存储装置(“vs”)415-3、一个或多个管理程序(“hyp”)415-4等。
75.应用415-1包括可以向端点设备405提供或由端点设备405访问的一个或多个软件应用。应用415-1可以消除在端点设备405上安装和执行软件应用的需要。例如,应用415-1可以包括与主机平台410相关联的软件和/或能够经由云计算环境420提供的任何其他软件。在一些实现中,一个应用415-1可以经由虚拟机415-2向/从一个或多个其他应用415-1发送/接收信息。
76.虚拟机415-2包括像物理机一样执行程序的机器(例如计算机)的软件实现。虚拟机415-2可以是系统虚拟机或过程虚拟机中的任一者,这取决于虚拟机415-2对任何实机的使用和对应程度。系统虚拟机可以提供支持执行完整操作系统(“os”)的完整系统平台。过程虚拟机可以执行单个程序并且可以支持单个过程。在一些实现中,虚拟机415-2可以代表用户(例如端点设备405)执行,并且可以管理云计算环境420的基础设施,诸如数据管理、同步或长期数据传递。
77.虚拟化存储装置415-3包括一个或多个存储系统和/或一个或多个设备,该一个或多个设备使用存储系统或计算资源415的设备内的虚拟化技术。在一些实现中,在存储系统的上下文内,虚拟化类型可以包括区块虚拟化和文件虚拟化。区块虚拟化可以是指逻辑存储装置与物理存储装置的抽象(或分离),使得可以在不考虑物理存储装置或异构结构的情况下访问存储系统。这种分离可以允许存储系统的管理员实现管理员管理终端用户的存储装置的方式的灵活性。文件虚拟化可以消除在文件级别下访问的数据与物理地存储文件的位置之间的依赖性。这可以实现优化存储使用、服务器整合和/或非中断性文件迁移的性能。
78.管理程序415-4提供了硬件虚拟化技术,该硬件虚拟化技术允许多个操作系统(例如“访客操作系统”)在主机计算机(诸如计算资源415)上同时执行。管理程序415-4可以向“访客操作系统”呈现虚拟操作平台,并且可以管理访客操作系统的执行。各种操作系统的多个实例可以共享虚拟化硬件资源。
79.网络425包括一个或多个有线和/或无线网络。例如,网络425可以包括蜂窝网络(例如长期演进(lte)网络、码分多址(cdma)网络、3g网络、4g网络、5g网络、另一种类型的新一代网络等)、公共陆地移动网络(plmn)、局域网(lan)、广域网(wan)、城域网(man)、电话网络(例如公共交换电话网络(pstn))、专有网络、自组织网络、内联网、互联网、基于光纤的网络、云计算网络等和/或这些或其他类型的网络的组合。
80.图4中所示的设备和网络的数量和布置被提供作为一个或多个示例。实际上,与图
4中所示的那些设备和/或网络相比,可以存在附加设备和/或网络、更少的设备和/或网络、不同的设备和/或网络或以不同方式布置的设备和/或网络。此外,图4中所示的两个或更多个设备可以被实现于单个设备内,或图4中所示的单个设备可以被实现为多个分布式设备。附加地或备选地,环境400的设备集(例如一个或多个设备)可以执行被描述为由环境400的另一设备集执行的一种或多种功能。
81.图5是设备500的示例组件的示意图。设备500可以对应于端点设备405、主机平台410和/或计算资源415。在一些实现中,端点设备405、主机平台410和/或计算资源415可以包括一个或多个设备500和/或设备500的一个或多个组件。如在图5中所示,设备500可以包括总线510、处理器520、存储器530、存储组件540、输入组件550、输出组件560和通信接口570。
82.总线510包括允许设备500的多个组件间的通信的组件。处理器520以硬件、固件和/或硬件与软件的组合来实现。处理器520采用中央处理单元(cpu)、图形处理单元(gpu)、加速处理单元(apu)、微处理器、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、专用集成电路(asic)或另一种类型的处理组件的形式。在一些实现中,处理器520包括能够被编程为执行功能的一个或多个处理器。存储器530包括存储供处理器520使用的信息和/或指令的随机存取存储器(ram)、只读存储器(rom)和/或另一种类型的动态或静态存储设备(例如闪速存储器、磁性存储器和/或光学存储器)。
83.存储组件540存储与设备500的操作和使用相关的信息和/或软件。例如,存储组件540可以包括硬盘(例如磁盘、光盘和/或磁光盘)、固态驱动器(ssd)、压缩光盘(cd)、数字多功能光盘(dvd)、软盘、磁带盒、磁带和/或另一种类型的非瞬态计算机可读介质以及对应驱动器。
84.输入组件550包括允许设备500诸如经由用户输入接收信息的组件(例如触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)。附加地或备选地,输入组件550可以包括用于确定位置的组件(例如全球定位系统(gps)组件)和/或传感器(例如加速度计、陀螺仪、致动器、另一种类型的位置或环境传感器等)。输出组件560包括(经由例如显示器、扬声器、触觉反馈组件、音频或视觉指示器等)提供来自设备500的输出信息的组件。
85.通信接口570包括类似收发器的组件(例如收发器、单独接收器、单独发送器等),该组件使得设备500能够诸如经由有线连接、无线连接或有线连接与无线连接的组合与其他设备通信。通信接口570可以允许设备500从另一设备接收信息和/或向另一设备提供信息。例如,通信接口570可以包括以太网接口、光学接口、同轴接口、红外接口、射频(rf)接口、通用串行总线(usb)接口、wi-fi接口、蜂窝网络接口等。
86.设备500可以执行本文中所描述的一个或多个过程。设备500可以基于处理器520执行由非瞬态计算机可读介质(诸如存储器530和/或存储组件540)存储的软件指令来执行这些过程。如本文中所使用,术语“计算机可读介质”是指非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或跨多个物理存储设备分布的存储器空间。
87.可以经由通信接口570将软件指令从另一计算机可读介质或从另一设备读取到存储器530和/或存储组件540中。存储在存储器530和/或存储组件540中的软件指令在被执行时可以使处理器520执行本文中所描述的一个或多个过程。附加地或备选地,硬件电路装置可以代替软件指令使用或与软件指令结合使用,以执行本文中所描述的一个或多个过程。
因此,本文中所描述的实现不限于硬件电路装置与软件的任何特定组合。
88.图5中所示的组件的数量和布置被提供作为示例。实际上,与图5中所示的那些组件相比,设备500可以包括附加组件、更少的组件、不同组件或以不同方式布置的组件。附加地或备选地,设备500的组件集合(例如一个或多个组件)可以执行被描述为由设备500的另一组件集合执行的一种或多种功能。
89.图6是用于自动调谐虚拟防火墙的示例过程600的流程图。在一些实现中,图6的一个或多个过程框可以由设备(例如主机平台410)执行。在一些实现中,图6的一个或多个过程框可以由另一设备或一组设备执行,这些设备与设备分离或包括设备,诸如端点设备(例如端点设备405)等。
90.如在图6中所示,过程600可以包括:接收与在计算设备上部署虚拟防火墙相关联的输入(框610)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以接收与在计算设备上部署虚拟防火墙相关联的输入。
91.如在图6中进一步所示,过程600可以包括:确定与虚拟防火墙相关联的第一特性集和与关联于计算设备的管理程序相关联的第二特性集(框620)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以确定与虚拟防火墙相关联的第一特性集和与关联于计算设备的管理程序相关联的第二特性集。
92.如在图6中进一步所示,过程600可以包括:基于第一特性集和第二特性集来自动调谐虚拟防火墙(框630)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以通过设备基于第一特性集和第二特性集来自动调谐虚拟防火墙。
93.如在图6中进一步所示,过程600可以包括:在调谐虚拟防火墙之后部署虚拟防火墙(框640)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以在调谐虚拟防火墙之后部署虚拟防火墙。
94.过程600可以包括附加实现,诸如下文所描述的任何单种实现或实现的任何组合和/或结合本文中的其他地方所描述的一个或多个其他过程。
95.在第一实现中,自动调谐虚拟防火墙包括:基于第一特性集和第二特性集来修改管理程序设置。
96.在第二实现中,单独或与第一实现结合,自动调谐虚拟防火墙包括:基于第一特性集和第二特性集来修改虚拟机设置。
97.在第三实现中,单独或与第一实现和第二实现中的一者或多者结合,虚拟防火墙是第一虚拟防火墙,方法还包括:确定要部署第二虚拟防火墙;确定与第一虚拟防火墙相关联的优先级相对于与第二虚拟防火墙关联的优先级为更高优先级;以及基于第一特性集和第二特性集、基于与第一虚拟防火墙相关联的优先级是更高优先级来部署第二虚拟防火墙。
98.在第四实现中,单独或与第一实现至第三实现中的一者或多者结合,接收输入包括:经由用户界面接收指示设备将自动调谐虚拟防火墙的输入。
99.在第五实现中,单独或与第一实现至第四实现中的一者或多者结合,过程600包括:执行资源可用性检查以确定虚拟防火墙是否能够被部署在计算设备上,其中虚拟防火墙基于确定虚拟防火墙是否能够被部署在计算设备上而被部署。
100.在第六实现中,单独或与第一实现至第五实现中的一者或多者结合,设备确定虚拟防火墙无法被部署在计算设备上,该方法还包括:提供标识与计算设备相关联的一组设置的信息,这组设置将被修改为使得虚拟防火墙能够被部署在计算设备上;确定这组设置已经被修改;以及基于这组修改后的设置来部署虚拟防火墙,其中虚拟防火墙基于执行资源可用性检查而被部署。
101.尽管图6示出了过程600的示例框,但在一些实现中,与图6中所描绘的那些框相比,过程600可以包括附加框、更少的框、不同框或以不同方式布置的框。附加地或备选地,过程600的框中的两个或更多个可以被并行执行。
102.图7是用于自动调谐虚拟防火墙的示例过程700的流程图。在一些实现中,图7的一个或多个过程框可以由设备(例如主机平台410)执行。在一些实现中,图7的一个或多个过程框可以由另一设备或一组设备执行,这些设备与设备分离或包括设备,诸如端点设备(例如端点设备405)等。
103.如在图7中所示,过程700可以包括:接收与部署虚拟防火墙相关联的输入(框710)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以接收与部署虚拟防火墙相关联的输入。
104.如在图7中进一步所示,过程700可以包括:基于输入来执行用以调谐虚拟防火墙的过程,基于虚拟防火墙的一个或多个特性来配置与虚拟防火墙相关联的管理程序(框720)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以基于输入来执行用以调谐虚拟防火墙的过程。
105.如在图7中进一步所示,过程700可以包括:在调谐虚拟防火墙之后部署虚拟防火墙(框730)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以在调谐虚拟防火墙之后部署虚拟防火墙。
106.过程700可以包括附加实现,诸如下文所描述的任何单种实现或实现的任何组合和/或结合本文中的其他地方所描述的一个或多个其他过程。
107.在第一实现中,过程700包括:确定非一致存储器存取(numa)套接字/超线程是否被启用,其中虚拟防火墙进一步基于numa套接字/超线程是否被启用而被部署。
108.在第二实现中,单独或与第一实现结合,过程700包括:基于虚拟防火墙的一个或多个特性来配置与虚拟防火墙相关联的虚拟机设置。
109.在第三实现中,单独或与第一实现和第二实现中的一者或多者结合,过程700包括:确定多个虚拟防火墙将基于输入而被部署,其中多个虚拟防火墙包括虚拟防火墙;以及基于输入指示了多个虚拟防火墙将被部署,使得用户能够为多个虚拟防火墙中的每个虚拟防火墙设置优先级设置。
110.在第四实现中,单独或与第一实现至第三实现中的一者或多者结合,过程700包
括:确定与虚拟防火墙相关联的优先级设置相对于与多个虚拟防火墙中所包括的其他虚拟防火墙相关联的优先级设置被设置为最高优先级设置,其中用以调谐虚拟防火墙的过程基于与虚拟防火墙相关联的优先级设置被设置为最高优先级设置而被执行。
111.在第五实现中,单独或与第一实现至第四实现中的一者或多者结合,过程700包括:确定与部署虚拟防火墙相关联的资源可用性检查的失败;以及基于资源可用性检查的失败来修改与虚拟机相关联的优先级设置,其中虚拟防火墙将基于修改后的优先级设置而被部署。
112.在第六实现中,单独或与第一实现至第五实现中的一者或多者结合,过程700包括:使虚拟防火墙利用多层虚拟交换机,该多层虚拟交换机启用虚拟机的虚拟联网。
113.尽管图7示出了过程700的示例框,但在一些实现中,与图7中所描绘的那些框相比,过程700可以包括附加框、更少的框、不同框或以不同方式布置的框。附加地或备选地,过程700的框中的两个或更多个可以被并行执行。
114.图8是用于自动调谐虚拟防火墙的示例过程800的流程图。在一些实现中,图8的一个或多个过程框可以由设备(例如主机平台410)执行。在一些实现中,图8的一个或多个过程框可以由另一设备或一组设备执行,这些设备与设备分离或包括设备,诸如端点设备(例如端点设备405)等。
115.如在图8中所示,过程800可以包括:接收与部署虚拟防火墙相关联的输入(框810)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以接收与部署虚拟防火墙相关联的输入。
116.如在图8中进一步所示,过程800可以包括:基于输入来确定虚拟防火墙的类型(框820)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以基于输入来确定虚拟防火墙的类型。
117.如在图8中进一步所示,过程800可以包括:基于虚拟防火墙的类型来确定与虚拟防火墙相关联的配置设置(框830)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以基于虚拟防火墙的类型来确定与虚拟防火墙相关联的配置设置。
118.如在图8中进一步所示,过程800可以包括:基于配置设置来自动调谐虚拟防火墙(框840)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以基于配置设置来自动调谐虚拟防火墙。
119.如在图8中进一步所示,过程800可以包括:在调谐虚拟防火墙之后部署虚拟防火墙(框850)。例如,如上文所描述,设备(例如使用计算资源415、处理器520、存储器530、存储组件540、输入组件550、输出组件560、通信接口570等)可以在调谐虚拟防火墙之后部署虚拟防火墙。
120.过程800可以包括附加实现,诸如下文所描述的任何单种实现或实现的任何组合和/或结合本文中的其他地方所描述的一个或多个其他过程。
121.在第一实现中,过程800包括:确定关联于虚拟防火墙的网络接口卡端口与关联于虚拟防火墙的非一致存储器存取(numa)节点相关联,其中虚拟防火墙将进一步基于网络接
口卡端口与关联于虚拟防火墙的numa节点相关联而被部署。
122.在第二实现中,单独或与第一实现结合,过程800包括:禁用超线程正基于虚拟防火墙的类型而起作用。
123.在第三实现中,单独或与第一实现和第二实现中的一者或多者结合,过程800包括:使物理网络接口卡和虚拟防火墙被附接至相同的非一致存储器存取节点。
124.在第四实现中,单独或与第一实现至第三实现中的一者或多者结合,过程800包括:利用机器学习来确定配置设置。
125.在第五实现中,单独或与第一实现至第四实现中的一者或多者结合,过程800包括:标识与虚拟防火墙相关联的非一致存储器存取(numa)节点;以及使虚拟防火墙与关联于numa节点的虚拟中央处理单元(vcpu)相关联。
126.尽管图8示出了过程800的示例框,但在一些实现中,与图8中所描绘的那些框相比,过程800可以包括附加框、更少的框、不同框或以不同方式布置的框。附加地或备选地,过程800的框中的两个或更多个框可以被并行执行。
127.根据本公开的一些实现,提供了以下示例。
128.示例1.一种方法,包括:由设备接收与在计算设备上部署虚拟防火墙相关联的输入;由设备确定与虚拟防火墙相关联的第一特性集和与关联于计算设备的管理程序相关联的第二特性集;由设备基于第一特性集和第二特性集来自动调谐虚拟防火墙;以及由设备在调谐虚拟防火墙之后部署虚拟防火墙。
129.示例2.根据示例1的方法,其中自动调谐虚拟防火墙包括:基于第一特性集和第二特性集来修改管理程序设置。
130.示例3.根据示例1的方法,其中自动调谐虚拟防火墙包括:基于第一特性集和第二特性集来修改虚拟机设置。
131.示例4.根据示例1的方法,其中虚拟防火墙是第一虚拟防火墙,方法还包括:确定要部署第二虚拟防火墙;确定与第一虚拟防火墙相关联的优先级相对于与第二虚拟防火墙相关联的优先级为更高优先级;以及基于第一特性集和第二特性集、基于与第一虚拟防火墙相关联的优先级是更高优先级,来部署第二虚拟防火墙。
132.示例5.根据示例1的方法,还包括:提供与部署虚拟防火墙相关联的用户界面;以及其中接收输入包括:经由用户界面接收指示设备将自动调谐虚拟防火墙的输入。
133.示例6.根据示例1的方法,还包括:执行资源可用性检查,以确定虚拟防火墙是否能够被部署在计算设备上,其中虚拟防火墙基于确定虚拟防火墙是否能够被部署在计算设备上而被部署。
134.示例7.根据示例6的方法,其中设备确定虚拟防火墙不能够被部署在计算设备上,其中方法还包括:提供标识与计算设备相关联的一组设置的信息,一组设置将被修改为使得虚拟防火墙能够被部署在计算设备上;确定一组设置已经被修改;以及基于一组设置已经被修改来部署虚拟防火墙,其中虚拟防火墙基于执行资源可用性检查而被部署。
135.示例8.一种设备,包括:一个或多个存储器;以及一个或多个处理器,一个或多个处理器用以:接收与部署虚拟防火墙相关联的输入;基于输入来执行用以调谐虚拟防火墙的过程,其中一个或多个处理器在执行用以调谐虚拟防火墙的过程时用以:基于虚拟防火墙的一个或多个特性来配置与虚拟防火墙相关联的管理程序;以及在调谐虚拟防火墙之后
部署虚拟防火墙。
136.示例9.根据示例8的设备,其中一个或多个处理器还用以:确定非一致存储器存取(numa)套接字/超线程是否被启用,其中虚拟防火墙进一步基于numa套接字/超线程是否被启用而被部署。
137.示例10.根据示例8的设备,其中一个或多个处理器在执行用以调谐虚拟防火墙的过程时用以:基于虚拟防火墙的一个或多个特性来配置与虚拟防火墙相关联的虚拟机设置。
138.示例11.根据示例8的设备,其中一个或多个处理器还用以:确定多个虚拟防火墙将基于输入而被部署,其中多个虚拟防火墙包括虚拟防火墙;以及基于输入指示多个虚拟防火墙将被部署,使得用户能够针对多个虚拟防火墙中的每个虚拟防火墙设置优先级设置。
139.示例12.根据示例11的设备,其中一个或多个处理器还用以:确定与虚拟防火墙相关联的优先级设置相对于与多个虚拟防火墙中所包括的其他虚拟防火墙相关联的优先级设置被设置为最高优先级设置,其中用以调谐虚拟防火墙的过程基于与虚拟防火墙相关联的优先级设置被设置为最高优先级设置而被执行。
140.示例13.根据示例8的设备,其中一个或多个处理器还用以:确定与部署虚拟防火墙相关联的资源可用性检查的失败;以及基于资源可用性检查的失败来修改与虚拟防火墙相关联的优先级设置,其中虚拟防火墙将基于修改优先级设置而被部署。
141.示例14.根据示例8的设备,其中一个或多个处理器在执行用以调谐虚拟防火墙的过程时还用以:使虚拟防火墙利用多层虚拟交换机,多层虚拟交换机启用虚拟机的虚拟联网。
142.示例15.一种存储指令的非瞬态计算机可读介质,指令包括:一个或多个指令,一个或多个指令在由一个或多个处理器执行时使一个或多个处理器:接收与部署虚拟防火墙相关联的输入;基于输入来确定虚拟防火墙的类型;基于虚拟防火墙的类型来确定与虚拟防火墙相关联的配置设置;基于配置设置来自动调谐虚拟防火墙;以及在调谐虚拟防火墙之后部署虚拟防火墙。
143.示例16.根据示例15的非瞬态计算机可读介质,其中一个或多个指令在由一个或多个处理器执行时还使一个或多个处理器:确定关联于虚拟防火墙的网络接口卡端口与关联于虚拟防火墙的非一致存储器存取(numa)节点相关联,其中虚拟防火墙将进一步基于网络接口卡端口与关联于虚拟防火墙的numa节点相关联而被部署。
144.示例17.根据示例15的非瞬态计算机可读介质,其中使一个或多个处理器自动调谐虚拟防火墙的一个或多个指令使一个或多个处理器:基于虚拟防火墙的类型来禁用超线程功能。
145.示例18.根据示例15的非瞬态计算机可读介质,其中使一个或多个处理器自动调谐虚拟防火墙的一个或多个指令使一个或多个处理器:使物理网络接口卡和虚拟防火墙被附接至相同的非一致存储器存取节点。
146.示例19.根据示例15的非瞬态计算机可读介质,其中使一个或多个处理器确定配置设置的一个或多个指令使一个或多个处理器:利用机器学习来确定配置设置。
147.示例20.根据示例15的非瞬态计算机可读介质,其中使一个或多个处理器自动调
谐虚拟防火墙的一个或多个指令使一个或多个处理器:标识与虚拟防火墙相关联的非一致存储器存取(numa)节点;以及使虚拟防火墙与关联于numa节点的虚拟中央处理单元(vcpu)相关联。
148.前述公开内容提供了说明和描述,但并不旨在详尽地展现实现或将实现限制于所公开的精确形式。可以鉴于以上公开内容做出修改和变型,或者可以从实现的实践中获取这些修改和变型。
149.如本文中所使用,术语“组件”旨在被广泛地解释为硬件、固件和/或硬件与软件的组合。
150.在本文中已经描述和/或在附图中已经示出了特定用户界面。用户界面可以包括图形用户界面、非图形用户界面、基于文本的用户界面等。用户界面可以提供信息以供显示。在一些实现中,用户可以诸如通过经由提供用户界面以供显示的设备的输入组件提供输入来与信息交互。在一些实现中,用户界面可以由设备和/或用户可配置(例如用户可以改变用户界面的尺寸、经由用户界面提供的信息、经由用户界面提供的信息的位置等)。附加地或备选地,用户界面可以被预先配置为标准配置、基于在其上显示用户界面的设备的类型的特定配置和/或基于与在其上显示用户界面的设备相关联的能力和/或规范的配置的集合。
151.明显的是,本文中所描述的系统和/或方法可以不同形式的硬件、固件或硬件与软件的组合来实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码不是对实现的限制。因此,本文中在不参考特定软件代码的情况下描述了系统和/或方法的操作和行为——应理解,可以基于本文中的描述将软件和硬件设计为用于实现系统和/或方法。
152.即使在权利要求书中叙述了和/或在说明书中公开了特征的特定组合,但这些组合不旨在限制各种实现的公开内容。实际上,可以权利要求书中未具体叙述和/或说明书中未公开的方式组合许多这些特征。尽管下完列出的每个从属权利要求可以仅直接从属于一项权利要求,但各种实现的公开内容包括每项从属权利要求与权利要求集合中的每项其他权利要求。
153.同样地,除非另有明确描述,否则本文中所使用的元件、动作或指令不应被解释为关键的或必需的。此外,如本文中所使用的,冠词“一”和“一个”旨在包括一个或多个项并且可以与“一个或多个”互换地使用。进一步地,如本文中所使用的,冠词“该”旨在包括结合冠词“该”引用的一个或多个项,并且可以与“一个或多个”互换地使用。此外,如本文中所使用的,术语“集合”旨在包括一个或多个项(例如相关项、不相关项、相关项与不相关项的组合等),并且可以与“一个或多个”互换地使用。在仅旨在表示一个项的情况下,使用短语“仅一个”或类似语言。此外,如本文中所使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在作为开放式术语。另外,除非另有明确陈述,否则短语“基于”旨在表示“至少部分地基于”。此外,如本文中所使用的,除非另有明确陈述,否则术语“或”旨在当串联使用时为包括性的,并且可以与“和/或”互换地使用(例如在结合“任一者”或“中的仅一者”使用的条件下)。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜