掌桥专利:专业的专利平台
掌桥专利
首页

虚拟网络功能对服务中断的响应

文献发布时间:2023-06-19 11:03:41


虚拟网络功能对服务中断的响应

背景技术

网络功能虚拟化是指用于将网络内的各种网络功能虚拟化的技术。通过网络功能虚拟化,可以部署虚拟网络功能(VNF)来执行相应的网络相关任务。VNF可以在一个计算节点或多个计算节点中执行。

附图说明

参照以下附图描述本公开的一些实施方式。

图1是根据一些示例包括虚拟网络功能(VNF)的网络布置的框图。

图2A和图2B示出了根据一些示例在VNF和目标实体之间通过各自的通信信道进行控制信息的通信。

图3是根据一些示例存储机器可读指令的存储介质的框图。

图4是根据一些示例的系统的框图。

图5是根据一些示例的过程的流程图。

在整个附图中,相同的参考标记表示相似但不一定相同的元件。这些图不一定是按比例的,并且一些部件的尺寸可能会被夸大,以便更清楚地说明所示的示例。此外,附图提供了与描述一致的示例和/或实现;然而,描述不限于附图中提供的示例和/或实现。

具体实施方式

在本公开中,术语“一”、“一个”或“该(所述)”的使用旨在也包括复数形式,除非上下文清楚地另有指示。此外,当在本公开中使用时,术语“包括”、“包含”、、“具有”指定所述元件的存在,但不排除存在或添加其他元件。

虚拟网络功能(VNF)可以指要执行相应的网络相关任务的虚拟实体。VNF可以实现为在计算节点上执行的机器可读指令。如本文所使用的,“计算节点”可以指计算机、处理器、多个处理器或能够执行机器可读指令的任何其他物理基础设施。

将VNF部署为网络功能虚拟化的一部分可以与各种示例优点相关联。例如,VNF可以比硬件网络组件更快地在网络中设计、配置和部署。此外,一般地,VNF比用于执行相应的网络相关任务的相应硬件网络组件成本更低。此外,VNF比硬件网络组件更容易定制,以针对不同用户的规格。

可以在一个计算节点或多个计算节点上部署互连VNF的集合。在一些示例中,互连VNF的集合包括VNF链,其中链中的不同VNF可以成功地执行各自的网络相关任务。在其他示例中,互连VNF集合可以包括以链连接的VNF的某个子集和并行连接的VNF的另一子集。更一般地,互连VNF集合是指在功能上、逻辑上和/或物理上彼此连接或相关的任何VNF组。

不同类型的VNF的示例包括以下内容:用于平衡跨网络的多个网络路径的网络通信的虚拟化负载均衡器、保护网络免受来自网络外部的未经授权的入侵的虚拟化防火墙、用于检测未经授权的实体对网络的入侵的虚拟化入侵检测设备、用于基于网络地址和可能的数据分组中的其他字段来切换或路由数据分组的虚拟化交换机或路由器,等等。

如果互连VNF集合内的给定VNF经历故障,例如,由于给定VNF崩溃或经历错误(或者在其上执行给定VNF的计算节点崩溃或经历错误),则包括互连VNF集合的网络中的服务中断可能发生。服务中断可以指在主机实体之间建立的通信流内的数据的通信的任何中断,其中通信流穿过互连VNF集合。通信流可以指耦合到网络的实体之间的可识别的数据流。流的标识可以基于网络地址、标识端口的端口号等的任何或某些组合。

“主机实体”可以指可在物理机或虚拟机中执行的电子设备或程序(包括机器可读指令),其中主机实体能够与另一主机实体建立通信流。主机实体可以是通信流的端点。在一些示例中,可以在主机实体之间建立的通信流可以是传输控制协议(TCP)流,传输控制协议(TCP)流是在与主机实体相关联的TCP层之间提供可靠的、有序的和错误检查的数据递送的通信协议。尽管根据一些示例参考了TCP,但应注意,在其他示例中,其他通信协议可以管理主机实体之间的通信流。

诸如TCP流的通信流可以与定时器跟踪的超时持续时间相关联。定时器可以响应于指定的事件而启动,例如发送方传输数据分组。如果在超时持续时间内未收到确认,则定时器到期。更一般地,与通信流相关联的超时持续时间的期满可以由通信流中的某些指定的不活动引起。超时持续时间的期满可以向主机实体提供网络中已经发生服务中断的指示。超时持续时间一般比较长(例如几秒或几分钟)。因此,等待超时持续时间期满以检测服务中断会导致从服务中断恢复的延迟。

此外,基于超时持续时间的期满来检测服务中断并不提供与服务中断相关联的(网络内的)网络位置的任何指示。因此,为了恢复服务中断,系统可能被限制为切断通信流并建立新的通信流。其他恢复选项可能不可用或不实用。拆掉一个通信流和建立一个新的通信流会花费相对较长的时间,并且会消耗网络带宽和处理资源。

根据本公开的一些实现,互连VNF集合内的第一VNF(其中“第一”VNF可以指互连VNF集合中的任何VNF)能够检测包括互连VNF集合的网络中的服务中断。响应于检测到服务中断,第一VNF可以向目标实体发送控制信息,其中控制信息指示服务中断的位置并指定改变通过互连VNF集合的通信流的动作。向其发送控制信息的目标实体可以包括第二VNF或主机实体。

在一些示例中,控制信息被发送到的目标实体在第一VNF的上游。如果被服务中断所中断的数据的通信沿着从目标实体到第一VNF的方向流动,则将目标实体被视为第一VNF的“上游”。控制信息可以附加地或可选地被发送到下游目标实体。目标实体可以是另一个VNF或主机实体。

VNF检测服务中断并向目标实体发送控制信息以指示服务中断的存在的能力可以允许从服务中断中更快地恢复(例如,系统不必等待超时的期满,超时可能很长)。而且,VNF向上游发送指示服务中断的控制信息的能力允许上游实体(主机实体或VNF)意识到下游服务中断。此外,提供指示服务中断的位置的信息的能力可以允许目标实体做出关于要采取的校正动作以从服务中断中恢复的更智能的决策。此外,通过在控制信息中包括为解决服务中断而采取的建议动作的信息,目标实体可以容易地确定哪个校正动作是合适的。

图1是示例性网络布置的框图,其包括能够在主机实体102和104之间建立通信流106的第一主机实体102和第二主机实体104。虽然图1的示例示出了一对主机实体102和104之间的通信流,但是应注意,在其它示例中,通信流106可以在两个以上的主机实体之间被建立。例如,主机实体102可以包括向多个接收器多播数据的发送方。

通信流106被描绘为从主机实体102到主机实体104的流。在其它示例中,通信流106可以是从主机实体104到主机实体102,或者通信流106可以是双向的。

图1还示出了主机实体102和104之间的互连VNF 108的集合。互连VNF 108的集合是用于在主机实体之间传输数据的传输网络109的一部分。在图1所示的示例中,互连VNF108的集合包括以链形式连接的VNF 108-1、108-2和108-3。在其它示例中,至少一些VNF可以并联连接在主机实体102和104之间。虽然图1中显示了作为集合的一部分的三个VNF,但需要注意的是,在其他示例中,可以在集合中使用不同数量(两个或大于两个)的VNF。

VNF 108-1至108-3可以是相同类型的VNF(例如,路由器或交换机),或者VNF 108-1至108-3中的至少两个可以是不同类型的VNF(例如,一个VNF是路由器或交换机,而另一VNF是防火墙或虚拟入侵检测设备)。

互连VNF 108的集合可以在单个计算节点中执行,或者可选地,在多个计算节点上执行。每个VNF可以实现为机器可读指令,例如在相应虚拟机内执行的机器可读指令。虚拟机是指在物理计算节点内建立的虚拟环境。一台物理机器内的多个VM可以共享该物理机器的物理资源。

在一些示例中,传输网络109可以是软件定义网络(SDN)的一部分。SDN是一种软件定义的广域网(SD-WAN),它在广阔的地理区域内互连多个网络。SDN被分为控制平面和数据平面。数据平面包括用于沿网络路径传输数据分组的网络实体(例如,物理网络设备和/或VNF)。数据分组的传输可以基于转发信息(例如,转发表、路由表等)的使用,转发信息可由网络实体访问,网络实体基于网络地址(例如,网际协议(IP)地址、介质访问控制(MAC)地址等)和可能的数据分组的其他字段沿着选定的网络路径转发数据分组。数据分组的转发由路由器或交换机(无论是物理的还是虚拟的)执行。在进一步的示例中,一些网络实体(无论是物理的还是虚拟的)还可以执行其他操作,包括防火墙保护、入侵检测等等。

尽管图1示出了包括VNF的传输网络109,但是要注意的是,在一些示例中,传输网络109还可以包括物理网络实体。

SDN的控制平面包括网络控制器112,其在SDN环境中可称为SDN控制器。网络控制器112可以使用计算节点或多个计算节点来实现。网络控制器112可以用于配置传输网络109的网络实体,包括向路由器或交换机提供转发信息,以及配置其他网络实体以执行相应的动作。

在其它示例中,代替SDN,根据本公开的一些实现的技术或机制可以与不同类型的网络一起使用。

图1示出了VNF 108-1包括服务中断管理逻辑110-1,并且VNF108-2包括服务中断管理逻辑110-2。尽管未示出,但是VNF 108-3还可以包括服务中断管理逻辑110-3。

可以使用机器可读指令来实现服务中断管理逻辑。通常,服务中断管理逻辑能够检测服务中断的存在并对服务中断作出反应,如下文在一些示例中所述。

在图1的示例中,假设在VNF 108-3处发生了服务中断114。服务中断114可以是由于VNF 108-3崩溃或经历故障或错误、在其上执行VNF 108-3的计算节点崩溃或经历故障或错误、或者连接到VNF108-3的链路经历故障或错误、或者不同的原因。更一般地,服务中断114可以由物理机、虚拟机或程序的失效或故障引起,或者可以由恶意软件或人类攻击者的动作引起。

VNF 108-2中的服务中断管理逻辑110-2能够检测与VNF 108-3相关联的服务中断114。例如,互连VNF 108的集合的相邻VNF可以彼此交换心跳指示。“心跳指示”可以指任何信号、消息或信息元素,其被传输以提供诸如VNF的网络实体仍然起作用的指示。心跳指示可以周期性地被发送,或者可以响应于某些事件间歇地被发送。

第一VNF在某些指定的持续时间内未能从第二VNF接收到心跳指示可以是第二VNF已经经历了服务中断的指示。响应于检测到服务中断114,在VNF 108-2中的服务中断管理逻辑110-2向目标实体发送控制信息116。在一些示例中,控制信息116可以是控制分组(或多个控制分组)的形式。

在一些示例中,控制信息116可以包括UDP分组。可选地,控制信息116可以包括根据互联网控制消息协议(ICMP)协议的分组。在其它示例中,可以使用其它类型的控制信息116。

在更具体的示例中,控制信息116可以包括标识通信流106的流元组。在一些示例中,流元组可以包括正在发送通信流106的主机实体102的源网络地址(例如,源IP地址)、正在接收通信流的主机实体104的目的地网络地址(例如,目的地IP地址)、源端口号和目的地端口号。

控制信息116还可以包括帮助目标实体确定要采取的(一个或多个)建议动作的信息。控制信息116被发送到的目标实体可以包括另一VNF,诸如VNF 108-1或主机实体102,或VNF 108-1和主机实体102两者。在图1中,在通信流106是从主机实体102到主机实体104的示例中,控制信息116在上游方向上被发送。控制信息116可以附加地或可选地沿下游方向被发送。

在一些示例中,控制信息116包括位置指示118和动作信息120。位置指示118指示发生服务中断114的传输网络109内的网络位置。例如,位置指示118可以是与服务中断114相关联的VNF 108-3的标识符(例如,网络地址或其它类型的标识符)的形式。在其他示例中,位置指示118可以包括标识其中发生服务中断114的计算节点、子网或任何其他网络部分的信息。

位置指示118能够被目标实体(例如被VNF 108-1中的服务中断逻辑110-1或主机实体102中的服务中断逻辑122)使用以确定服务中断114在传输网络109中的何处发生。发生服务中断114的传输网络109的位置对于确定采取什么动作是有用的,例如从以下可能的动作中进行选择:切断通信流106并建立新的通信流,导致沿着不同的网络路径围绕服务中断114路由数据,等等。

控制信息116中的动作信息120指定要采取的以改变通过互连VNF 108的集合的通信流的动作。例如,动作信息120可以指定以下动作的任何或某些组合:调整(减小或增大)TCP窗口大小、断开通信流106、对通信流106施加流控制,其中流控制可以包括改变通信流106中数据的通信速率、选择通过网络的不同路由(诸如执行负载均衡的一部分)、以及改变服务质量(QoS)策略。

TCP窗口大小是指接收者在任何时间点愿意接收的数据量(以字节为单位)。负载均衡是指在网络中跨不同网络路径平衡工作负载的技术。QoS策略指定为通信流提供的服务级别。较高的服务级别意味着通信流106中的数据通信可以比较低的服务级别以较高的数据速率、较高的可靠性等发生。

目标实体响应于控制信息116而采取的用于从服务中断中恢复的动作可以是也可以不是由控制信息116中的动作信息120指定的动作。

由目标实体(或更具体地,由目标实体中的服务中断管理逻辑)采取的从服务中断114恢复的校正动作可以是基于策略的校正动作。如图1所示,策略控制实用程序124可以提供策略126(或多个策略)以服务在主机实体102和104以及VNF 108-1、108-2和108-3中的任一个中执行的中断管理逻辑。

在一些示例中,策略控制实用程序124可以包括可由网络控制器112执行的机器可读指令。在其它示例中,策略控制实用程序124可以包括与网络控制器112分离的程序或机器。

每个策略126可以包括一个规则,该规则基于一个因素(或多个因素)确定要采取什么校正动作。例如,服务中断管理逻辑考虑的因素之一可以是服务中断114的网络位置。策略126可以指定,如果网络位置在位置X(或位置X的上游或下游)处,则通信流106将必须被断开并建立新的通信流。另一方面,策略122可以指定,如果网络位置不在位置X处(或者不在位置X的上游或下游),则校正动作可以包括为通信流106在传输网络109中选择要采取的不同路径。

基于策略126的服务中断管理逻辑可以考虑的其他因素可以包括在通信流106中传输的数据分组的量、沿着路径的网络实体的当前负载、与通信流106相关联的当前QoS等等。

由服务中断管理逻辑采取的从服务中断114恢复的校正动作可以基于策略126以及由控制信息116中的动作信息120指定的动作。

所采取的校正动作可以不同于由控制信息116中的动作信息120指定的动作。例如,控制信息116中的动作信息120可以指定断开通信流106并建立新的通信流。然而,策略122可以指定响应于服务中断114而采取的适当校正动作是选择不同的网络路径以围绕服务中断114路由。

可以由VNF发送的控制信息116可以通过VNF和目标实体之间的通信信道。图2A示出了通信信道包括与目标实体204相关联的指定端口202的示例。端口202可以是TCP端口、用户数据报协议(UDP)端口或另一类型的端口。控制信息116由VNF 206中的服务中断管理逻辑208发送到指定端口202。例如,包括控制信息116的控制分组可以包括指定端口202的端口号。目标实体204中的服务中断管理逻辑210将在指定端口202处接收的信息识别为响应于服务中断的控制信息。

图2B示出了通信信道包括存储在存储介质214中的共享数据结构212的不同示例。存储介质214可以使用存储器设备(或多个存储器设备)、持久存储设备(或多个持久存储设备)或其任意组合来实现。

存储介质214可以是包括目标实体204和VNF 206的计算节点200的一部分。在其他示例中,目标实体204和VNF 206可以是不同计算节点的一部分,但是存储介质214可由目标实体204和VNF 206访问。

共享数据结构212包括控制信息条目216。例如,共享数据结构212可以是表或任何其它数据结构的形式。

VNF 206中的服务中断管理逻辑208可以将控制信息(例如图1中的116)写入共享数据结构212的控制信息条目216。各个不同VNF中的不同服务中断管理逻辑可以将控制信息写入相应的不同控制信息条目216。

通知器218包括可在计算节点200中执行的机器可读指令。通知器218可以检测将新控制信息添加到共享数据结构212中的控制信息条目216。响应于这样的检测,通知器218可以向目标实体204(或多个目标实体)发布新的控制信息。在其他示例中,代替使用通知器218,目标实体204可以包括监听器,监听器轮询共享数据结构212以对数据结构212中的控制信息条目216更新。

图3是存储机器可读指令的非暂时性机器可读或计算机可读存储介质300的框图,机器可读指令在执行时使系统执行各种任务。机器可读指令包括服务中断检测指令302,用于通过作为互连VNF集合的一部分的第一VNF检测包括互连VNF集合的网络中的服务中断。服务中断的检测可以基于未能接收到来自相邻VNF的心跳指示。第一VNF在某些指定的持续时间内未能从第二VNF接收到心跳指示可以是第二VNF已经经历了服务中断的指示。

机器可读指令还包括控制信息发送指令304,以响应于检测到服务中断,由第一VNF向目标实体发送控制信息,控制信息指定要采取以改变通过互连VNF集合的通信流的动作。在一些示例中,控制信息可以进一步指示与服务中断相关联的网络位置。控制信息被发送到的目标实体可以包括第二VNF和/或主机实体。第一VNF和第二VNF可以是相同类型的VNF,或者是不同类型的VNF。控制信息的发送可以通过通信信道发送到目标实体,诸如图2A或图2B中所示的通信信道。

响应于控制信息,目标实体可以基于控制信息执行校正动作以改变通信流。校正动作的示例包括以下任何或某些组合:调整TCP窗口的大小、断开通信流并建立新的通信流、对通信流施加流控制、选择通过网络的不同路由、改变QoS策略等等。

在进一步的示例中,控制信息要被发送到的每个目标实体(例如,VNF或主机实体)可以接收策略,例如从图1的策略控制实用程序124接收策略。响应于控制信息而在目标实体处执行的校正动作可以基于该策略。

在某些情况下,发送控制信息的第一VNF还可以基于策略执行校正动作以解决服务中断。在第一VNF处的校正动作与在目标实体处的校正动作一致。在多个实体处执行的“一致的”校正动作可以指在多个实体处采取的相同校正动作,或者在多个实体处采取的以彼此不冲突的方式解决服务中断的校正动作。通过在多个实体处采取一致的校正动作以从服务中断中恢复,可以避免在多个实体处冲突的校正动作,使得在通信流中不会发生错误。

图4是系统400的框图,系统400可以包括计算节点或多个计算节点。系统400包括硬件处理器402(或多个硬件处理器)。硬件处理器可包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列或另一硬件处理电路。

系统400还包括互连VNF 404集合。互连VNF集合中的第一VNF404-1可在硬件处理器上执行以执行各种任务。这些任务包括服务中断检测任务406,用于检测包括互连VNF404集合的网络中的服务中断。如上所述,检测可以基于未接收到心跳指示。

该任务还包括控制信息发送任务408,以响应于检测到服务中断,使用通信信道向第一VNF上游的目标实体发送控制信息,控制信息指定要采取以改变通过互连VNF集合在主机实体之间建立的通信流的动作。

在一些示例中,通信信道包括存储在存储介质中的指定端口(例如,图2A中的202)或共享数据结构(例如,图2B中的212)。

控制信息用于使目标实体执行校正动作以解决所述服务中断,而不首先等待管理通信流的通信协议的超时持续时间的期满。

图5是可以由包括硬件处理器的系统执行的过程的流程图。图5的过程包括由作为互连VNF集合的一部分的第一VNF检测(在502处)在包括互连VNF集合的网络中的服务中断。该过程包括,响应于检测到服务中断,向在第一VNF上游的第二VNF发送(在504处)控制信息,该控制信息指示与服务中断相关联的网络位置,并指定要采取以改变通过互连VNF集合的通信流的动作。控制信息可以通过识别经历导致服务中断的故障的VNF、网络的一部分或设备来指示网络位置。

该过程包括由第二VNF基于网络位置和控制信息执行(在506处)校正动作。

图3的存储介质300可以包括以下的任何或某些组合:半导体存储器设备,诸如动态或静态随机存取存储器(DRAM或SRAM)、可擦除和可编程只读存储器(EPROM)、电可擦除和可编程只读存储器(EEPROM)和闪存;一种磁盘,如固定磁盘、软盘和可移动磁盘;包括磁带的另一磁性介质;诸如光盘(CD)或数字视频盘(DVD)等的光学介质;或另一种类型的存储设备。注意,上面讨论的指令可以提供在一个计算机可读或机器可读存储介质上,或者可选地,可以提供在分布在可能具有多个节点的大型系统中的多个计算机可读或机器可读存储介质上。这种计算机可读或机器可读存储介质被认为是物品(或制造品)的一部分。一个物品或制造品可以指任何制造的单个组件或多个组件。存储介质或多个介质可以位于运行机器可读指令的机器中,或者位于可通过网络下载机器可读指令以供执行的远程站点。

在前述描述中,阐述了许多细节以提供对本文公开的主题的理解。然而,可以在没有这些细节的情况下实践实现。其它实现可以包括对上述细节的修改和变化。希望所附权利要求书涵盖这样的修改和变化。

相关技术
  • 虚拟网络功能对服务中断的响应
  • 电信网络预建立服务中断响应
技术分类

06120112788374