CN110300033B - 一种丢包信息记录方法、网络设备及网络系统 - Google Patents
一种丢包信息记录方法、网络设备及网络系统 Download PDFInfo
- Publication number
- CN110300033B CN110300033B CN201810240640.8A CN201810240640A CN110300033B CN 110300033 B CN110300033 B CN 110300033B CN 201810240640 A CN201810240640 A CN 201810240640A CN 110300033 B CN110300033 B CN 110300033B
- Authority
- CN
- China
- Prior art keywords
- packet loss
- message
- time
- data stream
- matching
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种丢包信息记录方法和网络设备。网络设备接收第一报文,该第一报文包括特征字段,该特征字段用于识别该第一报文所属的数据流。网络设备根据该特征字段查找转发表,在匹配失败的情况下,确定该第一报文是否为该数据流的匹配时间后接收并且匹配失败的首个报文。在该第一报文是该数据流的匹配时间后接收并且匹配失败的首个报文情况下,该网络设备为该数据流生成第一丢包分片,并将该第一报文的接收时间记为该第一丢包分片的起始时间。该网络设备接收该数据流的第二报文;在该第二报文是该数据流的匹配时间后接收并且匹配失败的后续报文的情况下,将该第二报文的接收时间记为该第一丢包分片的结束时间。
Description
技术领域
本申请涉及网络通信技术,尤其涉及一种丢包信息记录方法、网络设备及网络系统。
背景技术
数据包(报文)通过网络传输的过程中被丢弃的情况称为丢包。
为了统计丢包的信息,网络设备将具有相同特征(例如,五元组,三元组等)的报文作为一个数据流,基于该数据流建立流表,并在该流表中逐个记录接收的每个报文的大小、字节数、接收时间等。当网络设备丢弃报文时,在该流表中记录该报文的丢弃时间和丢弃位置,其中,丢弃位置即该网络设备的标识,用于指示该报文是在该网络设备上被丢弃的。
上述方案中,网络设备需要记录每个被丢弃的报文的丢弃时间和丢弃位置。然而,这种方案需要占用较大存储空间,且需要记录较多的信息,导致浪费了网络设备的存储资源,降低了网络设备记录丢包信息的效率。
发明内容
本申请提供了一种丢包信息记录方法及网络设备,以克服现有技术中网络设备记录每个被丢弃的报文的丢弃时间和丢弃位置导致的存储资源浪费和丢包信息记录效率较低的问题。
本申请第一方面提供了一种丢包信息记录方法。网络设备接收第一报文,该第一报文包括特征字段,该特征字段用于识别该第一报文所属的数据流。网络设备根据该特征字段查找转发表,在没有查找到匹配该特征字段的转发表项(即匹配失败)的情况下,确定该第一报文是否为该数据流的匹配时间后接收并且匹配失败的首个报文。在该第一报文是该数据流的匹配时间后接收并且匹配失败的首个报文情况下,该网络设备为该数据流生成第一丢包分片,并将该第一报文的接收时间记为该第一丢包分片的起始时间。该网络设备接收到所述数据流的第二报文后,在所述第二报文是所述数据流的匹配时间后接收并且匹配失败的后续报文的情况下,将所述第二报文的接收时间记为所述第一丢包分片的结束时间。
通过本申请提供的方式,所述网络设备只需要在丢弃报文的时候为数据流生成丢包分片,并记录丢包分片的信息,而不需要记录每个被丢弃的报文的信息,节约了所述网络设备的存储空间,提高了所述网络设备的处理效率。
在所述第一方面的第一种实施方式中,在确定所述第一报文是否为所述数据流的匹配时间后接收并且匹配失败的首个报文时,所述网络设备执行以下操作:确定在所述数据流的匹配时间之后是否为所述数据流建立过丢包分片;在所述数据流的匹配时间之后没有为所述数据流建立过丢包分片的情况下,确定所述第一报文为所述数据流的匹配时间后接收并且匹配失败的首个报文。
本申请中,所述网络设备并不需要为每个因匹配失败被丢弃的报文建立丢包分片,而是只有在收到的报文为匹配时间后接收并且匹配失败的首个报文的情况下才为该报文所属的数据流建立丢包分片,可以节约所述网络设备的存储空间。
在所述第一方面的第二种实施方式中,所述第二报文包括所述特征字段。所述网络设备根据所述特征字段查找所述转发表,在没有查找到匹配所述特征字段的转发表项(匹配失败)的情况下,确定所述第二报文是否为所述数据流的匹配时间后接收并且匹配失败的首个报文。在所述第二报文不是所述数据流的匹配时间后接收并且匹配失败的首个报文情况下,所述网络设备将所述第二报文的接收时间记为所述第一丢包分片的结束时间。
基于所述第二种实施方式,在所述第一方面的第三种实施方式中,在确定所述第二报文是否为所述数据流的匹配时间后接收并且匹配失败的首个报文时,所述网络设备执行以下操作:确定在所述数据流的匹配时间之后是否为所述数据流建立过丢包分片;在所述数据流的匹配时间之后已经为所述数据流建立所述第一丢包分片的情况下,确定所述第二报文不是所述数据流的匹配时间后接收并且匹配失败的首个报文。
本申请中的第二报文不是所述数据流的匹配时间后接收并且匹配失败的首个报文时,所述网络设备在收到所述第二报文后不需要为所述数据流重新建立丢包分片,也不需要记录所述第二报文的信息,只需要将所述第二报文的接收时间记为所述第一丢包分片的结束时间,节约了所述网络设备的存储空间。
基于所述第一种或第三种实施方式,在所述第一方面的第四种实施方式中,在接收所述第一报文之前,所述网络设备还执行以下操作:接收第三报文,所述第三报文包括所述特征字段;根据所述特征字段查找所述转发表,在查找到匹配所述特征字段的转发表项(匹配成功)的情况下,将所述第三报文的接收时间记为所述数据流的匹配时间。
网络设备通过记录数据流的匹配时间来保证在存在连续匹配失败的报文的情况下,只生成一个丢包分片,以节约网络设备的存储空间。
基于所述第四种实施方式,在所述第一方面的第五种实施方式中,所述网络设备还执行以下操作:接收第四报文,所述第四报文包括所述特征字段;根据所述第四报文查找所述转发表,在查找到匹配所述特征字段的转发表项(匹配成功)的情况下,将所述数据流的匹配时间更新为所述第四报文的接收时间。
本实施方式中,网络设备通过更新数据流的匹配时间,可以确保生成准确的丢包信息。
基于所述第五种实施方式,在所述第一方面的第六种实施方式中,所述网络设备还执行以下操作:接收第五报文,所述第五报文包括所述特征字段;根据所述特征字段查找所述转发表,在没有查找到匹配所述特征字段的转发表项(匹配失败)的情况下,确定所述第五报文是否为所述匹配时间更新后的所述数据流的匹配失败的首个报文;在所述第五报文是所述匹配时间更新后的所述数据流的匹配失败的首个报文情况下,为所述数据流生成第二丢包分片,并将所述第五报文的接收时间记为所述第二丢包分片的起始时间。
本实施方式中,当数据流的匹配时间更新后,网络设备在接收到该数据流的匹配失败的报文的情况下,为该数据流建立新的丢包分片,可以确保生成准确的丢包信息。
基于所述第一方面及所述第一方面的任意一种实施方式,在所述第一方面的第七种实施方式中,所述网络设备还生成丢包报告报文,并行分析设备发送所述丢包报告报文。所述丢包报告报文包括所述报文特征、丢包记录起始时间、丢包记录结束时间、所述丢包记录起始时间和丢包记录结束时间之间所述数据流的丢包分片数、以及至少一个丢包分片的丢包信息,所述至少一个丢包分片包括所述第一丢包分片。所述至少一个丢包分片中每个丢包分片的丢包信息至少包括所述丢包分片的分片标识以及所述丢包分片的起始时间。
本实施方式中,所述网络设备向分析设备发送丢包报告报文,该丢包报告报文中包括丢包分片的信息,由于丢包分片的信息远少于所有丢失的报文的信息,因此,可以提高网络设备传输丢包信息的效率。
本申请第二方面提供了一种网络设备,该网络设备可以用来执行第一方面及第一方面的任意可能的实现方式中的网络设备的操作。具体地,该网络设备包括用于执行上述第一方面所描述的步骤或功能相对应的部件。所述步骤或功能可以通过软件实现,或硬件实现,或者通过硬件和软件结合来实现。
本申请第三方面提供了一种网络系统,该网络系统包括分析设备和本申请第二方面的网络设备,所述网络设备用于记录数据流的丢包信息,根据记录的丢包信息生成丢包报告报文,并向所述分析设备发送所述丢包报告报文;所述丢包报告报文包括所述数据流对应的报文特征、丢包记录起始时间、丢包记录结束时间、所述丢包记录起始时间和丢包记录结束时间之间所述数据流的丢包分片数、以及至少一个丢包分片的丢包信息;所述分析设备用于接收所述丢包报告报文,根据所述丢包报告报文获取所述数据流的丢包信息。在一个实施方式中,所述网络设备周期性向所述分析设备发送丢包报告报文。在另一个实施方式中,所述网络设备根据分析设备的请求向所述分析设备发送丢包报告报文。
具体地,所述分析设备可以根据所述丢包报告报文获取所述丢包记录起始时间和丢包记录结束时间之间的时间段内所述数据流的丢包信息。当分析设备接收到网络设备周期性发送的丢包报告报文时,分析设备可以统计一个周期内所述数据流的丢包信息,也可以根据接收的所有丢包报告报文统计所述数据流的全部丢包信息。
本申请第四方面提供了另一种网络设备,包括,处理器,存储器,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该通信装置执行上述第一方面中任一种可能实现方式中的方法。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
本申请第五方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当所述计算机程序被运行时,使得计算机执行上述第一方面中任一种可能实现方式中的方法。
本申请第六方面,提供了一种计算机可读介质,所述计算机可读介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行上述第一方面任一种可能实现方式中的方法。
本申请第七方面,提供了一种芯片系统,包括存储器和处理器,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得安装有该芯片系统的网络设备执行上述第一方面或第二方面中任一种可能实现方式中的方法。
本申请第二至第七方面的有益效果可以参考对第一方面的有益效果的陈述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的网络系统结构示意图;
图1a为图1所示网络系统的一种具体应用场景;
图1b为图1所示网络系统的另一种具体应用场景;
图2为本申请实施例提供的一种丢包信息生成方法的流程示意图;
图3为本申请实施例提供的一个周期内生成丢包信息的过程示意图;
图4为本申请实施例提供的跨周期生成丢包信息的过程示意图;
图5为本申请实施例提供的一种丢包报告报文的结构示意图;
图5a为本申请实施例提供的图4场景下的丢包报告报文的结构示意图;
图6为本申请实施例提供的一种网络设备的结构示意图;
图7为本申请实施例提供的另一种网络设备的结构示意图。
具体实施方式
以下先对本申请实施例需要使用的概念进行简要解释。
(1)数据流:又可以被称为传输流(traffic flow),报文流(packet flow)或网流(network flow),是指从源主机发往目的地的一系列报文。其中,目的地可以是另一个主机,组播组或者广播域。通常根据报文中的特征字段确定该报文所属的数据流。该特征字段可以是报文中的一个或多个字段,例如,五元组(包括源IP地址、目的IP地址、源端口号、目的端口号、传输层协议号),三元组(包括源IP地址,目的IP地址和传输层协议号)或流标识等。(2)匹配时间(match time):针对数据流设置。网络设备收到报文后,根据该报文中的特征字段查找到该报文对应的转发表项(即匹配成功,又称为tablematch)时,将该报文的接收时间确定为该报文对应的数据流的匹配时间。网络设备每成功匹配一个报文,就会相应更新该报文对应的数据流的匹配时间。
(3)丢包信息:一个数据流中被丢弃的报文的统计信息,本申请中提出用丢包分片来记录数据流的丢包信息。
(4)丢包分片(part):用于记录数据流中的连续丢包的信息。丢包分片由丢包起始时间(part-start time,P-S),丢包结束时间(part-latest time,P-L)和丢包个数确定。一个数据流对应的丢包分片可以有一个或多个,当有k个丢包分片时,本申请用P1,P2……Pk来表示不同的丢包分片。
(5)本申请中术语“和/或”,仅仅用于描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
(6)在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。以下结合附图对本申请实施例进行详细介绍。
如图1所示,本申请实施例提供的网络系统100包括至少一个网络设备110。网络设备110用于在转发报文的过程中记录数据流的丢包信息。网络设备110记录到数据流的丢包信息后,可以自己根据该丢包信息分析网络性能,也可以将该丢包信息发送给分析设备。这样,所述网络系统100还可以包括分析设备120。分析设备120用于接收网络设备发送的丢包信息,并基于该丢包信息分析网络性能,所述网络性能例如可以包括丢包数量,丢包率,丢包位置,丢包时长等。即,本申请中,独立设置的分析设备120不是必须的。
其中,网络设备110可以为路由器,交换机,或者部署了虚拟交换机或路由器的服务器。所述至少一个网络设备110包括多个网络设备时,所述多个网络设备可以采用不同的方式互相连接。例如,图1a中,网络设备110a,110b和110c串行连接。再例如,图1b中,网络设备110d,110e,110f,110g和110h组成了一个CLOS结构的网络。当网络系统100中包括多个网络设备时,可以配置所有网络设备在转发报文的过程中记录丢包信息,也可以配置部分网络设备在转发报文的过程中记录丢包信息。
当网络系统100中包括分析设备120时,分析设备120可以是具有数据分析处理功能的服务器。
如图2所示,为本申请实施例提供的一种丢包信息记录方法,该方法可以由图1,图1a和图1b中的任意一个网络设备110执行。
在S201中,网络设备接收报文,所述报文包括特征字段,所述特征字段用于识别所述报文所属的数据流。
其中,所述特征字段可以为能够确定所述报文所属的数据流的信息,所述特征字段可以包括所述报文中的一个或多个字段,例如,五元组(包括源IP地址、目的IP地址、源端口号、目的端口号、传输层协议号),三元组(包括源IP地址,目的IP地址和传输层协议号)等。
在S202中,所述网络设备根据所述特征字段查找转发表,确定是否找到匹配所述特征字段的转发表项。如果找到匹配所述特征字段的转发表项(即匹配成功,又称为tablematch),执行S203;如果没有找到匹配所述特征字段的转发表项(即匹配失败,又称为tablemiss),执行S205。
在一个实施方式中,在S201之后,S202之前,所述网络设备确定对应所述第一报文的流表,并在所述流表中记录所述报文的信息。
其中,所述网络设备确定对应所述报文的流表具体可以是,所述网络设备从已经生成的流表中确定对应所述特征字段的流表,或所述网络设备生成对应所述特征字段的流表。其中,所述流表用于记录对应的数据流的信息,例如,流标识,属于该数据流的每个报文的信息,该数据流相关的统计信息等。其中,流标识即上述特征字段,可以是五元组,三元组等能够标识数据流的信息;报文的信息可以包括序列号,大小,接收时间等;数据流相关的统计信息可以包括接收的报文总数,丢弃的报文总数等。
在S203中,当所述网络设备从所述转发表中找到所述特征字段对应的转发表项时,将所述报文的接收时间记录为所述数据流的匹配时间。
具体地,所述网络设备在所述数据流对应的流表中将所述报文的接收时间记录为所述数据流的匹配时间(matchtime)。
其中,所述转发表项包括所述特征字段中的部分或全部特征以及出接口,在一个实现方式中,所述转发表项包括目的因特网协议(Internet Protocol,IP)地址及出接口;在另一个实现方式中,所述转发表项包括目的媒体访问控制(media access control,MAC)地址及出接口。
在S204中,所述网络设备根据所述转发表项转发所述报文。
具体地,所述网络设备通过所述转发表项中的出接口转发所述报文。
在S205中,当所述网络设备从所述转发表中查找不到所述特征字段匹配的转发表项时,所述网络设备确定所述报文是否为所述数据流的匹配时间后接收并且匹配失败的首个报文。当所述报文为所述数据流的匹配时间后接收并且匹配失败的首个报文时,执行S206;当所述报文不是所述数据流的匹配时间后接收并且匹配失败的首个报文时,执行S207。
其中,网络设备从所述转发表中找不到所述特征字段对应的转发表项时,确认所述报文匹配失败。所述网络设备确定所述报文是否为所述数据流的匹配时间后接收并且匹配失败的首个报文包括:当所述网络设备确定在所述匹配时间后没有为所述数据流生成丢包分片时,所述网络设备确定所述报文为所述数据流的匹配时间后接收并且匹配失败的首个报文,否则,所述报文虽然匹配失败,但所述网络设备在所述匹配时间后已经为所述数据流生成丢包分片,所述报文不是所述数据流的匹配时间后接收并且匹配失败的首个报文。换言之,所述匹配时间后接收并且匹配失败的首个报文的前一个报文是匹配成功的。
在S206中,所述网络设备为所述数据流创建新的丢包分片,并记录该新的丢包分片的起始时间。
具体地,所述网络设备将所述报文的接收时间记为所述新的丢包分片的起始时间。进一步地,由于所述报文是新的丢包分片的第一个被丢弃的报文,所述网络设备还可以将所述报文的接收时间记为所述新的丢包分片的结束时间。
在一个实施方式中,所述网络设备还可以将所述新的丢包分片的丢包数置为1。
在S207中,所述网络设备更新所述数据流的当前丢包分片的结束时间。其中,当前丢包分片是指所述数据流的匹配时间之后创建的丢包分片,通常也是最新的丢包分片。所述更新所述数据流的当前丢包分片的结束时间包括:将所述当前丢包分片的结束时间修改为所述报文的接收时间,进一步地,所述网络设备还可以更新所述当前丢包分片的丢包数量,即将所述当前丢包分片的丢包数量加1。通过上述步骤,网络设备可以记录每个数据流的信息。在一个实现方式中,所述数据流的丢包信息包括丢包分片数、每个丢包分片的起始时间、结束时间以及该数据流的丢包数量。在另一个实施方式中,所述数据流的丢包信息包括丢包分片数、每个丢包分片的起始时间、结束时间以及该丢包分片包括的丢包数量。
当周期性生成数据流的丢包信息时,在一个实现方式中,所述数据流的丢包信息包括每个周期内的丢包分片数、该周期内每个丢包分片的起始时间和/或结束时间以及该数据流的丢包数量;在另一个实施方式中,所述数据流的丢包信息包括每个周期内的丢包分片数、该周期内每个丢包分片的起始时间、结束时间以及该丢包分片包括的丢包数量。
其中,所述网络设备还丢弃所述匹配失败的报文,丢弃所述报文的步骤可以与S205,S206和S207并行执行或串行执行,丢弃所述报文的时机并不构成对本申请的限制。
在另一个实施例中,如图2所示,在S208中,所述网络设备还用于处理所述数据流的丢包信息。在一个实施方式中,所述处理是指所述网络设备根据记录的所述数据流的丢包分片的信息周期性或按需统计所述数据流的丢包信息。其中,所述数据流的丢包信息包括所述数据流总的丢包时长和总的丢包数量,或所述数据流的丢包率。在另一个实施方式中,所述处理是指所述网络设备周期性或按需向分析设备发送记录的所述数据流的丢包信息。
在另一个实施方式中,所述网络设备还可以根据指令实时处理所述数据流的丢包信息,所述指令可以是网络设备管理员发送的,也可以是其他网络设备或者分析设备发送的。当实时处理所述数据流的丢包信息时,所述网络设备可以根据所述指令处理指定时间内的丢包信息或者处理所述数据流的所有丢包信息。
以下结合具体的实施方式介绍上述S205-S207的实施过程。
如图3所示,假设网络设备从T1时刻开始记录数据流1的丢包信息,图3示出了一个周期内网络设备生成数据流1的丢包信息的过程示意图。网络设备每收到一个报文,就根据图2所示的流程处理该报文。
当网络设备收到报文pct-1(第一报文)时,记录pct-1的接收时间(图中未示出),根据pct-1中的特征字段查找与pct-1匹配的转发表项,当匹配失败时,网络设备确定是否在数据流1的匹配时间(匹配时间为匹配成功的第三报文的接收时间,其中,第三报文图中未示出且第三报文的接收时间早于第一报文)后为数据流1创建过丢包分片。本申请实施例假设网络设备在数据流1的匹配时间后没有为数据流1创建过丢包分片,则网络设备确定pct-1为数据流1的匹配时间后接收并且匹配失败的首个报文(S205),网络设备为数据流1创建丢包分片P1,并将pct-1的接收时间记为P1的起始时间P1-S,进一步地,网络设备还可以将pct-1的接收时间记为P1的结束时间P1-L,并将P1对应的丢包数量置为1(S206)。然后,网络设备收到报文pct-2(第二报文),记录pct-2的接收时间(图中未示出),根据pct-2中的特征字段查找转发表,当匹配失败时,网络设备确定是否在数据流1的匹配时间后为数据流1创建过丢包分片,此时网络设备已经为数据流1创建过丢包分片P1,则网络设备确定pct-2不是数据流1的匹配时间后接收并且匹配失败的首个报文(S205),换言之,pct-2是匹配时间后接收并且匹配失败的后续报文(不同于首个报文的其他报文),网络设备将P1-L更新为pct-2的接收时间,将P1的丢包数量更新为2(S207);类似地,当pct-2至pct-(k-1)中所有的报文都匹配失败时,网络设备在收到pct-(k-1)后,将P1-L更新为pct-(k-1)的接收时间,将P1的丢包数量更新为k-1。上述过程中,网络设备还丢弃匹配失败的报文pct-1,pct-2……pct-(k-1)。假设引起丢包的原因(例如网络中断导致需要重新生成转发表)已经消除后,网络设备收到报文pct-k(第四报文),记录pct-k的接收时间,根据pct-k中的特征字段查找转发表。此时,网络设备找到了pct-k对应的转发表项,即pct-k匹配成功,网络设备将数据流1的匹配时间更新为pct-k的接收时间。此后,假设网络再次发生了故障,当网络设备收到报文pct-n(第五报文)时,记录pct-n的接收时间,根据pct-n中的特征字段查找转发表,又查找不到对应的转发表项。此时,网络设备确定pct-n为数据流1的匹配时间后(指收到pct-k后)匹配失败的首个报文(S205),网络设备为数据流1创建丢包分片P2,并将pct-n的接收时间记为P2的起始时间P2-S,进一步地,网络设备还可以将pct-n的接收时间记为P2的结束时间P2-L,将P2对应的丢包数量置为1(S206)。
通过上述过程,网络设备可以将连续的丢包记录在同一个丢包分片内,避免了记录每个被丢弃的报文的信息导致的存储资源浪费和丢包信息生成效率低下的问题。
图3中的上述所有过程都发生在同一个周期内。如图4所示,本申请实施例还可以跨周期生成丢包分片的信息。假设在一个周期结束(即在时间点T1+周期*1)的时候,数据流1的丢包状态仍然在持续,网络设备并不会因为周期结束而建立新的丢包分片,例如,丢包分片P2的起始时间P2-S在第一个生成周期内,而P2的结束时间P2-L在第二个生成周期内。
以上实施方式中,网络设备记录了每个丢包分片的丢包数量,在另一个实施方式中,网络设备不需要记录每个丢包分片的丢包数量,只要统一记录每个数据流的丢包数量即可。
在S208的一个实施方式中,网络设备需要将生成的丢包信息发送给分析设备时,可以通过图5所示的丢包报告报文发送。如图5所示,所述丢包报告报文包括IP头,用户数据报协议(User Datagram Protocol,UDP)头,丢包头信息和丢包信息。
其中,丢包头信息包括:
流信息(flow info):用于识别数据流,例如,五元组,三元组,流标识等;
起始时间(time start):开始生成本报文中携带的丢包信息的时间;
结束时间(time end):结束生成本报文中携带的丢包信息的时间;
丢包分片数量(part_num):本报文中携带的丢包分片的数量。
丢包信息:包括每个丢包分片的信息,每个丢包分片的信息至少包括该丢包的起始时间。
图5中的起始时间和结束时间可以是周期性的设置的,也可以是根据需要指定的。
进一步地,图5中的丢包报告报文中还可以携带丢包数量,其中,该丢包数量可以是携带在丢包头信息中的总的丢包数量,也可以是每个丢包分片的丢包数量,当该丢包数量是每个丢包分片的丢包数量时,该丢包数量携带在丢包信息中。
当该丢包报告报文中不包括丢包数量时,可以由网络设备统计数据流的丢包数量,并通过其他报文将该数据流的丢包数量发送给分析设备。
如图5a所示,为基于图4所示的丢包生成过程生成的丢包报告报文的结构示意图。所述丢包报告报文是在第一周期结束后发送的。因此,所述丢包头信息中的起始时间为T1,结束时间为T1+周期*1,丢包分片数量为2。丢包信息中共包括两个丢包分片的信息,第一个丢包分片为P1,其起始时间为P1-S,结束时间为P1-L。第二个分片为P2,由于在第一个周期内,P2开始之后并没有收到匹配成功的报文,网络设备认为P2尚未结束,因此丢包报告报文中只有P2的起始时间P2-S,而没有P2的结束时间。
本申请中的分析设备能够识别本申请提供的丢包报告报文。该分析设备具体根据所述丢包报告报文获取丢包记录起始时间和丢包记录结束时间之间的时间段内数据流的丢包信息。
该分析设备收到网络设备发送的丢包报告报文后,可以根据丢包报告报文中的流信息确定数据流,并获取所述丢包报告报文中的丢包记录起始时间和丢包记录结束时间之间的时间段内所述数据流的丢包信息。所述数据流的丢包信息可以包括以下信息中的至少一种:丢包位置,丢包时长,丢包数量,丢包率等。丢包位置可以通过该网络设备的标识(例如IP地址或MAC地址)确定。丢包时长可以通过每个丢包分片的起始时间和结束时间确定。例如,丢包报告报文中包括两个丢包分片,P1和P2。其中,P1的起始时间为T1,结束时间为T2,P2的起始时间为T3,结束时间为T4,则分析设备可以确定该数据流的丢包时长为(T2-T1)+(T4-T3)。网络设备可以基于数据流统计丢包数量并将统计出的丢包数量添加到丢包报告报文中发送给分析设备。网络设备也可以基于丢包分片统计丢包数量,并将每个丢包分片的丢包数量添加到丢包报告报文中发送给分析设备,由分析设备将每个丢包分片的丢包数量累加得到所述数据流的丢包数量。丢包率根据网络设备接收的报文的数据流和丢包数量计算得到。丢包率可以由网络设备计算后发送给分析设备,也可以由分析设备根据网络设备发送的丢包报告报文计算得到。
本申请实施例中丢包报告报文的内容和发送周期可以由网络设备和分析设备协商确定。本申请中对分析设备根据丢包报告报文分析网络性能的方式不做限定。
本申请上述实施方式中,网络设备只需要记录每个丢包分片的起始时间和结束时间,不需要记录丢包分片内每个被丢弃的报文的丢弃时间和丢弃位置,有效节省了网络设备的存储空间。
此外,丢包信息是按照丢包分片记录的,有效降低了该网络设备或分析设备处理丢包信息的开销,提高了处理效率。
与上述各实现方式对应,本申请实施例还提供了一种网络设备600,如图6所示,该网络设备600包括接收单元601,存储单元602,处理单元603和发送单元604。其中:接收单元601用于执行图2所示实施例中的S201;存储单元602用于存储转发表;处理单元603用于执行图2所示实施例中的S202,S203,S205-S208;发送单元S204用于执行图2所示实施例中的S204或者向分析设备发送丢包报告报文。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
进一步地,本申请实施例还提供了另一种网络设备700,如图7所示,该网络设备700包括处理器701、通信接口702和存储器703,处理器701、通信接口702和存储器703通过总线704互联。其中,处理器701可以是中央处理器(central processing unit,CPU),或特定应用集成电路(application-specific integrated circuit,ASIC),可以是一个或多个用于控制程序执行的集成电路,可以是基带芯片,等等。存储器703的数量可以是一个或多个,存储器703可以是只读存储器(read-only memory,ROM)、随机存取存储器(randomaccess memory,RAM)或磁盘存储器,等等。
存储器703用于存储转发表和程序代码。处理器701用于执行所述程序代码以实现本申请各方法实施例。
本申请实施例还提供一种计算机存储介质,该存储介质可以包括存储器,该存储器可以存储有程序,该程序执行时能够实现本申请各方法实施例。
本申请实施例还提供一种计算机程序产品,该程序产品在被计算机调用执行时,可以使得计算机执行本申请各实施例中的方法。
通过以上实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (13)
1.一种丢包信息记录方法,其特征在于,包括:
接收第一报文,所述第一报文包括特征字段,所述特征字段用于识别所述第一报文所属的数据流;
根据所述特征字段查找转发表,在匹配失败的情况下,确定在所述数据流的匹配时间之后是否为所述数据流建立过丢包分片;
在所述数据流的匹配时间之后没有为所述数据流建立过丢包分片的情况下,确定所述第一报文为所述数据流的匹配时间后接收并且匹配失败的首个报文;
在所述第一报文是所述数据流的匹配时间后接收并且匹配失败的首个报文情况下,为所述数据流生成第一丢包分片,并将所述第一报文的接收时间记为所述第一丢包分片的起始时间,将所述第一报文的接收时间记为所述第一丢包分片的结束时间;
接收所述数据流的第二报文;
在所述第二报文是所述数据流的匹配时间后接收并且匹配失败的后续报文的情况下,将所述第一丢包分片的结束时间修改为所述第二报文的接收时间;
生成丢包报告报文,所述丢包报告报文包括报文特征、丢包记录起始时间、丢包记录结束时间、所述丢包记录起始时间和丢包记录结束时间之间所述数据流的丢包分片数、以及至少一个丢包分片的丢包信息,所述至少一个丢包分片包括所述第一丢包分片;
向分析设备发送所述丢包报告报文。
2.根据权利要求1所述的方法,其特征在于,在所述接收第一报文之前,所述方法还包括:
接收第三报文,所述第三报文包括所述特征字段;
根据所述特征字段查找所述转发表,在匹配成功的情况下,将所述第三报文的接收时间记为所述数据流的匹配时间。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收第四报文,所述第四报文包括所述特征字段;
根据所述特征字段查找所述转发表,在匹配成功的情况下,将所述数据流的匹配时间更新为所述第四报文的接收时间。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收第五报文,所述第五报文包括所述特征字段;
根据所述特征字段查找所述转发表,在匹配失败的情况下,确定所述第五报文是否为所述匹配时间更新后的所述数据流的匹配失败的首个报文;
在所述第五报文是所述匹配时间更新后的所述数据流的匹配失败的首个报文的情况下,为所述数据流生成第二丢包分片,并将所述第五报文的接收时间记为所述第二丢包分片的起始时间。
5.根据权利要求1所述的方法,其特征在于,所述至少一个丢包分片中每个丢包分片的丢包信息至少包括所述丢包分片的分片标识以及所述丢包分片的起始时间。
6.一种网络设备,其特征在于,包括:
接收单元,用于接收第一报文,所述第一报文包括特征字段,所述特征字段用于识别所述第一报文所属的数据流;
存储单元,用于存储转发表;
处理单元,用于根据所述特征字段查找所述转发表,在匹配失败的情况下,确定在所述数据流的匹配时间之后是否为所述数据流建立过丢包分片;在所述数据流的匹配时间之后没有为所述数据流建立过丢包分片的情况下,确定所述第一报文为所述数据流的匹配时间后接收并且匹配失败的首个报文;在所述第一报文是所述数据流的匹配时间后接收并且匹配失败的首个报文情况下,为所述数据流生成第一丢包分片,并将所述第一报文的接收时间记为所述第一丢包分片的起始时间,将所述第一报文的接收时间记为所述第一丢包分片的结束时间;
所述接收单元还用于接收所述数据流的第二报文;
所述处理单元还用于在所述第二报文是所述数据流的匹配时间后接收并且匹配失败的后续报文的情况下,将所述第一丢包分片的结束时间修改为所述第二报文的接收时间;
生成丢包报告报文,所述丢包报告报文包括报文特征、丢包记录起始时间、丢包记录结束时间、所述丢包记录起始时间和丢包记录结束时间之间所述数据流的丢包分片数、以及至少一个丢包分片的丢包信息,所述至少一个丢包分片包括所述第一丢包分片;
所述网络设备还包括发送单元,用于向分析设备发送所述丢包报告报文。
7.根据权利要求6所述的网络设备,其特征在于:
所述接收单元还用于:接收第三报文,所述第三报文包括所述特征字段;
所述处理单元还用于:根据所述特征字段查找所述转发表,在匹配成功的情况下,将所述第三报文的接收时间记为所述数据流的匹配时间。
8.根据权利要求7所述的网络设备,其特征在于:
所述接收单元还用于:接收第四报文,所述第四报文包括所述特征字段;
所述处理单元还用于:根据所述第四报文查找所述转发表,在匹配成功的情况下,将所述数据流的匹配时间更新为所述第四报文的接收时间。
9.根据权利要求8所述的网络设备,其特征在于:
所述接收单元还用于:接收第五报文,所述第五报文包括所述特征字段;
所述处理单元还用于:根据所述特征字段查找所述转发表,在匹配失败的情况下,确定所述第五报文是否为所述匹配时间更新后的所述数据流的匹配失败的首个报文;在所述第五报文是所述匹配时间更新后的所述数据流的匹配失败的首个报文情况下,为所述数据流生成第二丢包分片,并将所述第五报文的接收时间记为所述第二丢包分片的起始时间。
10.根据权利要求6所述的网络设备,其特征在于,所述至少一个丢包分片中每个丢包分片的丢包信息至少包括所述丢包分片的分片标识以及所述丢包分片的起始时间。
11.一种网络系统,其特征在于,包括分析设备和权利要求6-10中任意一项所述的网络设备,其中:
所述网络设备用于记录数据流的丢包信息,根据记录的丢包信息生成丢包报告报文,并向所述分析设备发送所述丢包报告报文;所述丢包报告报文包括所述数据流对应的报文特征、丢包记录起始时间、丢包记录结束时间、所述丢包记录起始时间和丢包记录结束时间之间所述数据流的丢包分片数、以及至少一个丢包分片的丢包信息;
所述分析设备用于接收所述丢包报告报文,根据所述丢包报告报文获取所述数据流的丢包信息。
12.根据权利要求11所述的网络系统,其特征在于,所述分析设备具体用于根据所述丢包报告报文获取所述丢包记录起始时间和丢包记录结束时间之间的时间段内所述数据流的丢包信息。
13.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-5中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810240640.8A CN110300033B (zh) | 2018-03-22 | 2018-03-22 | 一种丢包信息记录方法、网络设备及网络系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810240640.8A CN110300033B (zh) | 2018-03-22 | 2018-03-22 | 一种丢包信息记录方法、网络设备及网络系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110300033A CN110300033A (zh) | 2019-10-01 |
CN110300033B true CN110300033B (zh) | 2023-09-26 |
Family
ID=68025576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810240640.8A Active CN110300033B (zh) | 2018-03-22 | 2018-03-22 | 一种丢包信息记录方法、网络设备及网络系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110300033B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112073256B (zh) * | 2020-06-01 | 2022-07-19 | 新华三信息安全技术有限公司 | 一种丢包处理方法、装置、设备及机器可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1964279A (zh) * | 2006-09-25 | 2007-05-16 | 华为技术有限公司 | 一种对网元数据的处理方法 |
CN101164335A (zh) * | 2005-04-20 | 2008-04-16 | 松下电器产业株式会社 | 流数据记录装置、流数据编辑装置、流数据再现装置、流数据记录方法、以及流数据再现方法 |
CN102546387A (zh) * | 2011-10-31 | 2012-07-04 | 华为技术有限公司 | 一种数据报文的处理方法、装置及系统 |
CN104735036A (zh) * | 2013-12-24 | 2015-06-24 | 横河电机株式会社 | 一种数据回填方法及装置 |
CN106096057A (zh) * | 2016-06-30 | 2016-11-09 | 华东电网有限公司 | 可配置的数据丢失检查及监控方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7292537B2 (en) * | 2002-11-29 | 2007-11-06 | Alcatel Lucent | Measurement architecture to obtain per-hop one-way packet loss and delay in multi-class service networks |
JP4498128B2 (ja) * | 2004-12-28 | 2010-07-07 | キヤノン株式会社 | 画像記録装置及びコンピュータプログラム |
EP1879191A4 (en) * | 2005-03-22 | 2013-08-14 | Panasonic Corp | STREAM DATA RECORDING DEVICE, STREAM DATA RECORDING / REPLAYING DEVICE, STREAM DATA REPRODUCING DEVICE, STREAM DATA EDITING DEVICE, STREAM RECORDING METHOD AND STREAM REPLAYING METHOD |
US7616586B2 (en) * | 2007-04-26 | 2009-11-10 | Airmagnet, Inc. | Voice quality measurement for voice over IP in a wireless local area network |
-
2018
- 2018-03-22 CN CN201810240640.8A patent/CN110300033B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101164335A (zh) * | 2005-04-20 | 2008-04-16 | 松下电器产业株式会社 | 流数据记录装置、流数据编辑装置、流数据再现装置、流数据记录方法、以及流数据再现方法 |
CN1964279A (zh) * | 2006-09-25 | 2007-05-16 | 华为技术有限公司 | 一种对网元数据的处理方法 |
CN102546387A (zh) * | 2011-10-31 | 2012-07-04 | 华为技术有限公司 | 一种数据报文的处理方法、装置及系统 |
CN104735036A (zh) * | 2013-12-24 | 2015-06-24 | 横河电机株式会社 | 一种数据回填方法及装置 |
CN106096057A (zh) * | 2016-06-30 | 2016-11-09 | 华东电网有限公司 | 可配置的数据丢失检查及监控方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110300033A (zh) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10148573B2 (en) | Packet processing method, node, and system | |
CN109391560B (zh) | 网络拥塞的通告方法、代理节点及计算机设备 | |
CN108259347B (zh) | 一种报文传输方法和装置 | |
CN109714274B (zh) | 一种获取对应关系的方法和路由设备 | |
CN106789625B (zh) | 一种环路检测方法及装置 | |
US10791051B2 (en) | System and method to bypass the forwarding information base (FIB) for interest packet forwarding in an information-centric networking (ICN) environment | |
CN106921578B (zh) | 一种转发表项的生成方法和装置 | |
CN106878194B (zh) | 一种报文处理方法和装置 | |
US9973400B2 (en) | Network flow information collection method and apparatus | |
CN109873768B (zh) | 更新转发表的方法、硬件加速器、ovs和服务器 | |
CN108134748B (zh) | 一种基于快速转发表项的丢包方法和装置 | |
CN108600109B (zh) | 一种报文转发方法和装置 | |
CN113055127B (zh) | 数据报文去重与传输方法、电子设备及存储介质 | |
CN110311866B (zh) | 一种快速转发报文的方法及装置 | |
US20230300048A1 (en) | Tunnel bfd session establishment method and device | |
CN111866202B (zh) | 报文发送方法、装置、电子设备和存储介质 | |
CN107547535B (zh) | 防攻击的mac地址学习方法、装置和网络设备 | |
CN110912912B (zh) | 一种切换ip信誉检测模式的方法及装置 | |
CN107147581B (zh) | 路由表项的维护方法和装置 | |
CN107070719B (zh) | 一种设备管理方法和装置 | |
CN111740910A (zh) | 一种报文处理方法、装置、网络传输设备及报文处理系统 | |
CN110300033B (zh) | 一种丢包信息记录方法、网络设备及网络系统 | |
CN106506270B (zh) | 一种ping报文处理方法及装置 | |
CN112887312B (zh) | 一种慢协议报文处理方法及相关装置 | |
CN111262792A (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 |