CN116319997A - 一种数据包的发送方法、装置、系统、设备及存储介质 - Google Patents
一种数据包的发送方法、装置、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116319997A CN116319997A CN202211697012.5A CN202211697012A CN116319997A CN 116319997 A CN116319997 A CN 116319997A CN 202211697012 A CN202211697012 A CN 202211697012A CN 116319997 A CN116319997 A CN 116319997A
- Authority
- CN
- China
- Prior art keywords
- data packet
- target
- network
- terminal device
- identification information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000005540 biological transmission Effects 0.000 claims abstract description 55
- 230000008569 process Effects 0.000 claims abstract description 34
- 238000003745 diagnosis Methods 0.000 claims abstract description 32
- 238000004891 communication Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 17
- 238000012790 confirmation Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 230000015654 memory Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种数据包的发送方法、装置、系统、设备及存储介质,该发送方法包括:响应于第一终端设备内多个网络诊断工具的批量启动,接收每一网络诊断工具发送的第一数据包;将每一第一数据包对应的第一关键识别信息存储至消息队列中,将每一第一数据包存储至网络代理模块的存储空间中;从消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的目标第一关键识别信息,从存储空间中,获取目标第一数据包,并将目标第一数据包发送给第二终端设备。通过这种方式,本申请有效地解决了同一终端设备中因批量启动网络诊断工具造成的数据包发送失败、发送异常等问题,提高了网络诊断过程中数据包的发送效率。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种数据包的发送方法、装置、系统、设备及存储介质。
背景技术
目前在进行网络诊断时,通常使用ping(Packet Internet Groper,一种因特网包探索器)工具作为网络诊断工具,以通过ping工具来测试得到本地主机与另一台主机之间是否能够成功交换(发送与接收)数据包、成功交换数据包所需要的网络传输时间等网络诊断信息。
但是,在实际网络诊断过程中,同一台主机设备中可能会同时批量启动多个网络诊断工具,此时,由于多个网络诊断工具同时发送数据包,因此,可能会出现因发送数据包的数量过多,导致消息队列中存储空间不足的问题,从而容易造成大量数据包发送失败或是丢失,使得数据包的发送效率降低。
发明内容
有鉴于此,本申请的目的在于提供一种数据包的发送方法、装置、系统、设备及存储介质,有效地解决了同一终端设备中因批量启动网络诊断工具造成的数据包发送失败、发送异常等问题,提高了网络诊断过程中数据包的发送效率。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
第一方面,本申请实施例提供了一种数据包的发送方法,所述发送方法应用于第一终端设备中的网络代理模块,所述方法包括:
响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内。
第二方面,本申请实施例提供了一种数据包的发送装置,所述发送装置应用于第一终端设备中的网络代理模块,所述发送装置包括:
响应单元,用于响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
存储单元,用于将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
发送单元,用于从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内。
第三方面,本申请实施例提供了一种数据包的发送系统,所述发送系统包括第一终端设备以及第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内;所述第一终端设备中的网络代理模块,用于:
响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备。
第四方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的数据包的发送测方法的步骤。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的数据包的发送方法的步骤。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请实施例提供的一种数据包的发送方法、装置、系统、设备及存储介质,响应于第一终端设备内多个网络诊断工具的批量启动,接收每一网络诊断工具发送的第一数据包;将每一第一数据包对应的第一关键识别信息存储至消息队列中,将每一第一数据包存储至网络代理模块的存储空间中;从消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的目标第一关键识别信息,从存储空间中,获取目标第一数据包,并将目标第一数据包发送给第二终端设备。通过这种方式,本申请有效地解决了同一终端设备中因批量启动网络诊断工具造成的数据包发送失败、发送异常等问题,提高了网络诊断过程中数据包的发送效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种数据包的发送方法的流程示意图;
图2示出了本申请实施例提供的一种数据包的接收方法的流程示意图;
图3示出了本申请实施例提供的一种判断目标第一数据包的接收状态的方法的流程示意图;
图4示出了本申请实施例所提供的一种数据包的发送装置的结构示意图;
图5示出了本申请实施例所提供的一种数据包的发送系统的结构示意图;
图6为本申请实施例提供的一种计算机设备600的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
目前在实际网络诊断过程中,同一台主机设备中可能会同时批量启动多个网络诊断工具,此时,由于多个网络诊断工具同时发送数据包,因此,可能会出现因发送数据包的数量过多,导致消息队列中存储空间不足的问题,从而容易造成大量数据包发送失败或是丢失,使得数据包的发送效率降低。
基于此,本申请实施例提供了一种数据包的发送方法、装置、系统、设备及存储介质,响应于第一终端设备内多个网络诊断工具的批量启动,接收每一网络诊断工具发送的第一数据包;将每一第一数据包对应的第一关键识别信息存储至消息队列中,将每一第一数据包存储至网络代理模块的存储空间中;从消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的目标第一关键识别信息,从存储空间中,获取目标第一数据包,并将目标第一数据包发送给第二终端设备。通过这种方式,本申请有效地解决了同一终端设备中因批量启动网络诊断工具造成的数据包发送失败、发送异常等问题,提高了网络诊断过程中数据包的发送效率。
为便于对本申请实施例进行理解,下面对本申请实施例提供的一种数据包的发送方法、装置、系统、设备及存储介质进行详细介绍。
参照图1所示,图1示出了本申请实施例所提供的一种数据包的发送方法的流程示意图,其中,所述发送方法应用于第一终端设备中的网络代理模块,所述发送方法包括步骤S101-S103;具体的:
S101,响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包。
这里,第一终端设备内包括多个网络诊断工具以及至少一个网络代理模块;其中,在第一终端设备中,可以同时批量启动多个网络诊断工具,对于批量启动的网络诊断工具的具体数量,本申请实施例不作任何限定。
具体的,在批量启动多个网络诊断工具之后,网络代理模块用于接收每一个网络诊断工具发送的第一数据包,并将接收到的每一个第一数据包按照发送时间顺序,依次发送至其他终端设备(即与第一终端设备进行数据交换的终端设备),以通过第一终端设备与其他终端设备之间对于数据包的发送与接收情况,代理实现对于每个网络诊断工具的网络诊断功能。
需要说明的是,上述网络诊断工具可以是ping工具,也可以是traceroute工具等其他类型的网络诊断工具;对于上述网络诊断工具所属的具体工具类型,本申请实施例不作任何限定。
需要说明的是,在批量启动多个网络诊断工具时,每一个网络诊断工具可以发送1个第一数据包,也可以发送多个第一数据包,对于接收到的上述第一数据包的具体数量,本申请实施例不作任何限定。
需要说明的是,上述第一数据包仅用于表征网络诊断工具发送的用于进行网络诊断的数据包;上述第一数据包的具体数据包类型则可以根据网络诊断工具的工具类型确定,例如,当网络诊断工具为ping工具时,第一数据包可以是ICMP(Internet ControlMessage Protocol,网际控制报文协议)数据包;对于上述第一数据包所属的具体数据包类型,本申请实施例不作任何限定。
S102,将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中。
这里,在网络诊断过程中,数据包相当于第一终端设备与其他终端设备之间传送的数据单位(其中,第一终端设备向其他终端设备发送第一数据包,其他终端设备向第一终端设备反馈其他数据包),其中,在第一终端设备一侧,上述消息队列则相当于在第一终端设备依次发送第一数据包的过程中,保存第一数据包的容器。
具体的,考虑到消息队列的存储空间有限,当大批量的第一数据包直接保存在消息队列中时,容易出现因消息队列中存储空间不足而导致大量第一数据包发送失败或是丢失的情况,因此,在本申请实施例中,对于接收到的每一个第一数据包而言,第一数据包本身并不直接存储在消息队列中,消息队列中仅存储能够识别每一个第一数据包身份的第一关键识别信息,而占用存储空间较多的第一数据包则存储在网络代理模块的存储空间中(其中,网络代理模块属于第一终端设备,第一数据包也相当于存储在第一终端设备中),使得第一数据包不会占用消息队列内的存储资源,极大地节约了消息队列的存储空间,有利于提高消息队列中可存储的信息容量,从而相较于现有技术(即直接将第一数据包存储在消息队列中),在使用同一存储容量的消息队列时,本申请实施例能够接收更多数量的第一数据包,有效地提高了对于第一数据包的发送效率。
需要说明的是,上述第一关键识别信息用于表征能够识别不同第一数据包身份的关键信息(如,可以是不同第一数据包的发送方信息、发送时间信息等),不同的第一数据包对应的第一关键识别信息不同;对于上述第一关键识别信息包括的具体信息内容,本申请实施例不作任何限定。
需要说明的是,与上述第一关键识别信息不同的是,虽然不同的第一数据包对应的发送方(即具体的网络诊断工具)以及发送时间可能存在差异,但是,由于第一数据包的功能都是用于实现第一终端设备处的网络诊断,因此,不同的第一数据包对应的实际发包内容是相同的,本申请实施例相当于是将每一个第一数据包对应的实际发包内容存储至消息队列之外(即存储至网络代理模块的存储空间中)。
S103,从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备。
这里,结合前述步骤S102可知,消息队列中存储的不同第一关键识别信息是用于确定不同第一数据包的具体身份的,因此,在网络处理模块通过消息队列依次处理接收到的第一数据包(即按照第一数据包的接收时间顺序,依次处理接收时间较早的第一数据包)时,只需从消息队列中获取当前待发送的目标第一数据包对应的目标第一关键识别信息,即可根据获取到的目标第一关键识别信息,从网络代理模块的存储空间中,调出之前存储的目标第一数据包(即目标第一数据包的实际发包内容),将调出的目标第一数据包发送给第二终端设备(即上述S101-S102中用于与第一终端设备进行数据传输的其他终端设备)。
需要说明的是,第二终端设备与第一终端设备位于同一网络内,其中,第一终端设备与第二终端设备可以位于互联网内,也可以位于除互联网之外的其他网络(如,视联网)内,对于第一终端设备与第二终端设备位于的具体网络,本申请实施例不作任何限定。
下面针对上述各步骤在本申请实施例中的具体实施过程,分别进行详细说明如下:
针对上述步骤S101-S103提供的数据包的发送方法,当第一终端设备与第二终端设备位于互联网内时,第一终端设备可以根据第二终端设备的IP(Internet ProtocolAddress,互联网协议地址)地址,将第一数据包发送给第二终端设备,与之对应的,第二终端设备同样可以根据第一终端设备的IP地址,将回复第一数据包的第二数据包反馈给第一终端设备。
针对上述步骤S101-S103提供的数据包的发送方法,当第一终端设备与第二终端设备位于不同于互联网的第一网络内时,则在批量启动第一终端设备内的多个网络诊断工具之前(即执行上述步骤S101之前),网络代理模块需要执行如下步骤a1所述的方法,在第一网络内执行入网操作,以使第一终端设备与第二终端设备能够在第一网络内进行数据传输,具体的:
步骤a1、在第一网络内,为第一终端设备分配目标通信标识。
这里,上述目标通信标识用于确定第一终端设备在第一网络内对应的通信地址;其中,上述目标通信标识可以是第一终端设备在第一网络内的MAC(Media AccessControl,介质访问控制)地址或是设备通信标识等能够唯一确定第一终端设备在第一网络内的通信地址的标识;对于上述目标通信标识的具体标识类型,本申请实施例不作任何限定。
具体的,以第一网络是视联网为例,则上述目标通信标识可以是第一终端设对应的视联网MAC地址和视联网号码;其中,视联网MAC地址和视联网号码与视联网设备一一对应,视联网MAC地址可以通过预先配置得到,视联网号码可以在入网协议驱动的过程中自动获取到,对此本申请实施例不作任何限定。
需要说明的是,当第一终端设备与第二终端设备位于不同于互联网的第一网络内时,与第一终端设备相同,在与第一终端设备进行数据传输之前,第二终端设备同样需要执行入网操作,也即,同样需要在第一网络内,为第二终端设备配置通信标识;该通信标识同样用于确定第二终端设备在第一网络内对应的通信地址;重复之处在此不再赘述。
针对上述步骤S102的具体实施过程,结合前述步骤S102可知,本申请实施例对于每一个第一数据包对应的第一关键识别信息的具体信息内容并不进行限定;其中,在一种优选的实施方式中,以一个第一数据包为例,该第一数据包对应的第一关键识别信息包括以下至少之一:
1、第一数据包在消息队列中对应的消息编号。
这里,在接收到多个网络诊断工具发送的第一数据包之后,网络代理模块会根据每个第一数据包的接收时间,对第一数据包进行排序,得到每个第一数据包对应的上述消息编号;此时,上述消息编号也可以用于确定第一数据包对应的第一关键识别信息在消息队列中的具体编号位置。
示例性的说明,若第一数据包的接收时间排序为:第一数据包x1的接收时间早于第一数据包x2,则可以确定第一数据包x1对应的消息编号是p1、第一数据包x2对应的消息编号是p2。
2、第一数据包对应的进程号。
这里,进程号用于标识发送第一数据包的网络诊断工具,也即,进程号用于标识第一数据包的具体发送方。
示例性的说明,以第一终端设备内的多个网络诊断工具都是ping工具为例,当第一数据包x1对应的进程号为ping-v1时,则表示第一数据包x1是网络诊断工具v1发送的第一数据包。
3、第一数据包对应的发包序列号。
这里,与上述消息编号类似,发包序列号用于确定第一数据包在所有第一数据包中对应的发包顺序。
示例性的说明,以得到的发包序列是:第一数据包x1、第一数据包x2...第一数据包x200为例,则第一数据包x3对应的发包序列号为3,表示第一数据包x3位于发包序列中的第3位。
4、第一数据包对应的发送时间。
这里,在网络诊断过程中,网络传输时间需要根据第一数据包的发送时间与第二数据包(即第二终端设备针对同一个第一数据包回复的数据包)的接收时间来确定,因此,出于提高对于网络传输时间的计算效率的目的,在消息队列中也可以存放每个第一数据包对应的具体发送时间。
5、第一数据包对应的发包大小。
这里,不同的第一数据包对应的发包大小可能存在差异,在实际发送第一数据包时,若消息队列中存放有第一数据包的发包大小,则网络代理模块可以在发送第一数据包之前,根据获取到的第一数据包的发包大小,提前预测出发送第一数据包所需要配置的数据传输资源,以便提高对于数据传输资源的分配效率,基于此,在消息队列中,也可以存放第一数据包对应的发包大小。
需要说明的是,除上述1-5所述的第一关键识别信息之外,也可以根据不同的网络诊断需要,在消息队列中存放其他类型的信息作为第一关键识别信息,例如,当数据包传送涉及加解密步骤时,还可以将每一个第一数据包的加密密钥存放在消息队列中,以便网络代理模块在发送第一数据包之前,能够更加便捷的对第一数据包进行加密,对于上述第一关键识别信息的具体信息内容,本申请实施例不作任何限定。
针对上述步骤S101-S103提供的数据包的发送方法,在执行完上述步骤S103之后,网络代理模块还需要接收第二终端设备反馈的第二数据包,以根据第一数据包的发送情况和第二数据包的接收情况,来确定第一终端设备与第二终端设备之间的网络传输情况。
基于此,在一种可选的实施方式中,图2示出了本申请实施例提供的一种数据包的接收方法的流程示意图,如图2所示,所述接收方法包括步骤S201-S203,具体的:
S201,接收所述第二终端设备发送的第二数据包。
这里,需要说明的是,上述第二数据包属于第二终端设备对于接收到的第一数据包进行回复的数据包,对于上述第二数据包所属的具体数据包类型,本申请实施例同样不作任何限定。
具体的,上述第二数据包属于第二终端设备对于接收到的第一数据包进行回复的数据包,由于第二终端设备可能接收到所有发送的第一数据包,也有可能只接收到部分发送的第一数据包,因此,网络代理模块接收到的第二数据包的具体数量可以与第一数据包的发送数量相同,也可以与第一数据包的发送数量不同,对于上述第二数据包的具体接收数量,本申请实施例同样不作任何限定。
S202,根据所述第二数据包对应的第二关键识别信息,从所述消息队列中,确定与所述第二关键识别信息相匹配的第一关键识别信息作为目标关键识别信息,并从所述消息队列中删除所述目标关键识别信息。
这里,第二数据包对应的第二关键识别信息可以参考前述步骤中所述的第一数据包对应的第一关键识别信息;重复之处在此不再赘述。
需要说明的是,第二终端设备对于接收到的第一数据包,并不会对第一数据包对应的第一关键识别信息进行修改,仅是根据第一数据包的实际发包内容,确定相应的回复内容作为第二数据包的发包内容。
示例性的说明,以第一数据包x1的第一关键识别信息中包括消息编号p1为例,若第二终端设备接收到第一数据包x1,则第二终端设备针对第一数据包x1反馈的第二数据包为y1,且第二数据包y1对应的第二关键识别信息中同样包括消息编号p1,此时,网络代理设备在接收到第二数据包y1之后,可以根据相匹配的消息编号p1,确定第二数据包y1与第一数据包x1相对应,从而,确定第一数据包x1发送成功,并从消息队列中删除第一数据包x1的第一关键识别信息,以表示不需要再对第一数据包x1进行任何相关处理操作。
S203根据所述目标关键识别信息对应的第一数据包的发送时间以及所述第二数据包的接收时间,确定目标网络诊断工具对应的网络诊断结果。
这里,目标网络诊断工具发送的第一数据包为目标关键识别信息对应的第一数据包。
具体的,上述第二数据包即为第二终端设备针对目标关键识别信息对应的第一数据包进行回复的数据包,此时,网络代理模块根据该第一数据包的发送时间与上述第二数据包的接收时间之间的时间差值,即可确定该第一数据包的网络传输时间,也即,确定出目标网络诊断工具(该第一数据包的发送方)对应的网络诊断结果。
示例性的说明,以网络诊断工具v1发送的第一数据包是x1,网络诊断工具v2发送的第一数据包是x2为例,若接收到第二终端设备针对第一数据包x1反馈的第二数据包y1以及针对第一数据包x2反馈的第二数据包y2,则可以根据第一数据包x1的发送时间t1与第二数据包y1的接收时间之间t2的时间差值,确定网络诊断工具v1对应的网络诊断结果是:网络传输时间为t2-t1;根据第一数据包x2的发送时间t3与第二数据包y2的接收时间之间t4的时间差值,确定网络诊断工具v2对应的网络诊断结果是:网络传输时间为t4-t3。
针对上述步骤S201-S203提供的数据包的接收方法,考虑到在发送目标第一数据包之后,第二终端设备可能接收到目标第一数据包,也可能没有接收到目标第一数据包,因此,在本申请实施例中,还提供了一种确认机制,以使网络代理模块可以根据第二终端设备是否在预设检测周期内回复针对目标第一数据包的确认接收信息,来在实际接收到第二终端设备反馈的第二数据包之前,预先确定第二终端设备对于每一个第一数据包的接收状态。
基于此,在一种可选的实施方式中,图3示出了本申请实施例提供的一种判断目标第一数据包的接收状态的方法的流程示意图,如图3所示,在执行完上述步骤S103之后,所述方法包括步骤S301-S303,具体的:
S301,判断在预设检测周期内是否接收到所述第二终端设备针对所述目标第一数据包反馈的目标确认信息。
这里,上述预设检测周期的具体时间长度可以根据实际的网络诊断需求进行设置,对于上述预设检测周期的具体时间长度,本申请实施例不作任何限定。
这里,上述目标确认信息仅用于表示第二终端设备确认已经接收到目标第一数据包,对于上述目标确认信息的具体信息内容,本申请实施例不作任何限定。
具体的,在一种优选的实施方式中,接收到的上述目标确认信息可以是第二终端设备通过异步方式发送的;其中,异步方式用于表征目标确认信息的发送进程与目标第一数据包的发送进程属于不同的进程;例如,若网络代理模块通过第一传输通道向第二终端设备发送目标第一数据包,则第二终端设备可以通过第二传输通道向网络代理模块反馈上述目标确认信息,以通过异步的方式,提高对于目标确认信息的接收效率。
S302,若在所述预设检测周期内接收到所述目标确认信息,则确定所述第二终端设备成功接收到所述目标第一数据包。
具体的,若在预设检测周期内接收到上述目标确认信息,则可以确定第二终端设备已经成功接收到目标第一数据包,此时,网络代理设备只需等待第二终端设备反馈针对目标第一数据包的回复数据包(即目标第一数据包对应的第二数据包)即可。
S303,若在所述预设检测周期内未接收到所述目标确认信息,则向所述第二终端设备重新发送所述目标第一数据包。
这里,若在预设检测周期内未接收到目标确认信息,网络代理模块可以向第二终端设备重新发送目标第一数据包,以减少第一数据包的丢包率;其中,重新发送的次数可以是1次,也可以是多次,对于重新发送的具体发送次数,本申请实施例不作任何限定。
具体的,若向第二终端设备重新发送目标第一数据包的重发次数超过预设频次阈值时,则在一种可选的实施方式中,网络代理模块可以确定目标第一数据包属于发送失败的数据包,并从消息队列中删除目标第一数据包对应的第一关键识别信息,以表示无需再对目标第一数据包进行任何处理操作。
基于同一发明构思,本申请还提供了与上述数据包的发送方法对应的发送装置,由于本申请实施例中的发送装置解决问题的原理与本申请实施例中上述数据包的发送方法相似,因此发送装置的实施可以参见上述发送方法的实施,重复之处不再赘述。
参照图4所示,图4示出了本申请实施例所提供的一种数据包的发送装置的结构示意图,所述发送装置应用于第一终端设备中的网络代理模块,所述发送装置包括:
响应单元401,用于响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
存储单元402,用于将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
发送单元403,用于从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内。
在一种可选的实施方式中,所述第一关键识别信息包括以下至少之一:
所述第一数据包在所述消息队列中对应的消息编号;
所述第一数据包对应的进程号;其中,所述进程号用于标识发送所述第一数据包的网络诊断工具;
所述第一数据包对应的发包序列号;
所述第一数据包对应的发送时间;
所述第一数据包对应的发包大小。
在一种可选的实施方式中,在所述将所述目标第一数据包发送给第二终端设备之后,发送单元403,还用于:
判断在预设检测周期内是否接收到所述第二终端设备针对所述目标第一数据包反馈的目标确认信息;
若在所述预设检测周期内接收到所述目标确认信息,则确定所述第二终端设备成功接收到所述目标第一数据包;
若在所述预设检测周期内未接收到所述目标确认信息,则向所述第二终端设备重新发送所述目标第一数据包。
在一种可选的实施方式中,所述发送装置还包括:
接收单元,用于接收所述第二终端设备发送的第二数据包;
匹配单元,用于根据所述第二数据包对应的第二关键识别信息,从所述消息队列中,确定与所述第二关键识别信息相匹配的第一关键识别信息作为目标关键识别信息,并从所述消息队列中删除所述目标关键识别信息;
确定单元,用于根据所述目标关键识别信息对应的第一数据包的发送时间以及所述第二数据包的接收时间,确定目标网络诊断工具对应的网络诊断结果;其中,所述目标网络诊断工具发送的第一数据包为所述目标关键识别信息对应的第一数据包。
在一种可选的实施方式中,当所述第一终端设备位于不同于互联网的第一网络内时,在批量启动所述第一终端设备内的所述多个网络诊断工具之前,响应单元401,还用于:
在所述第一网络内,为所述第一终端设备分配目标通信标识;其中,所述目标通信标识用于确定所述第一终端设备在所述第一网络内对应的通信地址。
在一种可选的实施方式中,发送单元403接收到的所述目标确认信息是所述第二终端设备通过异步方式发送的;其中,所述异步方式用于表征所述目标确认信息的发送进程与所述目标第一数据包的发送进程属于不同的进程。
基于同一发明构思,本申请还提供了与上述数据包的发送方法对应的数据包的发送系统,由于本申请实施例中的发送系统解决问题的原理与本申请实施例中上述发送方法相似,因此发送系统的实施可以参见上述发送方法的实施,重复之处不再赘述。
参照图5所示,图5示出了本申请实施例所提供的一种数据包的发送系统的结构示意图,所述发送系统包括第一终端设备501以及第二终端设备502;其中,第二终端设备502与第一终端设备501位于同一网络内;第一终端设备501中的网络代理模块500,用于:
响应于第一终端设备501内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至网络代理模块500的存储空间中;
从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备502。
在一种可选的实施方式中,所述第一关键识别信息包括以下至少之一:
所述第一数据包在所述消息队列中对应的消息编号;
所述第一数据包对应的进程号;其中,所述进程号用于标识发送所述第一数据包的网络诊断工具;
所述第一数据包对应的发包序列号;
所述第一数据包对应的发送时间;
所述第一数据包对应的发包大小。
在一种可选的实施方式中,在所述将所述目标第一数据包发送给第二终端设备之后,网络代理模块500还用于:
判断在预设检测周期内是否接收到第二终端设备502针对所述目标第一数据包反馈的目标确认信息;
若在所述预设检测周期内接收到所述目标确认信息,则确定第二终端设备502成功接收到所述目标第一数据包;
若在所述预设检测周期内未接收到所述目标确认信息,则向第二终端设备502重新发送所述目标第一数据包。
在一种可选的实施方式中,网络代理模块500还用于:
接收第二终端设备502发送的第二数据包;
根据所述第二数据包对应的第二关键识别信息,从所述消息队列中,确定与所述第二关键识别信息相匹配的第一关键识别信息作为目标关键识别信息,并从所述消息队列中删除所述目标关键识别信息;
根据所述目标关键识别信息对应的第一数据包的发送时间以及所述第二数据包的接收时间,确定目标网络诊断工具对应的网络诊断结果;其中,所述目标网络诊断工具发送的第一数据包为所述目标关键识别信息对应的第一数据包。
在一种可选的实施方式中,当第一终端设备501位于不同于互联网的第一网络内时,在批量启动第一终端设备501内的所述多个网络诊断工具之前,网络代理模块500还用于:
在所述第一网络内,为第一终端设备501分配目标通信标识;其中,所述目标通信标识用于确定第一终端设备501在所述第一网络内对应的通信地址。
在一种可选的实施方式中,网络代理模块500接收到的所述目标确认信息是第二终端设备502通过异步方式发送的;其中,所述异步方式用于表征所述目标确认信息的发送进程与所述目标第一数据包的发送进程属于不同的进程。
如图6所示,本申请实施例提供了一种计算机设备600,用于执行本申请中任一所述的数据包的发送方法的步骤,该设备包括存储器601、处理器602及存储在该存储器601上并可在该处理器602上运行的计算机程序,其中,上述处理器602执行上述计算机程序时实现上述任一所述的数据包的发送方法的步骤。
具体地,上述存储器601和处理器602可以为通用的存储器和处理器,这里不做具体限定,当处理器602运行存储器601存储的计算机程序时,能够执行上述任一所述的数据包的发送方法的步骤。
对应于本申请中的数据包的发送方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一所述的数据包的发送方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述任一所述的数据包的发送方法的步骤。
在本申请所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据包的发送方法,其特征在于,所述发送方法应用于第一终端设备中的网络代理模块,所述方法包括:
响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内。
2.根据权利要求1所述的发送方法,其特征在于,所述第一关键识别信息包括以下至少之一:
所述第一数据包在所述消息队列中对应的消息编号;
所述第一数据包对应的进程号;其中,所述进程号用于标识发送所述第一数据包的网络诊断工具;
所述第一数据包对应的发包序列号;
所述第一数据包对应的发送时间;
所述第一数据包对应的发包大小。
3.根据权利要求1所述的发送方法,其特征在于,在所述将所述目标第一数据包发送给第二终端设备之后,所述发送方法还包括:
判断在预设检测周期内是否接收到所述第二终端设备针对所述目标第一数据包反馈的目标确认信息;
若在所述预设检测周期内接收到所述目标确认信息,则确定所述第二终端设备成功接收到所述目标第一数据包;
若在所述预设检测周期内未接收到所述目标确认信息,则向所述第二终端设备重新发送所述目标第一数据包。
4.根据权利要求1所述的发送方法,其特征在于,所述发送方法还包括:
接收所述第二终端设备发送的第二数据包;
根据所述第二数据包对应的第二关键识别信息,从所述消息队列中,确定与所述第二关键识别信息相匹配的第一关键识别信息作为目标关键识别信息,并从所述消息队列中删除所述目标关键识别信息;
根据所述目标关键识别信息对应的第一数据包的发送时间以及所述第二数据包的接收时间,确定目标网络诊断工具对应的网络诊断结果;其中,所述目标网络诊断工具发送的第一数据包为所述目标关键识别信息对应的第一数据包。
5.根据权利要求1所述的发送方法,其特征在于,当所述第一终端设备位于不同于互联网的第一网络内时,在批量启动所述第一终端设备内的所述多个网络诊断工具之前,所述发送方法还包括:
在所述第一网络内,为所述第一终端设备分配目标通信标识;其中,所述目标通信标识用于确定所述第一终端设备在所述第一网络内对应的通信地址。
6.根据权利要求3所述的发送方法,其特征在于,接收到的所述目标确认信息是所述第二终端设备通过异步方式发送的;其中,所述异步方式用于表征所述目标确认信息的发送进程与所述目标第一数据包的发送进程属于不同的进程。
7.一种数据包的发送装置,其特征在于,所述发送装置应用于第一终端设备中的网络代理模块,所述发送装置包括:
响应单元,用于响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
存储单元,用于将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
发送单元,用于从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内。
8.一种数据包的发送系统,其特征在于,所述发送系统包括第一终端设备以及第二终端设备;其中,所述第二终端设备与所述第一终端设备位于同一网络内;所述第一终端设备中的网络代理模块,用于:
响应于所述第一终端设备内多个网络诊断工具的批量启动,接收每一所述网络诊断工具发送的第一数据包;
将每一所述第一数据包对应的第一关键识别信息存储至消息队列中,将每一所述第一数据包存储至所述网络代理模块的存储空间中;
从所述消息队列中,获取当前待发送的目标第一数据包对应的目标第一关键识别信息,以根据获取到的所述目标第一关键识别信息,从所述存储空间中,获取所述目标第一数据包,并将所述目标第一数据包发送给第二终端设备。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至6任一所述的数据包的发送方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至6任一所述的数据包的发送方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211697012.5A CN116319997A (zh) | 2022-12-28 | 2022-12-28 | 一种数据包的发送方法、装置、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211697012.5A CN116319997A (zh) | 2022-12-28 | 2022-12-28 | 一种数据包的发送方法、装置、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116319997A true CN116319997A (zh) | 2023-06-23 |
Family
ID=86791292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211697012.5A Pending CN116319997A (zh) | 2022-12-28 | 2022-12-28 | 一种数据包的发送方法、装置、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116319997A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118118387A (zh) * | 2024-04-30 | 2024-05-31 | 成方金融信息技术服务有限公司 | 分布式icmp探测方法、装置、电子设备及存储介质 |
-
2022
- 2022-12-28 CN CN202211697012.5A patent/CN116319997A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118118387A (zh) * | 2024-04-30 | 2024-05-31 | 成方金融信息技术服务有限公司 | 分布式icmp探测方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105516080A (zh) | Tcp连接的处理方法、装置及系统 | |
CN107395632B (zh) | SYN Flood防护方法、装置、清洗设备及介质 | |
CN107872396B (zh) | 具有超时控制的通信方法、处理设备、终端设备和服务器 | |
CN111431871B (zh) | Tcp半透明代理的处理方法和装置 | |
CN110740144B (zh) | 确定攻击目标的方法、装置、设备及存储介质 | |
CN116319997A (zh) | 一种数据包的发送方法、装置、系统、设备及存储介质 | |
EP1808982B1 (en) | Method and device for selective collision detection | |
CN109413018B (zh) | 一种端口扫描方法及装置 | |
CN111651282B (zh) | 报文处理方法、报文处理装置及电子设备 | |
CN103051612A (zh) | 防火墙及防止网络攻击方法 | |
CN112714126B (zh) | 一种在IPv6地址空间中提升蜜罐诱捕攻击能力的方法及系统 | |
CN111953528B (zh) | 分布式网络资产测绘方法及装置、计算机设备、存储介质 | |
CN117354956A (zh) | 基于5g的会话建立方法、装置、电子设备及存储介质 | |
CN110071868B (zh) | 一种链路聚合方法、装置及网络设备 | |
CN111240867A (zh) | 一种信息通讯系统及方法 | |
CN112953835B (zh) | 数据传输方法、装置及系统 | |
CN115914007A (zh) | 一种网络诊断的方法、装置、电子设备及存储介质 | |
CN114039881B (zh) | 一种通信连接监控方法 | |
CN110912997B (zh) | 一种三角组网Loopback接口的检查方法及装置 | |
CN107733669B (zh) | 基于request ID的SNMP服务器管理方法及系统 | |
CN113204440B (zh) | 消息发送方法、装置、电子设备及存储介质 | |
JP4649461B2 (ja) | 端末装置稼動確認方法、稼動確認装置、稼動確認システムおよび稼動確認プログラム | |
US11606274B1 (en) | Method for operations of virtual machines in monitoring cloud activities, system, and device applying the method | |
CN112596893B (zh) | 用于多节点边缘计算设备的监控方法和系统 | |
CN115150363A (zh) | Ip地址更新方法、网关设备、网关下挂设备和存储介质 |
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 |