【技术实现步骤摘要】
报文传输方法、设备及系统
本专利技术涉及网络通信领域,特别涉及一种报文传输方法、设备及系统。
技术介绍
Clos数据中心网络架构是由CharlesClos(人名)在1953年为了解决电话网无阻塞交换问题提出的一种交换架构,应用该架构的数据中心网络称为Clos数据中心网络。传统的Clos数据中心网络包括:源端设备、交换设备和目的端设备,源端设备向目的端设备发送报文时,首先将报文发送给交换设备,交换设备将该报文存储在该交换设备的候选队列中,当轮到该报文发送时,交换设备进行选路,报文沿交换设备选定的传输路径传输至目的端设备。其中,交换设备选路方式通常为等价多路径(英文:EqualCostMultiPath;简称:ECMP)方式,具体的,交换设备提取该报文的五元组关键字,并对五元组关键字进行哈希(英文:Hash)计算,根据计算出的哈希值在ECMP表查询,得到报文相应的传输路径。然而由于每条流(每条流包括至少一个报文,同一条流中的报文的五元组关键字相同)的流量大小并不固定,在无法知晓流的流量的情况下单纯根据五元组关键字计算的哈希值来进行报文传输,容易造成路径拥塞,进而导致丢包。因此,如何充分利用Clos数据中心网络的多路径特性成为了业界研究的重点。目前,为了改善数据中心网络中的路径拥塞与丢包等问题,交换设备接收到源端设备发送的报文后,会提取报文的生存时间(英文:TimeToLive;简称:TTL)字段和五元组关键字,对TTL与五元组关键字一并进行哈希计算,根据计算出的哈希值在ECMP表查询,得到报文相应的传输路径,当该传输路径拥塞时,该交换设备的候选队列中存储的报文 ...
【技术保护点】
一种报文传输方法,其特征在于,用于源端设备,所述方法包括:检测第一传输路径是否拥塞;当所述第一传输路径拥塞时,通过第二传输路径向目的端设备发送第一探测报文,所述第一探测报文包括第一五元组和第一生存时间TTL,所述第一五元组与第一报文的五元组相同,所述第一TTL与所述第一报文的TTL不同,所述第一报文为所述源端设备上一时刻发送的第一数据流中的报文,所述第二传输路径为与所述源端设备连接的除所述第一传输路径之外的传输路径;基于所述第一探测报文检测所述第二传输路径是否拥塞;当所述第二传输路径不拥塞时,更改第一数据流中剩余报文的TTL,使更改后的TTL等于所述第一TTL,所述第一数据流包括所述第一报文,所述第一数据流中的报文的五元组均相同,所述剩余报文为所述第一数据流中位于所述第一报文之后的报文;通过所述第二传输路径传输第一数据流中剩余报文。
【技术特征摘要】
1.一种报文传输方法,其特征在于,用于源端设备,所述方法包括:检测第一传输路径是否拥塞;当所述第一传输路径拥塞时,通过第二传输路径向目的端设备发送第一探测报文,所述第一探测报文包括第一五元组和第一生存时间TTL,所述第一五元组与第一报文的五元组相同,所述第一TTL与所述第一报文的TTL不同,所述第一报文为所述源端设备上一时刻发送的第一数据流中的报文,所述第二传输路径为与所述源端设备连接的除所述第一传输路径之外的传输路径;基于所述第一探测报文检测所述第二传输路径是否拥塞;当所述第二传输路径不拥塞时,更改第一数据流中剩余报文的TTL,使更改后的TTL等于所述第一TTL,所述第一数据流包括所述第一报文,所述第一数据流中的报文的五元组均相同,所述剩余报文为所述第一数据流中位于所述第一报文之后的报文;通过所述第二传输路径传输第一数据流中剩余报文。2.根据权利要求1所述的方法,其特征在于,所述基于所述第一探测报文检测所述第二传输路径是否拥塞,包括:检测所述第一探测报文发出后的预设时长内是否收到探测响应报文;当所述第一探测报文发出后的预设时长内未收到探测响应报文时,确定所述第二传输路径拥塞。3.根据权利要求2所述的方法,其特征在于,所述预设时长为一个往返时延RTT。4.根据权利要求1所述的方法,其特征在于,所述基于所述第一探测报文检测所述第二传输路径是否拥塞,包括:接收所述目的端设备发送的探测响应报文,所述探测响应报文是所述目的端设备根据所述第一探测报文生成的;检测所述探测响应报文中是否携带拥塞响应ECE标记;当所述探测响应报文中携带有ECE标记时,确定所述第二传输路径拥塞;当所述探测响应报文中未携带有ECE标记时,确定所述第二传输路径未拥塞。5.根据权利要求1所述的方法,其特征在于,所述源端设备进行路径切换的概率为三分之一。6.根据权利要求5所述的方法,其特征在于,所述通过第二传输路径向目的端设备发送第一探测报文,包括:生成一个随机数,所述随机数为任一自然数;当所述随机数能被3整除时,通过第二传输路径向目的端设备发送第一探测报文。7.根据权利要求1至6任一所述的方法,其特征在于,在所述通过第二传输路径向目的端设备发送第一探测报文之前,所述方法还包括:向所述目的端设备发送功能请求报文;接收所述目的端设备发送的功能响应报文,所述功能响应报文是所述目的端设备基于所述功能请求报文生成的,所述功能响应报文用于标识所述目的端设备是否支持探测响应功能;所述通过第二传输路径向目的端设备发送第一探测报文,包括:根据所述功能响应报文检测所述目的端设备是否支持探测响应功能;当所述目的端设备支持探测响应功能时,通过第二传输路径向目的端设备发送第一探测报文。8.根据权利要求1所述的方法,其特征在于,所述第一探测报文为所述第一数据流中位于所述第一报文之后的首个报文。9.根据权利要求1所述的方法,其特征在于,所述源端设备与所述目的端设备之间传输的每个报文均包括传输控制协议TCP协议字段,所述TCP协议字段中包括依次排布的保留位、探测位和探测响应位;探测报文的探测位的标识与其他报文的探测位的标识不同;探测响应报文的探测响应位的标识与其他报文的探测响应位的标识不同。10.根据权利要求1所述的方法,其特征在于,所述源端设备中,在一个往返时延内,发送的探测报文的个数小于或等于1,修改TTL的次数小于或等于1。11.根据权利要求1所述的方法,其特征在于,所述基于所述第一探测报文检测所述第二传输路径是否拥塞,包括:当所述第二传输路径拥塞时,通过所述第一传输路径传输所述第一数据流中剩余报文。12.根据权利要求1所述的方法,其特征在于,所述基于所述第一探测报文检测所述第二传输路径是否拥塞,包括:当所述第二传输路径拥塞时,通过第三传输路径向目的端设备发送第二探测报文,所述第二探测报文包括第一五元组和第二生存时间TTL,所述第一五元组与第一报文的五元组相同,所述第二TTL与所述第一报文的TTL、所述第一TTL均不同,所述第三传输路径为与所述源端设备连接的除所述第一传输路径及所述第二传输路径之外的传输路径;基于所述第二探测报文检测所述第三传输路径是否拥塞;当所述第三传输路径不拥塞时,更改第一数据流中剩余报文的TTL,使更改后的TTL等于所述第二TTL,所述剩余报文为所述第一数据流中位于所述第一报文之后的报文;通过所述第三传输路径传输第一数据流中剩余报文。13.一种报文传输方法,其特征在于,用于目的端设备,所述方法包括:通过第二传输路径接收源端设备发送的第一探测报文,所述第一探测报文是所述源端设备在检测到第一传输路径拥塞时发送的,所述第一探测报文包括第一五元组和第一生存时间TTL,所述第一五元组与第一报文的五元组相同,所述第一TTL与所述第一报文的TTL不同,所述第一报文为所述源端设备上一时刻发送的报文,所述第二传输路径为与所述源端设备连接的除所述第一传输路径之外的传输路径;通过第二传输路径接收所述源端设备传输的第一数据流中更改TTL后的剩余报文,所述更改TTL后的剩余报文是所述源端设备基于所述第一探测报文检测到所述第二传输路径不拥塞时,更改所述第一数据流中的剩余报文的TTL后得到的,更改后的TTL等于所述第一TTL,所述第一数据流包括所述第一报文,所述第一数据流中的报文的五元组均相同,所述剩余报文为所述第一数据流中位于所述第一报文之后的报文。14.根据权利要求13所述的方法,其特征在于,在所述接收源端设备发送的第一探测报文之后,所述方法还包括:检测所述探测报文中是否携带有拥塞ECN标记;当所述探测报文中未携带有ECN标记时,根据所述探测报文生成探测响应报文;向所述源端设备发送所述探测响应报文;当所述探测报文中携带有ECN标记时,禁止响应所述探测报文。15.根据权利要求13或14所述的方法,其特征在于,在所述接收源端设备发送的第一探测报文之前,所述方法还包括:接收所述源端设备发送的功能请求报文;基于所述功能请求报文生成功能响应报文,所述功能响应报文用于标识所述目的端设备是否支持探测响应功能;向所述源端设备发送所述功能响应报文。16.根据权利要求13所述的方法,其特征在于,所述源端设备与所述目的端设备之间传输的每个报文均包括传输控制协议TCP协议字段,所述TCP协议字段中包括依次排布的保留位、探测位和探测响应位;探测报文的探测位的标识与其他报文的探测位的标识不同;探测响应报文的探测响应位的标识与其他报文的探测响应位的标识不同。17.一种报文传输设备,其特征在于,用于源端设备,所述设备包括:第一检测模块,用于检测第一传输路径是否拥塞;第一发送模块,用于当所述第一传输路径拥塞时,通过第二传输路径向目的端设备发送第一探测报文,所述第一探测报文...
【专利技术属性】
技术研发人员:王闯,袁峰,李兆耕,
申请(专利权)人:华为技术有限公司,清华大学,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。