本技术实施例涉及通信,尤其涉及流量分析方法和装置。
背景技术:
1、远程直接内存访问(remote direct memory access,rdma)是一种绕过远程主机中央处理器(central processing unit,cpu)的核心访问cpu的内存中数据的技术,由于不经过cpu核心,不仅节省了大量cpu核心资源,同样也提高了系统吞吐量、降低了系统的网络通信延迟,尤其适合在大规模并行计算机集群中有广泛应用。
2、当前高性能计算(high performance computing,hpc)、分布式存储、人工智能(artificial intelligence,ai)等应用采用rdma网络替代传统的传输控制协议(transmission control protocol,tcp)/因特网协议(internet protocol,ip)网络,来降低cpu的处理和延迟,提升应用的性能。但高性能应用的特点是“多打一”的英佳(incast)流量模型,容易造成网络拥塞或故障,从而损害应用性能。
3、当高性能应用出现网络故障时,通常是由于网络中的某条或某些链路出问题,为此需要建立流表,通过流表进行流分析以帮助快速锁定故障路径。因此,如何建立流表是本领域技术人员亟需解决的问题之一。
技术实现思路
1、本技术实施例提供了流量分析方法和装置,能够通过流量分析建立流表。为达到上述目的,本技术实施例采用如下技术方案:
2、第一方面,本技术实施例提供了一种流量分析方法,该方法包括:接收测量报文,上述测量报文包括目标信息,上述目标信息包括源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项。然后根据上述目标信息确定流表。
3、可以看出,本技术实施例提供的方法可以根据接收的测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
4、在一种可能的实现方式中,上述测量报文还可以包括报文头,上述报文头包括生存时间。上述方法还可以包括:根据上述目标信息和上述生存时间确定流路径。
5、可以看出,本技术实施例提供的方法还可以根据接收的测量报文中的生存时间、源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析确定流路径。从而在应用出现网络故障时,通过流表和流路径进行流分析以帮助快速锁定故障路径。
6、在一种可能的实现方式中,可以接收目标设备发送的测量报文,上述目标设备为发送端设备、接收端设备或交换机设备。
7、相较于相关技术中,仅能对交换机设备的流量进行流量分析建立流表。本技术实施例提供的方法可以接收发送端设备、接收端设备或交换机设备发送的测量报文,然后根据接收的测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
8、在一种可能的实现方式中,上述测量报文包括第一字段、第二字段或第三字段中的至少一项,上述第一字段携带有上述目标信息,上述第二字段携带有上述目标信息,上述第三字段携带有上述目标信息。
9、可以看出,本技术实施例提供的方法可以通过一个或多个字段携带的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
10、第二方面,本技术实施例提供了另一种流量分析方法,该方法包括:获取报文的第一信息,上述第一信息包括出端口号、入端口号、源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项;根据上述第一信息生成测量报文,上述测量报文包括目标信息,上述目标信息包括源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项;发送上述测量报文。
11、可以看出,本技术实施例提供的方法可以通过测量报文向流量分析装置发送源地址、目的地址、源队列对、目的队列对和包序列号等信息,使流量分析装置可以根据接收的测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
12、在一种可能的实现方式中,可以在上述报文为目标报文的情况下,获取上述第一信息,上述目标报文为染色位为第一数值的报文。
13、可以看出,本技术实施例提供的方法可以通过染色位对报文进行标记,并根据染色位为第一数值的报文得到测量报文,然后通过测量报文向流量分析装置发送源地址、目的地址、源队列对、目的队列对和包序列号等信息,使流量分析装置可以根据接收的测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
14、在一种可能的实现方式中,可以根据上述第一信息确定上述目标信息。在上述报文的镜像报文头中填充第一字段、第二字段或第三字段中的至少一项,上述第一字段携带有上述目标信息,上述第二字段携带有上述目标信息,上述第三字段携带有上述目标信息。
15、可以看出,本技术实施例提供的方法可以通过测量报文填充上述第一字段、上述第二字段或上述第三字段向流量分析装置发送源地址、目的地址、源队列对、目的队列对和包序列号等信息,使流量分析装置可以根据接收的测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
16、在一种可能的实现方式中,可以在链路的丢包率大于第一阈值或上述链路的时延大于第二阈值的情况下,将上述链路传输的报文的染色位标记为第一数值。
17、可以看出,本技术实施例提供的方法可以在链路丢包率过高或时延较大时,通过染色位对该链路传输的报文进行标记,并根据染色位为第一数值的报文得到测量报文,然后通过测量报文向流量分析装置发送源地址、目的地址、源队列对、目的队列对和包序列号等信息,使流量分析装置可以根据测量报文中的源地址、目的地址、源队列对、目的队列对和包序列号等信息进行流量分析建立流表。从而在应用出现网络故障时,通过流表进行流分析以帮助快速锁定故障路径。
18、第三方面,本技术实施例提供了一种流量分析装置,上述装置包括:收发单元和处理单元。上述收发单元,用于接收测量报文,上述测量报文包括目标信息,上述目标信息包括源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项。上述处理单元,用于根据上述目标信息确定流表。
19、在一种可能的实现方式中,上述测量报文还包括报文头,上述报文头包括生存时间,上述处理单元还用于:根据上述目标信息和上述生存时间确定流路径。
20、在一种可能的实现方式中,上述收发单元具体用于:接收目标设备发送的测量报文,上述目标设备为发送端设备、接收端设备或交换机设备。
21、在一种可能的实现方式中,上述测量报文包括第一字段、第二字段或第三字段中的至少一项,上述第一字段携带有上述目标信息,上述第二字段携带有上述目标信息,上述第三字段携带有上述目标信息。
22、第四方面,本技术实施例提供了另一种流量分析装置,上述装置包括:收发单元和处理单元。上述收发单元,用于获取报文的第一信息,上述第一信息包括出端口号、入端口号、源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项。上述处理单元,用于根据上述第一信息生成测量报文,上述测量报文包括目标信息,上述目标信息包括源地址、目的地址、源队列对、目的队列对或包序列号中的至少一项。上述收发单元,还用于发送上述测量报文。
23、在一种可能的实现方式中,上述收发单元具体用于:在上述报文为目标报文的情况下,获取上述第一信息,上述目标报文为染色位为第一数值的报文。
24、在一种可能的实现方式中,上述处理单元具体用于:根据上述第一信息确定上述目标信息。在上述报文的镜像报文头中填充第一字段、第二字段或第三字段中的至少一项,上述第一字段携带有上述目标信息,上述第二字段携带有上述目标信息,上述第三字段携带有上述目标信息。
25、在一种可能的实现方式中,上述处理单元还用于:在链路的丢包率大于第一阈值或上述链路的时延大于第二阈值的情况下,将上述链路传输的报文的染色位标记为第一数值。
26、第五方面,本技术实施例还提供一种流量分析装置,该流量分析装置包括:至少一个处理器,当所述至少一个处理器执行程序代码或指令时,实现上述第一方面或其任意可能的实现方式中所述的方法。
27、可选地,该流量分析装置还可以包括至少一个存储器,该至少一个存储器用于存储该程序代码或指令。
28、第六方面,本技术实施例还提供一种芯片,包括:输入接口、输出接口、至少一个处理器。可选的,该芯片还包括存储器。该至少一个处理器用于执行该存储器中的代码,当该至少一个处理器执行该代码时,该芯片实现上述第一方面或其任意可能的实现方式中所述的方法。
29、可选地,上述芯片还可以为集成电路。
30、第七方面,本技术实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于实现上述第一方面或其任意可能的实现方式中所述的方法。
31、第八方面,本技术实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机实现上述第一方面或其任意可能的实现方式中所述的方法。
32、本实施例提供的流量分析装置、计算机存储介质、计算机程序产品和芯片均用于执行上文所提供的方法,因此,其所能达到的有益效果可参考上文所提供的方法中的有益效果,此处不再赘述。
1.一种流量分析方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述测量报文还包括报文头,所述报文头包括生存时间,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述接收测量报文包括:
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述测量报文包括第一字段、第二字段或第三字段中的至少一项,所述第一字段携带有所述目标信息,所述第二字段携带有所述目标信息,所述第三字段携带有所述目标信息。
5.一种流量分析方法,其特征在于,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述获取报文的第一信息包括:
7.根据权利要求5或6所述的方法,其特征在于,所述根据所述第一信息生成测量报文,包括:
8.根据权利要求5至7中任一项所述的方法,其特征在于,所述方法还包括:
9.一种流量分析装置,其特征在于,包括:收发单元和处理单元;
10.根据权利要求9所述的装置,其特征在于,所述测量报文还包括报文头,所述报文头包括生存时间,所述处理单元还用于:
11.根据权利要求9或10所述的装置,其特征在于,所述收发单元具体用于:
12.根据权利要求9至11中任一项所述的装置,其特征在于,所述测量报文包括第一字段、第二字段或第三字段中的至少一项,所述第一字段携带有所述目标信息,所述第二字段携带有所述目标信息,所述第三字段携带有所述目标信息。
13.一种流量分析装置,其特征在于,包括:收发单元和处理单元;
14.根据权利要求13所述的装置,其特征在于,所述收发单元具体用于:
15.根据权利要求13或14所述的装置,其特征在于,所述处理单元具体用于:
16.根据权利要求13至15中任一项所述的装置,其特征在于,所述处理单元还用于:
17.一种流量分析装置,包括至少一个处理器和存储器,其特征在于,所述至少一个处理器执行存储在存储器中的程序或指令,以使得所述流量分析装置实现上述权利要求1至4中任一项或5至8中任一项所述的方法。
18.一种计算机可读存储介质,用于存储计算机程序,其特征在于,当所述计算机程序在计算机或处理器运行时,使得所述计算机或所述处理器实现上述权利要求1至4中任一项或5至8中任一项所述的方法。
19.一种计算机程序产品,所述计算机程序产品中包含指令,其特征在于,当所述指令在计算机或处理器上运行时,使得所述计算机或所述处理器实现上述权利要求1至4中任一项或5至8中任一项所述的方法。
20.一种芯片,包括至少一个处理器和存储器,其特征在于,所述至少一个处理器执行存储在存储器中的程序或指令,以使得所述流量分析装置实现上述权利要求1至4中任一项或5至8中任一项所述的方法。
