用于数据流处理的方法和装置的制造方法

文档序号:8449508阅读:325来源:国知局
用于数据流处理的方法和装置的制造方法
【专利说明】
[0001]发明背景
技术领域
[0002]本发明一般来说是关于数据网络,并且更明确来说是关于用于控制数据网络装置之间的数据流的系统和方法。
现有技术
[0003]例如数据中心的大型网络环境可提供因特网和企业内部网服务来支持业务和组织机构。典型数据中心可收容各种类型的电子设备,例如计算机、域名系统(DNS)服务器、网络交换机、路由器、数据存储装置等等。数据中心可具有数百或数千个例如服务器节点的已互连主机装置,这些主机装置经由包括交换机、路由器等的交换架构而彼此间通信及与外部装置通信。在主机装置与网络交换机之间的数据交换中,主机装置例如在以太网帧中将目的地媒体存取控制(MAC)地址与数据有效负载传输到交换机。交换机转而解码MAC地址以确定数据有效负载的预期目的地。常规网络交换机通常配置有内容可寻址存储器(CAM)表,该CAM表包含例如目的地装置MAC地址和交换机端口信息的帧转发信息,该帧转发信息用于将数据输出到目的地装置。

【发明内容】

[0004]根据方面,提供了一种用于管理网络环境中的数据交换的方法。将流标签传输到源装置。该流标签包含对应于聚合装置处的端口的端口标识。从源装置接收包含流标签的数据包。在聚合装置处认证数据包。根据在已认证数据包的流标签中的端口标识来输出该已认证数据包。
[0005]根据另一方面,提供了一种用于处理数据包的方法。源装置接收在聚合装置处产生的流标签和凭据。该流标签包含路由数据。将包含流标签和对应的数据单元的数据包从源装置输出到聚合装置。
[0006]根据另一方面,提供了数据网络,其包括源装置、目的地装置和聚合装置。源装置在数据传送操作中将流标签指派给数据包。目的地装置在数据传送操作中接收数据包。聚合装置具有第一端口和第二端口,源装置与该第一端口通信且目的地装置与该第二端口通信。聚合装置包含包管理装置,该包管理装置处理流标签中的路由数据并验证密封流标签的凭据。流标签中的路由数据包含对应于第二端口的端口标识。聚合装置根据流标签中的端口标识将数据包从源装置传送到目的地装置。
[0007]根据另一方面,提供了聚合装置,其包括:与源装置通信的第一端口 ;与目的地装置通信的第二端口 ;和包括映射表的包管理装置。映射表包含第一端口与源装置之间的第一映射和第二端口与目的地装置之间的第二映射。包管理装置从源装置接收数据单元并根据与该数据单元一起提供的关于第二端口的信息将数据路由到目的地装置。
[0008]根据另一方面,提供了计算机程序产品,其包括计算机可读存储介质,该计算机可读存储介质中体现有计算机可读程序代码。计算机可读程序代码包括经配置以在源装置处将流标签指派给数据包的计算机可读程序代码。流标签包含对应于聚合装置处的端口的端口标识。目的地装置与聚合装置处的端口通信。计算机可读程序代码还包括经配置以在聚合装置处认证数据包的计算机可读程序代码和经配置以根据已认证数据包中的端口标识经由聚合装置将数据包从源装置输出到目的地装置的计算机可读程序代码。
[0009]附图简述
[0010]可通过结合附图参考以下描述来更好地理解本发明的以上及另外的优点,其中相同的数字是指示各图中相同的结构元件和特征。图式未必按比例绘制,而是着重于说明本发明的原理。
[0011]图1是计算环境的框图,可在该计算环境中实践本发明的概念的实施例;
[0012]图2是根据实施例的图1的聚合系统的包管理装置的框图;
[0013]图3是根据实施例的用于管理网络环境中的数据交换的方法的流程图;
[0014]图4是根据另一实施例的用于管理网络环境中的数据交换的方法的流程图;
[0015]图5是根据实施例的用于认证包的方法的流程图;
[0016]图6是根据实施例的说明包的内容的图,该包是从服务器节点输出到聚合装置;和
[0017]图7是根据实施例的说明验证过程的详细框图。
【具体实施方式】
[0018]在以下描述中,虽然陈述了特定细节,但本领域普通技术人员应了解,可在没有至少一些这些细节的情况下实践本系统和方法。在一些例子中,没有详细描述已知的特征或过程以免混淆本发明。
[0019]常规服务器节点将数据包传输到网络交换机,网络交换机根据与该数据包一起提供的源MAC地址和目的地MAC地址将数据包转发到其目的地装置。但是,对交换机的CAM表的管理需要一组逻辑密集型步骤,这些步骤包含MAC地址查找或相关解码功能、MAC地址-端口映射等等。这种代价高昂的处理在虚拟网络配置中可被放大,其中针对到达网络交换机的每个连接提供了虚拟机(VM),且其中每一 VM需要一个或多个MAC地址。
[0020]本发明的概念的一些特征可包含用于达成下列目标的方法:有效控制在例如数据中心的网络环境中在与聚合装置通信的一个或多个服务器节点之间进行交换的数据包、帧、信元或其它固定量或可变量的数据的路由;和实施关于数据传送的安全性相关性质(例如,源MAC地址验证、虚拟局域网(VLAN)成员资格和目的地MAC地址筛选)。聚合装置从源装置接收经由聚合装置将数据包路由到目的地装置的请求。聚合装置产生流标签,该流标签包含被映射到目的地装置的MAC地址的端口标识符等等。聚合装置还可产生可用于密封流标签的凭据。流标签是由源装置接收的,并存储在流标签高速缓存中。除凭据之外,流标签还可包含交换机端口号或其它路由信息,聚合装置使用这些信息而不是MAC地址将数据路由到目的地装置。在随后进行的数据交换期间,聚合装置将从源装置接收到的包导引到对应于流标签中的端口号或相关标识符的端口。聚合装置使用来自接收到的流标签的端口号等等来路由数据,而不是使用MAC地址来路由数据。因此,MAC地址查找是不必要的。这准许在聚合装置处的软件中而不是以硬件密集型CAM表执行解码功能等等,由此减少一般在处理MAC地址时需要的硬件操作。
[0021]本发明的概念的相关、额外或备选特征还可降低使MAC地址遭受欺骗(spoofing)等等的风险,在虚拟化应用中尤为如此。这可以通过聚合装置在将包路由到目的地装置之前验证与流标签一起接收的凭据来实现,该凭据密封流标签内容。可以通过在聚合装置处重新计算凭据并将其与接收到的凭据做比较来验证凭据。
[0022]图1是计算环境10的框图,可在该计算环境中实践本发明的概念的实施例。计算环境10可包含数据网络,其中在网络的元件之间交换数据。计算环境10包含多个服务器节点112-1至112-N(—般指示为112),其中N是大于O的整数。服务器节点112各自通过高速外围组件互连(PCIe)连接器等等而耦合到聚合装置200,以与聚合装置200建立通信路径116。服务器节点112可包括通过PCIe接口等等而附接到聚合装置200的单套接字服务器或相关微处理器装置。可构建和布置其它低功率主机装置以与聚合装置200通信。可将服务器节点112构建和布置为处理器群集或其它熟知的布置。一或多个服务器节点112可为虚拟化的或非虚拟化的。
[0023]服务器节点112包含例如NIC的一或多个网络接口。虚拟化服务器节点和/或聚合装置200可包含多个虚拟网络接口卡(vNIC)。
[0024]服务器节点112包含处理器102,该处理器可包含一个或多个微处理器、中心处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、专用集成电路(ASIC)、存储器控制器、多核心处理器或其它类型的数据处理装置,或这些和其它装置的部分以及组合。
[0025]服务器节点112还包含存储器(未示出)。存储器可为非易失性或易失性存储器,例如DRAM或静态RAM(SRAM)。存储在存储器104处的有操作系统、一个或多个应用程序或由处理器102执行的其它软件程序的程序代码。节点接口 122、装置驱动器124、流标签高速缓存126和网络堆栈128中的一些或全部也存储在存储器104处。
[0026]节点接口 122可包含PCIe端口或相关网络连接器,并与装置驱动器124通信以与聚合装置200建立通信路径116。
[0027]流标签高速缓存126存储MAC地址-路由信息映射数据。路由信息可包含对应于目的地装置的外出端口或其它标识符。在实施例中,流标签高速缓存126将例如{目的地MAC地址、VLAN标签(如果存在)}的元组映射到可变长度流标签。举例来说,流标签高速缓存126可将服务器节点112-2的MAC地址与聚合装置200处的端口 2映射。流标签可插入到标头中,该标头是与以太网帧或例如信元、包等等的其它数据单元一起传输到聚合装置200的。
[0028]驱动器124也被称作主机驱动器,其可管理流标签高速缓存126。在实施例中,驱动器124包含虚拟队列接口 132,该虚拟队列接口与受聚合装置200处的vNIC支持的虚拟队列(或虚拟队列218)通信。
[0029]网络堆栈128可包含用于网络通信的多层软件堆栈。网络堆栈128可包含传输控制协议(TCP)、用户数据报协议(UDP)或因特网协议(IP)套件中所包含的相关协议。网络堆栈128可包含例如遵守开放系统互连(OSI)模型的其它网络、传送和/或链路层或其它抽象层。举例来说,网络堆栈128的链路层可附加源和目的地MAC地址,从而允许将数据包导引到服务器节点112-1上的特定网络接口(例如,接口 12
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1