【技术实现步骤摘要】
基于冗余技术的数据中心短流加速方法及系统
本专利技术涉及一种数据中心的短流加速方法和系统,具体涉及一种基于冗余技术的数据中心短流加速方法和系统。
技术介绍
在数据中心中,实时应用的任务大多由短流构成,这些短流完成的快慢对用户的体验有重要的影响。使用冗余技术降低短流完成时间是一种很有潜力的方法,具体方法是为每一条短流(原始流)创建一条携带相同内容的流(冗余流),应用程序使用最先完成的流的结果。在理想的情况下,这种技术可以利用数据中心的等价路径加速短流的完成。然而,由于数据中心中等价多路径协议的使用,冗余流和原始流很有可能被路由到同一条路径,这导致冗余技术加速短流的作用十分有限。另外,为每一条短流之创建一条冗余流不能有效利用数据中心中的多条等价路径。现有技术中存在的冗余流与原始流的路径碰撞以及等价路径不能充分利用等问题,带来了较大的性能损失,这些问题亟待解决。
技术实现思路
专利技术目的:为了解决现有的数据中心短流加速方法的不足,提供一种基于冗余技术的数据中心短流加速方法,同时提供一种基于冗余技术的数据中心短流加速系统。技术方案:为解决上述技术问题,本专利技术提供的基于冗余技术的数据中心短流加速方法,包括如下步骤:周期性运行冗余流数量分配模块的步骤,包括:周期性地根据历史数据确定不同大小的短流创建冗余流的数量,并将结果存储在数据库的冗余流数量表中;为应用程序的短流分配冗余流数量,并通过路径碰撞避免方法获得路径不重叠的源端口号集合来创建原始流和对应数量的冗余流的步骤,包括:1)应用程序调用主模块提供的接口创建TCP连接时,主模块判断该TCP流的源IP地址和目的IP地 ...
【技术保护点】
一种基于冗余技术的数据中心短流加速方法,其特征在于包括如下步骤:周期性运行冗余流数量分配模块的步骤,包括:周期性地根据历史数据确定不同大小的短流创建冗余流的数量,并将结果存储在数据库的冗余流数量表中;为应用程序的短流分配冗余流数量,并通过路径碰撞避免方法获得路径不重叠的源端口号集合来创建原始流和对应数量的冗余流的步骤,包括:1)应用程序调用主模块提供的接口创建TCP连接时,主模块判断该TCP流的源IP地址和目的IP地址是否在同一Top‑of‑Rack交换机上,如是则结束,如否则进入步骤2);2)判断该TCP流的大小L是否大于短流长度阈值S,如是则结束,如否则进入步骤3);3)根据TCP流的大小L查询数据库中的冗余流数量表repNum确定要创建的冗余流的数目repNumL;4)调用路径碰撞避免模块得到路径不重叠的1+repNumL个源端口号;5)将获得的1+repNumL个源端口号分别作为1条原始流和repNumL个冗余流的源端口号,调用TCP套接字创建1+repNumL条TCP连接。
【技术特征摘要】
1.一种基于冗余技术的数据中心短流加速方法,其特征在于包括如下步骤:周期性运行冗余流数量分配模块的步骤,包括:周期性地根据历史数据确定不同大小的短流创建冗余流的数量,并将结果存储在数据库的冗余流数量表中;为应用程序的短流分配冗余流数量,并通过路径碰撞避免方法获得路径不重叠的源端口号集合来创建原始流和对应数量的冗余流的步骤,包括:1)应用程序调用主模块提供的接口创建TCP连接时,主模块判断该TCP流的源IP地址和目的IP地址是否在同一Top-of-Rack交换机上,如是则结束,如否则进入步骤2);2)判断该TCP流的大小L是否大于短流长度阈值S,如是则结束,如否则进入步骤3);3)根据TCP流的大小L查询数据库中的冗余流数量表repNum确定要创建的冗余流的数目repNumL;4)调用路径碰撞避免模块得到路径不重叠的1+repNumL个源端口号;5)将获得的1+repNumL个源端口号分别作为1条原始流和repNumL个冗余流的源端口号,调用TCP套接字创建1+repNumL条TCP连接;其中步骤4)调用路径碰撞避免模块得到路径不重叠的1+repNumL个源端口号的步骤包括:根据至少包括TCP流的源IP地址、目的IP地址、目的端口号和要创建的复制流的数目k=1+repNumL的输入参数来查询源端口号对应表,当源端口号对应表中存储有该输入参数对应的记录时,直接查表获得路径不重叠的1+repNumL个端口号作为原始流和冗余流的源端口号;以及当源端口号对应表中没有该输入参数对应的记录时,迭代式地通过路径侦测模块获得路径不重叠的1+repNumL个端口号作为原始流和冗余流的源端口号,并将这1+repNumL个端口号及其对应的输入参数作为一条记录存储在数据库的源端口号对应表中。2.根据权利要求1所述的基于冗余技术的数据中心短流加速方法,其特征在于:所述通过路径碰撞避免模块得到路径不重叠的1+repNumL个源端口号的步骤包括:41)输入参数包括TCP流的源IP地址、目的IP地址、目的端口号和要创建的复制流的数目k=1+repNumL,所述复制流包括1条原始流和repNumL条冗余流,初始化源端口号集合srcPorts及其对应的路径集合Addr为空集;42)以步骤41)输入参数中的源IP地址、目的IP地址和目的端口号为主键,判断是否能够在数据库中的表IP_srcPorts中查询到相应的记录,如是,则将查询到的结果存储在源端口号集合srcPorts中,进入步骤48),如否,则进入步骤43);43)选择最小的可用端口号port作为原始流的源端口号,同时使port自减1;44)判断k是否为0,如是则进入步骤47),如否则进入步骤45);45)port以步长为1递增,通过路径侦测模块获得递增后的端口号port对应的路径addr,判断该路径addr是否属于路径集合Addr,如是则重复步骤45),如否,则进入步骤46);46)将当前的port及其对应的addr分别加入源端口号集合srcPorts和路径集合Addr中去,k=k-1,进入步骤44);47)将输入参数及其对应的源端口号集合srcPorts作为一条记录存储到数据库中的源端口号对应表IP_srcPorts中;48)输出路径不重叠的包括原始流和冗余流在内的源端口号集合srcPorts,结束。3.根据权利要求2所述的基于冗余技术的数据中心短流加速方法,其特征在于:所述通过路径侦测模块获得端口号对应的路径的步骤包括:根据至少包括源IP地址、目的IP地址、端口号port、目的端口号的输入参数,创建一个TTL为3的报文,并发送出去获得ICMP应答报文,根据应答报文的源IP地址获得输入参数中端口号port对应的路径。4.根据权利要求1所述的基于冗余技术...
【专利技术属性】
技术研发人员:钱柱中,王富广,陆桑璐,
申请(专利权)人:南京大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。