使用网络接口卡管理软件定义网络中的数据流的方法和系统的制作方法

文档序号:8398058阅读:310来源:国知局
使用网络接口卡管理软件定义网络中的数据流的方法和系统的制作方法
【技术领域】
[0001] 本发明涉及计算机网络,更具体地涉及使用网络接口卡管理软件定义网络中的数 据流。
【背景技术】
[0002] 在数据中也的环境中,典型的主机机器运行许多虚拟机(VM),该些虚拟机向其它 虚拟或非虚拟机提供服务或从其接收服务。在提供或接收服务时,主机中的VM可W彼此通 信或者可W与在其它主机上运行的其它VM通信。该些机器之间的通信W数据流的形式,数 据流包括具有共同属性(例如共同报头)的数据分组。在某些情况下,主机中的VM共享附 接到该主机中的一个或多个网络接口控制器,W发送或接收数据流。

【发明内容】

[0003] 实施例包括用于管理软件定义网络(SDN)中的数据流的方法、系统和计算机程序 产品。根据本发明的一个实施例,提供了一种用于在主机的网络接口卡(NIC)处管理数据 流的计算机实现的方法。所述NIC包括端口。所述方法从运行在所述主机中的虚拟转发部 件接收属于数据流的分组。所述方法通过NIC基于在数据流、队列与多个通道之间的映射 识别用于存储要通过所述端口发送到所述主机之外的数据流的若干队列之一。所述方法将 所述分组放置于所识别的队列中,W便将所述分组通过所述端口发送到所述主机之外。
[0004] 根据本发明的另一实施例,提供了用于在主机的NIC处管理数据流的计算机程序 产品。所述NIC包括端口。所述计算机程序产品包括有形存储介质,其可由处理电路读取 并存储由处理电路执行来执行方法的指令。所述方法从运行在所述主机中的虚拟转发部件 接收属于数据流的分组。所述方法通过NIC基于在数据流、队列与多个通道之间的映射识 别用于存储要通过所述端口发送到所述主机之外的数据流的若干队列之一。所述方法将所 述分组放置于所识别的队列中,W便将所述分组通过所述端口发送到所述主机之外。
[0005] 根据本发明的再一实施例,提供了一种用于管理数据流的系统。所述系统包括与 主机通信地连接的转发部件,所述主机上运行多个虚拟机(VM)。所述系统被配置为执行方 法。所述方法从所述主机接收分组。所述分组属于来源于所述主机的所述虚拟机之一的数 据流。所述分组用通道报头和网络标识符封装。所述方法通过检查所封装的分组的所述网 络标识符W及报头来识别所述数据流。所述方法将所述数据流映射到由所述通道报头定义 的通道。所述方法将所封装的分组转发到由所述通道报头指明的目的地。
[0006] 通过本发明的技术实现附加特征和优点。本发明的其它实施例和方面在本文中进 行了详细描述,并被认为是所要求权利的发明的一部分。为了更好地理解具有优点和特征 的本发明,参考说明书和附图。
【附图说明】
[0007] 在说明书完结时的权利要求中特别地指出并清楚地主张了被认作本发明的主题。 结合附图,从下面对的详细描述中,本发明的上述和/或其他特征和优点是显然的,其中:
[0008] 图1描绘根据一实施例的云计算节点;
[0009] 图2描绘根据一实施例的云计算环境;
[0010]图3描绘根据一实施例的抽象模型层;
[0011] 图4描绘根据一实施例的用于管理数据流的系统的框图;
[0012] 图5描绘根据一实施例的用于在NIC处管理数据流的流程图;
[0013] 图6描绘根据一实施例的用于在物理转发部件处管理数据流的流程图;
[0014] 图7描绘根据一实施例的用于处理拥塞消息的流程图;
[0015] 图8描绘根据一实施例的用于配置虚拟转发部件的流程图。
【具体实施方式】
[0016] 示例实施例涉及通过主机的物理网络接口卡(NIC)W及通过与NIC通信地连接的 物理转发部件(例如交换机或网关),管理来源于运行在主机中的虚拟机的数据流。通常, 对于NIC的物理输出端口有设定量的物理资源(例如,一个或多个物理缓冲器或队列)可 用。通过NIC的输出端口发送到主机之外的所有数据流量共享所关联的物理资源。在一个 实施例中,NIC被配置为将物理缓冲器分区为若干逻辑队列,并将来源于主机内的每个数据 流与一个逻辑队列关联。NIC在将数据流发送到主机之外之前将数据流存储在关联的逻辑 队列中。使用该些逻辑队列,NIC能够分别地调节数据流的数据率。
[0017] 在一个实施例中,NIC用通道报头(也称为承载(underlay)网络报头或外部网络 报头)封装数据流的分组,该通道报头定义两个主机之间或者主机与覆盖网络网关交换机 (overlaygatewayswitch)之间的通道。网络中除了覆盖网络网关交换机之外的连接两 个主机的网络组件(例如,交换机、路由器、网关等)通常仅使用通道报头将分组从一个主 机转发到另一个主机。目P,网络组件不在意通道化数据流的内部封装分组。在一个实施例 中,从NIC接收通道化数据流的网络组件被配置为通过检查内部分组的报头而辨识通道内 不同的数据流。通过辨识通道中的数据流,网络组件可W请求NIC针对数据流分别调节数 据率,而不是请求NIC针对所有通道化数据流整体调节数据率。
[0018] 首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案 的实现却不限于云计算环境,而是能够结合现在已知或W后开发的任何其它类型的计算环 境而实现。
[0019] 云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的 网络访问。可配置计算资源是能够W最小的管理成本或与服务提供者进行最少的交互就能 快速部署和释放的资源,例如可W是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟 机和服务。该种云模式可W包括至少五个特征、至少H个服务模型和至少四个部署模型。
[0020] 特征包括:
[0021] 按需自助式服务;云的消费者在无需与服务提供者进行人为交互的情况下能够单 方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
[0022] 广泛的网络接入;计算能力可W通过标准机制在网络上获取,该种标准机制促进 了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字 助理PDA)对云的使用。
[0023] 资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服 务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况 下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可W在较高抽象程度上 指定位置(例如国家、州或数据中也),因此具有位置无关性。
[0024] 迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,W实现快速扩展, 并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的, 并能在任意时候都能获取任意数量的计算能力。
[00巧]可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户 帐号)的某种抽象程度的计量能力,自动地控巧师优化资源效用。可W监巧1|、控巧师报告资 源使用情况,为服务提供者和消费者双方提供透明度。
[002引服务模型如下:
[0027]软件即服务(Saa巧:向消费者提供的能力是使用提供者在云基础架构上运行的 应用。可W通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户 机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包 括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
[002引平台即服务(Paa巧:向消费者提供的能力是在云基础架构上部署消费者创建或 获得的应用,该些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不 控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制 权,对应用巧管环境配置可能也具有控制权。
[0029] 基础架构即服务(laa巧:向消费者提供的能力是消费者能够在其中部署并运行 包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理 也不
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1