版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(19)国家知识产权局(12)发明专利(65)同一申请的已公布的文献号(85)PCT国际申请进入国家阶段日(86)PCT国际申请的申请数据PCT/CN2020/1197082020(87)PCT国际申请的公布数据(72)发明人顾华玺刁兴龙余晓杉唐德智(74)专利代理机构广州三环专利商标代理有限公司44202专利代理师胡丽平H04L69/16(2022.0审查员李科(73)专利权人华为技术有限公司地址518129广东省深圳市龙岗区坂田华为总部办公楼一种数据处理、传输方法及相关设备一种数据处理方法、数据传输方法及相关设第一报文段,确定所述第一报文段所属的目标TCP流;获取与所述目标TCP流匹配的目标流信息,所述目标流信息包括所述目标TCP流对应的时间阈值、所述目标TCP流中第二报文段的时间戳;将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较;根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet。采用上述方法,可以提升数据传输效率和准确率。生成第一报文段,确定所述第一报文段所属的目标TCP流获取所述第一报文段的时间戳,以及获取与所述目标TCP流匹配的目标流信息将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet生成第一数据包若所述第一报文段的时间截与所述第二报文段的时间截的差值大于所述时间闽值,则将所述参考Flowlet标识更新为所述第二21.一种数据处理方法,其特征在于,应用于主机,包括:生成第一报文段,确定所述第一报文段所属的目标TCP流;获取所述第一报文段的时间戳,以及获取与所述目标TCP流匹配的目标流信息,所述目标流信息包括所述目标TCP流对应的时间阈值、所述目标TCP流中第二报文段的时间戳;其中,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段,所述时间阈值为第一路径时延和第二路径时延之差,所述第一路径时延为所述目标TCP流的多路径集合中时延最大的上行路径的时延,所述第二路径时延为所述目标TCP流的多路径集合中时延最小的上行路径的时延;将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较;根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet。2.如权利要求1所述的方法,其特征在于,所述确定所述第一报文段所属的目标TCP流,包括:根据所述第一报文段的源端口号,确定所述第一报文段所属的所述目标TCP流。3.如权利要求1所述的方法,其特征在于,所述主机维护有流信息表,所述流信息表包括N条TCP流的流信息,N为大于或者等于1的整数,其中,每条TCP流的流信息包括对应TCP流的流索引;所述获取与所述目标TCP流匹配的目标流信息,包括:根据所述目标TCP流的流索引从所述流信息表中查找与所述目标TCP流匹配的所述目标流信息。4.如权利要求1-3任意一项所述的方法,其特征在于,所述根据比较结果,确定是否将所述第一报文段与所述第二报文段划分为同一个Flowlet,包括:若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,将所述第一报文段与所述第二报文段划分在同一Flowlet中;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,将所述第一报文段划分至新的Flowlet中。5.如权利要求1-3任意一项所述的方法,其特征在于,所述目标流信息还包括所述目标TCP流的参考Flowlet标识,所述参考Flowlet标识当前为所述第二报文段对应的第一Flowlet标识;所述方法还包括:生成第一数据包,所述第一数据包包括所述第一报文段和所述第一报文段的Flowlet若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,则所述第一报文段的Flowlet标识为所述第一Flowlet标识;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则所述第一报文段的Flowlet标识为第二Flowlet标识。6.如权利要求5所述的方法,其特征在于,所述方法还包括:若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则将所述参考Flowlet标识更新为所述第二Flowlet标识。7.如权利要求1-3任意一项所述的方法,其特征在于,所述方法还包括:接收目标ACK包,所述目标ACK包为与所述目标TCP流的目的端口号相同或者目的地址相同的ACK包;3确定所述目标ACK包的上行路径时延,所述上行路径时延为所述目标ACK包的时间戳值和时间戳回送回答值之间的差值;将所述目标ACK包的上行路径时延与所述目标TCP流的多路径集合中上行路径的时延进行比较;若所述目标ACK包的上行路径时延大于所述多路径集合中当前时延最大的上行路径的时延,则将所述第一路径时延更新为所述目标ACK包的上行路径时延;若所述目标ACK包的上行路径时延小于所述多路径集合中当前时延最小的上行路径的时延,则将所述第二路径时延更新为所述目标ACK包的上行路径时延。8.如权利要求1-3任意一项所述的方法,其特征在于,所述多路径集合包括所述目标TCP流的多条等价传输路径;或者,所述多路径集合包括所述目标TCP流的多条等价传输路径以及非等价传输路径;或者,所述多路径集合包括所述目标TCP流的多条非等价传输路接收第一数据包,所述第一数据包包括第一报文段和所述第一报文段的Flowlet标识;确定所述第一数据包所属的目标TCP流,获取与所述目标TCP流匹配的转发信息;所述转发信息包括所述目标TCP流的参考Flowlet标识以及参考转发路径;其中,所述参考Flowlet标识当前为第二报文段对应的第一Flowlet标识,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段;所述参考转发路径为第二数据包的第一转发路径,所述第二数据包包括所述第二报文段和所述第一Flowlet标识;将所述第一报文段的Flowlet标识与所述第一Flowlet标识进行比较;根据比较结果,确定是否将所述第一报文段通过所述第一转发路径转发。10.如权利要求9所述的方法,其特征在于,所述交换机维护有转发信息表,所述转发信括对应TCP流的五元组哈希值;所述确定所述第一数据包所属的目标TCP流,获取与所述目根据所述第一数据包的五元组信息,计算所述第一数据包的五元组哈希值;根据所述第一数据包的五元组哈希值,从所述转发信息表中查找与所述目标TCP流匹配的转发信息。11.如权利要求9所述的方法,其特征在于,所述根据比较结果,确定是否将所述第一报若所述第一报文段的Flowlet标识与所述第一Flowlet标识相同,则将所述第一数据包通过所述第一转发路径转发;若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同,则为所述第一数据包确定第二转发路径,并通过所述第二转发路径转发。12.如权利要求11所述的方法,其特征在于,所述方法还包括:若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同且为第二Flowlet标识,则将所述目标TCP流的参考Flowlet标识更新为所述第二Flowlet标识,以及将所述参考转发路径更新为所述第二转发路径。4第一生成单元,用于生成第一报文段;第一确定单元,用于确定所述第一报文段所属的目标TCP流;获取单元,用于获取所述第一报文段的时间戳,以及获取与所述目标TCP流匹配的目标流信息,所述目标流信息包括所述目标TCP流对应的时间阈值、所述目标TCP流中第二报文段的时间戳;其中,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段,所述时间阈值为第一路径时延和第二路径时延之差,所述第一路径时延为所述目标TCP流的多路径集合中时延最大的上行路径的时延,所述第二路径时延为所述目标TCP流的多路径集合中时延最小的上行路径的时延;第一比较单元,用于将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较;Flowlet划分单元,用于根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet。根据所述第一报文段的源端口号,确定所述第一报文段所属的所述目标TCP流。15.如权利要求13所述的装置,其特征维护单元,用于维护流信息表,所述流信息表包括N条TCP流的流信息,N为大于或者等所述获取单元,具体用于:根据所述目标TCP流的流索引从所述流信息表中查找与所述目标TCP流匹配的所述目标流信息。16.如权利要求13-15任意一项所述的装置,其特征在于,所述Flowlet划分单元,具体若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,将所述第一报文段与所述第二报文段划分在同一Flowlet中;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,将所述第一报文段划分至新的Flowlet中。17.如权利要求13-15任意一项所述的装置,其特征在于,所述目标流信息还包括所述目标TCP流的参考Flowlet标识,所述参考Flowlet标识当前为所述第二报文段对应的第一第二生成单元,用于生成第一数据包,所述第一数据包包括所述第一报文段和所述第若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,则所述第一报文段的Flowlet标识为所述第一Flowlet标识;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则所述第一报文段的Flowlet标识为第二Flowlet标识。18.如权利要求17所述的装置,其特征第一更新单元,用于若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则将所述参考Flowlet标识更新为所述第二Flowlet标识。19.如权利要求13-15任意一项所述的装置,其特征在于,所述装置还包括:5或者目的地址相同的ACK包;第二确定单元,用于确定所述目标ACK包的上行路径时延,所述上行路径时延为所述目标ACK包的时间戳值和时间戳回送回答值之间的差值;第二比较单元,用于将所述目标ACK包的上行路径时延与所述目标TCP流的多路径集合中上行路径的时延进行比较;第二更新单元,用于若所述目标ACK包的上行路径时延大于所述多路径集合中当前时延最大的上行路径的时延,则将所述第一路径时延更新为所述目标ACK包的上行路径时延;第三更新单元,用于若所述目标ACK包的上行路径时延小于所述多路径集合中当前时延最小的上行路径的时延,则将所述第二路径时延更新为所述目标ACK包的上行路径时延。20.如权利要求13-15任意一项所述的装置,其特征在于,所述多路径集合包括所述目标TCP流的多条等价传输路径;或者,所述多路径集合包括所述目标TCP流的多条等价传输路径以及非等价传输路径;或者,所述多路径集合包括所述目标TCP流的多条非等价传输路接收单元,用于接收第一数据包,所述第一数据包包括第一报文段和所述第一报文段确定单元,用于确定所述第一数据包所属的目标TCP流,获取与所述目标TCP流匹配的转发信息;所述转发信息包括所述目标TCP流的参考Flowlet标识以及参考转发路径;其中,所述参考Flowlet标识当前为第二报文段对应的第一Flowlet标识,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段;所述参考转发路径为第二数据包的第一转发路径,所述第二数据包包括所述第二报文段和所述第一Flowlet标识;比较单元,用于将所述第一报文段的Flowlet标识与所述第一Flowlet标识进行比较;转发单元,用于根据比较结果,确定是否将所述第一报文段通过所述第一转发路径转22.如权利要求21所述的装置,其特征在于,所述装置维护有转发信息表,所述转发信根据所述第一数据包的五元组信息,计算所述第一数据包的五元组哈希值;根据所述第一数据包的五元组哈希值,从所述转发信息表中查找与所述目标TCP流匹配的转发信息。若所述第一报文段的Flowlet标识与所述第一Flowlet标识相同,则将所述第一数据包通过所述第一转发路径转发;若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同,则为所述第一数据包确定第二转发路径,并通过所述第二转发路径转发。24.如权利要求23所述的装置,其特征在于,所述装置还包括:更新单元,若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同且为第二Flowlet标识,则将所述目标TCP流的参考Flowlet标识更新为所述第二Flowlet标识,以及将所述参考转发路径更新为所述第二转发路径。625.一种主机,其特征在于,包括处理器、存储器以及通信接口,其中,所述存储器用于存储数据处理程序代码,所述处理器用于调用所述数据处理程序代码来执行权利要求1-8任一项所述的方法。26.一种交换机,其特征在于,包括处理器、存储器以及通信接口,其中,所述存储器用于存储数据传输程序代码,所述处理器用于调用所述数据传输程序代码来执行权利要求9-12任一项所述的方法。27.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被主机执行时实现上述权利要求1-8任意一项所述的方法。28.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被交换机执行时实现上述权利要求9-12任意一项所述的方法。29.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当所述指令被主机执行时,使得所述主机执行如权利要求1-8中任意一项所述的方法。30.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当所述指令被交换机执行时,使得所述交换机执行如权利要求9-12中任意一项所述的方法。7一种数据处理、传输方法及相关设备技术领域[0001]本申请涉及通信技术领域,尤其涉及一种数据处理、传输方法及相关背景技术[0002]目前,随着数据传输业务的高速化以及实时性要求,需要数据传输设备能够快速、准确地进行流量的负载均衡,来提高其转发性能,增强网络的可靠性,从而更好的为用户服[0003]目前,等价多路径负载均衡(Equal-costmulti-pathrouting,ECMP)是比较常用的负载均衡处理方法。ECMP技术包括基于包(Packet)的路径选择方式和基于流(Flow)的路径选择方式。其中,基于Packet的路径选择方式可以做到负载均衡,多路径中不同路径的时延存在差别,导致在接收端接收到的Packet会出现乱序,需要Packet重排序;基于Flow的路径选择方式中可以根据哈希(hash)算法确定出转发报文的出接口(报文转发路径),接收端不需要报文重排序。然而,不同Flow的速率会有差别(例如占据带宽较大的大流(ElephantFlow)和占据带宽较小的小流(MiceFlow),不同路径中传输的Flow也不同。当不同路径中传输的Flow的速率不相等时,可能会导致负载不均衡。[0004]为了能够达到更好的负载均衡,提出了一种基于小流/微流(Flowlet)机制的负载均衡处理方法。在基于Flowlet机制的负载均衡处理方法中,如图1所示,图1为现有技术中的一种TCP流划分为Flowlet的示意图,例如,当前TCP流的数据包到达交换机后被检测为包含5个Flowlet,同一个Flowlet内的各个数据包到达交换机的时间差一般比较小,不同Flowlet间的数据包到达交换机的时间差比较明显。其中,Flowlet1的第一个数据包与第二个数据包的时间差(timegap)小于既定阈值(timeout),所以交换机将这两个数据包视为同一个Flowlet。再例如,Flowlet1的最后一个数据包与Flowlet2的第一个数据包的时间差大于既定阈值,所以交换机将Flowlet2的第一个数据包视为一个新的Flowlet。也即是,若同一条TCP流相邻的两个数据包到达交换机的时间差小于既定的时间间隔(timeout),则交换机将这两个数据包视为同一个Flowlet。[0005]综上,现有Flowlet粒度的负载均衡方案,是通过在交换机处基于固定时间间隔来检测Flowlet,但数据传输网络(如数据中心网络)内的负载情况动态变化、不可预测,而固定的时间间隔难以适应于动态变化的网络负载。当时间间隔过小时,则检测出的Flowlet数目会增加,负载均衡的处理粒度更精细,容易增加数据包乱序的风险;当时间间隔过大时,则检测出的Flowlet数目会降低,负载均衡的处理粒度过于粗糙,负载均衡的效果不显著。发明内容[0006]本发明实施例提供一种数据处理、传输方法及相关设备,以提升数据传输过程中的效率和准确率。[0008]生成第一报文段,确定所述第一报文段所属的目标TCP流;获取所述第一报文段的8时间戳,以及获取与所述目标TCP流匹配的目标流信息,所述目标流信息包括所述目标TCP流对应的时间阈值、所述目标TCP流中第二报文段的时间戳;其中,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段,所述时间阈值为第一路径时延和第二路径时延之差,所述第一路径时延为所述目标TCP流的多路径集合中时延最大的上行路径的时延,所述第二路径时延为所述目标TCP流的多路径集合中时延最小的上行路径的时延;将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较;根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet。[0009]本发明实施例,在主机侧针对当前生成的待发送的第一报文段,首先确定该第一报文段具体属于哪个TCP流(例如通过源端口来确定),进而获取与该TCP流匹配的目标流信息,其中,该目标流信息中包含了该目标TCP流的多种信息比如相邻的上一个报文段(即第二报文段)的时间戳,以及在该目标TCP流中用于划分Flowlet的时间阈值;进一步地,主机侧将当前待发送的第一报文段与上一个相邻的第二报文段之间的时间戳值之差与该时间阈值进行比较,从而决定是否将第一报文段与上一个相邻的报文段划分在同一个Flowlet中;而其中的时间阈值是由该目标TCP流的多路径集合中的路径的时延来动态计算得到的,例如,根据主机接收到的历史报文段(与目标TCP流的三元组或五元组信息相同的ACK包)实时更新的最大时延和最小时延之差计算得到的;即该时间阈值是一个根据网络传输负载情况实时变化、动态调整的值。也即是说,在本发明实施例中,针对不同的TCP流或者同一个TCP流在不同状态下的数据包,其用于划分Flowlet的时间阈值是动态变化的,且是根据对应TCP流中的数据实时传输时延来动态调整的,因此,能够始终适应动态网络负载变化,避免了现有技术中由交换机侧基于固定的时间间隔来检测Flowlet而导致的难以适应动态网络负载的问题。综上,本发明实施例在主机侧结合了网络路径的时延反馈信息,动态配置用于检测划分Flowlet的时间间隔,使得Flowlet粒度与网络路径状态匹配,减少了数据包乱[0010]在一种可能的实现方式中,所述确定所述第一报文段所属的目标TCP流,包括:根据所述第一报文段的源端口号,确定所述第一报文段所属的所述目标TCP流。[0011]本发明实施例,通过识别报文段的五元组信息中的源端口号,来识别当前待发送的报文段(即第一报文段)是属于哪个TCP流,从而进一步获取该报文段所属的TCP流的流信息(包括上一个相邻报文段的时间戳值、以及用于划分Flowlet的时间阈值),以便于基于该流信息中的相关信息进一步判断当前待发送的数据报文段是否与上一个数据报文段属于同一个Flowlet或者是将其划分至新的Flowlet。[0012]在一种可能的实现方式中,所述主机维护有流信息表,所述流信息表包括N条TCP流的流信息,N为大于或者等于1的整数,其中,每条TCP流的流信息包括对应TCP流的流索述流信息表中查找与所述目标TCP流匹配的所述目标流信息。[0013]本发明实施例中,主机侧维护有一个或多个TCP流(例如当前处于活动状态的TCP流)的流信息表,该流信息表中包括一个或多个TCP流的流信息,而每个TCP流信息又可以包括TCP流的索引、以及上述第一方面所涉及的时间阈值和当前待发送的数据报文段的相邻上一个最新的报文段的时间戳等。即主机可以维护当前正在活动的所有TCP流的流信息,以便于当有报文段需要发送的时候,则可以根据报文段所属的TCP流的流索引查找到流信息9表中与该流索引匹配的目标流信息,从而进行后续的Flowlet的划分。[0014]在一种可能的实现方式中,所述根据比较结果,确定是否将所述第一报文段与所述第二报文段划分为同一个Flowlet,包括:若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,将所述第一报文段与所述第二报文段划分在同一Flowlet中;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,将所述第一报文段划分至新的Flowlet中。[0015]本发明实施例中,如果当前待发送的第一报文段与所属目标TCP流中上一个相邻的第二报文段之间的时间戳之间的差值,小于该目标TCP流所对应的时间阈值(该时间阈值是动态变化的),则认为该第一报文段与上一个相邻的第二报文段之间满足在同一个Flowlet中发送的条件,也即是可以将第一报文段判定为与上一个第二报文段划分在同一个Flowet中;同理,如果当前待发送的第一报文段与所属目标TCP流中上一个相邻的第二报文段之间的时间戳之间的差值,大于该目标TCP流所对应的时间阈值,则认为该第一报文段与上一个相邻的第二报文段之间不满足在同一个Flowlet中发送的条件,也即是将第一报文段划分至新的Flowet中。[0016]在一种可能的实现方式中,所述目标流信息还包括所述目标TCP流的参考Flowlet标识,所述参考Flowlet标识当前为所述第二报文段对应的第一Flowlet标识;所述方法还包括:生成第一数据包,所述第一数据包包括所述第一报文段和所述第一报文段的Flowlet标识;其中,若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,则所述第一报文段的Flowlet标识为所述第一Flowlet标识;若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则所述第一报文段的Flowlet标识为第二Flowlet标识。[0017]本发明实施例中,当进一步对第一报文段进行封装以将数据通过网络传输时,则可通过在封装过程中,设置该报文段对应的Flowlet标识,以便于该报文段被封装成数据包之后,在交换机侧可以通过该Flowlet标识来识别数据包属于哪个Flowlet,从而决定通过哪个路径来进行发送。例如,当第一报文段要进入到交换机所在的数据链路层时,需要进一步将第一报文段进行封装,此时通过在封装的数据包中,设置一位用于交换机识别该报文段属于哪个Flowlet的标识位,当第一报文段与第二报文段的Flowlet标识相同时,则在交换机侧将第一数据包与第二报文段对应的第二数据包通过相同的路径进行转发。综上,本发明实施例通过在主机侧划分好Flowlet,并可利用传输层报头保留字段中的比特位(例如为1比特)来标记Flowlet,交换机仅依靠报头字段即可识别Flowlet,效率高、硬件开销低,同时还保证了同一个Flowlet无论在网络内历经几跳交换机,都不会被再次切分,降低了数据包乱序的风险。[0018]在一种可能的实现方式中,所述方法还包括:若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则将所述参考Flowlet标识更新为所述第二Flowlet标识。[0019]本发明实施例中,主机侧维护的流信息表中的每条TCP流的流信息中还包括每条TCP流的参考Flowlet标识,也即是在流信息表中维护了每条TCP流当前的Flowlet的标识,以便于为待发送的报文段设置其对应的Flowlet标识。例如,假设参考Flowlet标识为第一Flowlet标识(也即是第二报文段对应的Flowlet标识),那么当第一报文段与第二报文段被即是参考Flowlet标识仍然保持为第一Flowlet标识不变;若参考Flowlet标识为第一Flowlet标识,且当第一报文段与第二报文段被划分至不同Flowlet时(即第一报文段被划分至新的Flowlet),则该第一报文段的Flowlet标识被标记为第二Flowlet标识,而此时参所述目标TCP流的目的端口号相同或者目的地址相同的ACK包;确定所述目标ACK包的上行行比较;若所述目标ACK包的上行路径时延大于所述多路径集合中当前时延最大的上行路行路径时延之差计算得到的,也即是该时间阈值是一个根据网络传输负载情况实时变化、者接收到与目标TCP流在同一网络会话中的TCP流的ACK包(即目的地址相同或目的网段相[0022]在一种可能的实现方式中,所述最大的上行路径的时延,第二路径时延则为这些等价路径中时延最小的上行路径的时延;11[0025]接收第一数据包,所述第一数据包包括第一报文段和所述第一报文段的Flowlet转发信息包括所述目标TCP流的参考Flowlet标识以及参考转发路径;其中,所述参考Flowlet标识当前为第二报文段对应的第一Flowlet标识,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段;所述参考转发路径为第二数据包的第一转发路径,所述第二数据包包括所述第二报文段和所述第一Flowlet标识;将所述第一报文段的Flowlet标识与所述第一Flowlet标识进行比较;根据比较结果,确定是否将所述第一报文段通过所述第一转发路径转发。[0026]本发明实施例,交换机侧在接收到数据包后,通过识别数据包中的Flowlet标识,并根据该Flowlet标识,判断第一数据包与所属的目标TCP流中的相邻的数据包的Flowlet标识是否相同,并基于此决定第一数据包是否需要通过第二数据包对应的转发路径转发。即交换机侧无需根据接收到的数据包的时间间隔,来为数据包划分Flowlet,而是直接根据接收到的数据包中所包含的Flowlet标识位来识别当前待发送的数据包是否与相同TCP流中的上一个相邻数据包属于同一个Flowlet,从而决定是通过相邻数据包的转发路径继续转发,还是为该数据包划分新的Flowlet以及为其决策新的转发路径。[0027]在一种可能的实现方式中,所述交换机维护有转发信息表,所述转发信息表包括M流的五元组哈希值;所述确定所述第一数据包所属的目标TCP流,获取与所述目标TCP流匹配的转发信息,包括:根据所述第一数据包的五元组信息,计算所述第一数据包的五元组哈希值;根据所述第一数据包的五元组哈希值,从所述转发信息表中查找与所述目标TCP流匹配的转发信息。[0028]本发明实施例,交换机侧维护有转发信息表,该转发信息表中包括一个或多个与其连接的主机上的TCP流(例如当前处于活动状态的TCP流)的转发信息,而每个TCP流的转发信息又可以包括TCP流的五元组哈希值。即交换机可以维护当前正在活动的所有TCP流的转发信息,以便于当有数据包需要发送的时候,则可以根据数据包的五元组哈希值查找到转发信息表中与该五元组哈希值匹配的转发信息(包括参考Flowlet标识、转发路径等),从而进行待发送数据包的转发。[0029]在一种可能的实现方式中,所述根据比较结果,确定是否将所述第一报文段通过所述转发路径转发,包括:若所述第一报文段的Flowlet标识与所述第一Flowlet标识相同,则将所述第一数据包通过所述第一转发路径转发;若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同,则为所述第一数据包确定第二转发路径,并通过所述第二转发路径转发。[0030]本发明实施例,当交换机识别出第一数据包与所属的目标TCP流中的相邻的数据包的Flowlet标识相同时,则将第一数据包与第二数据包在同一路径上转发;当交换机识别出第一数据包与所属的目标TCP流中的相邻的数据包的Flowlet标识不同时,则为第一数据包确定新的转发路径,并通过新的转发路径进行转发。需要说明的是,第二转发路径有可能与第一转发路径相同也可能不同,取决于交换机的决策。[0031]在一种可能的实现方式中,所述方法还包括:若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同且为第二Flowlet标识,则将所述目标TCP流的参考Flowlet标识更新为所述第二Flowlet标识,以及将所述参考转发路径更新为所述第二转发路径。[0032]本发明实施例,当第一数据包与第二数据包的Flowlet标识不同时,则说明第一数据包与所属TCP流中的上一个相邻的第二数据包之间不属于同一个Flowlet,因此,交换机需要将第一数据包划分至新的Flowlet,并且需要将所属TCP流的参考Flowlet标识更新为当前最新的数据包所对应的Flowlet标识,也即是第二Flowlet标识。[0033]第三方面,本发明实施例提供了一种数据处理装置,[0035]第一确定单元,用于确定所述第一报文段所属的目标TCP流;[0036]获取单元,用于获取所述第一报文段的时间戳,以及获取与所述目标TCP流匹配的目标流信息,所述目标流信息包括所述目标TCP流对应的时间阈值、所述目标TCP流中第二报文段的时间戳;其中,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段,所述时间阈值为第一路径时延和第二路径时延之差,所述第一路径时延为所述目标TCP流的多路径集合中时延最大的上行路径的时延,所述第二路径时延为所述目标TCP流的多路径集合中时延最小的上行路径的时延;[0037]第一比较单元,用于将所述第一报文段的时间戳与第二报文段的时间戳的差值与所述时间阈值进行比较;[0038]Flowlet划分单元,用于根据比较结果,确定是否将所述第一报文段与所述第二报文段划分在同一个Flowlet。[0040]根据所述第一报文段的源端口号,确定所述第一报文段所属的所述目标TCP流。[0041]在一种可能的实现方式中,所述装置还包括:[0042]维护单元,用于维护流信息表,所述流信息表包括N条TCP流的流信息,N为大于或[0043]所述获取单元,具体用于:根据所述目标TCP流的流索引从所述流信息表中查找与所述目标TCP流匹配的所述目标流信息。[0045]若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,将所述第一报文段与所述第二报文段划分在同—Flowlet中;[0046]若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,将所述第一报文段划分至新的Flowle[0047]在一种可能的实现方式中,所述目标流信息还包括所述目标TCP流的参考Flowlet标识,所述参考Flowlet标识当前为所述第二报文段对应的第一Flowlet标识;所述装置还包括:[0048]第二生成单元,用于生成第一数据包,所述第一数据包包括所述第一报文段和所[0049]若所述第一报文段的时间戳与所述第二报文段的时间戳的差值小于或者等于所述时间阈值,则所述第一报文段的Flowlet标识为所述第一Flowlet标识;[0050]若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则所述第一报文段的Flowlet标识为第二Flowlet标识。[0052]第一更新单元,用于若所述第一报文段的时间戳与所述第二报文段的时间戳的差值大于所述时间阈值,则将所述参考Flowlet标识更新为所述第二Flowlet标识。相同或者目的地址相同的ACK包;[0055]第二确定单元,用于确定所述目标ACK包的上行路径时延,所述上行路径时延为所述目标ACK包的时间戳值和时间戳回送回答值之间的差值;[0056]第二比较单元,用于将所述目标ACK包的上行路径时延与所述目标TCP流的多路径集合中上行路径的时延进行比较;[0057]第二更新单元,用于若所述目标ACK包的上行路径时延大于所述多路径集合中当前时延最大的上行路径的时延,则将所述第一路径时延更新为所述目标ACK包的上行路径[0058]第三更新单元,用于若所述目标ACK包的上行路径时延小于所述多路径集合中当前时延最小的上行路径的时延,则将所述第二路径时延更新为所述目标ACK包的上行路径[0059]在一种可能的实现方式中,所述多路径集合包括所述目标TCP流的多条等价传输路径;或者,所述多路径集合包括所述目标TCP流的多条等价传输路径以及非等价传输路[0061]接收单元,用于接收第一数据包,所述第一数据包包括第一报文段和所述第一报文段的Flowlet标识,所述第一数据[0062]确定单元,用于确定所述第一数据包所属的目标TCP流,获取与所述目标TCP流匹配的转发信息;所述转发信息包括所述目标TCP流的参考Flowlet标识以及参考转发路径;其中,所述参考Flowlet标识当前为第二报文段对应的第一Flowlet标识,所述第二报文段为所述目标TCP流中与所述第一报文段相邻的上一个报文段;所述参考转发路径为第二数据包的第一转发路径,所述第二数据包包括所述第二报文段和所述第一Flowlet标识;[0063]比较单元,用于将所述第一报文段的Flowlet标识与所述第一Flowlet标识进行比[0064]转发单元,用于根据比较结果,确定是否将所述第一报文段通过所述第一转发路[0065]在一种可能的实现方式中,所述交换机维护有转发信息表,所述转发信息表包括M[0066]根据所述第一数据包的五元组信息,计算所述第一数据包的五元组哈希值;[0067]根据所述第一数据包的五元组哈希值,从所述转发信息表中查找与所述目标TCP流匹配的转发信息。[0069]若所述第一报文段的Flowlet标识与所述第一Flowlet标识相同,则将所述第一数据包通过所述第一转发路径转发;[0070]若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同,则为所述第一数据包确定第二转发路径,并通过所述第二转发路径转发。[0072]更新单元,若所述第一报文段的Flowlet标识与所述第一Flowlet标识不同且为第二Flowlet标识,则将所述目标TCP流的参考Flowlet标识更新为所述第二Flowlet标识,以及将所述参考转发路径更新为所述第二转发路径。[0073]第五方面,本申请提供一种半导体芯片,可包括上述第三方面中的任意一种实现方式所提供的数据处理装置。[0074]第六方面,本申请提供一种半导体芯片,可包括上述第四方面中的任意一种实现方式所提供的数据处理装置。[0075]第七方面,本申请提供一种半导体芯片,可包括:上述第三方面中的任意一种实现方式所提供的数据处理装置、耦合于所述数据处理装置的内部存储器以及外部存储器。[0076]第八方面,本申请提供一种半导体芯片,可包括:上述第四方面中的任意一种实现方式所提供的数据传输装置、耦合于所述数据处理装置的内部存储器以及外部存储器。[0077]第九方面,本申请提供一种片上系统SoC芯片,该SoC芯片包括上述第三方面中的任意一种实现方式所提供的数据处理装置、耦合于所述数据处理装置的内部存储器和外部[0078]第十方面,本申请提供一种片上系统SoC芯片,该SoC芯片包括上述第四方面中的任意一种实现方式所提供的数据传输装置、耦合于所述数据传输装置的内部存储器和外部[0079]第十一方面,本申请提供了一种芯片系统,该芯片系统包括上述第三方面中的任意一种实现方式所提供的数据处理装置。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存所述数据处理装置在运行过程中所必要或相关的程序指令和数[0080]第十二方面,本申请提供了一种芯片系统,该芯片系统包括上述第四方面中的任意一种实现方式所提供的数据传输装置。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存所述数据传输装置在运行过程中所必要或相关的程序指令和数[0081]第十三方面,本申请提供一种数据处理装置,该处理装置具有实现上述第一方面中的任意一种数据处理方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。[0082]第十四方面,本申请提供一种数据传输装置,该处理装置具有实现上述第二方面中的任意一种数据传输方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。[0083]第十五方面,本申请提供一种主机,该主机包括处理器,该处理器用于执行上述第一方面中的任意一种实现方式所提供的数据处理方法。该主机还可以包括存储器,存储器用于与处理器耦合,其保存主机必要的程序指令和数据。该主机还可以包括通信接口,用于该主机与其它设备或通信网络通信。[0084]第十六方面,本申请提供一种交换机,该交换机包括处理器,该处理器用于执行上述第一方面中的任意一种实现方式所提供的数据传输方法。该交换机还可以包括存储器,存储器用于与处理器耦合,其保存交换机必要的程序指令和数据。该交换机还可以包括通信接口,用于该交换机与其它设备或通信网络通信。[0085]第十七方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被主机执行时实现上述第二方面中任意一项所述的多核处理器的处理方法流程。[0086]第十八方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该计算机程序被交换机执行时实现上述第四方面中任意一项所述的多核处理器的处理方法流程。[0087]第十九方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被多核处理器执行时,使得主机可以执行上述第二方面中任意一项所述的多核处理器的处理方法流程。[0088]第二十方面,本发明实施例提供了一种计算机程序,该计算机程序包括指令,当该计算机程序被多核处理器执行时,使得交换机可以执行上述第四方面中任意一项所述的多核处理器的处理方法流程。附图说明[0089]图1为现有技术中的一种TCP流划分为Flowlet的示意图。[0090]图2是本申请实施例提供的一种网络传输系统架构示意图。[0091]图3是本申请实施例提供的一种数据中心网络拓扑结构示意图。[0092]图4是本申请实施例提供的一种计算机网络OSI模型以及TCP/IP模型示意图。[0093]图5是本发明实施例提供的一种数据传输方法的流程示意图。[0094]图6A为本发明实施例提供的第一数据包和第二数据包在同一个Flowlet的示意[0095]图6B为本发明实施例提供的第一数据包和第二数据包在不同Flowlet的示意图。[0096]图6C为本发明实施例所提供的一种附加层协议划分并标记Flowlet的流程示意[0097]图6D为本发明实施例所提供的一种附加层协议动态更新Flowlet的切分阈值的流程示意图。[0098]图7是本发明实施例提供的一种数据传输方法的流程示意图。[0099]图8是本发明实施例提供的一种数据处理装置的结构示意图。[0100]图9是本发明实施例提供的一种数据传输装置的结构示意图。具体实施方式[0101]下面将结合本发明实施例中的附图,对本发明实施例进行描述。本申请的说明书盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。[0103]首先,对本申请中的部分用语进行解释说明,[0104](1)等价多路径(Equal-CostMultipathRouting,ECMP),即存在多条到达同一个目的地址的相同开销的路径,其中,相同开销是指经过的交换机的跳数(也即是个数)相同。例如,在等价多路径模型的网络拓扑结构(如数据中心网络)中,在同一对源主机和目的主机之间的所有可能的传输路径均为等价路径。当设备支持等价路由时,发往该目的IP或者目的网段的流量就可以通过不同的路径分担,实现网络的负载均衡,并在其中某些路径出现故障时,由其它路径代替完成转发处理,实现路由冗余备份功能。如果使用传统的路由技术,发往该目的地址的数据包只能利用其中的一条链路,其它链路处于备份状态或无效状态,并且在动态路由环境下相互的切换需要一定时间,而等价多路径路由协议可以在该网络环境下同时使用多条链路,不仅增加了传输带宽,并且可以无时延无丢包地备份失效链路的数据传输。[0105](2)传输控制协议(TransmissionControlProtocol,TCP),是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。[0106](3)网络流(Flow),也可简称为网流,在一段时间内具有相同五元组的数据包的集合称为一条网络流,其中五元组包含通信双方的源IP地址、源端口号、目的IP地址、目的端口号以及传输层协议。[0107](4)网络会话,是多条网络流的集合,多条网络流具有相同的三元组(源地址,目的[0108](5)流切片/微流/小流(Flowlet),可以理解为是一个Flow中连续发送的多个报文组成的报文组,每个Flow中包括多个Flowlet。基于Flowlet机制进行报文转发时可基于Flowlet流表表项实现Flowlet中包括的多个报文的转发。不同的Flowlet对应不同的Flowlet流表表项。所述Flowlet流表表项用于指示每个Flowlet中包括的多个报文的报文转发路径。[0109](6)传输控制协议/网际协议(TransmissionControlProtocol/InternetProtocol,TCP/IP)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅[0110](7)互联网服务提供商(InternetServiceProvider,ISP)网络,即向广大用户综合提供互联网接入业务、信息业务、和增值业务的电信运营商。[0111]为了便于理解本申请实施例,下面先对本申请实施例所基于的网络传输系统架构进行描述。图2是本申请实施例提供的一种网络传输系统架构示意图,请参阅图2,该网络传输系统架构中主要包括:主机10、交换机(SWITCH)20、以为发送端或者为接收端分为源主机或目的主机,源主机可通过交换机20连接至互联网从而与目的主机进行通信。[0112]主机10,可以为任何产生数据,且具有网络接入功能的计算设备。例如,与,Internet相连的任何一台计算机都可以称为主机,每台主机都有一个唯一的IP地址。其中,人驾驶终端等各类设备。当两台主机(如源主机和目的主机)要通信传送数据时,需要源主机把应用数据封装成数据包(如TCP/IP包),然后再交给下一层数据链路层(如交换机)继续封装成帧;之后交换机等根据MAC地址把数据从源主机,准确无误的传送到目的主机。在本发明实施例中,主机10还具有对报文段进行Flowlet的划分、Flowlet标识以及动态配置用于划分Flowlet的时间阈值等功能,具体参见后续相关实施例的描述,此处不再赘述。[0113]交换机20,是一种基于MAC(网卡的硬件地址)识别,完成封装转发数据包功能的网收端之间建立临时的交换路径,使数据帧直接由源地址到达目的地址。交换机20的功能可还具有根据上述主机10侧对报文段进行的Flowlet的划分、Flowlet标识等功能,进而基于已经划分并标识好的Flowlet标识,来进行数据流中的相同Flowlet或者不同Flowlet的转[0114]例如,源主机10采用如传输控制协议(TransmissionControlProtocol,TCP)并通过本申请中的数据处理方法对数据进行处理,之后则向路由交换网络的报文转发设备发送报文,路由交换网络中的报文转发设备(诸如交换机、路由器等)采用ECMP技术并通过本申请中的数据传输方法进行报文的转发,最终转发至目的主机10,进而达到负载均衡处理的效果。[0115]本发明实施例中的数据处理方法或数据传输方法,可以适用于基于TCP/IP的传输机制。本发明中的数据传输方法的应用范围不仅仅局限于数据中心网络,还适用于任何存在多路径的网络,如ISP网络(InternetServiceProvider),该网络拓扑为任意两个源目的通信节点(即源主机和目的主机)都提供了多条网络路径,因此可应用本申请中的技术方案来执行Flowlet粒度的动态负载均衡。[0116]需要说明的是,对于数据中心网络来说,其网络拓扑结构的特点决定了在数据中心网络的同一网络会话中,也即是即三元组(源地址,目的地址,传输层协议)信息相同的TCP流,其所对应的多路径集合中所包含的一个或多个路径均为等价路径;而对于其他类型的网络来说,例如在ISP网络的同一网络会话中,其所对应的多路径集合中所包含的一个或多个路径之间则可能等价也可能不等价。因此,依据主机所接入的网络的拓扑结构类型的不同,本申请中所述的目标TCP流的多路径集合中所包含的一个或多个路径之间可以等价,也可以不等价。[0117]可以理解的是,以上图2中的网络架构只是本申请实施例中的一种示例性实施方式,本发明实施例中的网络架构包括但不仅限于以上网络架构。[0118]请参阅图3,图3是本申请实施例提供的一种数据中心网络拓扑结构示意图,该数层。源主机可通过交换机以及核心网通过TCP协议与目的主机进行通信。其中,存储和网络设备。其中,接入架顶模式(TopofRack,ToR)是数据中心服务器机柜布线的一种方式,采用TOR方式布线时,每个服务器机柜的上端部署1~2台接入交换机。[0120]Access接入层:物理连接服务器,一般放在机柜顶端,也称ToR交换机,或者称为Edge接入层(EdgeLayer)。接入交换机通常位于机架顶部,所以它们也被称为ToR(TopofRack)交换机,它们物理连接服务器。[0121]Aggregation汇聚层:聚合交换机,汇聚连接接入交换机,同时提供其他服务如防火墙(FireWall,FW)、负载均衡(ServerLoadBalancer,SLB)、安全套接字协议卸载[0122]Core核心层:核心交换机,提供高速转发,为多个汇聚层提供连接性。核心交换机为进出数据中心的包提供高速的转发,为多个汇聚层提供连接性,核心交换机为通常为整个网络提供一个弹性的L3路由网络。4来接入至互联网。[0124]需要说明的是,在本发明实施例中,应用于交换机侧的数据传输方法,可以应用于上述各层的交换机(Access接入层、Aggregation汇聚层或Core核心层),即在数据包从源主机到目的主机的整个转发路径中,所有参与转发的交换机均可以实施本申请中所提供的任意一种所述的数据传输方法。[0125]可以理解的是,以上图3中的数据中心网络拓扑结构只是本申请实施例中的一种示例性实施方式,本发明实施例中的数据中心网络拓扑结构包括但不仅限于以上网络架[0126]请参阅图4,图4是本申请实施例提供的一种计算机网络OSI模型以及TCP/IP模型示意图,在本申请实施例中,本发明实施例在现有技术的计算机网络0SI模型或TCP/IP模型中,在传输层和网络层之间添加了附加层,该附加层主要用于进行TCP流中的Flowlet的划分、标记以及相关参数的设置。具体地,本发明实施例所提供的OSI八层网络模型由下至上为1至8层,分别为物理层(Physicallayer)、数据链路层(Datalinklayer)、网络层(Presentationlayer)和应用层(Applicationlayer);本发明实施例所提供的TCP/IP模型由下至上可以简化为1至5层,主要包括了网络接口层、网络层、附加层、传其中,[0128]OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。向用户应用软件提供丰富的系统应用接口。常见应用层的网络服务协议有:超文本传输协议(HyperTextTransferProtocol,HTTP),超文本传输安全协议[0130]负责数据的编码、转化,确保应用层的正常工作。进行数据格式的转个系统生成的应用层数据能够被另外一个系统的应用层所识别和理解。在网络上计算机可能采用不同的数据表示,所以需要在数据传输时进行数据格式转换。为了让采用不同数据表示法的计算机之间能够相互通信而且交换数据,就要在通信过程中使用抽象的数据结构来表示所传送的数据。而在机器内部仍然采用各自的标准编码。管理这些抽象数据结构,并在发送方将机器的内部编码转换为适合网上传输的传送语法以及在接收方做相反的转换等工作都是由表示层来完成的。[0132]负责建立、维护、控制会话,区分不同的会话,以及提供单工(Simplex)、半双工(Halfduplex)、全双工(Fullduplex)三种通信模式的服务。例如,在通信双方之间建立、管理和终止会话,确定双方是否应该开始进行某一方发起的通信等。[0134]负责分割、组合数据,实现端到端的逻辑连接。传输层建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。TCP/UDP就是在这一层。[0136]本发明实施例中的附加层,用于对TCP流进行Flowet的划分和标记以及相关参数的设置。附加层协议根据网络路径的时延反馈来动态配置Flowlet的切分阈值,并依据所述的动态切分阈值将TCP流的报文段划分为Flowlet。由于划分Flowlet是在主机侧完成,本发明可以利用传输层报头的1比特保留字段来标记同一条TCP流的相邻Flowlet(本发明将该1比特字段命名为FL_Tag),将Flowlet的划分结果传递至网内交换机处,交换机再依据数据包的报头标志位来识别Flowlet。在本发明实施例中,主机侧的功能主要涉及上述应用层、[0137]需要说明的是,本申请中所述的附加层,可以单独作为一层进行部署,也可以部署至上述已有的传输层中。也即是将附加层所实现的功能结合到传输层中进行实现,本发明实施例对此不作具体限定。[0139]负责管理网络地址、定位设备、决定路由。本层通过IP寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。也即是通常所指的IP协议层。具体地,网络层是根据数据中包含的网络层地址信息,实现数据从任何一个节点到任何另外一个节点的整个传输过程,即主要功能是完成网络中主机间的报文传输,使用数据链路层的服务将每个报文从源端传输到目的端。本发明实施例中交换机所涉及的功能即对应该网络层。[0140](7)数据链路层[0141]负责准备物理传输,循环冗余校验(CyclicRedundancyCheck,CRC),错误通知,网络拓扑,流控等。将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测。在通过物理链路相连接的相邻节点之间,建立逻辑意义上的数据链路,在数据链路上实现数据的点到点或点到多方式的直接通信。在广域网中,数据链路层负责主机的接口信息处理机(InterfaceMessageProcessor,IMP)、IMP-IMP之间数据的可靠传送。在局域网中,数据链路层负责制及之间数据的可靠传输。物理信号的发送、接收,以及在介质的传输过程。物理层的主要功能是完成相邻结点之间原始比特流传输。即负责将数据以比特流的方式发送、接收。实际上最终信号的传输是通过物[0144]需要说明的是,在TCP/IP简化的模型中,应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation),其中不同的协议层对数据包有不同的称谓,例如,在应用层叫做消息,在传输层叫做段(segment),在网络层叫做数据报(datagram)或数据包(Packet),在链路层叫做帧(frame)等。[0145]可以理解的是,以上图4中的相关网络模型及功能只是本申请实施例中的一种示例性实施方式,本发明实施例中所涉及的网络模型及功能包括但不仅限于以上模型和功[0146]首先为了更好的理解本发明实施例,对本申请中所涉及分Flow与Flowlet进行进一步的说明。如上述图1所示,Flowlet实际上就是微流(micro-Flow)。一条流Flow可以分成和传输层协议均相同。将某个流中连续发送的多个Packet作为一个Flowlet,并应用Flowlet机制进行路径选择,以将该Flowlet中包括的多个Packet基于选择的路径进行转发。在本申请中,针对同一个Flowlet中的不同数据包,采用完全相同的转发路径(不包含等价路径)进行转发,而针对同一个TCP流中的不同Flowlet则可以采用不同但等价的路径(即等价多路径)进行转发,也可以采用不等价的路径进行转发,取决于主机所接入的网络的网络拓扑结构的类型。其中,等价多路径,可以包括在数据包的转发路径中,交换机跳数相等[0147]换句话说,可以把一条Flow看成是多个Flowlet组成的,负载均衡是基于Flowlet的基础上引入了一个中间层,它既不是数据包(packet),也不是流(Flow),而是大于packet小于Flow的Flowlet,即一个Flowlet可以认为是同一个Flow中的一个或多个Packet组成的微流。[0148]基于上述图2或图3提供的网络架构,以及图4提供的计算机网络模型,结合本申请中提供的数据传输方法,对本申请中提出的技术问题进行具体分析和解决。[0149]参见图5,图5是本发明实施例提供的一种数据传输方法的流程示意图,该方法可应用于上述图2或图3中所述的网络架构中,其中的主机10可以用于支持并执行图5中所示的方法流程步骤S501-步骤S504。下面将结合附图3从主机10(源主机)侧进行描述。该方法可以包括以下步骤S501-步骤S504,可选的,还可以包括步骤S505-步骤S506。[0150]步骤S501:生成第一报文段,确定所述第一报文段所属的目标TCP流。[0151]具体地,在发送端,当一主机(可称为源主机)需要向另一个主机(可称为目的主机)发送消息时,源主机先在本地生成符合相关协议标准的数据包,再通过交换机等发送至目的主机。其中,在主机侧,生成数据包的过程主要涉及应用层(包括应用层、表示层、会话层)、传输层和网络层。例如,源主机中的某个应用需要向目的主机发送消息时,该消息在源主机侧经过应用层的封装之后,进入到传输层,并生成符合传输层协议的报文段(即第一报文段),例如为符合TCP协议的TCP报文段(segment)。也即是,在主机侧,当TCP报文段完成传输层报头字段的封装后(即生成了本发明实施例中的第一报文段),则触发本申请中的附加层(如图2中所述,此处不再赘述)的功能并对第一报文段进行后续的Flowlet的划分和标记、以及动态配置用于划分Flowlet的时间阈值等。具体为源主机首先通过附加层确定该第一报文段其所属于的TCP流,然后再根据其所属的TCP流来获取与该第一报文段对应的用于划分、标识Flowlet的相关信息。在本申请中,一个TCP流(Flow)表示的是,某一次业务过程中的数据传输过程,即从TCP三次握手→数据传输结束→连接释放;且同一个TCP流的五元组信息相同,其中,五元组信息包括源IP、目的IP、源端口和目的端口和传输层协议。[0152]可选的,主机根据所述第一报文段中的源端口号,确定所述第一报文段属的目标TCP流。也即是,不同TCP流所对应的源端口号必定不同,因此可以通过报文段中的源端口来确定不同的报文段是否属于同一个TCP流。例如,源主机可以根据第一报文段中的源端口信息来确定第一报文段是属于哪个目标TCP流的。[0153]步骤S502:获取所述第一报文段的时间戳,以及获取与所述目标TCP流匹配的目标流信息。[0154]具体地,由于在本申请中,对第一报文段进行Flowlet的划分和标识,取决于第一报文段与相邻的上一个报文段之间的时间戳的差值与对应的时间阈值之间的关系,因此需要获取匹配的相关流信息。当源主机确定当前待发送的第一报文段所属的TCP流之后,则进一步获取所述第一报文段的时间戳,以及获取与该目标TCP流匹配的目标流信息,以进一步进行后续的Flowlet的划分、标识等。需要说明的是,在本发明实施例中,报文段的时间戳通常是在传输层中封装报文段时所加入的时间信息,该时间信息代表该报文段生成的时刻(对于目的主机来说,也可以理解为是源主机发送该报文段的时刻)。例如,当主机需要发送数据至目的主机时,会将发送时间封装至该数据的时间戳项,而对于源主机和目的主机来说,则均可以通过该时间戳获知数据是在什么时刻发送的,以便于计算(或测量)网络延时、计算业务处理耗时等。可选的,主机可以通过获取第一报文段中携带的时间戳值来获得第一报文段的时间戳,也可以根据系统当前的时间戳来获取第一报文段的时间戳,且该获取步骤可以在生成第一报文段之后且在步骤S503之前完成即可,对其具体执行的时间点不作限制。所述目标流信息包括该目标TCP流对应的时间阈值、该目标TCP流中第二报文段的时[0155]所述第二报文段为该目标TCP流中与第一报文段相邻的上一个报文段(也即是目标TCP流中时间戳值早于第一报文段且与第一报文段相邻的报文段);第二报文段的时间戳可以为主机根据第二报文段中携带的时间戳值获取的,也可以是主机根据系统当时记录的时刻来获取的,即第一报文段的时间戳与第二报文段的时间戳采用相同的标准来获取即[0156]所述时间阈值为第一路径时延和第二路径时延之差,所述第一路径时延为所述目标TCP流的多路径集合中时延最大的上行路径的时延,所述第二路径时延为所述目标TCP流的多路径集合中时延最小的上行路径的时延。其中,目标TCP流的多路径集合可包括该目标TCP流对应的多条传输路径,也即是目标TCP流的源IP、源端口和目的IP、目的端口之间多种可能的上行传输路径。可选的,目标TCP流的多路径集合还可以进一步包括与该目标TCP流之间为同一网络会话的TCP流的对应的多条传输路径,也即是源IP和目的IP之间多种可能的上行传输路径。换句话说,目标TCP流的多路径集合中可以包括该目标TCP流自身对应的多条传输路径,也可以进一步包括与目标TCP流的三元组信息(源地址,目的地址,传输层协议)相同的TCP流对应的多条传输路径。也即是,可能是一条TCP流对应一个多路径集合,也可能是同一个网络会话中的多条TCP流对应相同的多路径集合,也因此,可以是每条TCP流都分别维护一个用于划分Flowlet的时间阈值,也可以是多条TCP流之间共同维护一个用于划分Flowlet的时间阈值。其中,上行路径是指从发送端(即源主机)通往接收端(目的主机)方向的路径;而上行路径时延
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-江西-江西工程测量员一级(高级技师)历年参考题库含答案详解3套试卷
- 血管瘤放射治疗
- 椎间盘突出康复流程
- 康复科理疗仪器介绍
- 自闭症康复教育小组课件
- 2026年配送路径数字化 系统实现运输里程科学降低
- 卫生巾健康知识
- 中国一汽翻译岗位前景
- 芜湖安全生产测绘讲解
- 2026及未来5年中国塑胶沙滩鞋数据监测研究报告
- 颈椎骨折脊髓损伤的护理
- 胃镜检查护理常规课件
- 2025至2030年中国果冻布丁产业竞争现状及投资策略研究报告
- DB4403-T 194-2021 物业服务要求 医院
- 2022版《英语课程标准》解读
- 大型钢结构厂房工程项目组织机构设置方案
- 双语工程图学第十三章(部编)课件
- SYT 0452-2012 石油天然气金属管道焊接工艺评定
- 医疗设备仪器的清洁消毒
- 管道闭水试验记录自动计算
- 内镜粘膜下剥离术(ESD)
评论
0/150
提交评论