CN112866187B - 路径切换方法及路径切换装置 - Google Patents

路径切换方法及路径切换装置 Download PDF

Info

Publication number
CN112866187B
CN112866187B CN201911194589.2A CN201911194589A CN112866187B CN 112866187 B CN112866187 B CN 112866187B CN 201911194589 A CN201911194589 A CN 201911194589A CN 112866187 B CN112866187 B CN 112866187B
Authority
CN
China
Prior art keywords
length
path
packet loss
message
heartbeat
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911194589.2A
Other languages
English (en)
Other versions
CN112866187A (zh
Inventor
朱勇
胡晓琨
马长旺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technical Service Co Ltd
Original Assignee
Huawei Technical Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technical Service Co Ltd filed Critical Huawei Technical Service Co Ltd
Priority to CN201911194589.2A priority Critical patent/CN112866187B/zh
Publication of CN112866187A publication Critical patent/CN112866187A/zh
Application granted granted Critical
Publication of CN112866187B publication Critical patent/CN112866187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种路径切换方法及装置。其中,该路径切换方法能够检测当前路径的数据丢包的丢包消息长度和丢包消息长度对应的丢包次数,从而及时触发其他路径的质量检测,当其他路径的质量检测通过时,进行路径切换,在其他路径上传输数据消息。可见,与目前路径切换方法中,需要路径的差错计数器达到最大重传次数才能触发路径切换的方式相比,能够在一定的丢包程度就及时触发其他路径的质量检测,及时进行路径切换,提高数据传输效率。

Description

路径切换方法及路径切换装置
技术领域
本申请涉及通信技术领域,尤其涉及一种路径切换方法及路径切换装置。
背景技术
目前,流控制传输协议(Stream Control Transmission Protocol,SCTP)是一种具有高可靠性和高传输效率的数据传输协议,已被广泛应用于电信网络中各种信令协议的传输层。SCTP支持多归属端点,即一个端点可以包含多个IP地址,可在端点间做到承载网络的容错。也就是说,多归属端点具有双路径、四路径等多路径传输模式,从而提高承载网络的数据传输可靠性。
然而,数据传输过程中不可避免的会出现部分丢包,但又未严重到路径中断,这种情况可称为亚健康场景。在亚健康场景,为了提高传输效率,当该多路径中一主路径的差错计数器达到最大重传次数时,可将该主路径设置为故障,以使得后续的数据消息切换到其他路径发送。其中,该差错计数器的原理是当主路径发送的数据消息未及时得到对端的确认时,该差错计数器加1,当主路径发送的数据消息收到对端的确认时,该差错计数器就清零。
可见,该机制下只要差错计数器没有达到最大重传次数,即使处于亚健康场景,也不能进行路径切换,从而导致传输效率下降。
发明内容
本申请提供一种路径切换方法及路径切换装置,有利于改善传输效率。
第一方面,本申请提供一种路径切换方法,该路径切换方法中,发送端检测第一路径的数据丢包信息,该数据丢包信息包括丢包消息长度和丢包消息长度对应的丢包次数。当丢包消息长度对应的丢包次数达到预设阈值时,发送端根据丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;当该M1次质量检测的结果均为通过时,发送端进行路径切换,在第二路径上传输数据消息。其中,M1为大于或等于1的整数。可见,该路径切换方法能够及时进行路径切换,提高数据传输效率。
与目前的路径切换方法中,在连续未接收到数据消息的响应确认消息达到最大重传次数,即路径的差错计数器在每次未接收到响应确认消息时加1,在接收到响应确认消息时清零,直至该差错计数器的值达到最大重传次数时才能进行路径切换的方式相比,本申请所述的路径切换方法能够在一定长度的数据消息不断丢失时,可及时根据该长度来检测第二路径的质量。另外,本申请还避免由于该长度的数据消息不断丢失,不会使得差错计数器达到最大重传次数的情况下,也能及时进行路径切换,提高数据传输效率。
在一种实施方式中,所述发送端根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果,包括:针对每次质量检测,所述发送端利用所述丢包消息长度的定长心跳消息和不定长心跳消息,检测第二路径上的心跳响应消息;当所述发送端均收到所述定长心跳消息和所述不定长心跳消息的心跳响应消息时,确定本次质量检测的结果为通过;当所述发送端未收到所述定长心跳消息和所述不定长心跳消息中至少一个的心跳响应消息时,确定本次质量检测的结果为不通过。
其中,定长心跳消息为长度为丢包消息长度的心跳消息;不定长心跳消息包括N个心跳消息,该N个心跳消息的长度分别不同。
在一种实施方式中,所述不定长心跳消息包括N个心跳消息,所述N个心跳消息中每个心跳消息的长度均不同。
在一种实施方式中,所述不定长心跳消息是根据以太网标准帧的大小构造的N个心跳消息。
在一种实施方式中,所述不定长心跳消息包括第一长度的心跳消息和第二长度的心跳消息;所述第一长度为帧长度的最小值,所述第二长度为所述帧长度的最大值或配置的最大传输单元(Maximum Transmission Unit,MTU)。
在一种实施方式中,所述不定长心跳消息包括的N个心跳消息的长度分别为以下一种或多种:64、128、256、512、1024、1280和最大传输单元MTU。
在一种实施方式中,所述第一路径为主路径,所述第二路径为备用路径时,所述方法还包括:所述发送端对所述第一路径进行M2次质量检测,获得M2次质量检测的结果;当所述M2次质量检测的结果均为通过时,所述发送端进行路径切换,在所述第一路径上传输数据消息,所述M2为大于M1的整数。可见,该实施方式使得路径切换方法能够及时切回第一路径,同时,可通过增加质量检测次数,避免在第一路径还未完全恢复时误切回。
第二方面,本申请还提供了一种路径切换装置,该路径切换装置具有实现上述第一方面至第二方面所述的方法示例中部分或全部功能,比如路径切换装置的功能可具备本申请中的部分或全部实施例中的功能,也可以具备单独实施本申请中的任一个实施例的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的单元或模块。
在一种可能的设计中,该路径切换装置的结构中可包括检测单元和切换单元,其中:
检测单元,用于检测第一路径的数据丢包信息,所述数据丢包信息包括丢包消息长度和所述丢包消息长度对应的丢包次数;以及当所述丢包消息长度对应的丢包次数达到预设阈值时,根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
切换单元,用于在所述检测单元检测的所述M1次质量检测的结果均为通过时,进行路径切换,在所述第二路径上传输数据消息,所述M1为大于或等于1的整数。
在另一种可能的设计中,该路径切换装置的结构中可包括处理器和收发器,所述处理器被配置为支持路径切换装置执行上述方法中相应的功能。所述收发器用于支持路径切换装置与其他设备之间的通信。所述路径切换装置还可以包括存储单元,所述存储单元用于与处理器和收发器耦合,其保存通信装置必要的程序指令和数据。
其中:
处理器,用于检测第一路径的数据丢包信息,所述数据丢包信息包括丢包消息长度和所述丢包消息长度对应的丢包次数;以及当所述丢包消息长度对应的丢包次数达到预设阈值时,根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
收发器,用于在所述处理器检测的所述M1次质量检测的结果均为通过时,进行路径切换,在所述第二路径上传输数据消息,所述M1为大于或等于1的整数。
可选的,收发器可为通信接口。可选的,该方面所述的路径切换装置还可执行上述第一方面所述的相关内容,此处不再详述。
第三方面,本发明实施例提供了一种计算机可读存储介质,用于储存为上述路径切换装置或发送端所用的计算机软件指令,其包括用于执行上述方法的第一方面所涉及的程序。
第四方面,本申请还提供了一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。
第五方面,本申请提供了一种芯片系统,该芯片系统包括处理器和接口,所述处理器和所述接口相耦合,用于支持发送端实现第一方面所涉及的功能,例如,检测上述方法中所涉及的数据丢包信息、或进行路径切换和信息中的至少一种。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存路径切换装置或发送端必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
附图说明
图1是本申请实施例提供的一种网络结构的示意图;
图2是本申请实施例提供的另一种网络结构的示意图;
图3是本申请实施例提供的一种发送端的结构示意图;
图4是本申请实施例提供的一种路径切换方法的流程示意图;
图5是本申请实施例提供的另一种路径切换方法的流程示意图;
图6是本申请实施例提供的一种路径切换装置的结构示意图;
图7是本申请实施例提供的一种路径切换设备的结构示意图。
具体实施方式
为了提高承载网的数据传输效率,本申请提供一种路径切换方法及装置,该路径切换方法能够检测当前路径的数据丢包的丢包消息长度和丢包消息长度对应的丢包次数,从而及时触发其他路径的质量检测,当其他路径的质量检测通过时,进行路径切换,在其他路径上传输数据消息。可见,与目前路径切换方法中,需路径的差错计数器达到最大重传次数的方式相比,能够在一定的丢包程度就及时触发其他路径的质量检测,及时进行路径切换,提高数据传输效率。
本申请提供的路径切换方法可应用到具有多条路径的网络结构中。请参阅图1,图1是本申请实施例提供的一种网络结构的示意图。如图1所示,该网络结构中,发送端与接收端之间具有两条路径,这两条路径分别为:路径1(发送端IP1A+端口号1,接收端IP1B+端口号2),路径2(发送端IP2A+端口号1,接收端IP2B+端口号2)。其中,IP1A和IP2A分别是发送端的IP地址,IP1B和IP2B分别是接收端的IP地址。端口号1是发送端的端口号,端口号2是接收端的端口号。其中,发送端与接收端之间可通过承载网传输数据消息、心跳消息等。其中,该承载网可为网际互连协议(internet protocol,IP)承载网。
本申请实施例中,路径可为传送路径,是指从发送端的一源IP地址到接收端的一目的IP地址之间的一条通路。该通路可为单向通路。发送端可为流控制传输协议(StreamControl Transmission Protocol,SCTP)端点,即是SCTP分组(packets)的逻辑接收方或发送方。发送端可以表示能够接收到SCTP分组的一组起源传送地址的逻辑实体,接收端可表示SCTP分组能够发送到的一组目的传送地址的逻辑实体。其中,发送端或接收端的端口号是唯一的,但IP地址可以是多个。例如,如图1所示,发送端和接收端均由两个IP地址,一个端口号。
其中,SCTP是一个传输层协议,可应用于传输各种信令,以提供可靠、有效的数据传输。SCTP支持多归属端点,即图1所示的,一个发送端或接收端具有多个IP地址,从而有利于做到承载网络的容错机制。可见,基于上述图1所示的网络结构,发送端能够在其中一条路径出现一定的丢包程度时,就及时触发另一条路径上的质量检测,从而有利于及时进行路径切换,提高数据传输效率。
多归属端点具有四路径模式和双路径模式,其中,四路径模式是指发送端到接收端具有四条路径,如图2所示,图2所示的网络结构与图1所示的网络结构的不同之处在于,图2中,四条路径分别为:路径1(发送端IP1A+端口号1,接收端IP1B+端口号2)、路径2(发送端IP1A+端口号1,对端IP2B+端口号2)、路径3(发送端IP2A+端口号1,接收端IP1B+端口号2)、路径4(发送端IP2A+端口号1,接收端IP2B+端口号2)。双路径模式是指发送端到接收端具有两条路径,如图1所示。
无论是哪种路径模式,发送端与接收端之间只有一条主路径,其他路径为备路径。其中,主路径的配置方式具有多种。例如,可人工配置发送端的主IP地址和接收端的主IP地址,从而构成主路径。再例如,发送端与接收端在建立链路过程中,根据链路建立相关消息中携带的IP地址或IP地址的顺序确定主IP地址,进而,确定主路径。
在一种实施方式中,无论主路径还是备路径在进行数据传输,都可利用所传输的数据消息是否接收到对应的响应确认消息,来检测当前数据传输的路径的数据丢包信息。相应的,当该数据丢包信息中存在一丢包消息长度对应的丢包次数大于或等于预设阈值时,即可根据该丢包消息长度对其他路径进行质量测量,当质量测量的结果为通过时,发送端可进行路径切换,将数据传输切换到其他路径上传输。
在另一种实施方式中,当发送端采用备路径进行数据传输时,无论是否检测备路径的数据丢包信息,发送端可以以预设周期对主路径进行质量检测,当该质量检测的结果为通过时,可将数据传输切回主路径。
可选的,上述实施方式也可分别称为路径切换方法、路径切回方法。
请参阅图3,图3是本申请实施例提供的一种发送端的结构示意图。如图3所示,该发送端可包括亚健康检测单元101和质量检测单元102。该发送端可为SCTP偶联管理单元,该SCTP偶联管理单元可执行本申请实施例中发送端的相关操作。
其中,亚健康检测单元101,用于针对进行数据传输的路径,进行亚健康检测。例如,亚健康检测单元101检测正在进行数据传输的路径的数据丢包信息,该数据丢包信息可包括各丢包消息长度以及各丢包消息长度的数据消息的丢包次数。
质量检测单元102,用于对没有进行数据传输的路径(如主路径和备路径)进行质量检测。例如,质量检测单元102在亚健康检测单元101检测出正在进行数据传输的路径的数据丢包信息中,一丢包消息长度对应的丢包次数达到预设阈值时,根据该丢包消息长度对其他路径进行M1次质量检测,获得M1次质量检测的结果。
相应地,图3所示的发送端还可以包括路径切换管理单元103,该路径切换管理单元103,用于在质量检测单元102针对其他路径的质量检测的结果为通过时,进行路径切换,例如,在第二路径上传输数据消息。
其中,M1可以为大于或等于1的整数。可选地,该M1可基于检测周期设定。
由于目前的路径切换机制是采用差错计数器统计数据传输的丢包情况的,即一旦收到其他长度的数据消息的响应确认消息时,即可将差错计数器清零,只有当差错计数器达到预设阈值时,才能执行路径切换。在路径中承载网丢弃特定长度的数据消息,或者丢弃大于某个长度的数据消息(如设置的MTU过小引起),或者某路径长时间丢包的场景,都会导致该路径上数据消息的传输效率下降。并且在特定长度的数据消息丢包过多时,会使得发送缓冲区里待确认的数据消息不断淤积后溢出,从而导致拥塞。而本申请实施例中,可以检测各丢包消息长度以及各丢包消息长度对应的丢包次数,并一丢包消息长度对应的丢包次数达到预设阈值时,根据丢包消息长度对其他路径进行指令检测,当质量检测的结果为通过时,即可进行路径切换。可见,本申请实施例所述的路径切换方法与目前的路径切换方法相比,能够及时检测到路径的亚健康情况,并及时切换到质量更好的其他路径。
以下结合附图和上述内容,对本申请所述的路径切换方法进行阐述。
请参阅图4,图4是本申请实施例提供的一种路径切换方法的流程示意图。其中,该路径切换方法从发送端的角度进行阐述。如图4所示,该路径切换方法包括:
201、发送端检测第一路径的数据丢包信息,该数据丢包信息包括丢包消息长度和丢包消息长度对应的丢包次数;
其中,第一路径可为发送端与接收端之间的主路径或备路径等,正在进行数据传输的路径。
202、发送端判断丢包消息长度对应的丢包次数是否达到预设阈值,若达到预设阈值,发送端执行步骤203;若未达到预设阈值,则继续执行步骤201;
该预设阈值可根据经验获得,或由用户进行设置,或根据发送缓冲区的大小进行设置。
其中,数据丢包信息中包括丢包消息长度和丢包次数两个参数。例如,数据丢包信息以表格形式表示,如表1所示。当预设阈值等于3时,可执行步骤203。
表1 数据丢包信息
丢包消息长度(字节) 丢包次数
1500 3
1200 2
203、发送端根据该丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
其中,第二路径可为发送端与接收端之间的备路径或主路径等,没有进行数据传输的路径。
本申请实施例中,发送端可采用该丢包消息长度对第二路径等其他备路径进行质量检测,避免只使用简单的心跳消息(如心跳消息的长度远小于丢包的数据消息的长度)检测,所导致的不同等条件的检测,无法获取第二路径等其他备路径是否同样存在该数据丢包信息。
发送端根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果,包括:针对每次质量检测,所述发送端利用所述丢包消息长度的定长心跳消息和不定长心跳消息,检测第二路径上的心跳响应消息;当所述发送端均收到所述定长心跳消息和所述不定长心跳消息的心跳响应消息时,确定本次质量检测的结果为通过;当所述发送端未收到所述定长心跳消息和所述不定长心跳消息中至少一个的心跳响应消息时,确定本次质量检测的结果为不通过。
其中,定长心跳消息是指长度固定的,如为丢包消息长度的心跳消息。不定长心跳消息可称为变长心跳消息,是指多个心跳消息中各心跳消息之间的长度是变化的或不同的。
在一种实施方式中,所述不定长心跳消息包括N个心跳消息,所述N个心跳消息中每个心跳消息的长度均不同。N为大于或等于2的整数。
在另一种实施方式中,所述不定长心跳消息是根据以太网标准帧的大小构造的N个心跳消息。
在又一种实施方式中,所述不定长心跳消息包括第一长度的心跳消息和第二长度的心跳消息;所述第一长度为帧长度的最小值,所述第二长度为所述帧长度的最大值或配置的最大传输单元MTU。
在又一种实施方式中,所述不定长心跳消息包括的N个心跳消息的长度分别为以下一种或多种:64、128、256、512、1024、1280和最大传输单元MTU。
其中,对变长或不定长的心跳消息的构造可采用上述一种或多种实施方式确定。但为了避免M1次质量检测所需的总检测时长过长,不定长心跳消息中各心跳消息的长度种类不宜过多。可选的,该N可由人工配置,或根据经验确定,或根据当前第一路径的数据丢包信息确定。
204、发送端判断M1次质量检测的结果是否均为通过,若是,则执行步骤205,否则执行步骤203;
205、发送端进行路径切换,在第二路径上传输数据消息。
步骤203中,发送端对第二路径进行质量检测的过程包括两部分:
第一部分,创建与第一路径的丢包消息长度相同的长度(即该丢包消息长度)的心跳消息;在第二路径上发送该心跳消息,并监视是否接收到相应的响应消息。
其中,该部分中,当第一路径中具有多个丢包消息长度对应的丢包次数同时达到预设阈值,那么,可创建多个分别与该多个丢包消息长度相对应的心跳消息,并监测是否接收到该多个心跳消息分别对应的响应消息。
第二部分,创建不定长心跳消息,在第二路径上发送不定长心跳消息中的各心跳消息,并监视是否接收到相应的响应消息。
如上述各实施方式所述,不定长心跳消息中各心跳消息的长度介于最小值与最大值之间,并且包括该最小值长度的心跳消息、最大值长度的心跳消息。
相应地,质量检测的结果为第二路径上发送的各心跳消息,如定长心跳消息、不定长心跳消息接收到响应消息,或未接收到响应消息。当第二路径上发送的所有心跳消息均接收到响应消息时,即第一部分和第二部分均收到了相应的响应消息时,质量检测的结果为通过。
步骤204中,若M1次质量检测的结果不是均为通过时,发送端可再次执行步骤203,或者再次执行步骤201至203。
步骤205中,发送端进行路径切换,在第二路径上发送数据消息的同时,还可以检测第二路径的数据丢包信息,并在第二路径的数据丢包信息中丢包消息长度对应的丢包次数达到预设阈值时,执行上述所述的针对第一路径或其他第三路径进行质量检测,进而进行路径切换等操作。
可选的,步骤203中,发送端可同时对第二路径等多条其他路径分别进行质量检测,并从中选择质量检测的结果为通过的路径进行路径切换操作,或从质量检测的结果均为通过的多条路径中选择传输时延等其他传输特性较好的路径进行路径切换操作。本申请实施例不做限定。例如,如图2所示,路径1相当于第一路径,路径2、3、4相当于第二路径,发送端可针对路径2、3、4分别进行质量测量。
由于部分长度的数据消息的丢包场景对平均RTT影响较小,也就无法触发路径切换。比如,特定长度的数据消息存在丢包,或大于某一长度的数据消息存在丢包,如果这些种类的数据消息占比不大,则平均RTT会被其他数据消息平均后拉平,从而导致平均RTT差异不明显而无法触发路径切换。而图4所示的路径切换可避免该问题,能够在特定长度的数据消息或大于某一长度的数据消息的丢包次数达到阈值时,及时触发其他路径的质量检测,从而触发路径切换,改善数据传输效率。
另外,由于不同的路径的RTT可能本身就不同,RTT小的路径传递消息的效率不一定就高,比如,一个没有丢包的稳定的RTT大的路径和存在10%丢包的RTT小的路径相比,实际上前者的数据传输效率更高,因此,图4所示的路径切换方法能够避免该问题,及时进行路径切换,以改善数据传输效率。
请参阅图5,图5是本申请实施例提供的另一种路径切换方法的流程示意图。其中,图5所示的路径切换方法与图4所示的路径切换方法的不同之处在于,第一路径为主路径,第二路径为备路径,步骤205中,发送端进行路径切换,在第二路径上发送数据消息的同时,可对第一路径进行质量测量,以便于将数据消息切回到主路径进行发送。如图5所示,该路径切换方法还包括:
206、发送端对第一路径进行M2次质量检测,获得M2次质量检测的结果;
207、发送端判断该M2次质量检测的结果是否均为通过,若均为通过,则执行步骤208,否则,再次执行步骤206。
208、发送端进行路径切换,在第一路径上传输数据消息。
其中,步骤206至208所述的方法也可称为路径切回方法。
当第一路径的亚健康检测或亚健康程度在临界状态下,为了避免当第一路径的亚健康检测或亚健康程度在临界状态下无意义的路径切回,对第一路径的质量检测更加严格。例如,增加质量检测的次数,M2可以大于M1。若M2次质量检测的结果均为通过,则执行步骤208,切回第一路径,发送数据消息。
可见,图5所示的路径切换方法能够及时切回第一路径,同时,可通过增加质量检测次数,避免在第一路径还未完全恢复时误切回。
另外,在图4、图5所示的路径切换方法中,发送端进行路径切换可包括:发送端同时切换源IP地址和目的IP地址,通过新的源IP地址向新的目的IP地址发送数据消息,相应地,接收端可在切换后的路径上发送响应确认消息(如ACK消息)。例如,图1中,发送端将数据消息的传输从路径1切换到路径2,表示源IP地址由IP1A更新为IP2A,目的IP地址由IP1B更新为IP2B。
请参阅图6,图6是本申请实施例提供的一种路径切换装置的结构示意图,该路径切换装置可应用于上述发送端中,如图6所示,该路径切换装置可包括:
检测单元301,用于检测第一路径的数据丢包信息,所述数据丢包信息包括丢包消息长度和所述丢包消息长度对应的丢包次数;以及当所述丢包消息长度对应的丢包次数达到预设阈值时,根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
切换单元302,用于当所述检测单元检测的M1次质量检测的结果均为通过时,进行路径切换,在所述第二路径上传输数据消息,所述M1为大于或等于1的整数。
在一种实施方式中,所述检测单元301根据所述丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果,包括:
针对每次质量检测,所述发送端利用所述丢包消息长度的定长心跳消息和不定长心跳消息,检测第二路径上的心跳响应消息;
当所述发送端均收到所述定长心跳消息和所述不定长心跳消息的心跳响应消息时,确定本次质量检测的结果为通过;
当所述发送端未收到所述定长心跳消息和所述不定长心跳消息中至少一个的心跳响应消息时,确定本次质量检测的结果为不通过。
在一种实施方式中,所述不定长心跳消息包括N个心跳消息,所述N个心跳消息中每个心跳消息的长度均不同。
在一种实施方式中,所述不定长心跳消息是根据以太网标准帧的大小构造的N个心跳消息。
在一种实施方式中,所述不定长心跳消息包括第一长度的心跳消息和第二长度的心跳消息;所述第一长度为帧长度的最小值,所述第二长度为所述帧长度的最大值或配置的最大传输单元MTU。
在一种实施方式中,所述不定长心跳消息包括的N个心跳消息的长度分别为以下一种或多种:64、128、256、512、1024、1280和最大传输单元MTU。
在一种实施方式中,所述第一路径为主路径,所述第二路径为备用路径时,所述检测单元301,还用于对所述第一路径进行M2次质量检测,获得M2次质量检测的结果;所述切换单元302,还用于当所述检测单元检测的M2次质量检测的结果均为通过时,进行路径切换,在所述第一路径上传输数据消息,所述M2为大于M1的整数。
图6所示的路径切换装置可以执行上述图4、图5所述的相关内容,此处不再详述。
请参阅图7,图7为本申请实施例提供的一种路径切换设备的结构示意图,该路径切换设备可执行上述图6所示的装置,也就是说,该路径切换设备可以执行上述方法实施例中发送端的相关操作,也可以具有上述发送端的相关功能。该路径切换设备也可以为芯片或电路,如可为设置于上述发送端内的芯片或电路。该设备可以包括处理器410和存储器420。该存储器420用于存储指令,该处理器410用于执行该存储器420存储的指令,以使所述路径切换设备实现前述发送端的相关操作。
进一步的,该路径切换设备还可以包括接收器440和发送器450。再进一步的,该路径切换设备还可以包括总线系统430。
其中,处理器410、存储器420、接收器440和发送器450通过总线系统430相连,处理器410用于执行该存储器420存储的指令,以控制接收器440接收信号,并控制发送器450发送信号。例如,处理器410可控制接收器接收来自接收端的响应确认消息,并控制发送器450发送定长心跳消息以及不定长心跳消息等,以完成上述方法中发送端的的步骤。其中,接收器440和发送器450可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为收发器。所述存储器420可以集成在所述处理器410中,也可以与所述处理器410分开设置。
作为一种实现方式,接收器440和发送器450的功能可以考虑通过收发电路或者收发的专用芯片实现。处理器410可以考虑通过专用处理芯片、处理电路、处理器或者通用芯片实现。
作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的发送端所述的操作。即将实现处理器410,接收器440和发送器450功能的程序代码存储在存储器中,通用处理器通过执行存储器中的代码来实现处理器410,接收器440和发送器450的功能,比如,处理器410可以调用存储器420中的程序代码,或者基于接收器440和发送器450,执行图3中发送单元或图4中接收单元的相关操作,或者执行上述方法实施例发送端执行的相关操作或实施方式。
所述设备所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于这些内容的描述,此处不做赘述。
应理解,在本申请实施例中,处理器可以是中央处理单元(Central ProcessingUnit,简称为“CPU”),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。
该总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统。
此外,本申请还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程,或使得计算机执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程。
本申请还提供一种计算机程序产品,该计算机程序产品包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程;或使得计算机执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程。
本申请还提供一种芯片,包括处理器。该处理器用于调用并运行存储器中存储的计算机程序,以执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程,或以执行本申请实施例所述路径切换方法中由发送端执行的相应操作和/或流程。可选地,该芯片还包括存储器,该存储器与该处理器通过电路或电线与存储器连接,处理器用于读取并执行该存储器中的计算机程序。进一步可选地,该芯片还包括通信接口,处理器与该通信接口连接。通信接口用于接收需要处理的数据和/或信息,处理器从该通信接口获取该数据和/或信息,并对该数据和/或信息进行处理。该通信接口可以是输入输出接口。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
还应理解,本文中涉及的第一、第二等各种数字编号仅为描述方便进行的区分,并不用来限制本发明实施例的范围。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各种说明性逻辑块(illustrative logical block)和步骤(step),能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (16)

1.一种路径切换方法,其特征在于,包括:
发送端检测第一路径的数据丢包信息,所述数据丢包信息包括丢包消息长度和所述丢包消息长度对应的丢包次数;
当所述丢包消息长度对应的丢包次数达到预设阈值时,所述发送端根据对应的丢包次数达到预设阈值的丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
当所述M1次质量检测的结果均为通过时,所述发送端进行路径切换,在所述第二路径上传输数据消息,所述M1为大于或等于1的整数。
2.根据权利要求1所述的方法,其特征在于,所述发送端根据对应的丢包次数达到预设阈值的丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果,包括:
针对对应的丢包次数达到预设阈值的丢包消息长度的每次质量检测,所述发送端利用所述丢包消息长度的定长心跳消息和不定长心跳消息,检测第二路径上的心跳响应消息;
当所述发送端均收到所述定长心跳消息和所述不定长心跳消息的心跳响应消息时,确定本次质量检测的结果为通过;
当所述发送端未收到所述定长心跳消息和所述不定长心跳消息中至少一个的心跳响应消息时,确定本次质量检测的结果为不通过。
3.根据权利要求2所述的方法,其特征在于,所述不定长心跳消息包括N个心跳消息,所述N个心跳消息中每个心跳消息的长度均不同。
4.根据权利要求2或3所述的方法,其特征在于,所述不定长心跳消息是根据以太网标准帧的大小构造的N个心跳消息。
5.根据权利要求2或3所述的方法,其特征在于,所述不定长心跳消息包括第一长度的心跳消息和第二长度的心跳消息;
所述第一长度为帧长度的最小值,所述第二长度为所述帧长度的最大值或配置的最大传输单元MTU。
6.根据权利要求3所述的方法,其特征在于,所述不定长心跳消息包括的N个心跳消息的长度分别为以下一种或多种:
64、128、256、512、1024、1280和最大传输单元MTU。
7.根据权利要求1至3任一项所述的方法,其特征在于,所述第一路径为主路径,所述第二路径为备用路径时,所述方法还包括:
所述发送端对所述第一路径进行M2次质量检测,获得M2次质量检测的结果;
当所述M2次质量检测的结果均为通过时,所述发送端进行路径切换,在所述第一路径上传输数据消息,所述M2为大于M1的整数。
8.一种路径切换装置,其特征在于,包括:
检测单元,用于检测第一路径的数据丢包信息,所述数据丢包信息包括丢包消息长度和所述丢包消息长度对应的丢包次数;以及当所述丢包消息长度对应的丢包次数达到预设阈值时,根据对应的丢包次数达到预设阈值的丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果;
切换单元,用于当所述检测单元检测的M1次质量检测的结果均为通过时,进行路径切换,在所述第二路径上传输数据消息,所述M1为大于或等于1的整数。
9.根据权利要求8所述的装置,其特征在于,所述检测单元根据对应的丢包次数达到预设阈值的丢包消息长度对第二路径进行M1次质量检测,获得M1次质量检测的结果,包括:
针对对应的丢包次数达到预设阈值的丢包消息长度的每次质量检测,利用所述丢包消息长度的定长心跳消息和不定长心跳消息,检测第二路径上的心跳响应消息;
当均收到所述定长心跳消息和所述不定长心跳消息的心跳响应消息时,确定本次质量检测的结果为通过;
当未收到所述定长心跳消息和所述不定长心跳消息中至少一个的心跳响应消息时,确定本次质量检测的结果为不通过。
10.根据权利要求9所述的装置,其特征在于,所述不定长心跳消息包括N个心跳消息,所述N个心跳消息中每个心跳消息的长度均不同。
11.根据权利要求9或10所述的装置,其特征在于,所述不定长心跳消息是根据以太网标准帧的大小构造的N个心跳消息。
12.根据权利要求9或10所述的装置,其特征在于,所述不定长心跳消息包括第一长度的心跳消息和第二长度的心跳消息;
所述第一长度为帧长度的最小值,所述第二长度为所述帧长度的最大值或配置的最大传输单元MTU。
13.根据权利要求10所述的装置,其特征在于,所述不定长心跳消息包括的N个心跳消息的长度分别为以下一种或多种:
64、128、256、512、1024、1280和最大传输单元MTU。
14.根据权利要求8至10任一项所述的装置,其特征在于,所述第一路径为主路径,所述第二路径为备用路径时,
所述检测单元,还用于对所述第一路径进行M2次质量检测,获得M2次质量检测的结果;
所述切换单元,还用于当所述检测单元检测的M2次质量检测的结果均为通过时,进行路径切换,在所述第一路径上传输数据消息,所述M2为大于M1的整数。
15.一种路径切换设备,其特征在于,包括处理器和存储器,所述存储器用于存储指令,所述存储器用于执行所述存储器存储的指令,以使得所述路径切换设备执行如权利要求1至7任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,用于存储计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至7任一项所述的方法。
CN201911194589.2A 2019-11-28 2019-11-28 路径切换方法及路径切换装置 Active CN112866187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911194589.2A CN112866187B (zh) 2019-11-28 2019-11-28 路径切换方法及路径切换装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911194589.2A CN112866187B (zh) 2019-11-28 2019-11-28 路径切换方法及路径切换装置

Publications (2)

Publication Number Publication Date
CN112866187A CN112866187A (zh) 2021-05-28
CN112866187B true CN112866187B (zh) 2022-12-27

Family

ID=75995875

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911194589.2A Active CN112866187B (zh) 2019-11-28 2019-11-28 路径切换方法及路径切换装置

Country Status (1)

Country Link
CN (1) CN112866187B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114584485B (zh) * 2022-01-30 2023-10-31 阿里巴巴(中国)有限公司 检测边缘网络质量的方法、装置、设备和计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101820651A (zh) * 2009-02-27 2010-09-01 华为技术有限公司 通信路径选择方法、网络交换设备、承载设备和通信系统
WO2011113274A1 (zh) * 2010-03-19 2011-09-22 中兴通讯股份有限公司 一种流控制传输协议多归属选路的方法及装置
CN102694713A (zh) * 2011-03-21 2012-09-26 鸿富锦精密工业(深圳)有限公司 网络通信多通路选择方法及系统
WO2013078594A1 (zh) * 2011-11-28 2013-06-06 华为技术有限公司 检测路径通信质量的方法和设备
CN105743711A (zh) * 2016-04-13 2016-07-06 华为技术有限公司 一种网络路径的故障检测方法、装置及网络设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101820651A (zh) * 2009-02-27 2010-09-01 华为技术有限公司 通信路径选择方法、网络交换设备、承载设备和通信系统
WO2011113274A1 (zh) * 2010-03-19 2011-09-22 中兴通讯股份有限公司 一种流控制传输协议多归属选路的方法及装置
CN102694713A (zh) * 2011-03-21 2012-09-26 鸿富锦精密工业(深圳)有限公司 网络通信多通路选择方法及系统
WO2013078594A1 (zh) * 2011-11-28 2013-06-06 华为技术有限公司 检测路径通信质量的方法和设备
CN103404080A (zh) * 2011-11-28 2013-11-20 华为技术有限公司 检测路径通信质量的方法和设备
CN105743711A (zh) * 2016-04-13 2016-07-06 华为技术有限公司 一种网络路径的故障检测方法、装置及网络设备

Also Published As

Publication number Publication date
CN112866187A (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
CN108881008B (zh) 一种数据传输的方法、装置和系统
US11902139B2 (en) Diagnosing and resolving issues in a network using probe packets
US10382457B2 (en) Attack stream identification method, apparatus, and device on software defined network
US8868998B2 (en) Packet communication apparatus and packet communication method
US9577791B2 (en) Notification by network element of packet drops
CN106612284B (zh) 一种流数据的传输方法和装置
CN107342906B (zh) 一种大象流的检测方法、设备及系统
CN106817264B (zh) 一种链路故障检测的方法、装置和系统
WO2014092779A1 (en) Notification by network element of packet drops
KR20130009863A (ko) 프레임 전송의 적어도 부분적인 중단
WO2012147909A1 (ja) ネットワーク装置、通信システム、異常トラヒックの検出方法およびプログラム
CN113076280B (zh) 一种数据传输方法及相关设备
CN108322836A (zh) 一种数据传输的方法及装置
US11792099B2 (en) Troubleshooting method, device, and readable storage medium
WO2019052264A1 (zh) 传输报文的方法、网络组件和计算机可读存储介质
CN112866187B (zh) 路径切换方法及路径切换装置
US20140211614A1 (en) Methods and systems for providing redundancy in data network communications
JP2015097316A (ja) 中継装置および中継方法
US20120250536A1 (en) Ethernet-dual-ended loss measurement calculation
CN111147386B (zh) 用于处理数据传输拥塞的方法、电子设备和计算机可读介质
US20240195717A1 (en) Identification of network portion responsible for packet loss
CN109039728A (zh) 基于bfd的流量拥塞检测方法及系统
US20220329519A1 (en) Packet transmission method and electronic device
KR100870619B1 (ko) 무선 네트워크에서 패킷 손상 정보를 사용하는 tcp혼잡제어방법
CN110830308B (zh) 一种切换通信链路的方法及接收端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant