CN104995880A - 虚拟联网系统中的量化拥塞通知 - Google Patents

虚拟联网系统中的量化拥塞通知 Download PDF

Info

Publication number
CN104995880A
CN104995880A CN201480009158.3A CN201480009158A CN104995880A CN 104995880 A CN104995880 A CN 104995880A CN 201480009158 A CN201480009158 A CN 201480009158A CN 104995880 A CN104995880 A CN 104995880A
Authority
CN
China
Prior art keywords
virtual
congestion
grouping
congestion notification
virtual machine
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
Application number
CN201480009158.3A
Other languages
English (en)
Other versions
CN104995880B (zh
Inventor
K·G·卡姆布勒
V·A·潘迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qindarui Co.
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104995880A publication Critical patent/CN104995880A/zh
Application granted granted Critical
Publication of CN104995880B publication Critical patent/CN104995880B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets

Abstract

本发明的实施例提供了一种在包括多个虚拟网络(VN)的虚拟联网系统中量化拥塞通知的方法。每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机。每个分组流的每个分组用拥塞通知(CN)标签进行标记,拥塞通知标签包括分组流对应的虚拟流标识符。每个分组流被映射至对应的隧道端点(TEP),其中每个分组流的每个分组经由对应的隧道端点分发。为与每个分组流相关联的每个拥塞点(CP)产生拥塞通知消息(CNM),其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。每个拥塞点被映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。

Description

虚拟联网系统中的量化拥塞通知
背景技术
本发明的实施例涉及覆盖虚拟环境,尤其涉及虚拟联网系统中的量化拥塞通知(QCN)。
使用覆盖技术的网络虚拟化利用诸如虚拟可扩展局域网(VxLAN)封装和网络虚拟一般路由封装(NVGRE)之类的可由管理程序和联网厂商支持的封装。为了使用VxLAN或NVGRE封装,修改管理程序虚拟交换机以支持各覆盖技术。与封装类型的不兼容导致必须使用在不同分组格式之间进行转换的转换网关。通常转换网关是通信瓶颈,影响通信性能。
发明内容
一个实施例提供了一种用于在包括多个虚拟网络的虚拟联网系统中量化拥塞通知的方法。每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机。每个分组流的每个分组用拥塞通知标签进行标记,拥塞通知标签包括分组流对应的虚拟流标识符。每个分组流被映射至对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。每个拥塞点被映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
另一个实施例提供了一种包括多个虚拟网络的虚拟联网系统。每个虚拟网络包括至少一个配置用于产生一个或多个分组流的虚拟机。每个虚拟网络包括物理网络接口卡(NIC),该NIC包括通信管理模块,配置用于将虚拟网络的每个虚拟机产生的每个分组流的每个分组用包括分组流对应的虚拟流标识符的拥塞通知标签进行标记。通信管理模块进一步配置用于将每个分组流映射至虚拟网络的对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。通信管理模块进一步配置用于为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。通信管理模块进一步配置用于将每个拥塞点映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
另一个实施例提供了一种用于在包括多个虚拟网络的虚拟联网系统中量化拥塞通知的计算机程序产品,其中每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机。该计算机程序产品包括计算机可读存储介质,其上包括程序代码,该程序代码被计算机执行时将每个分组流的每个分组用包括分组流对应的虚拟流标识符的拥塞通知标签进行标记。每个分组流被映射至对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。该程序代码被计算机进一步执行时为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。每个拥塞点被映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
参考如下描述、所附权利要求和附图,本发明的这些和其他特征、方面和优点将变得可被理解。
附图说明
图1根据本发明一个实施例示出了示例性云计算节点的框图;
图2根据本发明一个实施例示出了示例性云计算环境;
图3根据本发明一个实施例示出了云计算环境的抽象模型层;
图4示出了利用本发明一个实施例的分布式覆盖虚拟环境400的框图;
图5根据本发明一个实施例示出了虚拟联网系统中的分组分发;
图6是根据本发明一个实施例,图5中的物理NIC设备的框图;
图7是根据本发明的一个实施例,图6中的通信管理应用模块的框图;
图8显示了根据本发明的一个实施例,图5中由虚拟网产生的输出分组的处理;
图9A显示了根据本发明一个实施例的示例性的分组;
图9B显示了根据本发明一个实施例的示例性的封装分组;
图10显示了根据本发明的一个实施例,图8中的虚拟网405的VCPID;
图11显示了根据本发明一个实施例的示例性CNM;
图12显示了根据本发明一个实施例的用于处理由包括一个或多个虚拟机的虚拟网产生的输出分组的示例性过程的流程图;
图13显示了根据本发明一个实施例的用于产生CNM的示例性过程的流程图;以及
图14是示出了用于实现本发明一个实施例的信息处理系统300的高级框图。
具体实施方式
本发明的实施例涉及覆盖虚拟环境,尤其是虚拟联网系统中的量化拥塞通知(QCN)。一个实施例提供了一种用于在包括多个虚拟网络的虚拟联网系统中的量化拥塞通知的方法。每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机。每个分组流的每个分组用拥塞通知标签进行标记,拥塞通知标签包括分组流对应的虚拟流标识符。每个分组流被映射至对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。每个拥塞点被映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
另一个实施例提供了一种包括多个虚拟网络的虚拟联网系统。每个虚拟网络包括至少一个配置用于产生一个或多个分组流的虚拟机。每个虚拟网络包括物理网络接口卡(NIC),该NIC包括通信管理模块,配置用于将虚拟网络的每个虚拟机产生的每个分组流的每个分组用包括分组流对应的虚拟流标识符的拥塞通知标签进行标记。通信管理模块进一步配置用于将每个分组流映射至虚拟网络的对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。通信管理模块进一步配置用于为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。通信管理模块进一步配置用于将每个拥塞点映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
另一个实施例提供了一种用于在包括多个虚拟网络的虚拟联网系统中量化拥塞通知的计算机程序产品,其中每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机。该计算机程序产品包括计算机可读存储介质,其上包括程序代码,该程序代码被计算机执行时将每个分组流的每个分组用包括分组流对应的虚拟流标识符的拥塞通知标签进行标记。每个分组流被映射至对应的隧道端点,其中每个分组流的每个分组经由对应的隧道端点分发。该程序代码被计算机进一步执行时为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中拥塞通知消息包括拥塞点的虚拟拥塞点标识符以及导致拥塞点处分组拥塞的虚拟机的源地址。每个拥塞点被映射至对应的隧道端点,其中用于拥塞点的每个拥塞通知消息经由对应的隧道端点分发,并且其中对应的虚拟隧道端点将拥塞通知消息转发至导致拥塞点处分组拥塞的虚拟机。
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分发和再分发。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
图1根据本发明一个实施例示出了示例性云计算节点的框图。图1所示的云计算节点10只是合适的云计算节点的一个例子,并不意图暗示对在此描述的本发明各实施例的功能或使用范围的任何限制。无论如何,云计算节点10能被实现和/或执行以上描述的任何功能。
云计算节点10具有计算机系统/服务器12,其可与众多其它通用或专用计算系统环境或配置一起操作。众所周知,适于与计算机系统/服务器12一起操作的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任意系统的分布式云计算技术环境,等等。
计算机系统/服务器12可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、组件、逻辑、数据结构等。计算机系统/服务器12可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
计算机系统/服务器12的组件可以包括但不限于一个或多个处理器或者处理单元16、系统存储器28、和将各系统组件(如系统存储器28和处理器16)耦合的总线18。表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是能够被计算机系统/服务器12访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
本发明的各实施例可被实现为计算机可读信号介质,其可以包括其中承载了计算机可读的程序代码的传播数据信号(例如在基带中或者作为载波的一部分)。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光学信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与所述指令执行系统、装置或者器件结合使用的程序。
计算机可读介质上包含的程序代码可以用任何合适介质传输,所述任何合适介质包括但不限于无线、有线、光纤电缆、射频(RF)等等,或者上述的任意合适的组合。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,其它硬件和/或软件模块可以与计算机系统/服务器12一起操作,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
图2根据本发明一个实施例示出了示例性云计算环境50。现参见图2,描绘了示例性的云计算环境50。云计算环境50包括一个或多个云计算节点10,由云消费者使用的本地计算设备54(例如,个人数字助理(PDA)和蜂窝电话54A、桌上型计算机54B、膝上型计算机54C和/或自动计算机系统54N)可以与所述一个或多个云计算节点10进行通信。节点10可以彼此通信。在诸如上述私有云、共同体云、公共云或混合云、或其组合的一个或多个网络中,这些节点可被物理地或虚拟地成组(未示出)。这使得云计算环境50能够提供基础设施、平台和/或软件作为服务,由此云消费者无需在本地计算设备上保持资源。应该理解,图2所示的计算设备54A-N的类型仅旨在例示,并且计算节点10和云计算环境50可以经由任何类型的网络和/或网络可寻址连接(例如,使用网页浏览器)与任何类型的计算机化设备通信。
图3根据本发明一个实施例示出了云计算环境50的抽象模型层。现参见图3,示出了由云计算环境50(图2)提供的一组功能性抽象层。应该预先理解图3所示的组件、层和功能仅旨在例示,并且本发明的各实施例不限于此。如所述,提供如下的层和相应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括大型机。在一个示例中是IBM.RTM.zSeries.RTM系统以及基于RISC(精简指令集计算机)架构的服务器。在一个示例中是IBM pSeries.RTM.系统、IBMxSeries.RTM.系统、IBM BladeCenter.RTM.系统、存储设备、网络和联网组件。软件组件的例子包括网络应用服务器软件。在一个示例中是IBMWebSphere.RTM.应用服务器软件和数据库软件。在一个示例中是IBMDB2.RTM.数据库软件。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere和DB2是国际商用机器公司在世界范围内众多管辖区域内注册的商标)。
虚拟层62提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器、虚拟存储、虚拟网络(包括虚拟私有网络)、虚拟应用和操作系统,以及虚拟客户端。
在一个示例中,管理层64可以提供下述功能:资源供应功能:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能:提供云计算资源的分发和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负荷层66提供云计算环境可以被利用的功能性的例子。可由该层提供的工作负荷和功能的例子包括:映射和导航;软件开发和生命周期管理;虚拟教室教育递送;数据分析处理;交易处理;以及封装映射和通信。如上所述,前面参考图3描述的所有例子仅是示例性的,本发明不限于这些例子。
然而,也不是必须如此。相反地,在此描述的功能性可由图3所示的层60-66中的任何层执行/实现和/或使能。
需要重申的是虽然本公开包括对云计算的详细描述,但是在此阐述的教示的实现不限于云计算环境。相反地,本发明的各实施例旨在使用现在已知或将来开发的任何类型的成簇(clustered)计算环境来实现。
本发明的各实施例涉及在支持多封装的主机间提供互操作性。一个实施例包括一种包括为虚拟交换机映射分组封装协议类型信息的方法。每个虚拟交换机与一个或多个虚拟机(VM)相关联。在一个实施例中,基于上述映射判定是否针对与第一虚拟交换机相关联的第一VM以及与第二虚拟交换机相关联的第二VM存在一个或多个公共封装协议类型。在一个实施例中,如果判定针对第一虚拟交换机和第二虚拟交换机存在一个或多个公共封装协议类型,则选择一个公共封装协议类型。对在第一VM和第二VM之间的通信,利用所选的公共封装协议类型封装分组。
图4显示了采用本发明的一个实施例的分布式覆盖虚拟环境400的框图。在一个实施例中,分布式覆盖虚拟环境400可以包括分布式覆盖虚拟以太网(DOVE)网络系统。分布式覆盖虚拟环境400包括多个虚拟系统(或网络)405(在一个实施例中也称作DOVE模块)。每个虚拟系统405包括服务器310(或主机),其包括用于创建并运行至少一个VM 320的管理程序316。每个管理程序316包括至少一个提供覆盖功能性(例如DOVE功能性)的虚拟交换机315。虚拟系统405覆盖可以包括物理交换机、路由器、服务器、网关、防火墙等的物理层325(例如包括物理硬件和软件过程)。物理层325还可以称为下层。虚拟系统405与诸如物理交换机、路由器、服务器、网关、防火墙等的现有硬件机制交互操作。
在一个实施例中,覆盖网段1-N 305(例如,覆盖网段1-3)连接用于不同元件(例如,管理程序316、VM 320)通信的多个系统,其中N是正数(例如,2、3、5、10等)。应该注意到,虽然示出了三个系统405,但是该分布式覆盖虚拟环境400中可以包括更多(或更少)的系统405。在一个实施例中,虚拟交换机315包括DOVE交换机。
在一个实施例中,覆盖网段1-N 305创建管理程序316和分组使用封装之间的覆盖网,来自VM 320的输出分组在此进行封装(例如添加覆盖和物理网数据头)并且利用物理层325(下层)向目标VM 320所在的服务器310传送。在一个实施例中,在物理层325中,物理交换机利用外部数据头转发分组,其中封装数据头中的覆盖标识(ID)提供通信隔离。目的服务器310的虚拟交换机315的输入分组被解封装(例如从分组中剥除封装数据头)并传送至目的VM 320。每个虚拟交换机315被配置用于提供覆盖功能性。例如,在一个实施例中,每个虚拟交换机315被配置用于对输出分组进行封装并对输入分组进行解封装。
在一个实施例中,支持不同虚拟系统405之间的地址独立。例如,在两个不同系统405中操作的两个不同VM 320可以具有相同的因特网协议(IP)地址和媒体访问控制(MAC)地址。作为另一示例,系统405支持将属于同一系统405的VM 320部署至位于不同物理子网(包括在物理实体之间的交换机和/或路由器)内的不同主机上。在另一实施例中,属于不同系统405的VM 320可被安装在同一物理主机上。在又一实施例中,系统405支持VM 320迁移至数据中心内的任何位置,而不改变VM 320网络地址或丢失其网络连接。
在一个实施例中,系统405基于策略(例如,来自分布式策略服务(DPS))利用物理路径转换(physical path translation)封装数据,并在系统405之间发送封装的数据,系统405则将其解封并转发至目的地VM320。在一个实施例中,策略以逻辑方式描述需要数据如何经虚拟网络发送,而无需执行具体任务的下层物理实体的细节。
在一个实施例中,管理程序316(例如,VM 320管理器)允许多个操作系统(例如,诸如VM 320的VM)同时在主机计算机上运行。管理程序316向VM 320提供物理资源的抽象。例如,物理网络接口卡(NIC)可被抽象为系统405的虚拟NIC(vNIC)。在一个实施例中,虚拟交换机315是用于为VM 320提供连接性的管理程序316内的以太网交换机的软件抽象。
图5显示了根据本发明的一个实施例,在虚拟联网系统100中的分组分发。系统100包括多个虚拟网络(系统)405。每个虚拟网络405包括至少一个服务器(主机)310,其上运行管理程序316。管理程序316创建并运行一个或多个虚拟机320。
虚拟网络405的每个虚拟机320可以从另一虚拟机320接收输入分组和/或向另一虚拟机320发送输出分组。在一个实施例中,利用物理网络接口控制器(NIC)设备420促进在不同虚拟网络405之间经由IP网络250的分组分发。每个虚拟网络405具有对应的物理NIC设备420,其经由覆盖网关415将虚拟网络405连接至IP网络250。
每个虚拟网路405包括至少一个DOVE交换机315,用于处理输入分组和输出分组。虚拟网络405的DOVE交换机315被配置用于接收来自虚拟网络405的虚拟机320的输出分组。在一个实施例中,DOVE交换机315将输出分组用对应的虚拟联网标签(例如VLAN标记)进行标记。DOVE交换机315将输出分组发送至虚拟网络405对应的物理NIC设备420。DOVE交换机315进一步被配置用于接收来自物理NIC设备420的输入分组。根据接收输入分组,DOVE交换机315确定哪个虚拟机320是输入分组的目标,并将输入分组发送至目标虚拟机320。
每个虚拟网络405进一步包括NIC驱动器410,用于与虚拟网络405对应的物理NIC 420通信。
图6是根据本发明的一个实施例,图5中的物理NIC设备420的框图。不像图4中覆盖功能性由虚拟服务器侧软件(例如管理程序316)提供,图6中覆盖功能性卸载至物理NIC设备420上。物理NIC设备420至少包括支持覆盖隧道能力的以下组件:多通道总线接口标准(PCIe)接口模块421、第一组接收/发送(RX/TX)缓冲器422、隧道管理模块423、地址解析协议(ARP)和转发信息库(FIB)管理模块424、网际协议多媒体通信(IPMC)支持模块425、分组封装/解封装模块426、第二组接收/发送(RX/TX)缓冲器427、以太网控制器428和通信管理模块430。
多通道PCIe接口模块421是在服务器310和物理NIC设备420之间接收并发送分组、用于物理NIC设备420的程序控制参数以及为物理NIC设备420读取统计和控制参数的CPU接口。
第一组RX/TX缓冲器422缓冲服务器310和物理NIC设备420之间的分组。第二组RX/TX缓冲器427缓冲物理NIC设备420和覆盖网关415之间的分组。
来自虚拟网络405的每个输出分组在经由IP网络520分发至另一虚拟网络之前用诸如物理网络数据头的补充数据封装。隧道管理模块423确定每个输出分组被封装使用的数据,例如源MAC和目的地MAC。
ARP和FIB管理模块424基于电信协议(诸如IEEE 802.3和IEEE802.11之上的IPv4)将网络层地址解析成链路层地址。ARP和FIB管理模块424还维护包括分组路由信息的转发表。
IPMC支持模块425将每个覆盖网络的广播域映射至下层网络多播组,从而解析ARP和其他广播导向协议。
在输出分组经由IP网络250发送至另一虚拟网络405之前,分组封装/解封装模块426将每个输出分组封装。IP网络250在不同的虚拟网络405之间传播封装的分组。分组封装/解封装模块426还对经由IP网络250接收的来自另一虚拟网络405的输入分组进行解封装。
以太网控制器428处理物理NIC设备420和覆盖网关415之间交换的数据。
下面将详细描述,通信管理应用模块430促进量化拥塞通知(QCN)。
图7是根据本发明的一个实施例,图6中的通信管理应用模块430的框图。通信管理应用模块430促进服务器310上运行的诸如虚拟网络405的虚拟化环境的QCN。
虚拟拥塞点(VCP)代表作为通过所述VCP分发来自虚拟隧道端点(VTEP)450的大量分组的导致变得拥塞的虚拟联网系统100的资源,。例如,VCP可以是虚拟机320的一组启用QCN的虚拟优先级队列431,其中在服务器310(例如在DOVE交换机315)或具有覆盖隧道能力的物理NIC设备420上维护该组431。每个VCP与至少一个VTEP 450相关联。每个VTEP 450被配置用于经由物理NIC设备420接收来自物理覆盖网关交换机的通信,并将通信转发至与VTEP 450相关联的VCP。
每个VCP用QCN设置进行配置。如果VCP由于通信拥塞,VCP将CNM发送回导致拥塞的通信的源。源可以是同一覆盖网络中的物理反应点(RP)或虚拟反应点(VRP)。
虚拟反应点(VRP)表示将一个或多个数据流(例如分组)注入虚拟联网系统100的生成通信的源和汇入(sink)。例如,VRP可以是虚拟机320的一组启用QCN的虚拟优先级队列431,其中该组431与虚拟机320的vNIC相关联。通信管理应用模块430利用拥塞通知消息(CNM)调整VRP的数据流的注入速率。下面将详细描述,每个VCP或物理拥塞点(CP)产生指向导致VCP或CP处拥塞的同一覆盖网络中的VRP或RP的拥塞通知消息(CNM)。
通信管理应用模块430包括至少以下组件:用于每个虚拟机320的一组虚拟优先级队列431、存储器单元432、隧道接口管理器模块435、RX/TX接口模块436、PCIe和直接存储器访问(DMA)块模块437、VRP/VCP管理器和分类模块438以及队列管理器和QCN逻辑模块439。
VRP/VCP管理器和分类模块438创建和管理虚拟反应点标识符(VRPID)。每个VRPID是在虚拟联网系统100中标识VRP的16比特标识符。VRPID映射至QCN标准(例如IEEE 802.1Qau)定义的流标识符。
VRP可以具有一个或多个VRPID(例如流标识符)。产生多个分组流的VRP可以具有多个VRPID,其中每个VRPID对应于由VRP产生的一个流。VRP为与流相关联的每个VRPID分配单独的队列和缓冲资源。
特别的,VRP/VCP管理器和分类模块438为相应虚拟网络405中的每个虚拟机320分配至少一个对应的VRPID。每个VRPID映射至QCN标准(例如IEEE 802.1Qau)定义的流标识符或反应点标识符(RPID)。队列管理器和QCN逻辑模块439基于VRPID对分组进行分类。
VRP/VCP管理器和分类模块438还创建并管理虚拟拥塞点标识符(VCPID)。每个VCPID是标识虚拟联网系统100中的VCP的64比特标识符。特别的,VRP/VCP管理器和分类模块438为相应虚拟网络405中的每个VCP分配对应的VCPID。每个VCPID映射至QCN标准(例如IEEE 802.1Qau)定义的拥塞点标识符(CPID)。
虚拟机320的每组虚拟优先级队列431包括多个虚拟优先级队列431PQ。在一个实施例中,由于通信管理模块430支持虚拟机320的多个虚拟优先级队列431PQ,一个虚拟机320可以分配多个VRPID。
队列管理器和QCN逻辑模块439执行分组的排队和出队操作。特别的,队列管理器和QCN逻辑模块439为相应虚拟网络405中的每个虚拟机320分配一个或多个虚拟优先级队列431PQ。可以在服务器310(例如DOVE交换机315)或物理NIC设备420中维护排队和缓冲资源。
队列管理器和QCN逻辑模块439还促进每个虚拟优先级队列431PQ上的QCN。特别的,对于每个虚拟优先级队列431PQ,队列管理器和QCN逻辑模块439用包括虚拟机320的对应VRPID的拥塞通知(CN)标签对虚拟机320产生的每个输出分组进行标记。
队列管理器和QCN逻辑模块439还基于预编程的QCN逻辑对每个虚拟优先级队列431PQ上的帧进行采样。对基于采样拥塞的每个虚拟优先级队列431PQ,队列管理器和QCN逻辑模块439产生指向包括在导致拥塞的分组的CN标签中的VRPID或RPID的CNM。
队列管理器和QCN逻辑模块439还处理沿输入分组指向对应虚拟网络405的虚拟机320穿过虚拟联网系统100的路径由VCP产生的CNM。队列管理器和QCN逻辑模块439对每个CNM解码并基于CNM中包含的VRPID确定导致拥塞的VRP,并将CNM转发至具有该VRPID的虚拟机320,其中该虚拟机320的虚拟反应点发送(TX)模块基于接收的CNM调整对应的分组产生速率(例如减小产生的输出分组的速率)。
隧道管理器接口模块435将物理NIC设备420的隧道管理器423与队列管理器和QCN逻辑模块439接口,以使队列管理器和QCN逻辑模块439可以接收每个分组的隧道参数并确定每个分组对应的VRPID和VCPID。
存储器单元432包括缓冲器管理器433和缓冲器存储器434。缓冲器管理器433管理缓冲器存储器434。特别的,缓冲器管理器433至少部分基于最大传输单元(MTU)大小和缓冲器大小要求将缓冲器存储器434分割为(具有固定大小或可变大小的)多个缓冲器。
每个缓冲器具有对应的由缓冲器管理器433管理的缓冲器头。对每于个接收的分组,缓冲器管理器433为队列管理器和QCN逻辑模块439分配一个或多个缓冲器。缓冲器管理器433还从队列管理器和QCN逻辑模块439回收一个或多个缓冲器。缓冲器管理器433追踪涉及缓冲器的统计数据,例如有多少缓冲器可用以及有多少缓冲器被占用。
RX/TX接口代表用于接收和发送逻辑的物理接口。
PCIe和直接存储器访问(DMA)块模块437是在服务器310和物理NIC设备420之间接收和发送分组、用于物理NIC设备420的程序控制参数以及为物理NIC设备420读取统计和控制参数的CPU接口。
在一个实施例中,对于每个具有对应CN标签的输出分组,队列管理器和QCN逻辑模块439将CN标签拷贝/复制到输出分组的最外面封装分组。特别的,队列管理器和QCN逻辑模块439从隧道管理器模块423经由隧道管理器接口模块435接收输出分组的隧道参数(例如与分发分组所通过的隧道端点相关联的参数)。基于接收的隧道参数,队列管理器和QCN逻辑模块439确定要在最外面封装分组中包括的数据,例如转发分组的隧道端点的源MAC地址以及分组被转发到的隧道端点的目的地MAC地址。队列管理器和QCN逻辑模块439然后将CN标签的副本插入最外面封装分组。因此,输出分组具有两个CN标签:最里面CN标签(即,输出分组中的CN标签)和最外面CN标签(即,封装输出分组的最外面封装分组中的CN标签)。
仅为输出分组检视最外面封装分组的非覆盖拥塞点(例如IP网络250的物理交换机/路由器325)可以处理最外面的CN标签。能够检视输出分组的最里面分组的覆盖拥塞点(例如DOVE交换机315、物理NIC设备420)可以处理最里面的CN标签。
图8显示了根据本发明的一个实施例,图5中由虚拟网405产生的输出分组的处理。虚拟网405可以包括服务器310上运行的多个虚拟机320,例如虚拟机VM0,VM1,VM2,…,VMn。虚拟网络405对应的物理NIC设备420将VRPID分配给每个虚拟机320产生的每个分组流。
例如,如图8所示,物理NIC设备420将VRPID0分配给虚拟机VM0产生的分组流,将VRPID1分配给虚拟机VM1产生的分组流,将VRPID2分配给虚拟机VM2产生的分组流,…,并且将VRPIDn分配给虚拟机VMn产生的分组流。
物理NIC设备420将每个输出分组基于用于输出分组的隧道参数(例如,与将输出分组转发至IP网络250的VTEP 450相关联的参数)进行封装。
每个来自VTEP 450的分组被多路分解成对应的VRPID或VCPID。特别的,每个VRPID和每个VCPID映射至对应的VTEP 450。
例如,如图8所示,VRPID0和VRPID1映射至VTEP0,VRPID2映射至VTEP1,…,并且VRPIDn映射至VTEPn。因此,分配为具有VRPID0或VRPID1的流的每个输出分组用VTEP0的源MAC地址进行封装,分配为具有VRPID2的流的每个输出分组用VTEP1的源MAC地址进行封装,并且分配为具有VRPIDn的流的每个输出分组用VTEPn的源MAC地址进行封装。
覆盖CP(诸如DOVE交换机315、物理NIC设备420)产生的CNM包括VRPID和导致覆盖CP处拥塞的虚拟机320的源MAC地址。非覆盖CP(诸如IP网络250的物理交换机/路由器325)产生的CNM包括VRPID和导致非覆盖CP处拥塞的虚拟隧道端点的源MAC地址。
物理NIC设备420进一步包括端口440,用于与IP网络250经由覆盖网关415交换分组。
图9A显示了根据本发明一个实施例的示例性分组150。分组150至少包括以下信息:标识分组的目的地的目的地地址(例如,分组被发送或广播至的虚拟机320的MAC地址)、标识分组的源的源地址(例如,产生分组的虚拟机320的MAC地址)、S-标签(例如802.1Q VLAN标签)、C-标签、CN标签、包括分组所承载信息的数据的以太网净荷信息和循环冗余校验(CRC)信息。
在另一个实施例中,CN标签包括QCN以太网类型标识符和标识产生分组的VRP的VRPID。在一个实施例中,目的地地址的长度为6字节,源地址的长度为6字节,S-标签的长度为4字节,C-标签的长度为4字节,CN标签的长度为4字节,其包括QCN以太网类型的2字节和VRPID或流标识符的2字节,并且CRC信息的长度为2字节。
图9B显示了根据本发明一个实施例的示例性的封装分组160。在每个输出分组150被转发至IP网络250之前,物理NIC设备420用包括诸如第二层(L2)数据头的补充数据的最外面封装分组对输出分组150进行封装。
例如,如图9B所示,封装后的分组160包括最外面封装分组和最里面分组,最外面封装分组包括L2数据头,最里面分组包括图9A中标识的信息。L2数据头可以包括标识分组的目的地的目的地地址(例如分组被发送或广播至的虚拟隧道端点的MAC地址)以及标识分组的源的源地址(转发分组的虚拟隧道端点的MAC地址)。
作为另一实施例,封装后的分组160包括最外面分组和最里面分组,最外面分组包括L2数据头和第三层(L3)数据头,最里面分组包括图9A中标识的信息。
在一个实施例中,物理NIC设备420将最里面分组中的CN标签(即最里面的CN标签)的副本/复本插入最外面封装分组,因而创建最外面的CN标签。
仅为输出分组检视最外面封装分组的非覆盖网络拥塞点(例如IP网络250的物理交换机/路由器325)可以处理最外面的CN标签。能够检视输出分组的最里面分组的覆盖拥塞点(例如DOVE交换机315、物理NIC设备420)可以处理最里面的CN标签。
图10显示了根据本发明的一个实施例,图8中的虚拟网405的VCPID。物理NIC设备420经由端口440接收指向不同隧道端点的输入数据。物理NIC设备420为每个虚拟机320分配标识一个拥塞点的VCPID。例如,如图10所示,物理NIC设备420为虚拟机VM0、VM1、VM2、…、VMn分别分配具有VCPID0、VCPID1、VCPID2、…、VCPIDn的拥塞点。
每个VCPID被映射至对应的VTEP 450。例如,如图10所示,VCPID0和VCPID1被映射至VTEP0,VCPID2被映射至VTEP1,…,并且VCPIDn被映射至VTEPn。因此,与VCPID0或VCPID1相关联的每个输出分组用VTEP0的源MAC地址进行封装,与VCPID2相关联的每个输出分组用VTEP1的源MAC地址进行封装,与VCPIDn相关联的每个输出分组用VTEPn的源MAC地址进行封装。
此外,用VTEP0的源MAC地址封装的每个输入分组与VCPID0或VCPID1相关联,用VTEP1的源MAC地址封装的每个输入分组与VCPID2相关联,并且用VTEPn的源MAC地址封装的每个输入分组与VCPIDn相关联。
图11显示了根据本发明一个实施例的示例性CNM 170。CNM 170包括至少以下信息:标识CNM 170的目的地的目的地地址(CNM被发送或广播至的虚拟机320的MAC地址)、标识CNM的源的源地址(例如产生CNM的拥塞点的MAC地址)、S-标签(例如802.1Q VLAN标签)、C-标签、CN标签、CNM净荷信息和循环冗余校验(CRC)信息。
在一个实施例中,CNM净荷信息包括采样数据帧MAC服务数据单元(MSDU)、封装后的帧长度信息、封装后的目的地MAC地址信息、封装后的优先级标识符、Qdelta、Qoffset、标识拥塞点的VCPID、QntzFb、保留标识符和版本标识符。
在一个实施例中,目的地地址的长度为6字节,源地址的长度为6字节,S标签的长度为4字节,C标签的长度为4字节,CN标签的长度为4字节,采样数据帧MSDU的长度为64字节,封装后目的地MAC地址的长度为48比特,封装后优先级标识符的长度为16比特,Qdelta的长度为16比特,Qoffset的长度为16比特,VCPID的长度为64比特,QntzFb的长度为6比特,保留标识符的长度为6比特,版本标识符的长度为6比特,并且CRC信息的长度为2字节。
图12显示了根据本发明一个实施例的用于处理由包括一个或多个虚拟机的虚拟网络产生的输出分组的示例性过程的流程图。在处理块601,为每个虚拟机分配VRPID。在处理块602,为来自每个虚拟机的每个输出分组用包括虚拟机VRPID的CN标签进行标记。在处理块603,用封装数据对每个输出分组进行封装,其中封装数据包括输出分组的CN标签的副本。在处理块604,将封装后的输出分组转发至目的地。
图13显示了根据本发明的一个实施例用于产生CNM的示例性过程700的流程图。在处理块701,接收用于分发的分组。在处理块702,对接收的分组执行QCN采样。在处理块703,如果基于采样检测到拥塞,则产生包括用于标识CP的VCPID以及用于标识导致拥塞的虚拟机的VRPID的CNM。在处理块704,将CNM转发至导致拥塞的虚拟机。
图14是示出了用于实现本发明一个实施例的信息处理系统300的高级框图。计算机系统包括一个或多个处理器,诸如处理器302。处理器302连接至通信基础设施304(例如,通信总线、跨接条或网络)。
计算机系统可以包括转发来自通信基础设施304(或来自未示出的帧缓冲器)的图形、文本和其他数据用以在显示单元308上显示的显示器接口306。计算机系统还包括主存储器310,优选地是随机存取存储器(RAM),并且还可以包括辅存储器312。辅存储器312例如可以包括硬盘驱动器314和/或可移除存储驱动器316,其例如表示软盘驱动器、磁带驱动器或光盘驱动器。可移除存储驱动器316以本领域普通技术人员周知的方式对可移除存储单元318进行读写。可移除存储单元318表示由可移除存储驱动器316读写的例如软盘、致密盘、磁带或光盘等。正如将会理解的,可移除存储单元318包括其内存储有计算机软件和/或数据的计算机可读介质。
在替换实施例中,辅存储器312可以包括用于允许计算机程序或其他指令被载入计算机系统内的其他类似装置。这些装置例如可以包括可移除存储单元350和接口322。这类装置的例子可以包括程序包和包接口(例如在视频游戏设备中找到的)、可移除存储器芯片(诸如EPROM或PROM)及关联插槽、以及允许将软件和数据从可移除存储单元350传送至计算机系统的其他可移除存储单元350和接口322。
计算机系统还可以包括通信接口324。通信接口324允许软件和数据在计算机系统和外部设备之间传送。通信接口324的例子可以包括调制解调器、网络接口(例如,以太网卡)、通信端口或PCMCIA槽和卡等。经由通信端口324传送的软件和数据具有可以例如是电子、电磁、光学、或能够由通信接口接收的其他信号的信号形式。这些信号经由通信路径(例如,通道)326提供给通信端口324。该通信路径326携带信号并且可以使用导线或线缆、光纤、电话线、蜂窝电话链路、RF链路和/或其他通信通道实现。
在本文中,术语“计算机程序介质”、“计算机可用介质”和“计算机可读介质”通常用于指代诸如主存储器310和辅存储器312、可移除存储驱动器316以及安装在硬盘驱动器314内的硬盘内的介质。
计算机程序(也被称为计算机控制逻辑)被存储在主存储器310和/或辅存储器312内。计算机程序还可以经由通信接口324接收。这些计算机程序在运行时使计算机系统能执行在此讨论的本发明的各特征。具体地,计算机程序在运行时使处理器302能执行计算机系统的各特征。因此,这些计算机程序代表计算机系统的控制器。
从以上描述可见本发明提供用于实现本发明各实施例的系统、计算机程序产品和方法。本发明还提供在神经网络中具有可塑性的用于分层路由和双向信息流的非暂态计算机可用存储介质。非暂态计算机可用存储介质具有计算机可读程序,其中该程序一旦在计算机上执行,就使得计算机实现根据在此描述的实施例的本发明的各步骤。除非明确指出,权利要求中对要素的单数引用并非意味着“有且只有一个”,而是“一个或多个”。与本领域普通技术人员当前已知或以后会变得知晓的上述示例性实施例的各要素等效的所有结构和功能都旨在被所附权利要求包含。除非使用短语“用于...的装置”或“用于...的步骤”明确描述,否则在此声明的要素不在35U.S.C.第112部分第6段的规定下解释。
在本文中所用的术语,仅仅是为了描述特定的实施例,而不意图限定本发明。本文中所用的单数形式的“一”和“该”,旨在也包括复数形式,除非上下文中明确地另外指出。还要知道,“包含”一词在本说明书中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件,以及/或者它们的组合。
权利要求中的对应结构、材料、操作以及所有功能性限定的装置(means)或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它单元相组合地执行该功能的结构、材料或操作。所给出的对本发明的描述其目的在于示意和描述,并非是穷尽性的,也并非是要把本发明限定到所表述的形式。对于所属技术领域的普通技术人员来说,在不偏离本发明范围和精神的情况下,显然可以作出许多修改和变型。对实施例的选择和说明,是为了最好地解释本发明的原理和实际应用,使所属技术领域的普通技术人员能够明了,本发明可以有适合所要的特定用途的具有各种改变的各种实施方式。

Claims (20)

1.一种用于在包括多个虚拟网络的虚拟联网系统中量化拥塞通知的方法,其中每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机,该方法包括:
用包括所述分组流对应的虚拟流标识符的拥塞通知标签对每个分组流的每个分组进行标记;
将每个分组流映射至对应的隧道端点,其中所述分组流的每个分组经由所述对应的隧道端点分发;
为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中所述拥塞通知消息包括所述拥塞点的虚拟拥塞点标识符以及导致所述拥塞点处分组拥塞的虚拟机的源地址;以及
将每个拥塞点映射至对应的隧道端点,其中用于所述虚拟拥塞点的每个拥塞通知消息经由所述对应的隧道端点分发,并且其中所述对应的虚拟隧道端点将所述拥塞通知消息转发至导致所述拥塞点处分组拥塞的虚拟机。
2.权利要求1的方法,进一步包括:
每个拥塞点从对应的隧道端点为所述拥塞点接收分组。
3.权利要求1的方法,其中:
虚拟机的源地址包括所述虚拟机的媒体控制协议(MAC)地址。
4.权利要求1的方法,进一步包括:
将用于每个拥塞点的每个拥塞通知消息转发至导致所述拥塞点处分组拥塞的虚拟机的虚拟网络接口卡(vNIC)。
5.权利要求1的方法,进一步包括:
对于每个接收拥塞通知消息的虚拟机,基于所述拥塞通知消息调整对应于所述虚拟机的至少一个分组产生速率。
6.权利要求1的方法,进一步包括:
将每个分组流的每个虚拟流标识符映射至对应的隧道端点;以及
将每个拥塞点的每个虚拟拥塞点标识符映射至对应的隧道端点。
7.权利要求1的方法,其中:
每个虚拟机产生的每个分组流独立地由包括覆盖卸载逻辑的物理网络接口卡(NIC)标识。
8.权利要求1的方法,进一步包括:
接收用于每个分组的隧道参数;以及
基于用于所述分组的隧道参数将每个分组用封装数据进行封装,其中所述封装数据包括用于所述分组的拥塞通知标签的副本,以使所述封装后分组包括最外面拥塞通知标签和最里面拥塞通知标签。
9.权利要求8的方法,进一步包括:
经由包括至少一个覆盖交换机和至少一个非覆盖交换机的多个交换机分发分组;
其中,如果分组的最外面拥塞通知标签与所述最里面通知标签不同,那么每个覆盖交换机处理分组的最里面拥塞通知标签;
其中每个非覆盖交换机处理分组的最外面拥塞通知标签。
10.权利要求1的方法,其中所述虚拟联网系统与所述虚拟联网系统下层的物理组件交互操作。
11.一种虚拟联网系统,包括:
多个虚拟网络,其中每个虚拟网络包括至少一个配置用于产生一个或多个分组流的虚拟机;以及
对于每个虚拟网络,包括通信管理模块的物理网络接口卡(NIC),配置用于:
将所述虚拟网络的每个虚拟机产生的每个分组流的每个分组用包括所述分组流对应的虚拟流标识符的拥塞通知标签进行标记;
将每个分组流映射至所述虚拟网络对应的隧道端点,其中所述分组流的每个分组经由所述对应的隧道端点分发;
为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中所述拥塞通知消息包括所述拥塞点的虚拟拥塞点标识符以及导致所述拥塞点处分组拥塞的虚拟机的源地址;
将每个拥塞点映射至对应的隧道端点,其中用于所述拥塞点的每个拥塞通知消息经由所述对应的隧道端点分发,并且其中所述对应的虚拟隧道端点将所述拥塞通知消息转发至导致所述拥塞点处分组拥塞的虚拟机。
12.权利要求11的系统,其中:
每个拥塞点从对应的隧道端点为所述拥塞点接收分组。
13.权利要求11的系统,其中:
虚拟机的源地址包括所述虚拟机的媒体控制协议(MAC)地址。
14.权利要求11的系统,其中:
用于每个拥塞点的每个拥塞通知消息被转发至导致所述拥塞点处分组拥塞的虚拟机的虚拟网络接口卡(vNIC)。
15.权利要求11的系统,其中:
对于每个接收拥塞通知消息的虚拟机,对应于所述虚拟机的至少一个分组产生速率基于所述拥塞通知消息进行调整。
16.权利要求11的系统,其中:
用于每个虚拟网络的每个物理NIC进一步配置用于:
接收用于每个分组的隧道参数;以及
基于用于所述分组的隧道参数将每个分组用封装数据进行封装,其中所述封装数据包括用于所述分组的拥塞通知标签的副本,以使所述封装后分组包括最外面拥塞通知标签和最里面拥塞通知标签。
17.权利要求16的系统,进一步包括:
用于分发分组的多个交换机,其中所述多个交换机包括至少一个覆盖交换机和至少一个非覆盖交换机;
其中,如果分组的最外面拥塞通知标签与所述最里面通知标签不同,那么每个覆盖交换机处理分组的最里面拥塞通知标签;以及
其中每个非覆盖交换机处理分组的最外面拥塞通知标签。
18.权利要求11的系统,其中所述虚拟联网系统与所述虚拟联网系统下层的物理组件交互操作。
19.一种用于在包括多个虚拟网络的虚拟联网系统中量化拥塞通知的计算机程序产品,其中每个虚拟网络包括配置用于产生一个或多个分组流的至少一个虚拟机,该计算机程序产品包括其上包括程序代码的计算机可读存储介质,该程序代码被计算机执行时:
用包括所述分组流对应的虚拟流标识符的拥塞通知标签对每个分组流的每个分组进行标记;
将每个分组流映射至对应的隧道端点,其中所述分组流的每个分组经由所述对应的隧道端点分发;
为与每个分组流相关联的每个拥塞点产生拥塞通知消息,其中所述拥塞通知消息包括所述拥塞点的虚拟拥塞点标识符以及导致所述拥塞点处分组拥塞的虚拟机的源地址;以及
将每个拥塞点映射至对应的隧道端点,其中用于所述虚拟拥塞点的每个拥塞通知消息经由所述对应的隧道端点分发,并且其中所述对应的虚拟隧道端点将所述拥塞通知消息转发至导致所述拥塞点处分组拥塞的虚拟机。
20.权利要求19的计算机程序产品,其中:
每个拥塞点从对应的隧道端点为所述拥塞点接收分组;
虚拟机的源地址包括所述虚拟机的媒体控制协议(MAC)地址;以及
对于每个接收拥塞通知消息的虚拟机,基于所述拥塞通知消息调整对应于所述虚拟机的至少一个分组产生速率。
CN201480009158.3A 2013-03-15 2014-03-06 虚拟联网系统中的量化拥塞通知的方法和系统 Active CN104995880B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/840,492 US9112801B2 (en) 2013-03-15 2013-03-15 Quantized congestion notification in a virtual networking system
US13/840,492 2013-03-15
PCT/CN2014/073012 WO2014139374A1 (en) 2013-03-15 2014-03-06 Quantized congestion notification in a virtual networking system

Publications (2)

Publication Number Publication Date
CN104995880A true CN104995880A (zh) 2015-10-21
CN104995880B CN104995880B (zh) 2017-11-24

Family

ID=51526634

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480009158.3A Active CN104995880B (zh) 2013-03-15 2014-03-06 虚拟联网系统中的量化拥塞通知的方法和系统

Country Status (6)

Country Link
US (1) US9112801B2 (zh)
JP (1) JP6388609B2 (zh)
CN (1) CN104995880B (zh)
DE (1) DE112014000415B4 (zh)
GB (1) GB2525134B (zh)
WO (1) WO2014139374A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108234349A (zh) * 2017-12-22 2018-06-29 中国联合网络通信集团有限公司 提高soa系统健壮性的方法和装置
CN109314666A (zh) * 2016-04-12 2019-02-05 Nicira股份有限公司 用于拥塞感知负载均衡的虚拟隧道端点
CN111124659A (zh) * 2018-11-01 2020-05-08 深信服科技股份有限公司 一种异构云网络互通系统及方法
CN113098752A (zh) * 2015-12-02 2021-07-09 Nicira股份有限公司 多个隧道端点上的负载平衡
US11436037B2 (en) 2015-12-02 2022-09-06 Nicira, Inc. Learning of tunnel endpoint selections
US11743191B1 (en) 2022-07-25 2023-08-29 Vmware, Inc. Load balancing over tunnel endpoint groups
US11889346B2 (en) 2022-03-21 2024-01-30 Vmware, Inc. Quality-aware user data forwarding in mobile communications systems

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9898317B2 (en) 2012-06-06 2018-02-20 Juniper Networks, Inc. Physical path determination for virtual network packet flows
US9143582B2 (en) 2013-03-08 2015-09-22 International Business Machines Corporation Interoperability for distributed overlay virtual environments
US9432287B2 (en) 2013-03-12 2016-08-30 International Business Machines Corporation Virtual gateways and implicit routing in distributed overlay virtual environments
US9374241B2 (en) 2013-03-14 2016-06-21 International Business Machines Corporation Tagging virtual overlay packets in a virtual networking system
US9462088B2 (en) * 2013-04-02 2016-10-04 Cisco Technology, Inc. Offload operations for overlay networks
US9497125B2 (en) 2013-07-28 2016-11-15 Mellanox Technologies Ltd. Congestion control enforcement in a virtualized environment
US10027605B2 (en) * 2013-08-26 2018-07-17 Vmware, Inc. Traffic and load aware dynamic queue management
US9686581B2 (en) 2013-11-07 2017-06-20 Cisco Technology, Inc. Second-screen TV bridge
US9762497B2 (en) * 2013-11-26 2017-09-12 Avago Technologies General Ip (Singapore) Pte. Ltd. System, method and apparatus for network congestion management and network resource isolation
US9703743B2 (en) * 2014-03-31 2017-07-11 Juniper Networks, Inc. PCIe-based host network accelerators (HNAS) for data center overlay network
US9485191B2 (en) 2014-03-31 2016-11-01 Juniper Networks, Inc. Flow-control within a high-performance, scalable and drop-free data center switch fabric
US9479457B2 (en) 2014-03-31 2016-10-25 Juniper Networks, Inc. High-performance, scalable and drop-free data center switch fabric
US10222935B2 (en) 2014-04-23 2019-03-05 Cisco Technology Inc. Treemap-type user interface
US9444754B1 (en) * 2014-05-13 2016-09-13 Chelsio Communications, Inc. Method for congestion control in a network interface card
FR3031425A1 (fr) * 2015-01-05 2016-07-08 Orange Dispositif et procede de controle d'un coeur de reseau ip
US9967906B2 (en) 2015-01-07 2018-05-08 Cisco Technology, Inc. Wireless roaming using a distributed store
US9985837B2 (en) * 2015-07-23 2018-05-29 Cisco Technology, Inc. Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment
US10009277B2 (en) 2015-08-04 2018-06-26 Mellanox Technologies Tlv Ltd. Backward congestion notification in layer-3 networks
US10432520B2 (en) * 2015-08-28 2019-10-01 Nicira, Inc. Traffic forwarding between geographically dispersed sites
US10237376B2 (en) 2015-09-29 2019-03-19 Mellanox Technologies, Ltd. Hardware-based congestion control for TCP traffic
CN112422393B (zh) * 2015-12-31 2022-03-25 华为技术有限公司 可扩展虚拟局域网报文发送方法、计算机设备和可读介质
WO2017138220A1 (ja) * 2016-02-12 2017-08-17 ソニー株式会社 情報処理方法および情報処理装置
US10075373B2 (en) * 2016-08-26 2018-09-11 Viasat, Inc. Methods and apparatus for providing traffic forwarder via dynamic overlay network
US10326204B2 (en) 2016-09-07 2019-06-18 Cisco Technology, Inc. Switchable, oscillating near-field and far-field antenna
US10372520B2 (en) 2016-11-22 2019-08-06 Cisco Technology, Inc. Graphical user interface for visualizing a plurality of issues with an infrastructure
US10739943B2 (en) 2016-12-13 2020-08-11 Cisco Technology, Inc. Ordered list user interface
US10243840B2 (en) 2017-03-01 2019-03-26 Juniper Networks, Inc. Network interface card switching for virtual networks
US10552186B2 (en) * 2017-05-15 2020-02-04 International Business Machines Corporation Avoiding overloading of network adapters in virtual environments
US10440723B2 (en) 2017-05-17 2019-10-08 Cisco Technology, Inc. Hierarchical channel assignment in wireless networks
US10555341B2 (en) 2017-07-11 2020-02-04 Cisco Technology, Inc. Wireless contention reduction
US10440031B2 (en) 2017-07-21 2019-10-08 Cisco Technology, Inc. Wireless network steering
US10735981B2 (en) 2017-10-10 2020-08-04 Cisco Technology, Inc. System and method for providing a layer 2 fast re-switch for a wireless controller
US10375667B2 (en) 2017-12-07 2019-08-06 Cisco Technology, Inc. Enhancing indoor positioning using RF multilateration and optical sensing
US10862867B2 (en) 2018-04-01 2020-12-08 Cisco Technology, Inc. Intelligent graphical user interface
US10505718B1 (en) 2018-06-08 2019-12-10 Cisco Technology, Inc. Systems, devices, and techniques for registering user equipment (UE) in wireless networks using a native blockchain platform
US10673618B2 (en) 2018-06-08 2020-06-02 Cisco Technology, Inc. Provisioning network resources in a wireless network using a native blockchain platform
US10873636B2 (en) 2018-07-09 2020-12-22 Cisco Technology, Inc. Session management in a forwarding plane
US10671462B2 (en) 2018-07-24 2020-06-02 Cisco Technology, Inc. System and method for message management across a network
US11252040B2 (en) 2018-07-31 2022-02-15 Cisco Technology, Inc. Advanced network tracing in the data plane
US10623949B2 (en) 2018-08-08 2020-04-14 Cisco Technology, Inc. Network-initiated recovery from a text message delivery failure
US10735209B2 (en) 2018-08-08 2020-08-04 Cisco Technology, Inc. Bitrate utilization feedback and control in 5G-NSA networks
US10284429B1 (en) 2018-08-08 2019-05-07 Cisco Technology, Inc. System and method for sharing subscriber resources in a network environment
US10949557B2 (en) 2018-08-20 2021-03-16 Cisco Technology, Inc. Blockchain-based auditing, instantiation and maintenance of 5G network slices
US10374749B1 (en) 2018-08-22 2019-08-06 Cisco Technology, Inc. Proactive interference avoidance for access points
US10567293B1 (en) 2018-08-23 2020-02-18 Cisco Technology, Inc. Mechanism to coordinate end to end quality of service between network nodes and service provider core
US10230605B1 (en) 2018-09-04 2019-03-12 Cisco Technology, Inc. Scalable distributed end-to-end performance delay measurement for segment routing policies
US10652152B2 (en) 2018-09-04 2020-05-12 Cisco Technology, Inc. Mobile core dynamic tunnel end-point processing
US10779188B2 (en) 2018-09-06 2020-09-15 Cisco Technology, Inc. Uplink bandwidth estimation over broadband cellular networks
US11558288B2 (en) 2018-09-21 2023-01-17 Cisco Technology, Inc. Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks
US10285155B1 (en) 2018-09-24 2019-05-07 Cisco Technology, Inc. Providing user equipment location information indication on user plane
US10601724B1 (en) 2018-11-01 2020-03-24 Cisco Technology, Inc. Scalable network slice based queuing using segment routing flexible algorithm
GB2602337A (en) 2020-12-23 2022-06-29 Larkfleet Smart Homes Ltd Electrical system for a residential site

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110299532A1 (en) * 2010-06-08 2011-12-08 Brocade Communications Systems, Inc. Remote port mirroring
US20120307638A1 (en) * 2007-08-21 2012-12-06 Cisco Technology, Inc. Backward congestion notification
CN102835080A (zh) * 2010-04-22 2012-12-19 国际商业机器公司 网络数据拥塞管理系统

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6426944B1 (en) 1998-12-30 2002-07-30 At&T Corp Method and apparatus for controlling data messages across a fast packet network
US7424019B1 (en) 2001-11-27 2008-09-09 Marvell Israel (M.I.S.L) Ltd. Packet header altering device
US7188364B2 (en) 2001-12-20 2007-03-06 Cranite Systems, Inc. Personal virtual bridged local area networks
US7478173B1 (en) 2003-12-18 2009-01-13 Wmware, Inc. Method and system for sharing a network connection in a virtual computer system
US7843925B2 (en) 2004-01-20 2010-11-30 Nortel Networks Limited Ethernet differentiated services architecture
US7702742B2 (en) 2005-01-18 2010-04-20 Fortinet, Inc. Mechanism for enabling memory transactions to be conducted across a lossy network
US8892706B1 (en) 2010-06-21 2014-11-18 Vmware, Inc. Private ethernet overlay networks over a shared ethernet in a virtual environment
CN100542122C (zh) 2006-09-29 2009-09-16 华为技术有限公司 一种vlan交换隧道的复用方法和vlan交换域
EP1936880A1 (en) 2006-12-18 2008-06-25 British Telecommunications Public Limited Company Method and system for congestion marking
KR100865722B1 (ko) 2007-06-25 2008-10-28 순천대학교 산학협력단 유비쿼터스 센서 네트워크에서 이씨엔 비트를 이용한혼잡제어 방법
US7885276B1 (en) 2008-09-30 2011-02-08 Emc Corporation Isolating network traffic in multi-tenant virtualization environments
US8416692B2 (en) 2009-05-28 2013-04-09 Microsoft Corporation Load balancing across layer-2 domains
JP5403061B2 (ja) 2009-09-24 2014-01-29 日本電気株式会社 仮想サーバ間通信識別システム、及び仮想サーバ間通信識別方法
US8693339B2 (en) 2009-12-10 2014-04-08 Verizon Patent And Licensing Inc. LDP extension for forwarding path congestion notification
JP5621996B2 (ja) * 2010-02-12 2014-11-12 日本電気株式会社 ネットワークシステム及び輻輳制御方法
JP5241763B2 (ja) * 2010-03-24 2013-07-17 株式会社日立製作所 通信システムおよび通信システムの制御方法
US8407366B2 (en) 2010-05-14 2013-03-26 Microsoft Corporation Interconnecting members of a virtual network
US8989187B2 (en) 2010-06-04 2015-03-24 Coraid, Inc. Method and system of scaling a cloud computing network
US8929218B2 (en) 2010-09-10 2015-01-06 Brocade Communication Systems, Inc. Congestion notification across multiple layer-2 domains
US8644194B2 (en) 2010-10-15 2014-02-04 International Business Machines Corporation Virtual switching ports on high-bandwidth links
US8718061B2 (en) 2010-11-19 2014-05-06 Industrial Technology Research Institute Data center network system and packet forwarding method thereof
US20120173757A1 (en) 2011-01-05 2012-07-05 International Business Machines Corporation Routing optimization for virtual machine migration between geographically remote data centers
JP5625978B2 (ja) * 2011-02-10 2014-11-19 富士通株式会社 通信制御プログラム、情報処理装置およびパケット通信方法
US8774213B2 (en) 2011-03-30 2014-07-08 Amazon Technologies, Inc. Frameworks and interfaces for offload device-based packet processing
US20120290695A1 (en) 2011-05-13 2012-11-15 International Business Machines Corporation Distributed Policy Service
US9450873B2 (en) 2011-06-28 2016-09-20 Microsoft Technology Licensing, Llc Performance isolation for clouds
US8665706B2 (en) 2011-09-27 2014-03-04 Verizon Patent And Licensing Inc. Redundancy in point-to-multipoint (PMP) backhaul networks
CN102857416B (zh) 2012-09-18 2016-09-28 中兴通讯股份有限公司 一种实现虚拟网络的方法、控制器和虚拟网络
WO2014052485A1 (en) 2012-09-26 2014-04-03 Huawei Technologies Co. Ltd. Overlay virtual gateway for overlay networks
CN102946354B (zh) 2012-11-15 2016-11-23 华为技术有限公司 一种报文转发的方法、装置及网络设备
US9143582B2 (en) 2013-03-08 2015-09-22 International Business Machines Corporation Interoperability for distributed overlay virtual environments
US9432287B2 (en) 2013-03-12 2016-08-30 International Business Machines Corporation Virtual gateways and implicit routing in distributed overlay virtual environments
US9374241B2 (en) 2013-03-14 2016-06-21 International Business Machines Corporation Tagging virtual overlay packets in a virtual networking system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120307638A1 (en) * 2007-08-21 2012-12-06 Cisco Technology, Inc. Backward congestion notification
CN102835080A (zh) * 2010-04-22 2012-12-19 国际商业机器公司 网络数据拥塞管理系统
US20110299532A1 (en) * 2010-06-08 2011-12-08 Brocade Communications Systems, Inc. Remote port mirroring

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113098752A (zh) * 2015-12-02 2021-07-09 Nicira股份有限公司 多个隧道端点上的负载平衡
CN113098752B (zh) * 2015-12-02 2022-07-22 Nicira股份有限公司 实现多个隧道端点上负载平衡的方法、设备、系统和介质
US11436037B2 (en) 2015-12-02 2022-09-06 Nicira, Inc. Learning of tunnel endpoint selections
CN109314666A (zh) * 2016-04-12 2019-02-05 Nicira股份有限公司 用于拥塞感知负载均衡的虚拟隧道端点
CN108234349A (zh) * 2017-12-22 2018-06-29 中国联合网络通信集团有限公司 提高soa系统健壮性的方法和装置
CN111124659A (zh) * 2018-11-01 2020-05-08 深信服科技股份有限公司 一种异构云网络互通系统及方法
CN111124659B (zh) * 2018-11-01 2023-03-17 深信服科技股份有限公司 一种异构云网络互通系统及方法
US11889346B2 (en) 2022-03-21 2024-01-30 Vmware, Inc. Quality-aware user data forwarding in mobile communications systems
US11743191B1 (en) 2022-07-25 2023-08-29 Vmware, Inc. Load balancing over tunnel endpoint groups

Also Published As

Publication number Publication date
CN104995880B (zh) 2017-11-24
JP6388609B2 (ja) 2018-09-12
GB201515001D0 (en) 2015-10-07
DE112014000415B4 (de) 2023-08-17
GB2525134A (en) 2015-10-14
US9112801B2 (en) 2015-08-18
DE112014000415T5 (de) 2015-10-08
US20140269321A1 (en) 2014-09-18
JP2016515345A (ja) 2016-05-26
GB2525134B (en) 2017-02-22
WO2014139374A1 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
CN104995880A (zh) 虚拟联网系统中的量化拥塞通知
CN104052644A (zh) 用于在虚拟联网系统中进行分组分发的方法和系统
CN104038401B (zh) 用于分布式覆盖虚拟环境的互操作性的方法和系统
CN104717137B (zh) 管理覆盖网络中的数据流的方法和系统
US10389542B2 (en) Multicast helper to link virtual extensible LANs
US20210243247A1 (en) Service mesh offload to network devices
US20200153716A1 (en) System and method for obtaining micro-service telemetry data
CN104717156A (zh) 使用网络接口卡管理软件定义网络中的数据流的方法和系统
CN105706044B (zh) 基于排名的工作保持调度器
CN102334112B (zh) 用于虚拟机网络的方法和系统
US8954992B2 (en) Distributed and scaled-out network switch and packet processing
US9432287B2 (en) Virtual gateways and implicit routing in distributed overlay virtual environments
CN104320350B (zh) 用于提供基于信用的流控制的方法及系统
CN103477588B (zh) 刀片服务器中刀片间网络业务的分类和管理方法和系统
CN105450690B (zh) 虚拟机管理程序执行的方法和虚拟机管理系统
US20150131669A1 (en) Virtual network overlays
CN104052789A (zh) 用于虚拟联网系统的负载平衡
US20180006930A1 (en) Virtual extensible lan intercommunication mechanism for multicast in networking
US10230795B2 (en) Data replication for a virtual networking system
US9590855B2 (en) Configuration of transparent interconnection of lots of links (TRILL) protocol enabled device ports in edge virtual bridging (EVB) networks
US20220021608A1 (en) Software defined networking with en-route computing
US20210320988A1 (en) Information centric network unstructured data carrier
CN110089078A (zh) 提供经由动态覆盖网络的业务转发器的方法和设备
US9374308B2 (en) Openflow switch mode transition processing
US20230032441A1 (en) Efficient flow management utilizing unified logging

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211117

Address after: USA New York

Patentee after: Qindarui Co.

Address before: USA New York

Patentee before: International Business Machines Corp.