一种网络功能虚拟化场景下面向时延敏感性业务的网络转发系统和方法

文档序号:35269842发布日期:2023-08-30 12:35阅读:31来源:国知局
一种网络功能虚拟化场景下面向时延敏感性业务的网络转发系统和方法

本发明涉及通讯领域中网络转发的系统和方法,尤其为网络功能虚拟化场景下的时延敏感性业务提供低时延网络转发的系统和方法。


背景技术:

1、随着工业互联网、车联网、ar/vr人机交互等新兴场景的快速发展,网络流量服务的需求也在不断增加。因此,新兴场景对网络转发时延的要求变得越来越严格。nfv(network functions virtualization,即网络功能虚拟化)借助it业界的虚拟化技术以及it网络的灵活性、低成本、易拓展性、快速应用开发等特征为这些新兴场景的部署、管理、调整提供了更高的灵活性和可编程性。因此,这些新兴场景开始逐渐迁移到nfv环境中。面对nfv环境下的时延敏感性业务:(1)虚拟化网络功能vnf(virtual network function,即虚拟网络功能)之间的数据流量需要多次穿越虚拟化层,从而导致其间引入的时延成倍放大。(2)宏内核追求公平的设计原则,进一步加剧了新兴场景中时延问题的尖锐化。这些问题的出现均是由于目前nfv运行环境下的主流方案中存在的缺陷所致。

2、现有网络功能虚拟化场景下,nfv运行环境的主流方案是使用宏内核架构的操作系统以及将vnf部署在普通虚拟机上。在网卡方面则存在两种不同的方案,方案1:普通网卡;方案2:dpu(data processing unit,即数据处理单元)智能网卡,本文中统一简称为dpu。

3、在方案1中,当网卡接收到数据包流后,先将该数据包流存储到网卡接收缓冲区中。然后,网卡借助dma(direct memory access,即直接内存访问)通道将内部接收缓冲区中的数据包传输到宿主机中。dma传输完成后,宿主机根据控制面nfv-mano(networkfunctions virtualization management and orchestration,即网络功能虚拟化管理与编排)为该数据包确定的sfc(service function chaining,即服务功能链)更新数据包头部的目的地址,使其指向第一个服务节点(部署sfc中第一个vnf的虚拟机)。然后,宿主机在内部创建数据包处理任务、为该数据包处理任务分配优先级并将其加入到对应的优先级调度队列中。紧接着,宿主机会将该数据包转发到与其紧密集成的hypervisor(virtualmachine monitor,即虚拟机监视器),通知hypervisor有数据包需要处理。hypervisor与虚拟交换机共同协作,将数据包转发到第一个服务节点上。部署在虚拟机中的vnf应用需要宿主机分配一些物理资源(如cpu、内存等)来执行相关操作,于是该vnf应用作为进程,需要依次经过虚拟机任务调度、hypervisor调度、宿主机任务调度后,方可获得宿主机的物理资源来执行数据包处理任务。处理后的数据包根据vnf流表中匹配到的规则,更新数据包头部的目的地址,使其指向下一个服务节点。虚拟交换机则负责将数据包转发到新的服务节点上做数据包处理。只有当一个数据包经过与其绑定的sfc中所有vnf的处理后,才会由网卡转发走。宏内核是本着公平原则设计的,所以它针对的是无差别的一致性业务,本文中称之为一般业务。因此,宏内核未能考虑到时延敏感性业务的个性化需求。比如在该方案中,vnf之间的数据流量需要多次穿越hypervisor,并且每个vnf需要经过多层调度后方能执行。这些都会给时延敏感性业务的整个生命周期带来较多延迟。

4、在方案2中,网卡采用了dpu智能网卡。dpu相比传统的普通网卡不仅转发效率更高,还能实现更高的带宽和更低的功耗。dpu接收到数据包流后,会先将其存储在内部的接收缓冲区中,然后取出数据包的头部信息在dpu内部的流表中查找是否有可以匹配的规则。如果该数据包在dpu的流表中匹配到对应的规则,则数据包直接在dpu内部处理并转发。若该数据包未能在dpu的流表中匹配到对应的规则,则当数据包为所需服务不能被dpu完全支持的首报文时,只更新vnf流表;当数据包为所需服务均被dpu支持的首报文时,会更新vnf流表以及dpu流表。该数据包后续的处理流程则和方案1中对应的部分几乎相同,唯一的不同之处在于,该方案中,dpu来承担虚拟网络中交换机的角色,负责将数据包转发到指定的虚拟机中。与方案1相比,虽然dpu在一定程度上确实提高了整体数据包的转发效率,但仍存在部分数据包:(1)用于首次更新流表的首报文,(2)所需要的各种服务不能被dpu完全支持的数据包,这类数据包将依旧保持和方案1中数据包相同的处理转发流程。而且宏内核是本着公平原则设计的,它针对的是无差别的一致性业务,忽略了时延敏感性业务的个性化需求。所以在该方案中,时延敏感性业务整个生命周期中仍然存在许多不必要的延迟。

5、因此,在目前网络功能虚拟化场景下,上述nfv运行环境的两种主流方案都无法保障时延敏感性业务的低时延网络转发。出现这种现象的主要原因是,宏内核为了实现高性能、高资源效率和公平性的设计原则,将操作系统的大部分功能(如文件系统、进程管理、设备驱动等)集成到一个内核空间中。然而这种做法忽略了时延敏感性业务的个性化需求。

6、具体来说,主要存在以下几种问题:

7、1.宏内核中存在内核抢占机制、非实时调度策略、全局锁等影响时延敏感性业务及时响应的因素。这些因素会给时延敏感性业务的整个生命周期中引入不必要的调度延迟,进而导致无法在预定的截止时间内完成时延敏感性业务。

8、2.宏内核中存在资源竞争、内核复杂性、较高的上下文开销等影响时延敏感性业务确定性的因素。这意味着宏内核无法确保时延敏感性业务的延迟始终稳定在预定义的最大延迟范围内,并且为其保障足够的计算和存储资源。

9、3.宏内核的设计原则表明其主要面向的是一般业务场景,而且它在应对实时性要求方面表现不佳。因此,在时延敏感性业务与一般业务混合部署场景中,宏内核不是最佳方案。

10、4.宏内核的代码量庞大、模块间关系复杂,这些因素都会增大维护以及理解宏内核的难度。因此,难以为宏内核进行针对时延敏感性业务的定制和优化。

11、5.除此之外,用于部署vnf的普通虚拟机主要侧重于提高整体性能和最大化资源利用率,因此,这类普通虚拟机无法满足时延敏感性业务的个性化需求。


技术实现思路

1、本发明主要解决的技术问题是,现有nfv运行环境下的报文转发处理方式无法满足新兴场景中时延敏感性业务的个性化需求。原因在于,现有nfv运行环境下的报文转发处理方式,将不同类型的业务统一看作无差别的一致性业务来处理,未能针对有低时延等个性化需求的业务进行池化资源的合理分配,以保障这些业务对应的内核、虚拟机、网卡等资源能够满足其个性化需求。

2、为了解决上述问题,本发明的技术方案如下:一种网络功能虚拟化场景下面向时延敏感性业务的网络转发系统,其特征在于,所述转发系统包括

3、内核架构:同时使用微内核和宏内核。其中,微内核用于为时延敏感性业务提供最高优先级调度队列,宏内核用于为一般业务提供其他优先级调度队列;

4、hypervisor:当使用将hypervisor卸载到网卡的方案时,hypervisor分为位于宿主机中的轻量级hypervisor前端代理以及位于网卡中的hypervisor后端引擎两部分。其中,轻量级hypervisor前端代理负责与宿主机操作系统通信、将虚拟机的请求转发给hypervisor后端引擎、监控虚拟机状态,位于网卡中的hypervisor后端引擎保留了传统hypervisor的核心功能,其主要负责根据虚拟机的需求进行资源分配和调度、实现虚拟机与宿主机和其他虚拟机之间的通信、确保虚拟机之间的隔离和安全;

5、数据传输通道:只使用低延迟通道或同时使用常规通道和低延迟通道。在同时使用常规通道和低延迟通道的情况下,低延迟通道用于保障时延敏感性业务中的数据包在微内核和hypervisor之间的高速传输,常规通道用于一般业务中的数据包在宏内核和hypervisor之间的传输;

6、虚拟机资源:只使用硬实时虚拟机或同时使用普通虚拟机与硬实时虚拟机。如果需要更新智能网卡上的流表,部署在虚拟机上的vnf则会借助控制面向智能网卡发送更新流表的控制命令;

7、网卡:普通网卡或智能网卡。网卡负责将接收到的数据包传输到内核,除此之外,智能网卡还用作控制虚拟机之间数据包转发的交换机。

8、本发明的核心思想是:(1)提供一种硬实时双内核架构。在保留宏内核的前提下,引入的微内核以最高优先级响应时延敏感性业务,从而建立“微内核+宏内核”统一任务调度机制,突破虚拟化环境中传统宏内核操作系统对时延敏感性业务的响应瓶颈。这种硬实时双内核可以在同一硬件环境上实现硬实时和通用操作系统的无缝融合,从而使得该硬实时双内核可以很好的适配时延敏感性业务与一般业务混合部署场景。(2)提供一种专为时延敏感性业务设计的低延迟传输路径。该低延迟传输路径结合了dpu、微内核、低延迟通道以及硬实时虚拟机等关键组件。通过充分利用dpu的高性能计算能力和硬件加速功能、微内核的快速操作系统调度和任务切换、低延迟通道的高速数据传输以及硬实时虚拟机的严格时序控制,该低延迟传输路径能够有效减少数据包的传输延迟,进而为时延敏感性业务提供极致的网络性能和可靠性。

9、在本发明提出的硬实时增强型nfv框架中,一个数据包的处理流程如图1所示:

10、步骤1、dpu接收到数据包后,先将该数据包存储在其内部的接收缓冲区中;

11、步骤2、dpu从其内部的接收缓冲区中取出该数据包,并提取该数据包的头部信息;

12、步骤3、dpu将数据包的头部信息与dpu内部的流表做匹配,如果匹配成功则执行步骤4,否则匹配失败,执行步骤5;

13、步骤4、该数据包根据匹配到的规则中定义的动作直接在dpu内部做处理,然后执行步骤13;

14、步骤5、dpu将数据包传输到微内核;

15、步骤6、微内核先判断数据包是首报文还是后续报文,再根据控制面提供的高实时业务策略表{用户类型、app业务类型...}将数据包共细分成四类数据包。如果为时延敏感性业务首报文,执行步骤7,如果为一般业务首报文,执行步骤8,如果为时延敏感性业务后续报文,执行步骤9,如果为一般业务后续报文,执行步骤10;

16、步骤7、数据包处理任务加入最高优先级调度队列,微内核将数据包通过低延迟通道传输到部署vnf的硬实时虚拟机,更新vnf流表。如果数据包处理所需要的服务可以被dpu完全支持,则继续更新dpu流表;

17、步骤8、数据包处理任务加入宏内核的其他优先级调度队列,宏内核将数据包通过常规通道传输到部署vnf的普通虚拟机,更新vnf流表。如果数据包处理所需要的服务可以被dpu完全支持,则继续更新dpu流表;

18、步骤9、数据包处理任务加入最高优先级调度队列,微内核将数据包通过低延迟通道传输到部署vnf的硬实时虚拟机;

19、步骤10、数据包处理任务加入宏内核的其他优先级调度队列,宏内核将数据包通过常规通道传输到部署vnf的普通虚拟机;

20、步骤11、数据包在vnf应用中进行处理;

21、步骤12、处理后的数据包被传输到dpu;

22、步骤13、dpu将数据包转发出去。

23、与现有nfv运行环境下的主流方案相比,本发明提出的硬实时增强型nfv框架具有如下有益效果:

24、微内核拥有可配置且更加灵活的调度策略,而且在微内核架构中,非核心功能(如文件服务、设备驱动等)在用户空间运行,这有助于提高系统的确定性、可靠性。

25、本发明设计的一种虚拟化操作系统的“微内核+宏内核”统一任务调度机制,突破了传统宏内核操作系统实时性响应瓶颈,有能力保障时延敏感性业务的低时延网络转发。同时,可以在同一套硬件环境下实现硬实时和通用操作系统的无缝融合,有能力应对时延敏感性业务与一般业务混合部署场景的需求。

26、硬实时虚拟机能够确保时延敏感性业务在必要时可以快速响应并优先执行,避免因低优先级任务占用资源导致时延敏感性业务延迟,而且可以保证在严格的时间限制内完成时延敏感性业务。

27、低延迟通道绕过了传统数据包处理流程的高耗时环节,优化了数据包的传输和处理过程,进而显著减少数据包在处理过程中的延迟。因此,微内核通过利用低延迟通道,能够更高效地将时延敏感性业务的数据包传输到目标虚拟机中,从而满足实时性要求并降低处理延迟。

28、本发明提供的一种专为时延敏感性业务设计的低延迟传输路径,结合了dpu、微内核、低延迟通道以及硬实时虚拟机等关键组件。通过充分利用这些组件的功能和优势,该传输路径能够显著减少数据包的传输延迟,从而为时延敏感性业务提供卓越的网络性能和可靠性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1