一种基于内容的数据中心网络路由转发方法

文档序号:7554645阅读:177来源:国知局
专利名称:一种基于内容的数据中心网络路由转发方法
技术领域
本发明属于数据中心网络技术领域,具体涉及一种基于内容的数据中心网络路由转发方法。
背景技术
随着数据中心规模的扩大,服务器(主机)与交换机数量迅速增多,应用层程序的数量激增且种类呈现多样化,这对于数据中心网络性能提出了严峻挑战。常见的基于内容的数据中心服务如分布式计算引擎MapReduce和分布式文件系统GFS都是高带宽需求型服务,增加可用带宽成为了当前数据中心网络的一个核心问题。现有解决方案大都集中在增加链路数目以及链路带宽。如以交换机为中心的新型拓扑结构=Fat-Tree (胖树),VL2 (虚拟链路层);以主机为中心的拓扑结构:BCube (—种高性能的数据中心拓扑结构),DCell (—种递归定义的数据中心拓扑结构);以及光链路策略:c-Through (—种混合式数据包交换与电路交换拓扑结构)。但是,这些方案同时也带来巨大的硬件开销和能耗开销。采用端缓存机制可以为基于内容的数据中心网络有效的提升可用带宽能力,并且不占用任何网络资源。然而传统的基于IP的路由策略无法有效的适用于基于内容的缓存机制,因此,我们需要设计一种基于内容的路由协议。数据中心网络中的数据流,只有少数的控制包(control packet),通常为I 2个,即开始的请求包(request packet)和最后的结束包(finish packet),其余全都是数据包(data packet)。针对数据包传输遇到的拥塞控制和容错问题,传统的基于IP的TCP传输方式已经解决的非常好。因此,不同于NDN(Named Data Network,内容数据网络)完全摒弃了基于IP的内容转发设计,我们应该保留基于IP的传统TCP传输方式进行内容数据包传输,只是针对内容控制包采取一种基于内容的路由协议,其目的在于为客户主机找到当前数据中心网络拓扑结构中“最近”的数据源,并不干涉数据包的传输。然而,由于数据中心文件系统的集中控制器(controller)负载过高,这种路由协议不能为控制器添加如何额外负担。因此,需要设计一种自适应的基于内容的数据中心网络路由协议方案。

发明内容
本发明旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商业选择。为此,本发明的目的在于提出一种基于内容的数据中心网络路由转发方法,该方法以基于内容的数据中心网络为基础,通过内容与位置混合式路由转发策略,使得交换机优先选择“距离较近”的缓存主机进行路由转发。为了实现上述目的,根据本发明实施例的基于内容的数据中心网络路由转发方法,包括:S1.初始化交换机;S2.转发报文,所述转发报文包括以下步骤:S2.1:若所述交换机收到内容请求包Prai,则所述交换机提取所述内容请求包Prai中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询失败则进入S2.3,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,若匹配失败,则进入S2.3,若匹配成功,则进入S2.2 ;S2.2:若S2.1中匹配成功的所述内容路由转发表项只包含一个输出端口,则直接转发所述内容请求包I中的匹配成功的所述内容路由转发表项包含多个输出端口,优先选择方向向下的输出端口转发所述内容请求包Ρ_,若不存在方向向下的输出端口,则随机选择一个输出端口转发所述内容请求包Prai ;S2.3:查询失败,则以所述内容请求包中的所述内容名称D为基准,删除所述查询失败的内容路由转发表项,匹配失败,则所述交换机提取S2.1中所述内容请求包Prai的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容请求包Prai,若输出端口的方向为方向向上,则根据S2.1中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发;S2.4:若所述交换机收到内容回复包Pmp,则所述交换机提取所述内容回复包Pmp中的内容名称D和目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容回复包Pmp,若输出端口的方向为方向向上,则根据所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发;S2.5:若所述交换机收到内容完成包Pfin,则所述交换机提取所述内容完成包Pfin中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询失败,则根据最近最少使用原则为所述内容路由转发表项插入一条新的表项,所述新的表项的内容名称为D,内容版本号为V,输出端口集合中的端口号为所述内容完成包Pfin进入所述交换机端口的端口号,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,将所述内容完成包Pfin进入所述交换机的端口号插入到所述内容路由转发表项的输出端口集合中;S2.6:所述交换机提取S2.5中所述内容完成包Pfin的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容完成包Pfin,若输出端口的方向为方向向上,则根据S2.5中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发;S2.7:若所述交换机收到内容拒绝包Praj,则所述交换机提取所述内容拒绝包PMj中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,若匹配失败,则从所述内容路由转发表项中删除所述查询成功内容路由转发表项,若匹配成功,则将所述内容拒绝包P&进入所述交换机的端口号从所述内容路由转发表项的输出端口集合中删除;S2.8:所述交换机提取S2.7中所述内容拒绝包Prej的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容拒绝包P&,若输出端口的方向为方向向上,则根据S2.7中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发;S2.9:若所述交换机收到内容数据包Pdata,则根据数据中心网络已有的基于IP的路由协议转发。在本发明的实施例中,所述步骤SI进一步包括:S1.1:设定交换机内容路由转发表项,所述交换机内容路由转发表项包括内容名称D、内容版本号V和输出端口集合,初始状态下所述交换机内容路由转发表项为空;S1.2:设定交换机位置路由转发表项,所述交换机位置路由转发表项为传统基于IP的路由转发表项,以IP地址前缀和掩码长度作为查询条件,对应的查询结果为方向向下或者方向向上的输出端口,初始条件下所述交换机位置路由转发表项根据数据中心网络拓扑发现协议自动建立完毕;s1.3:设定交换机端口方向,所述交换机端口方向在胖树网络拓扑结构中,方向向上比方向向下表示更长的传输路径;S1.4:设定交换机基于内容的路由转发策略,所述交换机基于内容的路由转发策略,对于接收到的内容请求包、内容拒绝包和内容完成包,分别设定所述查询以及匹配策略;
S1.5:设定交换机基于位置的路由转发策略,所述交换机基于位置的路由转发策略对于接收到的内容控制包或内容数据包,分别设定所述转发和基于内容的哈希操作策略。在本发明的实施例中,所述转发即对于一个胖树结构,在机架交换机上,优先转发至本机架内的缓存主机中,在聚合交换机上,优先转发到该聚合交换机所属的胖树拓扑结构中由机架交换机和聚合交换机组成的交换机集合pod内的缓存主机中。在本发明的实施例中,所述内容控制包包括内容请求包、内容回复包、内容完成包和内容拒绝包。根据本发明实施例的基于内容的数据中心网络路由转发方法,以基于内容的数据中心网络为基础,不需要集中控制器参与,通过内容与位置混合式路由转发策略,使得交换机优先选择“距离较近”的缓存主机进行路由转发。路由策略利用数据中心拓扑结构特点,使得交换机仅仅通过端口方向就可以判断出路径的长短。交换机不需要存储内容请求包的信息,内容回复包直接依据基于位置转发规则转发。针对内容数据包的转发,不改变基于IP的TCP传输方式,保证了现有各传输层协议可以直接应用在本发明中。交换机路由转发的同时通过简单的内容版本号匹配查询完成缓存一致性。交换机在基于内容的转发时完成负载均衡。交换机在基于位置的转发时,对于向上的端口采取基于内容的哈希操作,减少冗余存储内容转发表项。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1是根据本发明实施例的基于内容的数据中心网络路由转发方法的ContentFIB (内容路由转发表项)的格式图;图2是根据本发明实施例的基于内容的数据中心网络路由转发方法流程图;图3是根据本发明实施例的基于内容的数据中心网络路由转发方法的初始化交换机的流程图;图4是根据本发明实施例的基于内容的数据中心网络路由转发方法流程图的转发报文流程图;图5是根据本发明实施例的基于内容的数据中心网络路由转发方法的基于内容的路由转发规则图;图6是根据本发明实施例的基于内容的数据中心网络路由转发方法的基于位置的路由转发规则图;图7是根据本发明实施例的基于内容的数据中心网络路由转发方法的内容请求包的转发过程示意图;图8是根据本发明实施例的基于内容的数据中心网络路由转发方法的内容回复包的转发过程示意图;图9是根据本发明实施例的基于内容的数据中心网络路由转发方法的内容完成包的转发过程示意图;图10是根据本发明实施例的基于内容的数据中心网络路由转发方法的内容拒绝包的转发过程示意图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底” “内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。如图1所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的Content FIB (内容路由转发表项)的格式图,内容路由转发表项包括内容名称D、内容版本号V以及输出端口集合。如图2所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法流程图。根据本发明实施例的基于内容的数据中心网络路由转发方法的步骤包括:S1.初始化交换机。如图3所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的初始化交换机的流程图,包括以下步骤:S1.1:设定交换机Content FIB (内容路由转发表项),所述交换机Content FIB(内容路由转发表项)包括内容名称D、内容版本号V和输出端口集合,初始状态下所述交换机Content FIB (内容路由转发表项)为空。S1.2:设定交换机Location FIB (位置路由转发表项),所述交换机Location FIB(位置路由转发表项)为传统基于IP的路由转发表项,以IP地址前缀(IP prefix)和掩码长度(mask length)作为查询条件,对应的查询结果为方向向下或者方向向上的输出端口,初始条件下所述交换机Location FIB (位置路由转发表项)根据数据中心网络拓扑发现协议自动建立完毕。S1.3:设定交换机port direction (端口方向),所述交换机port direction (端口方向)在胖树网络拓扑结构中,方向向上(upward)比方向向下(downward)表示更长的传输路径。S1.4:设定交换机Content-based forwarding (基于内容的路由转发策略),所述交换机Content-based forwarding (基于内容的路由转发策略),对于接收到的内容请求包、内容拒绝包和内容完成包,分别设定查询以及匹配策略,其查询和匹配策略将在下面的转发报文的步骤中详细叙述。S1.5:设定交换机Location-based forwarding(基于位置的路由转发策略),所述交换机Location-based forwarding (基于位置的路由转发策略)对于接收到的内容控制包或内容数据包,分别设定转发和基于内容的哈希操作策略,其转发和基于内容的哈希操作策略将在下面的转发报文的步骤中详细叙述。在这里,内容控制包和内容数据包共同组成了如背景技术中提到的数据中心网络中的数据流,其中内容控制包又包括内容请求包、内容回复包、内容完成包和内容拒绝包四种类型。在上文以及将要描述的以下的文字中涉及到的转发,即对于一个Fat-Tree (胖树)结构,在机架交换机上,优先转发至本机架内的缓存主机中,在聚合交换机上,优先转发到该聚合交换机所属的胖树拓扑结构中由机架交换机和聚合交换机组成的交换机集合pod内的缓存主机中。S2.转发报文。其中,交换机接收到的报文如果类型为内容数据包,那么对于内容数据包的转发,正像背景技术中提到的那样:“针对数据包传输遇到的拥塞控制和容错问题,传统的基于IP的TCP传输方式已经解决的非常好”,那么在本发明实施例中,采用步骤S2.9对基于IP的传统TCP传输方式进行内容数据包传输。如果交换机接收到的报文类型为内容控制包,那么就采用本发明提出的基于内容的数据中心网络路由转发方法,为客户主机找到当前数据中心网络拓扑结构中“最近”的数据源转发,同时在对内容控制包的转发过程中,集中控制器(controller)并不参与,那么这也就解决了集中控制器(controller)负载过高的问题。如图4所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法流程图的转发报文流程图,包括以下步骤:S2.1:若交换机收到内容请求包Prai,则交换机提取内容请求包Prai中的内容名称D和内容版本号V,交换机根据内容名称D查询本地Content FIB (内容路由转发表项),若查询失败则进入S2.3,若查询成功,则交换机根据内容版本号V对查询成功的Content FIB(内容路由转发表项)中的内容版本号V进行匹配,若匹配失败,则进入S2.3,若匹配成功,则进入S2.2。S2.2:若S2.1中匹配成功的Content FIB (内容路由转发表项)只包含一个输出端口,则直接转发内容请求包Prai,若S2.1中的匹配成功的Content FIB (内容路由转发表项)包含多个输出端口,优先选择downward (方向向下)的输出端口转发所述内容请求包Praq,若不存在downward (方向向下)的输出端口,则随机选择一个输出端口转发内容请求包Preq0如图5所示,是根据本发明实施例的基于内容的数据中心网络路由转发方法的基于内容的路由转发规则图,在查询并且匹配成功的情况下,如果Content FIB (内容路由转发表项)的输出端口集合中即包括downward (方向向下)又包括upward (方向向上),则优先选择downward (方向向下),即如图中所示优先选择downward (方向向下)的端口 P3进行发送。如果这里只有upward (方向向上)的输出端口,那么只有选择upward (方向向上)的端口进行发送。S2.3:查询失败,则以内容请求包中的内容名称D为基准,删除查询失败的内容路由转发表项,匹配失败,则交换机提取S2.1中内容请求包Prai的目的地址A,交换机根据目的地址A查询本地Location FIB (位置路由转发表项),根据查询结果,若输出端口的方向为downward (方向向下),则直接转发内容请求包Prai,若输出端口的方向为upward (方向向上),则根据S2.1中的内容名称D进行Content-based hash (基于内容的哈希)操作,选择upward (方向向上)的输出端口转发。如图6所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的基于位置的路由转发规则图。内容请求包Prai的目的地址A查询Location FIB (位置路由转发表项)的以IP地址前缀(IP prefix)和掩码长度(mask length)的组合形成的SI,根据查询结果,若输出端口的方向为downward (方向向下),则直接转发内容请求包Prai,若输出端口的方向为upward (方向向上),则根据S2.1中的内容名称D进行Content-based hash(基于内容的哈希)操作,选择upward (方向向上)的输出端口转发,如图中所示,通过哈希操作选择输出端口 P3的输出方向为upward (方向向上)。如图7所示,即为根据本发明实施例的基于内容的数据中心网络路由转发方法的内容请求包的转发过程示意图。如图中所示,S7和S8为发起请求的主机,S5和S6为缓存主机,S5-S7的内容名称均为D。其Content FIB (内容路由转发表项)的内容名称为D或E,内容版本号分别为Vl或V2,输出端口集合为I或者I和2的集合。内容请求包在经历交换机T3、T4、A3和A4的转发过程中,进行基于内容的路由转发策略(Content-basedforwarding)ο根据本发明的实施例,如果查询失败,则说明Content FIB(内容路由转发表项)的内容名称E,与内容请求包中的内容名称D不匹配,在本发明实施例中,以内容请求包中的内容名称D为基准,本地Content FIB(内容路由转发表项)已经过期,则删除此ContentFIB (内容路由转发表项)。如果匹配失败,则执行如图6所示的基于位置的路由转发规则。S2.4:若交换机收到内容回复包Pmp,则交换机提取内容回复包Pmp中的内容名称D和目的地址A,交换机根据目的地址A查询本地Location FIB (位置路由转发表项),根据查询结果,若输出端口的方向为downward (方向向下),则直接转发内容回复包,若输出端口的方向为upward (方向向上),则根据内容名称D进行Content-based hash (基于内容的哈希)操作,选择upward (方向向上)的输出端口转发,其操作过程同样如图6所示。如图8所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的内容回复包的转发过程示意图。如图中所示,S7和S8为发起请求的主机,S5和S6为缓存主机,SI和S2为存储文件的原始主机,S1、S5和S6的内容名称均为D。其Content FIB (内容路由转发表项)的内容名称为D或E,内容版本号分别为Vl或V3,输出端口集合为1、1和2的集合或者3。内容回复包在经历交换机T3、T4、A3和A4的转发过程中,进行基于内容的路由转发策略(Content-based forwarding)。在这里要说的是,交换机内部在进行不停的刷新,由于S1、S5和S6的内容名称均为D,为正在使用的内容名称,所以刷新的过程即把内容名称为D的Content FIB (内容路由转发表项)刷新到顶层,内容名称为E的Content FIB (内容路由转发表项)刷新到底层。S2.5:若交换机收到内容完成包Pfin,则交换机提取内容完成包Pfin中的内容名称D和内容版本号V,交换机根据内容名称D查询本地Content FIB (内容路由转发表项),若查询失败,则根据LRU (Least Recently Used,最近最少使用)原则为Content FIB (内容路由转发表项)插入 一条新的表项,新的表项的内容名称为D,内容版本号为V,输出端口集合中的端口号为内容完成包Pfin进入交换机端口的端口号,若查询成功,则交换机根据内容版本号V对查询成功的Content FIB (内容路由转发表项)中的内容版本号V进行匹配,将内容完成包Pfin进入交换机的端口号插入到Content FIB (内容路由转发表项)的输出端口
集合中。S2.6:交换机提取S2.5中内容完成包Pfin的目的地址A,交换机根据目的地址A查询本地Location FIB (位置路由转发表项),根据查询结果,若输出端口的方向为downward(方向向下),则直接转发内容完成包Pfin,若输出端口的方向为upward (方向向上),则根据
S2.5中的内容名称D进行Content-based hash (基于内容的哈希)操作,选择upward (方向向上)的输出端口转发,其操作过程同样如图6所示。如图9所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的内容完成包的转发过程示意图。如图所述,最右侧的Content FIB (内容路由转发表项)为根据最近最少使用原则,插入的新的表项,内容名称为D,内容版本号为V,输出端口集合中的端口号为内容完成包Pfin进入交换机端口的端口号,在这里记为2。最左侧的Content FIB (内容路由转发表项)是在内容版本号V匹配成功的情况下,将内容完成包Pfin进入交换机的端口号插入到Content FIB (内容路由转发表项)的输出端口集合中,分别记为2和3。S2.7:若交换机收到内容拒绝包P&,则交换机提取内容拒绝包P&中的内容名称D和内容版本号V,交换机根据内容名称D查询本地Content FIB (内容路由转发表项),若查询成功,则交换机根据内容版本号V对查询成功的Content FIB (内容路由转发表项)中的内容版本号V进行匹配,若匹配失败,则从Content FIB (内容路由转发表项)中删除查询成功Content FIB (内容路由转发表项),若匹配成功,则将内容拒绝包P,ej进入交换机的端口号从Content FIB (内容路由转发表项)的输出端口集合中删除。S2.8:交换机提取S2.7中内容拒绝包Prej的目的地址A,交换机根据目的地址A查询本地Location FIB (位置路由转发表项),根据查询结果,若输出端口的方向为downward(方向向下),则直接转发内容拒绝包Praj,若输出端口的方向为upward (方向向上),则根据S2.7中的内容名称D进行Content-based hash (基于内容的哈希)操作,选择upward (方向向上)的输出端口转发,其操作过程同样如图6所示。如图10所示,为根据本发明实施例的基于内容的数据中心网络路由转发方法的内容拒绝包的转发过程示意图。图中所示2个ContentFIB (内容路由转发表项)即为匹配失败情况下,从Content FIB (内容路由转发表项)中删除的2个Content FIB (内容路由转发表项)。同时,在匹配成功的情况下,将内容拒绝包P,ej进入交换机的端口号从Content FIB (内容路由转发表项)的输出端口集合中删除,此种情况比较少见。S2.9:若交换机收到内容数据包Pdata,则根据数据中心网络已有的基于IP的路由协议转发。综上所述,根据本发明实施例的基于内容的数据中心网络路由转发方法,在报文的转发步骤中,由于当前数据中心交换机Fast memory (高速存储资源)有限,且基于内容的数据中心网络内容数量庞大,Content FIB (内容路由转发表项)无法存储所有内容对应的表项,因此,本发明保留了传统基于IP的路由转发表Location FIB (位置路由转发表项),使得在Content-based forwarding (基于内容的路由转发策略)失败后,可以直接切换到Location-based forwarding(基于位置的路由转发策略),保证了路由转发的可靠性。另外,由于本发明的Content-based forwarding (基于内容的路由转发策略)只涉及到内容控制包,该种类报文相对于内容数据包数量极少,因为影响数据流传输效率的主要是内容数据包的转发效率,因此内容控制包的转发延迟可以相对较大,基于此,本发明的Content FIB(内容路由转发表项)可以存储在普通内存中,由于普通内存比Fast memory(高速存储资源)大得多,因此,可以大量的存储数据中心内容对应的表项,提高Content-based forwarding(基于内容的路由转发策略)的命中率。Content FIB (内容路由转发表项)的更新,如插入、删除等操作不需要集中控制器的参与,而是通过Content-based forwarding (基于内容的路由转发策略)在转发内容控制包的时候自适应的完成,这种自适应路由转发表的更新方式保证了基于内容的数据中心网络的可扩展特性。同时,在本发明的实施例中,基于内容的数据中心网络的缓存一致性不需要集中控制器的参与来保证,相反地,在本发明的实施例中,通过在Content FIB (内容路由转发表项)中加入内容版本号字段,使得交换机在进行Content-based forwarding (基于内容的路由转发策略)时,通过对比内容控制包与Content FIB (内容路由转发表项)中内容版本号来完成缓存内容一致性问题,简单而高效。根据本发明实施例的基于内容的数据中心网络路由转发方法,其交换机大都为普通商用交换机,软硬件资源有限,因此,对于本发明实施例所描述的Content-Locationhybrid forwarding (内容与位置混合式)路由转发策略,可以通过交换机一次性升级实现,不需要随着数据中心规模的扩大再做改动,充分体现了该发明的scalability (可扩展特性),另外,可以通过当前的SDN (软件定义网络)来部署本发明所述路由策略,不需要任何硬件开销。在本发明的实施例中,针对数据中心网络Fat-Tree (胖树)拓扑中,机架交换机和聚合交换机在向上转发时有多条路径可以选择,Content-based hash (基于内容的哈希)保证了 Location-based forwarding (基于位置的路由转发策略)可以唯一的选择一个输出端口,哈希方式可以是直接哈希至一个核心交换机的位置,然后根据该位置对应的输出端口转发,该方法另一大优点是,在同一 pod(胖树拓扑结构中的交换机集合,由机架交换机和聚合交换机组成)内,相同内容在同一层次交换机中只需存储一个转发表项,极大的缓解了Content FIB (内容路由转发表项)的压力。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
权利要求
1.一种基于内容的数据中心网络路由转发方法,其特征在于,包括以下步骤: `51.初始化交换机; ` 52.转发报文,所述转发报文包括以下步骤: S2.1:若所述交换机收到内容请求包Prai,则所述交换机提取所述内容请求包Prai中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询失败则进入S2.3,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,若匹配失败,则进入S2.3,若匹配成功,则进入S2.2 ; S2.2:若S2.1中匹配成功的所述内容路由转发表项只包含一个输出端口,则直接转发所述内容请求包Prai,若S2.1中的匹配成功的所述内容路由转发表项包含多个输出端口,优先选择方向向下的输出端口转发所述内容请求包Prai,若不存在方向向下的输出端口,则随机选择一个输出端口转发所述内容请求包Prai ; S2.3:查询失败,则以所述内容请求包中的所述内容名称D为基准,删除所述查询失败的内容路由转发表项,匹配失败,则所述交换机提取S2.1中所述内容请求包Prai的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容请求包Ρ_,若输出端口的方向为方向向上,则根据S2.1中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发; S2.4:若所述交换机收到内容回复包Pra p,则所述交换机提取所述内容回复包Prap中的内容名称D和目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容回复包Pmp,若输出端口的方向为方向向上,则根据所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发; S2.5:若所述交换机收到内容完成包Pfin,则所述交换机提取所述内容完成包Pfin中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询失败,则根据最近最少使用原则为所述内容路由转发表项插入一条新的表项,所述新的表项的内容名称为D,内容版本号为V,输出端口集合中的端口号为所述内容完成包Pfin进入所述交换机端口的端口号,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,将所述内容完成包Pfin进入所述交换机的端口号插入到所述内容路由转发表项的输出端口集合中; S2.6:所述交换机提取S2.5中所述内容完成包Pfin的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容完成包Pfin,若输出端口的方向为方向向上,则根据S2.5中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发; S2.7:若所述交换机收到内容拒绝包Praj,则所述交换机提取所述内容拒绝包Praj中的内容名称D和内容版本号V,所述交换机根据所述内容名称D查询本地内容路由转发表项,若查询成功,则所述交换机根据所述内容版本号V对查询成功的所述内容路由转发表项中的内容版本号V进行匹配,若匹配失败,则从所述内容路由转发表项中删除所述查询成功内容路由转发表项,若匹配成功,则将所述内容拒绝包P&进入所述交换机的端口号从所述内容路由转发表项的输出端口集合中删除; S2.8:所述交换机提取S2.7中所述内容拒绝包P&的目的地址A,所述交换机根据所述目的地址A查询本地位置路由转发表项,根据查询结果,若输出端口的方向为方向向下,则直接转发所述内容拒绝包P&,若输出端口的方向为方向向上,则根据S2.7中的所述内容名称D进行基于内容的哈希操作,选择方向向上的输出端口转发; S2.9:若所述交换机收到内容数据包Pdata,则根据数据中心网络已有的基于IP的路由协议转发。
2.根据权利要求1中所述的基于内容的数据中心网络路由转发方法,其特征在于,所述步骤SI进一步包括以下步骤: S1.1:设定交换机内容路由转发表项,所述交换机内容路由转发表项包括内容名称D、内容版本号V和输出端口集合,初始状态下所述交换机内容路由转发表项为空; S1.2:设定交换机位置路由转发表项,所述交换机位置路由转发表项为传统基于IP的路由转发表项,以IP地址前缀和掩码长度作为查询条件,对应的查询结果为方向向下或者方向向上的输出端口,初始条件下所述交换机位置路由转发表项根据数据中心网络拓扑发现协议自动建立完毕; S1.3:设定交换机端口方向,所述交换机端口方向在胖树网络拓扑结构中,方向向上比方向向下表不更长的传输路径; S1.4:设定交换机基于内容的路由转发策略,所述交换机基于内容的路由转发策略,对于接收到的内容请求包、内容拒绝包和内容完成包,分别设定所述查询以及匹配策略; S1.5:设定交换机基于位置的路由转发策略,所述交换机基于位置的路由转发策略对于接收到的内容控制包或内容数据包,分别设定所述转发和基于内容的哈希操作策略。
3.根据权利要求1所述的基于内容的数据中心网络路由转发方法,其特征在于,所述转发即对于一个胖树结构,在机架交换机上,优先转发至本机架内的缓存主机中,在聚合交换机上,优先转发到该聚合交换机所属的胖树拓扑结构中由机架交换机和聚合交换机组成的交换机集合pod内的缓存主机中。
4.根据权利要求2所述的基于内容的数据中心网络路由转发方法,其特征在于,所述内容控制包包括内容请求包、内容回复包、内容完成包和内容拒绝包。
全文摘要
本发明提出一种基于内容的数据中心网络路由转发方法,其中该方法包括初始化交换机;转发报文。本发明以基于内容的数据中心网络为基础,不需要集中控制器参与,通过内容与位置混合式路由转发策略,使得交换机优先选择“距离较近”的缓存主机进行路由转发。路由策略利用数据中心拓扑结构特点,使得交换机仅仅通过端口方向就可以判断出路径的长短。交换机路由转发的同时通过简单的内容版本号匹配查询完成缓存一致性。交换机在基于内容的转发时完成负载均衡。交换机在基于位置的转发时,对于向上的端口采取基于内容的哈希操作,减少冗余存储内容转发表。
文档编号H04L12/741GK103152271SQ201310115848
公开日2013年6月12日 申请日期2013年4月3日 优先权日2013年4月3日
发明者李丹, 祝铭, 朱晶 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1