CN115486045A - 在虚拟化网络中处理用户流量 - Google Patents
在虚拟化网络中处理用户流量 Download PDFInfo
- Publication number
- CN115486045A CN115486045A CN202180032031.3A CN202180032031A CN115486045A CN 115486045 A CN115486045 A CN 115486045A CN 202180032031 A CN202180032031 A CN 202180032031A CN 115486045 A CN115486045 A CN 115486045A
- Authority
- CN
- China
- Prior art keywords
- vnf
- user
- shared memory
- host
- function
- 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.)
- Pending
Links
- 230000004044 response Effects 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 138
- 238000000034 method Methods 0.000 claims description 86
- 238000012545 processing Methods 0.000 claims description 28
- 238000004458 analytical method Methods 0.000 claims description 4
- 230000006835 compression Effects 0.000 claims description 4
- 238000007906 compression Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 230000006855 networking Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 235000008694 Humulus lupulus Nutrition 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 241000182185 Alfalfa virus S Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Classifications
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- 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
-
- 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/12—Shortest path evaluation
- H04L45/122—Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
-
- 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/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/15—Flow control; Congestion control in relation to multipoint traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- 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/45583—Memory management, e.g. access or allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
用户流量在虚拟化网络中被处理。第一VNF和第二VNF在主机中的用户空间中的相同网络命名空间中被初始化,并且能够访问主机的共享存储器区域。第一VNF处理用户流量,并且第二VNF提供与由第一VNF处理的用户流量相关的用户平面服务。第一VNF用于在第一VNF与第二VNF之间建立点对点共享存储器接口,并用于对传入用户流量进行分类。响应于第一VNF基于分类确定传入用户流量将受到用户平面服务,第一VNF用于将传入用户流量存储在主机的共享存储器区域中以使第二VNF能够提供与传入用户流量相关的用户平面服务。
Description
技术领域
本公开涉及在虚拟化网络中处理用户流量。
背景技术
5G网络具有用于会话管理、授权、移动性、策略和计费的控制平面和用于递送用户流量的用户平面(也称为“数据平面”)。用户流量可以包括互联网协议(IP)或以太网流量,或者可以包括从用户到更广泛的互联网或另一网络的非结构性流量(例如,任意层2(L2)数据)。网络运营商可能想要扩展在用户平面上执行的处理。用户平面功能(UPF)是用户流量处理5G网络组件,其可以被扩展以提供此类用户平面处理能力。然而,这将涉及在用于请求者的UPF中的实现此类功能性的UPF供应商,其可能针对具体用例进行大量优化。在实践中,这可以限制对请求者可用的产品或功能性的选择。或者,此类处理能力可以由一个或多个服务功能(SF)来提供,这些SF与UPF分离并且UPF通过这些SF在链中路由流量。这被称为服务功能链接(SFC),用于SFC的架构在RFC 7665中被定义。
现代数据平面应用(例如,5G UPF)处理非常高带宽的用户流量并依赖最小时延。在处置此类极端级别的流量的网络中,所涉及的硬件资源(例如,中央处理单元(CPU)资源)以及使用已知方法在多个SF之间遍历(诸如在不同主机上的虚拟机(VM)之间转发)所引入的时延将是不可接受的。将SF应用于分组流的最有效方法是通过在由单个供应商提供的单个应用中处置分组来最小化对分组执行的操作的数目,诸如单个UPF被扩展以提供上述处理能力。但是,在单个供应商中处置分组,扩展的UPF可以阻止对第三方SF的使用,换言之,由UPF供应商以外的供应商提供的SF,其中在UPF自身中提供上述处理能力。
发明内容
根据第一实施例,提供了一种在虚拟化网络中处理用户流量的方法,该方法包括:
在主机中的用户空间中的彼此相同的网络命名空间中实例化第一虚拟化网络功能(VNF)和第二虚拟化网络功能,第一VNF被布置为处理用户流量,并且第二VNF被布置为提供与由第一VNF处理的用户流量相关的用户平面服务;以及
使用第一VNF来:
在第一VNF与第二VNF之间建立点对点共享存储器接口,其中第一VNF和第二VNF均能够访问主机的共享存储器区域;
对传入用户流量进行分类;以及
响应于第一VNF基于分类确定传入用户流量将涉及由第二VNF提供的用户平面服务,将传入用户流量存储在主机的共享存储器区域中以使第二VNF能够提供与传入用户流量相关的用户平面服务。
根据第二实施例,提供了一种在虚拟化网络中处理用户流量的方法,该方法包括:
在主机中的用户空间中的相同网络命名空间中实例化第一用户平面功能、第二用户平面功能、和第三用户平面功能,第一用户平面功能、第二用户平面功能、和第三用户平面功能能够访问主机的共享存储器区域;
在第一用户平面功能与第二用户平面功能之间建立第一点对点共享存储器接口;
在第一用户平面功能与第三用户平面功能之间建立第二点对点共享存储器接口;
使用第一用户平面功能向第二用户平面功能发送与共享存储器区域中的用户流量相关的第一控制数据;以及
使用第一用户平面功能向第三用户平面功能发送与共享存储器区域中的用户流量相关的第二控制数据。
根据第三实施例,提供了一种在虚拟化网络中处理用户流量的方法,该方法包括:
在主机中的彼此相同的网络命名空间中实例化UPF和至少一个另外的网络功能,UPF和至少一个另外的网络功能均能够访问主机的共享存储器区域;以及
使用UPF来:
与至少一个另外的网络功能建立至少一个virtio接口;
处理接收到的用户流量;
将经处理的、接收到的用户流量存储在主机的共享存储器区域中;以及
向至少一个另外的网络功能发送与接收到的用户流量相关联的控制数据,
其中至少一个另外的网络功能包括SF功能性和/或MEC功能性。
根据第四实施例,提供了一种虚拟化网络,该虚拟化网络被布置为执行根据第一至第三实施例中的任一实施例的方法。
根据第五实施例,提供了一种非瞬态计算机可读介质,包括计算机可读指令,该计算机可读指令用于使处理虚拟化网络中的用户流量的方法被执行,该方法根据第一至第三实施例中的任一实施例。
进一步的特征和优点将从以下描述中变得明显,这些描述仅作为示例给出,并参考了附图。
附图说明
图1示出了表示网络的示例的示意框图;
图2示出了表示主机的示例的示意框图;
图3示出了表示主机的另一示例的示意框图;
图4示出了表示主机的另一示例的示意框图;以及
图5示出了表示在虚拟化网络中处理用户流量的方法的示例的序列图。
具体实施方式
参考图1,其中示出了具有SFC架构的网络100的示例。
UPF 105从接入网络110接收传入分组并向服务功能分类器(SFC)115递送接收到的传入分组。SFC 115对传入分组进行分类。根据RFC 7665,执行此类分类可以涉及相对一组网络服务功能的后续应用的策略(其可以是客户特定、网络特定、或服务特定的)本地实例化地匹配流量流。
由SFC 115标识为用于SFC处理的分组被封装并使用服务功能转发器(SFF)120被转发。SFF 120负责使用封装中的信息向SF 1251、SF 1252、SF 125N的链转发分组。SFF 120可以跨SF 1251、SF 1252、SF 125N中的一些或全部对用户流量进行负载均衡。分组在隧道上被转发到SF 1251、SF 1252、SF 125N中的每一个,SF 1251、SF 1252、SF 125N将被依次调用。
然后分组被递送到路由器130以进一步传输到数据网络135。
UPF 105从数据网络135接收的流量也可以涉及相同或相似的服务功能处理。
SFF 120通常是与UPF 105和SF 1251、SF 1252、SF 125N分离的网络功能。SFF 120和SF 1251、SF 1252、SF 125N之间的传输是使用常规重叠网络实现的。实际上,这类似于基本的L2转发,也就是以太网转发。在这方面,SF 1251、SF 1252、SF 125N中的每一个都是穿过SFC的分组的路径上的单独的跃点。实现足够带宽所涉及的硬件资源是显著的,并且由具有多个SF 1251、SF 1252、SF 125N带来的时延对于诸如边缘云网络或本文所述的高带宽数据平面应用之类的任何低时延系统都是显著的。
一种可用的技术是快速用户空间网络化,其中相当大的优化被应用于网络应用以增加吞吐量并减少时延。这种优化的一个主要来源是移除处置分组的内核空间网络协议,而不是使用高度优化的用户空间实现。通常,数据平面开发套件(DPDK)用于这种快速网络化。DPDK为许多不同类型的接口提供支持。一类接口使用共享存储器的区域作为用于分组的传输。使用该接口的应用在具体接口上(可以被称为“控制接口”、“通信信道”、“控制平面”或“控制信道”)递送控制消息,并将分组写入和/或写出共享存储器的区域。这提供了比串行到线和/或从线上串行,或使用内核支持的接口明显更快的分组处置能力。
参考图2,其中示出了主机200的示例。
在主机200上创建虚拟交换机(vSwitch或v交换机)205。vSwitch是网络功能虚拟化基础设施(NFVI)组件,用于在例如容器或VM等不同访客之间提供连接性。第一访客2101和第二访客2102在主机200上被实例化。在该示例中,第一访客2101和第二访客2102是第一容器2101和第二容器2102的形式。每个访客2101、2102在实例化时被连接到v交换机205。v交换机205可以支持向访客2101、2102提供各种接口类型。在该示例中,接口类型为内核虚拟机(KVM)virtio。Virtio是专门针对虚拟化的网络化驱动程序的标准。使用virtio接口的访客2101、2102知晓其正在虚拟环境中运行并与支持virtio接口的管理程序合作。支持virtio接口的管理程序技术称为“vhost(v主机)”或“vhost-net(v主机-网络)”。v主机协议定义管理程序如何与访客2101、2102通信以管理它们之间的共享存储器接口。
在该示例中,v交换机205是加速vSwitch(AVS),诸如Open-vSwitch-DPDK或矢量分组处理器(VPP)。AVS 205实现了v主机-用户技术。这是KVM vhost协议的完全用户空间实现,其允许AVS 205向用户空间内的访客2101、2102提供virtio接口。访客2101、2102然后可以与AVS 205交互,就好像AVS 205是KVM管理程序一样。尽管最初目标在于VM,但AVS已经扩展到容器,其中AVS在主机上运行,Kubernetes容器网络化接口(CNI)插件用于管理AVS与容器之间的连接,将virtio接口插入合适的荚(Pod)或容器的网络命名空间中。然而,使用AVS的虚拟化网络化仍然会导致从一个客户转换到另一客户的分组处置成本。分组有两个跃点;从源访客到AVS,然后从AVS到目标访客。这导致时间和处理损失,尽管具有可以在连接到AVS的任何访客之间转发分组的额外灵活性。
因此,在此示例中,AVS 205用于共置在相同主机200上的容器2101、2102之间提供加速的容器间网络化。
参考图3,其中示出了主机300的示例。在此示例中,通过使用v交换机来提供加速的容器网络化设置。
在此示例中,UPF 305、SF 310和移动边缘计算(MEC)工作负载315在主机300上的用户空间中被实例化。MEC工作负载315可以提供各种用户平面服务,诸如分析、边缘视频缓存等等。还创建了AVS 320。在此示例中,接收某些SF处置的用户平面分组遍历以下节点:入口单根输入/输出虚拟化(SR-IOV)网络接口控制器(NIC)325、UPF 305、AVS 320、SF 310、AVS 302、UPF 305、以及出口SR-IOV NIC 330。这样,有四个跃点用于用户平面分组从UPF305经由AVS 320遍历至SF 310并返回。在该示例中,第一,入口SR-IOV NIC 325表示到接入网络(110;图1)的连接,并且第二,出口SR-IOV NIC 330表示到路由器和/或数据网络(130、135;图1)的连接。
在此示例中,尽管AVS 320具有与UPF 305、SF 310、和MEC工作负载315的相应共享存储器接口,但是每个共享存储器接口使用不同的相应共享存储器。例如,尽管UPF 305和AVS 320能够访问主机300的共享存储器区域,但是AVS 320和SF 310能够访问主机300的共享存储器区域不同。因此,为了让用户流量从UPF 305遍历到AVS 320,然后从AVS 320遍历到SF 310,用户流量需要从由UPF 305和AVS 320使用的第一共享存储器区域复制到由AVS320和SF 310使用的不同的第二共享存储器区域。
参考图4,其中示出了主机400的示例。在此示例中,使用点对点共享存储器接口来提供加速网络化。
共享存储器使得一旦数据被写入,就能够由多个读取器(例如,访客)访问。这提供了一种快速可靠的信息递送方式,因为信息本身不必被发送;而是将能够访问信息的存储器位置作为控制数据发送,例如作为一天开始(Start-of-day)设置的一部分。共享存储器存在于程序中,其中可以用这种方式在程序周围传输特定数据。
在该示例中,共享存储器应用于虚拟网络。例如,一个容器向存储器写入数据,而另一容器读取该存储器。共享存储器仅适用于彼此位于相同主机上的访客,因为它们二者都访问的存储器是与访问程序共置的共享物理资源。此外,两个进程之间存在一定程度的协作,以及相互通信以管理对共享存储器区域的访问,以防止存储器安全问题,诸如写入冲突、撕裂读取等等。
在该示例中,与来自单个供应商的、封装SF功能的UPF产品不同,UPF可以调用的所有SF都被部署在相同主机上的容器中,并使用基于共享存储器的转发技术。这种技术可以很容易地与第三方SF集成,例如,这些SF可能具有针对特定用户平面服务的高度优化的功能性。更具体地说,该示例可以使用v主机-用户接口实现快速SFC。
通过在相同主机上的一对容器之间直接使用点对点共享存储器接口,可以最小化两个SF之间的时延和分组处置开销。由于virtio在现有虚拟化中的普遍存在,通过使用v主机-用户/virtio作为共享存储器接口,在与第三方SF接口连接时,集成开销可以忽略不计。
源应用程序(在本示例中为5G UPF)和目标SF在彼此相同的网络命名空间中被实例化,在本示例中,它们彼此位于相同的Kubernetes荚中。在相同网络命名空间中实例化源应用程序和目标SF提供了工作负载隔离。UPF包括对v主机-用户的支持。在与目标SF通信之前(例如,在一天开始时),UPF初始化v主机-用户驱动程序,从而在目标SF的网络命名空间中创建virtio接口。然后目标SF可以绑定到virtio接口,就像在常规加速VM/容器网络化下一样。但是,目标SF绑定的是UPF的virtio接口,而不是v交换机的virtio接口。
点对点共享存储器接口的使用涉及对编排的仔细考虑。目标SF与UPF的生命周期相关联,并与UPF共享相同的主机和网络命名空间。鉴于在共享存储器的情况下关于编排的限制和考虑,如本示例中所使用的,本示例对于极低时延和高带宽分组处置的具体用例特别有效并以此为目标,其中每个SF之间到v交换机的额外跃点的开销明显不利于整个系统的性能。这种场景的一个特定示例是放置在移动网络与互联网之间的分组流路径中的用户平面SF。另一特定示例是将分组流卸载到移动边缘计算(MEC)应用。
现在回到图4,在主机400上实例化UPF 405、SF 410、和MEC工作负载415。UPF 405本身实现了点对点共享存储器接口,在此示例中它是v主机-用户/virtio接口。这与将v交换机实现到网络中并与v交换机接口连接形成对比。由于UPF 405实现了类似v交换机的接口(在本示例中为v主机-用户/virtio点对点接口),并且由于SF(诸如SF 410)可以与v交换机交互,因此UPF 405可以与SF互操作同时受益于v交换机接口的预期速度。然而,将理解UPF 405不是v交换机,如上所述,它是NFVI组件。
在该示例中,通过使用点对点共享存储器技术,接收某些SF处置的用户平面分组遍历以下节点:入口SR-IOV NIC 420、UPF 405、SF 410、UPF 405、和出口SR-IOV NIC 425。因此,与上面参考图3描述的示例主机300中的四个跃点相比,只有两个跃点用于用户平面分组从UPF 405遍历至到SF 410并返回。此外,由于UPF 405和SF 410使用共享存储器接口,当用户流量从UPF 405遍历到SF 410并返回时,用户流量无需从一个存储器区域被复制到另一存储器区域。相反,在上面参考图3描述的示例主机300中,用户流量在不同的存储器区域之间被复制。
更详细地说,SR-IOV NIC物理功能(PF)可以将NIC硬件表示为外围组件互连快速(PCI-e)设备。这可以分为多个虚拟功能(VF),每个虚拟功能都可以具有单独的PCI-e配置空间,并且可以由NIC上的共享硬件资源支持。VF可以提供给访客;在本示例中为UPF 405。在启动时,UPF 405(在本示例中为DPDK应用程序)可以初始化存储器的较大、连续的部分(在本示例中为HugePage)。当绑定VF时,UPF 405可以将HugePage存储器的一部分提供给VF驱动程序。这部分存储器可以被初始化为接收(RX)队列和传输(TX)队列。UPF 405和VF都可以访问存储器以从RX和TX队列中读取和写入分组。
当在SR-IOV NIC(例如,入口SR-IOV NIC 420)上接收到分组时,可以将分组存储在NIC上的硬件队列中。在确定分组的目的地是哪个VF之后,NIC可以使用直接存储器访问(DMA)来将分组写入此前由UPF 405初始化的该共享RX队列中。
在UPF 405的情况下,在由UPF 405执行的处理循环期间,DPDK轮询模式驱动程序可以轮询VF以查看RX队列中是否有任何数据可用。如果有,DPDK可以为每个接收到的分组填充分组缓冲区数据结构,其可能包含分组元数据(诸如分组长度)和指向VF写入分组的RX队列中的位置的指针。
在此阶段,NIC可能只将分组从其硬件直接写入可以由UPF 405访问的存储器中。
此时,UPF 405可以将分组分类为无需SFC。在这种情况下,UPF 405可以就地对分组进行操作并准备发送分组。这可能涉及将分组从分配给入口VF的RX队列复制到分配给出口VF的TX队列。UPF 405然后可以向出口VF通知其TX队列中的分组已准备好用于传输,并且VF可以使用DMA将该分组读入其硬件以用于传输。
或者,UPF 405可以将分组分类为需要SFC。在这种情况下,UPF 405可以对分组执行操作,将分组复制到v主机-用户驱动程序拥有的共享存储器区域中,并经由v主机/virtio控制信道向SF 410通知分组可用于由SF 410处理。在SF 410中的共同必要处理之后,UPF 405的v主机-用户驱动程序可以轮询或被通知来自SF 410的传入分组。如上所述,在准备发送分组之前,UPF 405然后可以就地对分组应用进一步的操作。
分组可以在初始DMA写入RX队列和DPDK应用(在本示例中为UPF 405)处置数据分组之间的中间阶段被复制。例如,在非SFC的情况下,分组不是使用DMA从入口VF去往RX队列,然后使用DMA从TX队列到出口VF,分组是使用DMA从入口VF去往RX队列,然后到中间处理缓冲区,然后从中间处理缓冲区到TX队列,然后使用DMA从TX队列到出口VF。在使用v主机-用户驱动程序时,当要应用SFC时可以使用类似的中间处理缓冲区。
与诸如上面参考图2和图3所描述的现有SFF架构相比,图4所示的架构允许显着减少SF之间的时延和分组处置开销。在一个访客(本示例中的UPF 405)与其(多个)对等端(本示例中的SF410和MEC工作负载415)之间的切换中没有复制操作,因为它们都共享相同的存储器区域。这允许通过减少复制操作的时间和计算成本来最小化时延操作,从而允许在主机400中执行的流量处理尽可能接近仅接触每个分组一次的理想状态。在这方面,更少的解包数据分组导致CPU周期数的减少,从而导致减少的硬件资源使用。通过使用v主机-用户技术,集成第三方SF并不比现有的SF部署复杂,除了如上所述的编排中的额外复杂性。对等访客(本示例中的SF 410和MEC工作负载415)被提供有virtio接口,这些接口很好地支持快速VNF。因此,使用这种网络化技术可能无需对传统SF进行增强。
节点400由此可以用于处理虚拟化网络中的用户流量。UPF405和至少一个另外的网络功能(在本示例中,SF 410和MEC工作负载415两者)在主机400中彼此相同的网络命名空间中被实例化。UPF 405和至少一个另外的网络功能两者都能够访问主机400的共享存储器区域。UPF 405用于:与至少一个另外的网络功能建立至少一个virtio接口;处理接收到的用户流量;将经处理的、接收的用户流量存储在主机400的共享存储器区域中;以及向至少一个另外的网络功能发送与接收到的用户流量相关联的控制数据。
参考图5,示出了在虚拟化网络中处理用户流量的示例方法。
在项目S5a,第一VNF500在主机中的用户空间中被实例化。第一VNF 500被布置为处理用户流量。第一VNF 500可以包括UPF功能性并且可以对应于上面参考图4描述的UPF405。
在项目S5b,第一VNF 500初始化两个virtio-用户驱动程序。
在项目S5c,第二VNF 505在主机中的用户空间中被实例化。第二VNF 505被布置为提供与由第一VNF处理的用户流量相关的用户平面服务(诸如用户流量分析服务、视频压缩服务、内容管制服务等)。第二VNF可以包括SF或MEC功能性并且可以对应于上面参考图4描述的SF 410或MEC 415。第一VNF 500和第二VNF 505在主机中的用户空间中的彼此相同的网络命名空间中被实例化。在实例化时,第二VNF绑定到由第二VNF 505的网络命名空间中的第一VNF 500创建的virtio接口。
在项目S5d,第一VNF 500用于在第一VNF 500与第二VNF 505之间建立点对点共享存储器接口,在此示例中是virtio接口。第一VNF 500和第二VNF 505都能够访问主机的共享存储器区域。
在项目S5e,第三VNF 510在主机中的用户空间中被实例化。第三VNF 510在与主机中的用户空间中的第一VNF 500和第二VNF 505相同的网络命名空间中被实例化。在实例化时,第三VNF 310绑定到由第三VNF 510的网络命名空间中的第一VNF 500创建的virtio接口。第三VNF 510可以包括MEC功能性。或者,第三VNF 510可以包括SF功能性。第二VNF 505和第三VNF 510因此可以被包括在服务功能链(SFC)中。
在项目S5f,在第一VNF 500与第三VNF 510之间建立另一点对点共享存储器接口,其在此示例中是virtio接口。
在项目S5g,第一VNF 500用于对传入用户流量进行分类。在这方面,第一VNF 500可以包括服务功能分类器(SFC)功能性。如上文参考图4所述,第一VNF 500可能已经接收到传入用户流量。用户流量可以包括视频流量。视频流量可能具有相对高的带宽。因此,视频流量的低时延处置可能特别有效。
在项目S5h,响应于第一VNF 500基于分类而确定传入用户流量将涉及第二VNF505提供的用户平面服务,第一VNF 500经由点对点共享存储器接口发送传入用户流量,并使第二VNF 505能够提供与传入用户流量相关的用户平面服务。在这方面,第一VNF 500可以将传入用户流量放置到共享存储器的区域中并且经由第一VNF 500与第二VNF 505之间的控制信道将控制数据递送至第二VNF 505以向第二VNF 505通知传入用户流量的存在。这使得第二VNF 505能够访问传入用户流量并提供与其相关的用户位置服务。在点对点共享存储器接口包括v主机-用户/virtio接口的情况下,控制数据可以经由Unix套接字被递送。这与v主机-网络(vhost-net)内核驱动程序不同,其可以使用ioctl接口实现控制信道。在项目S5i,第二VNF 505从共享存储器中传入用户流量的存在推断出第二VNF 505应将其用户平面服务应用于传入用户流量,并提供与传入用户流量相关的用户平面服务,传入用户流量位于共享存储器区域。
在项目S5j,第二VNF 505向第一VNF 500发送控制数据,该控制数据与在项目S5i处与传入用户流量相关的用户平面服务的提供有关。例如,项目S5j的控制数据可以指示第二VNF 505已经完成与传入用户流量相关的用户平面服务的提供。
在项目S5j,第一VNF 500向第三VNF 510发送另外的控制数据。这可以向第三VNF510通知传入用户流量的存在。
在该示例中,使用单个Kubernetes荚中的多个容器来实例化第一VNF 500、第二VNF 505、和第三VNF 510。
如上面所解释的,第一VNF 500可以包括服务功能分类器(SFC)功能性。
在使用单个Kubernetes荚中的多个容器来实例化第一VNF 500、第二VNF 505、和第三VNF 510的示例中,第一VNF 500可以不包括SFF功能性。这是因为在第一VNF 500、第二VNF 505、和第三VNF 510在彼此相同的Kubernetes荚中实现的情况下,可能不需要通常由SFF执行的封装。在第一VNF 500不包括SFF功能性的情况下,SFF功能性仍然可以在虚拟化网络的其他地方被提供。在其他示例中,第一VNF 500可以包括SFF功能性,例如,其中第一VNF 500可以调用Kubernetes荚外部的VNF(使得封装可以被执行),和/或其中第二VNF 505和/或第三VNF 510是SFC感知的,并且可以解封被封装的用户流量。
在示例中,第一VNF 500包括路由器功能性。
在该示例中,在项目S5a、S5c和S5e,第一用户平面功能500、第二用户平面功能505、和第三用户平面功能510在主机中的用户空间中彼此相同的网络命名空间中被实例化,并且能够访问主机的共享存储器区域。在项目S5d,第一点对点共享存储器接口在第一用户平面功能500与第二用户平面功能505之间被建立,并且在项目S5f,第二点对点共享存储器接口在第一用户平面功能500与第三用户平面功能510之间被建立。在项目S5h,第一用户平面功能500用于向第二用户平面功能505发送与共享存储器区域中的用户流量相关的第一控制数据。第一用户平面功能500还用于在项目S5k向第三用户平面功能510发送与共享存储器区域中的用户流量相关的第二控制数据。
在该示例中,在项目S5b,第一VNF 500初始化两个virtio-用户驱动程序。但是,在其他示例中,两个virtio-用户驱动程序可以在不同时间被实例化。
上述实施例应理解为说明性示例。进一步的实施例被设想。
上面参考图4描述的示例主机400具有单个SF 410。然而,UPF 405可以提供具有多个SF的点对点共享存储器接口,充当小型服务功能链(SFC)的SFF。在某些情况下,针对给定的分组,仅调用服务功能链(SFC)中的所有SF的子集(例如,仅服务功能链(SFC)中的一个SF),并且针对不同的分组可以基于例如基于分组的分类做出的确定而调用不同的SF。
描述的示例将virtio用于点对点共享存储器接口。Memif是virtio的替代基于共享存储器的接口,并且可以为点对点容器通信提供相当的性能。对于memif,两个接口都需要memif驱动程序以使用这样的接口。支持此驱动程序或可以快速集成它的第三方SF因此可以使用memif而不是virtio。由于DPDK提供memif驱动程序,使用DPDK(这是很可能的)的第三方SF具有memif驱动程序。这可以使memif成为virtio的替代品。但是,相比virtio,memif可能更少被一些虚拟化平台暴露。
作为上述布置的替代方案,每个访客可以绑定到主机上的SR-IOV VF。如果这些VF中的每个VF都与NIC上的相同物理功能相关联,则可以在客户之间提供快速路径。这将提供与v交换机类似的功能,只是使用NIC物理功能代替v交换机本身。然而,当将分组从一个访客转发到另一访客时,分组将至少从一个VF的存储器区域被复制到另一VF的存储器区域。因此,这将导致超过上述布置的点对点共享存储器的时延和计算开销。
上述布置和技术原则上可以应用于需要在它们之间以最短时间调用一系列函数的任何网络,并且它将受益于其不与单个开发人员绑定。
应当理解,关于任一实施例描述的任何特征可以被单独使用,或者与描述的其他特征结合使用,也可以与任何其他实施例的一个或多个特征组合使用,或者任何其他实施例的任意组合使用。此外,在不脱离本发明的范围的情况下,也可以采用以上未描述的等同物和修改,本发明的范围由所附权利要求限定。
本文呈现的公开内容还包含以下条款中提出的主题:
条款1:一种在虚拟化网络中处理用户流量的方法,该方法包括:在主机中的用户空间中的彼此相同的网络命名空间中实例化第一虚拟化网络功能(VNF)和第二虚拟化网络功能,第一VNF被布置为处理用户流量,并且第二VNF被布置为提供与由第一VNF处理的用户流量相关的用户平面服务;以及
使用第一VNF来:
在第一VNF与第二VNF之间建立点对点共享存储器接口,
其中第一VNF和第二VNF均能够访问主机的共享存储器区域;对传入用户流量进行分类;以及
响应于第一VNF基于分类确定传入用户流量将涉及由第二VNF提供的用户平面服务,将传入用户流量存储在主机的共享存储器区域中以使第二VNF能够提供与传入用户流量相关的用户平面服务。
条款2:根据条款1所述的方法,其中第一VNF包括用户平面功能(UPP)功能性。
条款3:根据条款1至2中任一项所述的方法,其中第一VNF包括服务功能分类器(SFC)功能性。
条款4:根据条款1至3中任一项所述的方法,其中第二VNF包括服务功能(SF)功能性。
条款5:根据条款1至4中任一项所述的方法,其中用户平面服务包括用户流量分析服务。
条款6:根据条款1至5中任一项所述的方法,其中用户平面服务包括视频压缩服务。
条款7:根据条款1至6中任一项所述的方法,其中用户平面服务包括内容管制服务。
条款8:根据条款1至7中任一项所述的方法,其中第二VNF包括移动边缘计算(MEC)功能性。
条款9:根据条款1至8中任一项所述的方法,其中点对点共享存储器接口包括virtio接口。
条款10:根据条款1至9中任一项所述的方法,包括使用第一VNF来初始化virtio-用户驱动程序以在第二VNF的网络命名空间中创建virtio接口。
条款11:根据条款1至10中任一项所述的方法,其中由第一VNF对virtio-用户驱动程序的初始化在第二VNF的实例化之前。
条款12:根据条款1至11中任一项所述的方法,其中第二VNF绑定到virtio接口。
条款13:根据条款1至12中任一项所述的方法,包括:
在主机的用户空间中的网络命名空间中实例化第三VNF,第三VNF能够访问主机的共享存储器区域;以及
在第一VNF与所述第三VNF之间建立另一点对点共享存储器接口。
条款14:根据条款1至13中任一项所述的方法,其中第三VNF包括服务功能(SF)功能性。
条款15:根据条款1至14中任一项所述的方法,其中第二VNF和第三VNF被包括在服务功能链(SFC)中。
条款16:根据条款1至15中任一项所述的方法,其中第三VNF包括移动边缘计算(MEC)功能性。
条款17:根据条款1至16中任一项所述的方法,其中VNP使用单个Kubernetes荚中的多个容器来实例化。
条款18:根据条款1至17中任一项所述的方法,其中用户流量包括视频流量。
条款19:根据条款1至18中任一项所述的方法,包括使用第一VNF向第二VNF发送控制数据以向第二VNF通知主机的共享存储器区域中的传入用户流量。
条款20:根据条款1至19中任一项所述的方法,其中控制数据在Unix套接字上被发送。
条款21:一种在虚拟化网络中处理用户流量的方法,该方法包括:在主机中的用户空间中的彼此相同的网络命名空间中实例化第一用户平面功能、第二用户平面功能、和第三用户平面功能,第一用户平面功能、第二用户平面功能、和第三用户平面功均能够访问主机的共享存储器区域;
在第一用户平面功能与第二用户平面功能之间建立第一点对点共享存储器接口;
在第一用户平面功能与第三用户平面功能之间建立第二点对点共享存储器接口;
使用第一用户平面功能向第二用户平面功能发送与共享存储器区域中的用户流量相关的第一控制数据;以及
使用第一用户平面功能向第三用户平面功能传输与共享存储器区域中的用户流量相关的第二控制数据。
条款22:一种在虚拟化网络中处理用户流量的方法,该方法包括:在主机中的彼此相同的网络命名空间中实例化UPP和至少一个另外的网络功能,UPP和至少一个另外的网络功能均能够访问主机的共享存储器区域;以及
使用UPP来:
与至少一个另外的网络功能建立至少一个virtio接口;
处理接收到的用户流量;
将经处理的、接收到的用户流量存储在主机的共享存储器区域中;以及
向至少一个另外的网络功能发送与接收到用户流量相关联的控制数据,
其中至少一个另外的网络功能包括SF功能性和/或MEC功能性。
条款23:一种虚拟化网络,被布置为执行根据条款1至22中任一项所述的方法。
条款24:一种非瞬态计算机可读介质,包括计算机可读指令,该计算机可读指令用于使虚拟化网络中处理用户流量的方法被执行,该方法根据条款1至22中的任一项。
本文呈现的公开内容还包括以下附加条款中提出的主题:
条款1:一种在虚拟化网络中处理用户平面流量的方法,该虚拟化网络在虚拟化网络的主机中的用户空间中的相同网络命名空间中实例化第一虚拟化网络功能(VNF)和第二虚拟化网络功能,第一VNF被布置为处理和分类用户数据分组以及相对一个或多个网络服务功能向用户数据分组的后续应用的策略来匹配流,并且第二VNF被布置为提供用户平面服务,该用户平面服务实现与由第一VNF处理的数据分组相关的一个或多个网络服务功能;该方法包括:
由第一VNF在第一VNF与第二VNF之间建立点对点共享存储器接口,其中第一VNF和第二VNF能够访问主机的共享存储器区域;
由第一VNF对第一用户数据分组进行分类;
响应于第一VNF基于分类而确定第一用户数据分组将涉及由第二VNF提供的用户平面服务,将传入用户数据分组存储在主机的共享存储器区域中;以及
使第二VNF提供与传入用户流量相关的用户平面服务,其中第二VNF被允许访问存储在共享存储器区域中的第一用户数据分组以执行用户平面服务。
条款2:根据条款1所述的方法,其中第一VNF包括以下之一:用户平面功能(UPF)功能性或服务功能分类器(SFC)功能性。
条款3:根据条款1至2中任一项所述的方法,其中第二VNF包括以下之一:服务功能(SF)功能性或移动边缘计算(MEC)功能性。
条款4:根据条款1至3中任一项所述的方法,其中用户平面服务包括以下之一:用户流量分析服务、视频压缩服务、或内容管制服务。
条款5:根据条款1至4中任一项所述的方法,其中点对点共享存储器接口包括virtio接口。
条款6:根据条款1至5中任一项所述的方法,还包括使用第一VNF来初始化virtio-用户驱动程序以在第二VNF的网络命名空间中创建virtio接口。
条款7:根据条款1至6中任一项所述的方法,其中由第一VNF对virtio-用户驱动程序的初始化在第二VNF的实例化之前。
条款8:根据条款1至7中任一项所述的方法,其中第二VNF绑定到virtio接口。
条款9:根据条款1至8中任一项所述的方法,还包括:
在主机的用户空间中的网络命名空间中实例化第三VNF,第三VNF能够访问主机的共享存储器区域;以及
在第一VNF与第三VNF之间建立另一点对点共享存储器接口。条款10:根据条款1至9中任一项所述的方法,其中第三VNF包括服务功能(SF)功能性。
条款11:根据条款1至10中任一项所述的方法,其中第二VNF和第三VNF被包括在服务功能链(SFC)中。
条款12:根据条款1至11中任一项所述的方法,其中第三VNF包括移动边缘计算(MEC)功能性。
条款13:根据条款1至12中任一项所述的方法,其中使用单个Kubernetes荚中的多个容器来实例化VNF。
条款14:根据条款1至13中任一项所述的方法,其中用户流量包括视频流量。
条款15:根据条款1至14中任一项所述的方法,还包括使用第一VNF向第二VNF发送控制数据以向第二VNF通知主机的共享存储器区域中的传入用户流量。
条款16:根据条款1至15中任一项所述的方法,其中控制数据在Unix套接字上被发送。
第17条:一种用于处理虚拟化网络中的用户流量的系统,该系统包括:
至少一个处理器;以及
至少一个存储器,存储计算机可执行指令,当计算机可执行指令在由至少一个处理器执行时,使该系统执行包括以下的操作:
在主机中的用户空间中的相同网络命名空间中实例化第一用户平面功能、第二用户平面功能、和第三用户平面功能,第一用户平面功能、第二用户平面功能、和第三用户平面功能能够访问主机的共享存储器区域;
在第一用户平面功能与第二用户平面功能之间建立第一点对点共享存储器接口;
在第一用户平面功能与第三用户平面功能之间建立第二点对点共享存储器接口;
使用第一用户平面功能向第二用户平面功能发送与共享存储器区域中的用户流量相关的第一控制数据;以及
使用第一用户平面功能向第三用户平面功能发送与共享存储器区域中的用户流量相关的第二控制数据。
条款18:根据条款17所述的方法,其中第三用户平面功能包括服务功能(SF)功能性。
条款19:根据条款1至18中任一项所述的方法,其中第三用户平面功能包括移动边缘计算(MEC)功能性。
条款20:一种在5G网络中处理用户流量的方法,该方法包括:
在5G网络的主机中的相同网络命名空间中实例化UPF和至少一个网络功能,UPF和至少一个网络功能能够访问主机的共享存储器区域;
利用至少一个网络功能建立至少一个virtio接口;
处理接收到的用户流量;
将经处理的用户流量存储在主机的共享存储器区域中;以及
向至少一个另外的网络功能发送与接收到的用户流量相关联的控制数据,
其中该至少一个网络功能包括SF功能性或MEC功能性。
Claims (15)
1.一种在虚拟化网络中处理用户平面流量的方法,所述虚拟化网络在所述虚拟化网络的主机中的用户空间中的相同网络命名空间中实例化第一虚拟化网络功能(VNF)和第二虚拟化网络功能,所述第一VNF被布置为处理和分类用户数据分组以及相对一个或多个网络服务功能向所述用户数据分组的后续应用的策略来匹配流,并且所述第二VNF被布置为提供用户平面服务,所述用户平面服务实现与由所述第一VNF处理的所述数据分组相关的所述一个或多个网络服务功能,所述方法包括:
由所述第一VNF在所述第一VNF与所述第二VNF之间建立点对点共享存储器接口,其中所述第一VNF和所述第二VNF能够访问所述主机的共享存储器区域;
由所述第一VNF对第一用户数据分组进行分类;
响应于所述第一VNF基于所述分类而确定所述第一用户数据分组将涉及由所述第二VNF提供的所述用户平面服务,将所述传入用户数据分组存储在所述主机的所述共享存储器区域中;以及
使所述第二VNF提供与所述传入用户流量相关的所述用户平面服务,其中所述第二VNF被允许访问存储在所述共享存储器区域中的所述第一用户数据分组以执行所述用户平面服务。
2.根据权利要求1所述的方法,其中所述第一VNF包括以下之一:用户平面功能(UPF)功能性或服务功能分类器(SFC)功能性。
3.根据权利要求1所述的方法,其中所述第二VNF包括以下之一:服务功能(SF)功能性或移动边缘计算(MEC)功能性。
4.根据权利要求1所述的方法,其中所述用户平面服务包括以下之一:用户流量分析服务、视频压缩服务、或内容管制服务。
5.根据权利要求1所述的方法,其中所述点对点共享存储器接口包括virtio接口。
6.根据权利要求1所述的方法,还包括使用所述第一VNF来初始化virtio-用户驱动程序以在所述第二VNF的所述网络命名空间中创建virtio接口。
7.根据权利要求6所述的方法,其中由所述第一VNF对所述virtio-用户驱动程序的所述初始化在所述第二VNF的所述实例化之前。
8.根据权利要求7所述的方法,其中所述第二VNF绑定到所述virtio接口。
9.根据权利要求1所述的方法,还包括:
在所述主机的用户空间中的所述网络命名空间中实例化第三VNF,所述第三VNF能够访问所述主机的所述共享存储器区域;以及
在所述第一VNF与所述第三VNF之间建立另一点对点共享存储器接口。
10.根据权利要求9所述的方法,其中所述第三VNF包括服务功能(SF)功能性。
11.根据权利要求9所述的方法,其中所述第二VNF和所述第三VNF被包括在服务功能链(SFC)中。
12.根据权利要求9所述的方法,其中所述第三VNF包括移动边缘计算(MEC)功能性。
13.根据权利要求1所述的方法,还包括使用所述第一VNF向所述第二VNF发送控制数据以向所述第二VNF通知所述主机的所述共享存储器区域中的所述传入用户流量。
14.一种用于在虚拟化网络中处理用户流量的系统,所述系统包括:
至少一个处理器;以及
至少一个存储器,存储计算机可执行指令,当所述计算机可执行指令由所述至少一个处理器执行时,使所述系统执行包括以下的操作:
在主机中的用户空间中的相同网络命名空间中实例化第一用户平面功能、第二用户平面功能、和第三用户平面功能,所述第一用户平面功能、所述第二用户平面功能、和所述第三用户平面功能能够访问所述主机的共享存储器区域;
在所述第一用户平面功能与所述第二用户平面功能之间建立第一点对点共享存储器接口;
在所述第一用户平面功能与所述第三用户平面功能之间建立第二点对点共享存储器接口;
使用所述第一用户平面功能向所述第二用户平面功能发送与所述共享存储器区域中的用户流量相关的第一控制数据;以及
使用所述第一用户平面功能向所述第三用户平面功能发送与所述共享存储器区域中的用户流量相关的第二控制数据。
15.一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令由计算设备的一个或多个处理器执行时,使所述计算设备执行包括以下的操作:
在5G网络的主机中的相同网络命名空间中实例化UPF和至少一个网络功能,所述UPF和所述至少一个网络功能能够访问所述主机的共享存储器区域;
与所述至少一个网络功能建立至少一个virtio接口;
处理接收到的用户流量;
将经处理的所述用户流量存储在所述主机的所述共享存储器区域中;以及
向至少一个另外的所述网络功能发送与接收到的所述用户流量相关联的控制数据,
其中所述至少一个网络功能包括SF功能性或MEC功能性。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063017939P | 2020-04-30 | 2020-04-30 | |
US63/017,939 | 2020-04-30 | ||
PCT/US2021/029761 WO2021222478A1 (en) | 2020-04-30 | 2021-04-28 | Processing user traffic in a virtualised network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115486045A true CN115486045A (zh) | 2022-12-16 |
Family
ID=73149664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180032031.3A Pending CN115486045A (zh) | 2020-04-30 | 2021-04-28 | 在虚拟化网络中处理用户流量 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11665098B2 (zh) |
EP (1) | EP4144052A1 (zh) |
CN (1) | CN115486045A (zh) |
GB (1) | GB2594534B (zh) |
WO (1) | WO2021222478A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114978998B (zh) * | 2021-02-26 | 2023-12-12 | 中移(苏州)软件技术有限公司 | 一种流量控制方法、装置、终端及存储介质 |
CN114185641B (zh) * | 2021-11-11 | 2024-02-27 | 北京百度网讯科技有限公司 | 虚拟机冷迁移方法、装置、电子设备及存储介质 |
WO2024057227A1 (en) * | 2022-09-14 | 2024-03-21 | Nokia Solutions And Networks Oy | Methods and apparatus for microservice-based processing in a user plane function |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102291428A (zh) * | 2010-06-21 | 2011-12-21 | 英特尔公司 | 用于在多个虚拟机之间共享网络接口的方法 |
CN105577637A (zh) * | 2014-10-31 | 2016-05-11 | 英特尔公司 | 用于安全虚拟网络功能间通信的技术 |
CN106201646A (zh) * | 2014-08-15 | 2016-12-07 | 英特尔公司 | 用于安全虚拟机间共享存储器通信的技术 |
US20170214612A1 (en) * | 2016-01-22 | 2017-07-27 | Red Hat, Inc. | Chaining network functions to build complex datapaths |
CN108475206A (zh) * | 2015-12-01 | 2018-08-31 | 瑞典爱立信有限公司 | 在网络功能虚拟化架构中实现精细的粒度服务链 |
WO2018174759A1 (en) * | 2017-03-23 | 2018-09-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Apparatuses, methods, computer programs and computer program products for service function chaining |
US20190042294A1 (en) * | 2018-04-13 | 2019-02-07 | Intel Corporation | System and method for implementing virtualized network functions with a shared memory pool |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10110707B2 (en) * | 2015-12-11 | 2018-10-23 | International Business Machines Corporation | Chaining virtual network function services via remote memory sharing |
GB201621011D0 (en) * | 2016-12-09 | 2017-01-25 | British Telecomm | Implementing service function chains |
US10382346B2 (en) * | 2017-10-24 | 2019-08-13 | Cisco Technology, Inc. | Method and device for offloading processing of data flows |
EP3487129A1 (en) * | 2017-11-15 | 2019-05-22 | InterDigital CE Patent Holdings | Batch oriented service chaining method and corresponding devices and computer program |
US10944689B2 (en) * | 2018-06-29 | 2021-03-09 | Intel Corporation | Scalable edge computing |
US11895024B2 (en) * | 2018-07-24 | 2024-02-06 | Nokia Technologies Oy | Method, device and computer readable medium for delivering data-plane packets by using separate transport service VNFC |
KR102019212B1 (ko) * | 2018-11-21 | 2019-11-04 | 아토리서치(주) | 서비스 기능 체인을 운용하는 방법, 장치 및 컴퓨터 프로그램 |
US11843610B2 (en) * | 2020-01-09 | 2023-12-12 | Cisco Technology, Inc. | Providing multiple namespaces |
-
2020
- 2020-09-16 GB GB2014559.5A patent/GB2594534B/en active Active
-
2021
- 2021-04-28 CN CN202180032031.3A patent/CN115486045A/zh active Pending
- 2021-04-28 EP EP21726018.1A patent/EP4144052A1/en active Pending
- 2021-04-28 US US17/243,169 patent/US11665098B2/en active Active
- 2021-04-28 WO PCT/US2021/029761 patent/WO2021222478A1/en unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102291428A (zh) * | 2010-06-21 | 2011-12-21 | 英特尔公司 | 用于在多个虚拟机之间共享网络接口的方法 |
CN106201646A (zh) * | 2014-08-15 | 2016-12-07 | 英特尔公司 | 用于安全虚拟机间共享存储器通信的技术 |
CN105577637A (zh) * | 2014-10-31 | 2016-05-11 | 英特尔公司 | 用于安全虚拟网络功能间通信的技术 |
CN108475206A (zh) * | 2015-12-01 | 2018-08-31 | 瑞典爱立信有限公司 | 在网络功能虚拟化架构中实现精细的粒度服务链 |
US20170214612A1 (en) * | 2016-01-22 | 2017-07-27 | Red Hat, Inc. | Chaining network functions to build complex datapaths |
WO2018174759A1 (en) * | 2017-03-23 | 2018-09-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Apparatuses, methods, computer programs and computer program products for service function chaining |
US20190042294A1 (en) * | 2018-04-13 | 2019-02-07 | Intel Corporation | System and method for implementing virtualized network functions with a shared memory pool |
Also Published As
Publication number | Publication date |
---|---|
US20210344606A1 (en) | 2021-11-04 |
GB2594534A (en) | 2021-11-03 |
EP4144052A1 (en) | 2023-03-08 |
WO2021222478A1 (en) | 2021-11-04 |
US11665098B2 (en) | 2023-05-30 |
GB2594534B (en) | 2022-09-21 |
GB202014559D0 (en) | 2020-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11645127B2 (en) | Microservices architecture | |
US10944811B2 (en) | Hybrid cloud network monitoring system for tenant use | |
US11190458B2 (en) | Network functions support for serverless and granular computing environments | |
US11249779B2 (en) | Accelerator interconnect assignments for virtual environments | |
EP3370158B1 (en) | Network interface card switching for virtual networks | |
CN108475206B (zh) | 在网络功能虚拟化架构中实现精细的粒度服务链 | |
US20170366605A1 (en) | Providing data plane services for applications | |
JP6016984B2 (ja) | ソフトウェア確定ネットワークにおける仮想マシンと仮想化コンテナを用いたローカルサービスチェーン | |
CN115486045A (zh) | 在虚拟化网络中处理用户流量 | |
US11005805B2 (en) | Managing link aggregation traffic in edge nodes | |
US11593140B2 (en) | Smart network interface card for smart I/O | |
CN111400237A (zh) | 为rdma提供多租赁支持的方法 | |
US20180219772A1 (en) | Router based maximum transmission unit and data frame optimization for virtualized environments | |
US10581730B2 (en) | Packet processing using service chains | |
US11669468B2 (en) | Interconnect module for smart I/O | |
US11595303B2 (en) | Packet handling in software-defined net working (SDN) environments | |
US20220014459A1 (en) | Network layer 7 offload to infrastructure processing unit for service mesh | |
WO2018113622A1 (zh) | 基于虚拟机的数据包发送和接收方法及装置 | |
CN112714073A (zh) | 基于sr-iov网卡的报文分流方法、系统及存储介质 | |
US20240031289A1 (en) | Network interface device look-up operations | |
US20230319133A1 (en) | Network interface device to select a target service and boot an application | |
US20230247005A1 (en) | Proxy offload to network interface device | |
US20240089219A1 (en) | Packet buffering technologies | |
US20230116614A1 (en) | Deterministic networking node | |
Ginka et al. | Optimization of Packet Throughput in Docker Containers |
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 |