CN109104296A - 虚拟网络功能与主机系统之间的同步 - Google Patents
虚拟网络功能与主机系统之间的同步 Download PDFInfo
- Publication number
- CN109104296A CN109104296A CN201810541827.1A CN201810541827A CN109104296A CN 109104296 A CN109104296 A CN 109104296A CN 201810541827 A CN201810541827 A CN 201810541827A CN 109104296 A CN109104296 A CN 109104296A
- Authority
- CN
- China
- Prior art keywords
- vnf
- information
- nfv
- nfv platform
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
网络功能虚拟化(NFV)平台可以包括一个或多个处理器以标识与NFV平台相关联的状况,其中该状况可以影响由NFV平台托管或与NFV平台相关联的至少一个虚拟网络功能(VNF)的操作;基于该状况来确定关于至少一个VNF的可以提供的信息或者可以执行的动作;和/或生成或发送标识该信息和/或可以使得动作关于该至少一个VNF而被执行的消息。
Description
背景技术
网络功能虚拟化(NFV)是一种网络架构概念,其使用信息技术虚拟化的技术来将网络节点功能的类别虚拟化为构建块,构建块可以连接、或链接在一起,以创建通信服务。NFV部署包括一个或多个虚拟化网络功能(VNF),它们包括在处理器上运行软件的虚拟机(VM)或Linux容器。VNF可以在大量服务器、交换机和存储设备上、或者在云计算环境内被实现,而不是针对每个网络功能使用定制硬件设备。
发明内容
根据一些可能的实现,网络功能虚拟化(NFV)平台可以包括一个或多个处理器以标识与NFV平台相关联的状况,其中该状况可以影响由NFV平台托管或与NFV平台相关联的至少一个虚拟网络功能(VNF)的操作;基于该状况来确定可以提供的信息或者可以关于至少一个VNF而被执行的动作;和/或生成或发送标识该信息和/或可以使得动作关于该至少一个VNF而被执行的消息。
根据一些可能的实现,网络功能虚拟化(NFV)平台可以包括:用于标识与NFV平台相关联的状况的装置,其中该状况可以影响由NFV平台托管或与NFV平台相关联的至少一个虚拟网络功能(VNF)的操作;用于基于该状况来确定可以提供的信息或者可以关于至少一个VNF而被执行的动作的装置;以及用于生成或发送标识该信息和/或可以使得动作关于该至少一个VNF而被执行的消息的装置。
根据一些可能的实现,一种方法可以包括由NFV平台标识与NFV平台相关联的第一信息,其中第一信息可以涉及由该NFV平台托管或与该NFV平台相关联的至少一个VNF的操作;由该NFV平台基于第一信息来确定可以提供的第二信息或可以关于至少一个VNF而被执行的动作;和/或由NFV平台生成或提供标识第二信息和/或使得动作关于至少一个VNF而被执行的消息。
根据一些可能的实现,一种非暂态计算机可读介质可以存储一个或多个指令,该一个或多个指令在由一个或多个处理器执行时,可以使得该一个或多个处理器以标识与物理接口相关联的状况,该物理接口与NFV平台相关联,其中该状况可以影响由该NFV平台托管或与该NFV平台相关联的至少一个VNF的操作;基于该状况来确定可以提供的信息或可以关于至少一个VNF而被执行的动作;和/或生成或发送标识该信息和/或使得该动作关于至少一个VNF而被执行的消息。
附图说明
图1A和1B是本文描述的示例实现的概览的示图;
图2是本文中所描述的系统和/或方法可以在其中被实现的示例性环境的示图;
图3是图2中的一个或多个设备的示例组件的示图;
图4是用于在主机系统和VNF之间的同步的示例过程的流程图。
具体实施方式
示例实现的以下详细描述参考了附图。不同附图中的相同附图标记可以标识相同或相似的元件。
NFV是运行网络功能的技术,网络功能诸如状态防火墙、广域网(WAN)加速器、无线局域网(LAN)控制器、和/或主机系统上的类似网络功能。例如,网络功能可以在硬件平台上作为VNF被运行。VNF可以是虚拟机(VM)、Linux容器等。NFV的益处可以包括弹性容量、多供应商选择,服务的更容易部署、主机系统的远程管理等。NFV的一个示例用例可以包括在客户端设备(CPE)上的部署,其可以由服务提供商远程管理。
在主机系统上,NFV平台可以管理VNF与主机系统的物理接口的通信,可以管理VNF的生命周期,并且可以为VNF的服务链接提供骨干网络支持。例如,VNF可以包括与在对应的硬件设备上运行的软件相似的软件。硬件设备的物理接口可以由VNF中的虚拟接口表示。多个VNF可以被服务链接,以提供类似于由硬件设备提供的一组网络服务,并且可以经由主机系统的物理接口接收和发送去往和来自多个VNF的业务。
在一些情况下,VNF可能不能够容易地标识主机系统的物理方面,诸如物理接口的状态、与主机系统相关联的参数、互联网协议(IP)信息等。例如,VNF可能无法监测这样的物理方面,或者探测物理接口可能是资源密集型的。这可能导致诸如业务黑洞或分组丢失、较差的传输控制协议/用户数据报协议(TCP/UDP)性能等问题。这些问题可能进一步导致经由NFV平台接收服务的设备的附加问题,因为那些设备可能没有如预期地接收业务或分组,导致故障、不可操作性等。
本文描述的一些实现可以提供通信信道和协议,用于NFV平台和VNF之间的通信以交换关于主机系统和/或其他VNF的信息。例如,本文描述的一些实现可以提供标准化消息传送系统,以将关于主机系统的物理方面的信息传达给主机系统上托管的VNF或与主机系统通信的VNF。以这种方式,可以将物理接口的状态、与主机系统相关联的参数、互联网协议(IP)信息等从NFV平台传送到VNF,这改善了VNF的性能并且减少了与主机系统的物理方面缺乏可见性有关的问题的发生。因此,VNF性能可以被改善,而无需实现外部控制器或VNF的资源密集型监测操作。此外,(例如,包括主机系统的网络的)网络性能可以相对于不包括NFV平台的网络被改善,该NFV平台将关于主机系统的物理方面的信息传达给托管在主机系统上的VNF或者与主机系统通信的VNF。
图1A和1B是本文描述的示例实现100和100'的概览图。如图1A和1B所示,示例实现100和100'可以包括网络设备1和网络设备2以及包括VNF路由器1和VNF路由器2的主机系统。
如图1A中的附图标记105所示,假定网络设备2和VNF路由器1之间的物理链路发生故障,这可能导致业务黑洞(例如,由于VNF路由器1通过故障物理链接向网络设备2发送业务)。如附图标记110所示,在没有VNF路由器1的昂贵的探测的情况下(即,在VNF路由器1没有频繁地验证与网络设备2的现有物理链路的情况下),VNF路由器1可能缺乏对物理链路(例如,网络设备2和VNF路由器1之间的物理链路)的状况的可见性。为此,由于VNF路由器1不具有指示与网络设备2的物理链路已经发生故障的信息,因此到网络设备2途中的业务可能会丢失。作为结果,并且如附图标记115所示,VNF路由器1可以基于到网络设备2的链路是可操作的假定来通告错误的链路信息。如附图标记118所示,VNF路由器1可以向VNF路由器2和网络设备1提供错误的链路信息。因此,基于错误的链路信息,如参考标号120所示,网络设备1可以继续将业务路由到VNF路由器1作为结果,当VNF路由器1尝试将业务通过发生故障的物理链路路由到网络设备2时,这可能导致流量黑洞或数据包丢失。
如图1B所示,示例实现100'包括能够向VNF路由器1提供接口状态消息以解决图1A中提供的错误链接通告的NFV平台。如附图标记125所示,NFV平台可以检测标识物理链路故障的状况。例如,NFV平台可以与主机系统通信以标识故障物理链路或其他信息。如附图标记130所示,NFV平台可以标识要提供的接口信息(例如,可以标识哪个物理接口关闭、哪个物理接口启动、哪个物理接口具有满足阈值的延迟等),使得VNF路由器1可以更新虚拟接口状态(例如,以指示被映射到故障物理接口的虚拟接口将不被使用)。
如附图标记135所示,NFV平台可以生成标识接口信息的接口状态消息(关于图4更详细地描述),并且可以向VNF路由器1提供接口状态消息。例如,NFV平台可以经由虚拟串行接口、IP接口等来提供接口状态消息。如附图标记140所示,VNF路由器1可以基于接口状态消息来标识物理接口链路故障。如附图标记145所示,VNF路由器1可以更新链接通告,以便重新路由业务。如附图标记150所示,VNF路由器1可以向网络设备1和VNF路由器2提供经更新的链路通告(基于标识物理接口的故障)。如附图标记155所示,网络设备1可以使用经更新的链路通告来确定业务将经由VNF路由器2被路由。
本文描述的一些实现可以提供通信信道和协议,用于NFV平台和VNF之间的通信以交换关于主机系统和/或其他VNF的信息。例如,本文描述的一些实现可以提供标准化消息传送系统,以将关于主机系统的物理方面的信息传达给主机系统上托管的VNF或与主机系统通信的VNF。以这种方式,可以将物理接口的状态、与主机系统相关联的参数、互联网协议(IP)信息等从NFV平台传送到VNF,这改善了VNF的性能并且减少了与主机系统的物理方面缺乏可见性有关的问题的发生。因此,VNF性能可以被改善,而无需实现外部控制器或VNF的资源密集型监测操作。
如上所述,图1A和1B仅作为示例被提供。其他示例是可能的并且可以不同于关于图1A和1B所描述的示例。
图2是其中本文描述的系统和/或方法可以被实现的示例环境200的示图。如图2所示,环境200可以包括主机系统215中的NFV平台210、云环境220、云环境和/或主机系统215中的一个或多个VNF 230(230-1至230-N(N≥1),以下统称为“VNF 230”并且单独地称为“VNF 230”)以及一个或多个网络设备240。环境200的设备可以经由有线连接、无线连接、或有线连接和无线连接的组合互连。
NFV平台210可以包括平台或环境,其包括一个或多个VNF 230的。NVV平台210可以管理VNF 230的生命周期,并且可以为VNF 230的服务链提供骨干网络支持。NVV平台210结合VNF 230可以提供弹性容量、VNF 230的多供应商选择、更容易的服务部署、VNF 230的远程管理等。在一些实现中,VNF 230可以包括客户端设备(CPE)或者可以在客户端设备(CPE)上实现,其可以由服务提供商远程管理。在一些实现中,NFV平台210可以与主机系统215通信以接收、发送或路由与VNF 230相关联的虚拟接口与主机系统215的物理接口之间的业务,如下面更详细描述的。例如,NFV平台210可以知晓主机系统215的物理接口的状态。在一些实现中,NFV平台210可以包括主机系统215的操作系统或内核。附加地或者备选地,NFV平台210可以与主机系统215的操作系统或内核通信,以确定主机系统215的物理接口的状态。
NFV平台210可以被实现在主机系统215上、与主机系统215相关联、或由主机系统215托管。主机系统215包括能够执行NFV平台210和/或VNF 230的一个或多个设备。例如,主机系统215可以包括服务器设备或一组服务器设备。主机系统215可以与一个或多个物理接口(例如,物理网络接口、端口、骨干连接、硬件连接等)相关联。在一些实现中,主机系统215可以包括服务器级硬件平台。
VNF 230可以包括执行网络功能的VNF。例如,VNF 230可以包括有状态防火墙、WAN加速器、无线LAN控制器、虚拟路由器、虚拟交换机等。在一些实现中,可以在主机系统215上实现多个VNF 230(例如,数十个VNF 230、数百个VNF 230等)。附加地或备选地,一个或多个VNF 230可以在云环境220中被实现,云环境220可以远离主机系统215。附加地或备选地,在一些实现中,云环境220可以在主机系统215上实现。
VNF 230可以经由虚拟接口接收和发送信息。可以由NFV平台210处理VNF 230的虚拟接口到主机系统215的物理接口的映射。在一些实现中,VNF 230可能不能够容易地确定主机系统215的物理接口的状态。例如,VNF 230可能能够探测物理接口,但这可能是资源密集型的。
网络设备240包括一个或多个设备(例如,一个或多个业务转移设备),其能够处理和/或转移业务。例如,网络设备240可以包括防火墙、路由器、网关、交换机、集线器、桥接器、反向代理、服务器(例如,代理服务器)、安全设备、入侵检测设备、负载平衡器或类似的设备。网络设备240可以基于从VNF 230和/或主机系统215接收到的路由通告来接收、发送和/或路由信息。
在一些实现中,网络设备240可以是在外壳(诸如机箱)内实现的物理设备。在一些实现中,网络设备240可以是由云计算环境或数据中心的一个或多个计算机设备实现的虚拟设备。
图2中所示的设备和网络的数量和布置作为示例被提供。在实践中,可以存在与图2中所示的设备相比更多的设备、更少的设备、不同的设备或不同布置的设备。此外,图2中所示的两个或更多个设备可以在单个设备内被实现,或者图2中所示的单个设备可以被实现为多个分布式设备。附加地或备选地,环境200的一组设备(例如,一个或多个设备)可以执行被描述为由环境200的另一组设备执行的一个或多个功能。
图3是设备300的示例组件的示图。设备300可以对应于NFV平台210、主机系统215、云环境220和/或网络设备240。在一些实现中,NFV平台210、主机系统215、云环境220和/或网络设备240可以包括一个或多个设备300和/或设备300的一个或多个组件。如图3所示,设备300可以包括总线310、处理器320、存储器330、存储组件340、输入组件350、输出组件360和通信接口370。
总线310包括允许设备300的组件之间的通信的组件。处理器320以硬件、固件或硬件和软件的组合来实现。处理器320采取以下形式:中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP),现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其他类型的处理组件。在一些实现中,处理器320包括能够被编程为执行功能的一个或多个处理器。存储器330包括随机存取存储器(RAM)、只读存储器(ROM)和/或另一类型的动态或静态存储设备(例如,闪存、磁存储器和/或光存储器),其存储信息和/或指令以供处理器320使用。
存储组件340存储信息和/或与设备300的操作和使用有关的软件。例如,存储组件340可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、紧凑盘(CD)、数字多功能盘(DVD)、软盘、磁盒、磁带和/或另一类型的非暂态计算机可读介质,连同对应的驱动器。
输入组件350包括允许设备300诸如经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关、和/或麦克风)来接收信息的组件。附加地或备选地,输入组件350可以包括用于感测信息的传感器(例如,全球定位系统(GPS)组件、加速度计、陀螺仪和/或致动器)。输出组件360包括提供来自设备300的输出信息的组件(例如,显示器、扬声器和/或一个或多个发光二极管(LED))。
通信接口370包括使得设备300能够诸如经由有线连接、无线连接或有线连接和无线连接的组合来与其它设备通信的类似收发器的组件(例如,收发器和/或单独的接收器和发射器)。通信接口370可以允许设备300从另一个设备接收信息和/或向另一个设备提供信息。例如,通信接口370可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备300可以执行本文描述的一个或多个过程。设备300可以基于处理器320来执行这些过程,处理器320执行由诸如存储器330和/或存储组件340的非暂态计算机可读介质存储的软件指令。计算机可读介质在本文中被定义为非暂态存储器设备。存储器设备包括在单个物理存储设备内的存储器空间或分布在多个物理存储设备上的存储器空间。
软件指令可以经由通信接口370从另一计算机可读介质或从另一设备读入存储器330和/或存储组件340。当被执行时,存储在存储器330和/或存储组件340中的软件指令可以使得处理器320执行本文描述的一个或多个过程。附加地或备选地,可以使用硬连线电路来代替软件指令或与软件指令结合来执行本文描述的一个或多个过程。因此,本文描述的实现不限于硬件电路和软件的任何特定组合。
在图3中示出的组件的数量和布置作为示例被提供。在实践中,设备300可以包括与图3中所示的组件相比更多的组件、更少的组件、不同的组件或者不同布置的组件。附加地或备选地,设备300的一组组件(例如,一个或多个组件)可以执行被描述为由设备300的另一组组件执行的一个或多个功能。
图4是用于主机系统215和VNF 230之间的同步的示例过程400的流程图。在一些实现中,图4中的一个或多个过程框可以由NFV平台210来执行。在一些实现的流程图,图4中的一个或多个过程框可以由与NFV平台210分离或包括NFV平台210的另一设备或一组设备执行,诸如主机系统215、VNF 230和/或网络设备240。
如图4所示,过程400可以包括标识与一个或多个VNF相关联的状况(框410)。例如,NFV平台210可以标识与一个或多个VNF 230相关联的状况。
在一些实现中,一个或多个VNF 230可以由与NFV平台210相关联的主机系统215托管。附加地或备选地,一个或多个VNF 230可以远离主机系统215和/或NFV平台210(例如,在云环境220中)。在一些实现中,NFV平台210可以标识与VNF 230相关联的第一信息。在这种情况下,第一信息可以包括标识该状况的信息,和/或可以包括关于VNF 230的其他信息(例如,VNF 230的状态等)。
在一些实现中,该状况可以涉及主机系统215的物理接口或物理方面。例如,该状况可以涉及物理链路的状态、网络接口控制器(NIC)配置、IP地址配置等。在一些实现中,该状况可以由NFV平台210检测(例如,基于监测物理链路、基于来自下游设备的否定确认(NACK)、基于从主机系统215获得的信息等)。
在一些实现中,NFV平台210可以接收标识状况的信息。例如,主机系统215的操作系统可以与NFV平台210通信以标识该状况。作为另一示例,VNF 230可以提供标识该状况的信息。在这种情况下,VNF 230可以经由串行接口(例如,virtio串行(virtio-serial)接口)或IP接口来提供信息。
在一些实现中,状况可以不是由VNF 230可检测的,所以NFV平台210可以使用本文中所描述的通信信道和协议以生成并向VNF 230提供消息,该消息标识状况和/或使得动作关于VNF 230或状况而被执行,如下面更详细描述的。
作为其中NFV平台210可以标识与一个或多个VNF 230相关联的状况的场景的示例,假定路由器VNF 230在NFV平台210上利用一组虚拟接口来被实现。在这种情况下,假定虚拟接口是可操作的并且在路由器VNF 230中运行的路由协议通告与虚拟接口关联的链路,而不管与虚拟接口关联的物理端口的链路状态如何。这在主机系统215的物理端口中的一个或多个物理端口发生链路故障的情况下可能导致业务量黑洞,因为路由器VNF 230可能继续将业务路由到故障链路从而导致分组丢失。在一些实现中,NFV平台210可以通过与主机系统215的通信(例如,经由以下描述的示例消息中的一个或多个示例消息的消息交换)来检测故障链路状况。
作为其中NFV平台210可以标识与一个或多个VNF 230相关联的状况的场景的另一示例,假定VNF 230(例如,软件定义的广域网(SD-WAN)VNF)与主接口(例如,10G以太网接口)和辅助接口(例如,长期演进(LTE)接口)相关联,并且VNF 230被配置为当主接口可操作时通过主接口将分组路由出去,并且当主接口不可操作时切换到辅助接口。在这种情况下,VNF 230可能没有确定主接口是否可操作的直接方式。在一些实现中,NFV平台210可以基于与主机系统215的通信来检测主接口的状况不可操作(例如,经由以下描述的消息中的一个或多个消息的消息交换)
作为其中NFV平台210可以标识与一个或多个VNF 230相关联的状况的场景的另一示例,假定VNF 230利用跟踪路由功能,并且增强跟踪路由功能以提供关于VNF 230在哪里被实现的信息是有益的。在这种情况下,VNF 230可以不具有与托管VNF 230的平台(例如,NFV平台210或主机系统215)相关联的信息。在一些实现中,NFV平台210可以检测跟踪路由状况,并且基于与主机系统215和VNF 230的通信(例如,经由以下描述的消息中的一个或多个消息的一个或多个消息交换)来促进向彼此提供关于VNF 230的这样的信息。
作为其中NFV平台210可以标识与一个或多个VNF 230相关联的状况的场景的另一示例,假定NFV平台210提供对NFV平台210(或主机系统215)托管的VNF 230的无密码但安全的访问,其可以辅助VNF 230的零接触供应(ZTP)并且节省IP地址(例如,使得远程控制器可以经由单个IP地址到达任何VNF 230)。在这种情况下,当VNF 230被激活时,用户(例如,网络管理员)可以手动登录到每个VNF 230并且设置对该VNF 230的无密码访问,这可能是繁琐的,如果服务提供商正在管理许多(例如,数千个)NFV平台,每个NFV平台运行数十或数百个VNF 230。因此,在一些实现中,NFV平台210可以使用本文描述的主机系统215和VNF 230之间的通信框架来检测VNF 230的无密码访问状况,并且如以下所描述的实现对VNF 230的无密码访问。
作为其中NFV平台210可以标识与一个或多个VNF 230相关联的状况的场景的另一示例,假定VNF 230与基于流/会话的数据平面和终止/开始传输控制协议(TCP)会话相关联。在纯基于设备的环境中,这种基于流的系统可以利用NIC的TCP校验卸载/TCP分段卸载(TCO/TSO),以加速TCP性能。在基于VNF的环境中,VNF 230可能仅具有虚拟接口,并且由于该原因可能不具有标识主机系统215上的实际物理NIC(其通常面向WAN)是否具有TCO/TSO功能的信息。在这种情况下,VNF 230不能利用NIC上的TCO/TSO能力,这可能导致较差的TCP/UDP性能。在一些实现中,NFV平台210可以检测其中VNF 230可以利用主机系统215的NIC的TCO/TSO功能(例如,当VNF 230具有基于流/会话的数据平面时),并且促进主机系统215和VNF 230之间的通信以经由NIC的TCO/TSO功能来增强TCP/UDP性能。
如图4中进一步示出的,过程400可以包括基于该状况来确定关于一个或多个VNF要提供的信息或要执行的动作(框420)。例如,NFV平台210可以基于该状况来确定关于一个或多个VNF 230的要提供的信息。附加地或备选地,NFV平台210可以基于该状况来标识关于一个或多个VNF 230的要执行的动作。
在一些实现中,该信息可以标识该状况,可以标识与该状况相关联的参数或信息等。例如,对于链路故障或链路创建状况,该信息可以标识物理接口的名称、物理接口的地址和/或物理接口的操作状态。作为另一示例,对于IP供应状况,该信息可以标识IP地址、子网掩码、网关IP地址、域名服务器(DNS)地址等。作为又一示例,对于NIC接口状况,该信息可以标识NIC的名称、NIC的最大传输单元(MTU)、TCO和/或TSO是否被启用等。作为又一示例,对于主机系统215的主机信息,该信息可以标识主机名称、主机IP地址等。作为另一个例子,对于零接触供应(ZTP),该信息可以标识主机系统215上的ZTP文件的文件位置。
在一些实现中,动作可以由VNF 230基于该信息来执行。例如,对于链路故障,该动作可以包括发送经更新的路由通告。作为另一示例,对于IP供应,该动作可以包括使用IP信息来配置通信。作为又一示例,对于NIC,该动作可以包括配置与NIC的通信。作为又一示例,对于ZTP,该动作可以包括基于ZTP文件来配置VNF 230。
如图4中进一步示出的,过程400可以包括生成或发送包括该信息和/或使得动作关于VNF 230被执行的消息(框430)。例如,NFV平台210可以生成并且向VNF 230发送消息,和/或使得主机系统215生成或者向VNF 230发送消息。附加地或备选地,NFV平台210可以使得动作由VNF 230执行和/或使得动作关于VNF 230而被执行。
在一些实现中,NFV平台210可以经由串行接口(诸如,virtio串行接口)或NFV平台210(或主机系统215)和一个或多个VNF 230之间的类似接口来发送该消息。以此方式,NFV平台210可以经由相对于经由除了串行接口之外的接口发送消息而言不复杂的接口来发送消息,该接口始终可用,和/或该接口可以在VNF 230与NFV平台210(或者主机系统215)之间没有IP连接性的情况下工作。
在一些实现中,NFV平台210可以经由另一类型的接口(诸如IP接口)来发送消息。例如,当VNF 230远离NFV平台210时,在VNF 230和NFV平台210之间可能不存在串行接口。在这种情况下,NFV平台210可以使用IP接口。
在一些实现中,在NFV平台210、主机系统215、和/或VNF 230之间交换的信息可以具有特定的格式(例如,基于特定的协议)。在一些实现中,该格式可以是可扩展的,这可以提供在此描述的消息传送格式的适应性。具有类型-长度-值(TLV)字段的消息格式的示例如下所示。
在上面的示例中:
·版本在将来可以用于向下兼容。在一些实现中,该字段可以被设置为1。
·消息类型可能保持在下节中提到的消息类型中的一种或多种消息类型。在一些实现中,该字段可以是八位宽。
·分组长度可以保持标识分组(包括头部)以字节为单位的长度的值。在一些实现中,分组的最大长度可以是255个字节。
·TLV表示利用本协议交换的信息的单位。特定的消息类型可以在消息中包括任意数量的TLV,并且每个TLV将标识一个特定的子类型,其长度包括TLV头部,以及作为ASCII编码文本的实际值。
下表提供示例协议分组格式的可能的信息值:
在一些实现中,NFV平台210可以使用本文中所描述的通信信道和协议,以解决结合以上图4的框410所描述的示例场景。
关于以上描述的物理接口中断的场景,如上所述,每当物理链路变得不可操作或可操作(例如,“关闭”或“启动”),NFV平台210可以通过生成和/或发送接口状态消息来通知VNF 230。在这种情况下,VNF 230可以将消息映射到其虚拟接口中的一个或多个虚拟接口。在接收到该消息时,VNF 230可以相应地修改虚拟接口状态,并且可以更新路由协议以公告反映实际物理连接的准确可达性信息。
关于以上描述的主接口的中断的场景,NFV平台210的平台软件可以检测主链路的丢失和切换到辅助链路。在这种情况下,如上所述,NFV平台210可以生成和/或发送的标识主接口和主接口的状态(在这种情况下为“关闭”)的接口状态消息。通过发送接口状态消息,VNF 230可以触发向辅助接口的切换。
关于以上描述的跟踪路由场景,跟踪路由功能可以被修改为跟踪路由功能的增强版本,其中不仅列出多跳的IP地址,并且还列出关于每一跳的更多细节(例如,设备的类型、设备的主机名和位置)。在一些实现中,如上所述,NFV平台210可以生成和/或发送主机信息消息,并且可以在主机信息消息中与VNF230共享主机系统215的主机名。在这种情况下,VNF230可以将该信息添加到跟踪探测中以便将VNF 230标识为VNF,并且标识VNF 230在哪里被托管。例如,VNF 230主机名称、位置等在故障排除或提供虚拟化网络中的可见性中可以是有用的。
关于以上描述的ZTP场景,通过在NFV平台210、主机系统215和VNF 230之间使用本文描述的通信框架,手动登录到每个VNF 230的需求可以被避免,并且访问过程可以被自动化。例如,一旦建立公钥,则公钥可以被NFV平台210导出,如上所述,NFV平台210生成和/或向VNF 230发送SSH公钥消息。在这种情况下,如果需要,则NFV平台210可以如上所述地生成和/或向VNF 230发送ZTP信息消息,以利用定制配置来引导VNF 230。
关于以上描述的NIC接口场景,如上所述,NFV平台210可以通过生成和/或发送接口能力消息来向VNF 230公告面向NIC的WAN的能力。在这种情况下,VNF 230可以调整其TCP协议栈以打开TCO/TSO功能,从而给予更好的TCP/UDP性能。
以这种方式,本文描述的一些实现可以提供高效的技术,以用于修补与虚拟网络功能相关联的场景中的频繁遇到的问题或限制。
在一些实现中,消息可以包括方向元素。例如,方向元素可以指示主机系统215正将消息发送到VNF 230还是VNF 230正将消息发送到主机系统215。以这种方式,在错误的方向(例如,方向与消息的实际方向不一致)上发送的消息可以被无声地丢弃,这可以保护主机系统215免于滥用协议以获得敏感信息。
作为特定示例,SSH公钥消息旨在从主机系统215被发送到VNF 230,而不是从VNF230被发送到主机系统215。如果主机系统215从VNF 230接收到SSH公钥消息,则SSH公钥消息可以基于方向元素被视为攻击,该分组可以被无声地丢弃,和/或事件可以被报告给管理员。附加地或备选地,由主机系统215导出到VNF 230的各种信息可以被限于网络事件和基本操作需求,并且可以不包括关于主机系统215的敏感信息。附加地或备选地,NFV平台210可以安装IP表规则以丢弃来自VNF 230的不想要的或意外的分组。以这种方式,可以改进NFV平台210和/或主机系统215的安全性。
尽管图4示出了过程400的示例框,在一些实现中,过程400可以包括与图4中描绘的那些框相比附加的框、更少的框、不同的框、或不同布置的框。附加地或备选地,过程400的框中的两个或更多个框可以被并行执行。
本文描述的一些实现可以提供通信信道和协议,用于NFV平台和VNF之间的通信以交换关于主机系统和/或其他VNF的信息。例如,本文描述的一些实现可以提供标准化消息传送系统,以将关于主机系统的物理方面的信息传达给主机系统上托管的VNF。以这种方式,可以将物理接口的状态、与主机系统相关联的参数、IP信息等从NFV平台传送到VNF,这改善了VNF的性能并且减少了与主机系统的物理方面缺乏可见性有关的问题的发生。因此,VNF性能可以被改善,而无需实现外部控制器或VNF的资源密集型监测操作。作为改善的VNF性能的结果,利用VNF或经由VNF接收服务的设备可以接收改善的性能并且避免业务黑洞或分组丢失。
前述公开提供了说明和描述,但并非旨在是穷举的或将实现限制为所公开的精确形式。鉴于上述公开,修改和变化是可能的,或者可以从实现的实践中获得修改和变化。
如本文所使用的,术语组件旨在被广义地解释为硬件、固件和/或硬件和软件的组合。
将显而易见的是,本文描述的系统和/或方法,可以以不同形式的硬件、固件、或硬件和软件的组合来实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码不是对实现的限制。因此,本文描述了系统和/或方法的操作和行为,而没有参考具体的软件代码——应当理解,软件和硬件可以被设计为基于本文的描述来实现系统和/或方法。
即使特征的特定组合被记载在权利要求中和/或被公开在说明书中,但是这些组合并不旨在限制可能的实现的公开。实际上,这些特征中的许多特征可以以未在权利要求中具体记载和/或说明书中公开的方式被组合。尽管下面列出的每个从属权利要求可以仅直接依赖于一项权利要求,但是可能的实现的公开内容包括每个从属权利要求与权利要求集合中的每个其他权利要求的组合。
本文所使用的元素、动作或指令除非明确地这样描述,否则不应被解释为是关键的或必要的。而且,如本文所使用的,冠词“一”和“一个”旨在包括一个或多个项目,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项目(例如,相关项目、不相关项目、相关项目和不相关项目的组合等),并且可以与“一个或多个”互换使用。当意图仅一个项目时,术语“一个”或类似的语言被使用。而且,如本文所使用的,术语“具有”、“有”、“含有”等旨在是开放式术语。此外,短语“基于”旨在表示“至少部分基于”,除非另有明确说明。
Claims (20)
1.一种网络功能虚拟化(NFV)平台,包括:
用于标识与所述NFV平台相关联的状况的装置,
其中所述状况影响由所述NFV平台托管或者与所述NFV平台相关联的至少一个虚拟网络功能(VNF)的操作;
用于基于所述状况来确定关于所述至少一个VNF的要提供的信息或要执行的动作的装置;以及
用于生成或发送标识所述信息和/或使得所述动作关于所述至少一个VNF而被执行的消息的装置。
2.根据权利要求1所述的NFV平台,其中所述状况与物理接口相关联,所述物理接口与所述NFV平台相关联。
3.根据权利要求2所述的NFV平台,其中所述信息指示所述物理接口的状态。
4.根据权利要求1所述的NFV平台,其中所述动作包括更新所述至少一个VNF的路由协议。
5.根据权利要求1所述的NFV平台,其中所述信息包括标识所述NFV平台的信息。
6.根据权利要求1所述的NFV平台,其中所述信息包括标识网络接口控制器的能力的信息。
7.根据权利要求1所述的NFV平台,其中所述消息经由所述NFV平台与所述至少一个VNF之间的串行接口来被发送。
8.一种方法,包括:
由网络功能虚拟化(NFV)平台标识与所述NFV平台相关联的第一信息,
其中所述第一信息与由所述NFV平台托管或者与所述NFV平台相关联的至少一个虚拟网络功能(VNF)的操作有关;
由所述NFV平台基于所述第一信息来确定关于所述至少一个VNF的要提供的第二信息或要执行的动作;以及
由NFV平台生成或提供标识所述第二信息和/或使得所述动作关于所述至少一个VNF而被执行的消息。
9.根据权利要求8所述的方法,其中所述第一信息标识与所述NFV平台相关联的物理接口的状况。
10.根据权利要求8所述的方法,其中所述消息包括消息类型字段、分组长度字段或者包括所述第二信息的至少一个类型-长度-值(TLV)字段。
11.根据权利要求8所述的方法,其中所述消息被提供给不由所述NFV平台托管的至少一个VNF。
12.根据权利要求8所述的方法,其中所述第一信息从所述至少一个VNF被接收。
13.根据权利要求8所述的方法,其中所述第二信息包括互联网协议供应信息。
14.根据权利要求8所述的方法,其中所述第二信息被包括在所述消息中的具有类型-长度-值格式的字段中。
15.一种非暂态计算机可读介质,其存储指令,所述指令包括:
一个或多个指令,所述一个或多个指令在由一个或多个处理器执行时使得所述一个或多个处理器:
标识与物理接口相关联的状况,所述物理接口与网络功能虚拟化(NFV)平台相关联,
其中所述状况影响由所述NFV平台托管或者与所述NFV平台相关联的至少一个虚拟网络功能(VNF)的操作;
基于所述状况来确定关于所述至少一个VNF的要提供的信息或要执行的动作;以及
生成或发送标识所述信息和/或使得所述动作关于所述至少一个VNF而被执行的消息。
16.根据权利要求15所述的非暂态计算机可读介质,其中所述消息与指示方向的值相关联,所述方向与所述消息相关联,
其中所述方向指示所述消息是从所述至少一个VNF被提供给所述NFV平台、还是从所述NFV平台被提供给所述至少一个VNF。
17.根据权利要求16所述的非暂态计算机可读介质,其中如果指示所述方向的所述值与所述消息的实际方向不一致,则所述至少一个VNF将丢弃所述消息。
18.根据权利要求16所述的非暂态计算机可读介质,其中所述至少一个VNF将通知管理员指示所述方向的所述值是否与所述消息的实际方向不一致。
19.根据权利要求15所述的非暂态计算机可读介质,其中所述状况由所述NFV平台的主机操作系统而被标识。
20.根据权利要求15所述的非暂态计算机可读介质,其中所述信息指示所述物理接口的状态。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/629,434 | 2017-06-21 | ||
US15/629,434 US10560525B2 (en) | 2017-06-21 | 2017-06-21 | Synchronization between virtual network functions and host systems |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109104296A true CN109104296A (zh) | 2018-12-28 |
CN109104296B CN109104296B (zh) | 2021-07-16 |
Family
ID=62635983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810541827.1A Active CN109104296B (zh) | 2017-06-21 | 2018-05-30 | 虚拟网络功能与主机系统之间的同步 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10560525B2 (zh) |
EP (1) | EP3418891A1 (zh) |
CN (1) | CN109104296B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020215455A1 (zh) * | 2019-04-24 | 2020-10-29 | 厦门网宿有限公司 | 一种基于Virtio端口传输数据的方法和系统 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10560525B2 (en) | 2017-06-21 | 2020-02-11 | Juniper Networks, Inc. | Synchronization between virtual network functions and host systems |
US11038834B2 (en) * | 2018-01-31 | 2021-06-15 | Hewlett Packard Enterprise Development Lp | Selecting an external link of a plurality of external links |
US10880370B2 (en) * | 2018-11-27 | 2020-12-29 | At&T Intellectual Property I, L.P. | Virtual network manager system |
US10992515B1 (en) * | 2019-06-10 | 2021-04-27 | Cisco Technology, Inc. | Link state tracking for virtual interfaces |
US11323287B2 (en) * | 2019-07-18 | 2022-05-03 | International Business Machines Corporation | Link layer method of configuring a bare-metal server in a virtual network |
US11663298B2 (en) * | 2019-12-11 | 2023-05-30 | At&T Intellectual Property I, L.P. | Managing enterprise software licenses for virtual network functions |
CN111611051B (zh) * | 2020-04-28 | 2022-05-31 | 上海交通大学 | 一种在nfv平台上加速数据包首次分发的方法 |
EP3937453B1 (en) * | 2020-07-09 | 2023-01-11 | Deutsche Telekom AG | Method for an improved emulation and/or interworking functionality between a first mobile communication network and a second mobile communication network, system, emulation function, program and computer program product |
US11943110B2 (en) * | 2022-05-13 | 2024-03-26 | Charter Communications Operating, Llc | Automated network generation, validation and implementation in a production environment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1623136A (zh) * | 2002-01-09 | 2005-06-01 | 思科技术公司 | 通过虚拟包封在存储区域网络内实现存储虚拟化的方法和装置 |
WO2014176105A1 (en) * | 2013-04-22 | 2014-10-30 | Cisco Technology, Inc. | App store portal providing point-and-click deployment of third-party virtualized network functions |
US20160337329A1 (en) * | 2015-05-11 | 2016-11-17 | Kapil Sood | Technologies for secure bootstrapping of virtual network functions |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10560525B2 (en) | 2017-06-21 | 2020-02-11 | Juniper Networks, Inc. | Synchronization between virtual network functions and host systems |
-
2017
- 2017-06-21 US US15/629,434 patent/US10560525B2/en active Active
-
2018
- 2018-05-30 CN CN201810541827.1A patent/CN109104296B/zh active Active
- 2018-05-30 EP EP18175123.1A patent/EP3418891A1/en active Pending
-
2019
- 2019-12-31 US US16/731,334 patent/US10992749B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1623136A (zh) * | 2002-01-09 | 2005-06-01 | 思科技术公司 | 通过虚拟包封在存储区域网络内实现存储虚拟化的方法和装置 |
WO2014176105A1 (en) * | 2013-04-22 | 2014-10-30 | Cisco Technology, Inc. | App store portal providing point-and-click deployment of third-party virtualized network functions |
US20160337329A1 (en) * | 2015-05-11 | 2016-11-17 | Kapil Sood | Technologies for secure bootstrapping of virtual network functions |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020215455A1 (zh) * | 2019-04-24 | 2020-10-29 | 厦门网宿有限公司 | 一种基于Virtio端口传输数据的方法和系统 |
US11206214B2 (en) | 2019-04-24 | 2021-12-21 | Xiamen Wangsu Co., Ltd. | Virtio port-based data transmission method and system |
Also Published As
Publication number | Publication date |
---|---|
EP3418891A1 (en) | 2018-12-26 |
US10560525B2 (en) | 2020-02-11 |
CN109104296B (zh) | 2021-07-16 |
US20200137160A1 (en) | 2020-04-30 |
US10992749B2 (en) | 2021-04-27 |
US20180375932A1 (en) | 2018-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109104296A (zh) | 虚拟网络功能与主机系统之间的同步 | |
CN111886833B (zh) | 重定向控制信道消息的方法和用于实现该方法的设备 | |
US10419319B1 (en) | Monitoring gateway systems and methods for openflow type networks | |
CN105453487B (zh) | 用于数据中心环境中的双归属部署的方法、装置及介质 | |
CN112398676B (zh) | 多租户环境中服务接入端点的基于供应商无关简档的建模 | |
US11128489B2 (en) | Maintaining data-plane connectivity between hosts | |
US20160344470A1 (en) | Automatic bandwidth adjustment on multi-fiber optics | |
CN110061912B (zh) | 仲裁虚拟节点的冗余控制平面之间的主控权 | |
TW201603531A (zh) | 全網域服務控制器 | |
US20170244625A1 (en) | Method and Device for Fault Detection | |
WO2015184771A1 (zh) | 一种业务功能链操作、管理和维护方法及节点设备 | |
US20160119183A1 (en) | System and method for master switch election | |
US11038898B2 (en) | Slow protocol packet processing method and related apparatus | |
Chaudhary et al. | A comprehensive survey on software‐defined networking for smart communities | |
CN110380966A (zh) | 一种发现转发路径的方法及其相关设备 | |
EP3673591B1 (en) | Method and apparatus for enabling active measurements in internet of things (iot) systems | |
US11088897B2 (en) | Bidirectional forwarding detection control packet to indicate maintenance mode operation | |
CN107528929A (zh) | Arp条目的处理方法及装置 | |
CN105763347B (zh) | 用于获取参数的方法、网络设备及系统 | |
US10298454B2 (en) | Communication path switching apparatus, method for controlling communication path switching apparatus, and computer program product | |
KR101802037B1 (ko) | Sdn 환경에서 서비스 기능 체이닝을 위한 oam 메시지 전송 방법 및 시스템 | |
WO2021224931A1 (en) | System and a method to efficiently exchange echo and stats messages between sdn controller and the open vswitches | |
Lin et al. | Achieving scalability in the 5G-enabled Internet of Things | |
US20240073140A1 (en) | Facilitating elasticity of a network device | |
US20230262412A1 (en) | Private sharing of location data for extended reality rendering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |