CN110943942A - 一种基于数据包编号的多路并发传输方法和*** - Google Patents
一种基于数据包编号的多路并发传输方法和*** Download PDFInfo
- Publication number
- CN110943942A CN110943942A CN201911107784.7A CN201911107784A CN110943942A CN 110943942 A CN110943942 A CN 110943942A CN 201911107784 A CN201911107784 A CN 201911107784A CN 110943942 A CN110943942 A CN 110943942A
- Authority
- CN
- China
- Prior art keywords
- transmission
- data packet
- fragment data
- processing
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于数据包编号的多路并发传输方法和***,该方法和***通过对目标文件进行破碎处理,以得到对应的若干碎片数据包,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息,基于数据包编号信息和传输到达顺序信息,对相应的若干碎片数据包进行重组处理,该方法和***对碎片数据包同时进行锁定处理和传输超时判断处理来分别获取关于不同碎片数据包的数据包编号信息和传输达到顺序信息,从而避免对碎片数据包进行单一编号处理而引起的误编号,以提高碎片数据包的重组准确性和重组效率。
Description
技术领域
本发明涉及多链路网络数据传输的技术领域,特别涉及一种基于数据包编号的多路并发传输方法和***。
背景技术
目前,在多链路网络中对文件进行多链路传输主要是将文件破碎分解为多个碎片数据包,再通过不同的传输链路分别将不同碎片数据包进行单独传输,并最终在所有碎片数据包都完成传输后,对所有碎片数据包进行重组以还原得到该文件。可见,该多链路网络能够有效和快速地将大容量文件的进行传输,从而保证文件的传输效率和完整性能。在实际传输过程中,由于多链路网络中不同传输链路的数据传输速率并不相同,从而导致不同碎片数据包并不能按照预先设定的传输顺序到达相应的链路接收端,这产生了不同碎片数据包乱序传输的问题,同时也使得后续对不同碎片数据包进行重组处理时产生一定的时间延迟和重组效率下降的问题。现有技术只是通过对不同碎片数据包进行编号处理以实现对相应碎片数据包的传输时间信息标定,以便于提高后续对不同碎片数据包的重组效率,但是上述编号处理并没有考虑到不同传输链路的数据传输时间,这可能存在对碎片数据包错误编号的情况,从而严重的降低后续对不同碎片数据包的重组准确性。
发明内容
针对现有技术存在的缺陷,本发明提供一种基于数据包编号的多路并发传输方法和***,该基于数据包编号的多路并发传输方法和***通过对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将若干碎片数据包进行多链路并发传输,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息,基于数据包编号信息和传输到达顺序信息,对相应的若干碎片数据包进行重组处理,该方法和***对碎片数据包同时进行锁定处理和传输超时判断处理来分别获取关于不同碎片数据包的数据包编号信息和传输达到顺序信息,从而避免对碎片数据包进行单一编号处理而引起的误编号情况,以提高碎片数据包的重组准确性和重组效率,同时也有效地防止多链路传输过程中出现编码重复和编码操作陷入死循环的情况,有效地解决多链路并发传输中碎片数据包乱序和传输效率低下的问题。
本发明提供一种基于数据包编号的多路并发传输方法,其特征在于,所述基于数据包编号的多路并发传输方法包括如下步骤:
步骤S1,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将所述若干碎片数据包进行多链路并发传输;
步骤S2,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息;
步骤S3,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
步骤S4,基于所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理;
进一步,在所述步骤S1中,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将所述若干碎片数据包进行多链路并发传输具体包括,
步骤S101,根据所述目标文件的数据容量信息和/或数据分区配置信息,确定对所述目标文件进行所述破碎处理的破碎分解算法;
步骤S102,根据所述破碎分解算法,对所述目标文件进行所述破碎处理,以破碎分解到所述若干碎片数据包;
步骤S103,对所述若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
步骤S104,根据所述排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行所述多链路并发传输;
进一步,在所述步骤S2中,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息具体包括,
步骤S201,通过预设调用算法,获取一个互斥锁的操作权限,并根据所述互斥锁对每一个碎片数据包进行静态变量计数处理;
步骤S202,根据所述静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
步骤S203,对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息;
或者,
在所述步骤S2中,获取每一个碎片数据包对应的数据包编号信息后,还需要对所述数据包编号信息进行优化处理,所述优化处理具体包括,
假设用于生成所述数据包编号信息的指标有N个,其中,所述指标至少包括数据包形成时间、数据包大小、数据包文件类型和数据包前10和字符内容,通过下面公式(1)对所述数据包编号信息中的每一个指标进行归一化处理
在上述公式(1)中,Ai表示第i个指标对应的归一化值,Ni表示第i个指标进行数值化后对应的值,i=1、2、3、…、N;
再根据下面公式(2),计算不同指标之间对应的直线距离
在上述公式(2)中,Dij表示第i个指标与第j个指标之间的直线距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据下面公式(3),计算不同指标之间的夹角距离
在上述公式(3)中,Cij表示第i个指标与第j个指标之间的夹角距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据计算得到的所述直线距离和所述夹角距离,对所述数据包编号信息的所有指标进行聚类,将直线距离和夹角距离相近的指标划分为同一特征聚类,再根据所述聚类的结果对所述数据包编号信息进行关于特征聚类的优化处理;
进一步,在所述步骤S3中,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息具体包括,
步骤S301,获取所述多链路并发传输对应的传输标定时钟信息,并确定所述传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
步骤S302,获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
步骤S303,根据所述传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
进一步,在所述步骤S4中,基于所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理具体包括,
步骤S401,根据所述数据包编号信息和所述传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
步骤S402,根据所述重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
步骤S403,根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行所述重组处理。
本发明还提供一种基于数据包编号的多路并发传输***,其特征在于:
所述基于数据包编号的多路并发传输***包括破碎处理模块、多链路并发传输模块、锁定处理模块、传输超时判断处理模块和重组处理模块;其中,
所述破碎处理模块用于对目标文件进行破碎处理,以得到对应的若干碎片数据包;
所述多链路并发传输模块用于将所述若干碎片数据包进行多链路并发传输;
所述锁定处理模块用于对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息;
所述传输超时判断处理模块用于对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
所述重组处理模块用于根据所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理;
进一步,所述破碎处理模块包括破碎算法确定子模块、破碎分解子模块和数据包排序与传输处理子模块;其中,
所述破碎算法确定子模块用于根据所述目标文件的数据容量信息和/或数据分区配置信息,确定对所述目标文件进行所述破碎处理的破碎分解算法;
所述破碎分解子模块用于根据所述破碎分解算法,对所述目标文件进行所述破碎处理,以破碎分解到所述若干碎片数据包;
所述数据包排序与传输处理子模块用于对所述若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
所述多链路并发传输模块还用于根据所述排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行所述多链路并发传输;
进一步,所述锁定处理模块包括互斥锁调用子模块、数据包初步统计子模块和数据包编号确定子模块;其中,
所述互斥锁调用子模块用于通过预设调用算法,获取一个互斥锁的操作权限,并根据所述互斥锁对每一个碎片数据包进行静态变量计数处理;
所述数据包初步统计子模块用于根据所述静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
所述数据包编号确定子模块用于对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息;
进一步,所述传输超时判断处理模块包括传输时间差确定子模块、环表生成子模块和传输到达顺序确定子模块;其中,
所述传输时间差确定子模块用于获取所述多链路并发传输对应的传输标定时钟信息,并确定所述传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
所述环表生成子模块用于获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
所述传输到达顺序确定子模块用于根据所述传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
进一步,所述重组模块包括缓存子模块、数据包关联划分子模块和重组处理子模块;其中,
所述缓存子模块用于根据所述数据包编号信息和所述传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
所述数据包关联划分子模块用于根据所述重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
所述重组处理子模块用于根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行所述重组处理。
相比于现有技术,该基于数据包编号的多路并发传输方法和***通过对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将若干碎片数据包进行多链路并发传输,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息,基于数据包编号信息和传输到达顺序信息,对相应的若干碎片数据包进行重组处理,该方法和***对碎片数据包同时进行锁定处理和传输超时判断处理来分别获取关于不同碎片数据包的数据包编号信息和传输达到顺序信息,从而避免对碎片数据包进行单一编号处理而引起的误编号情况,以提高碎片数据包的重组准确性和重组效率,同时也有效地防止多链路传输过程中出现编码重复和编码操作陷入死循环的情况,有效地解决多链路并发传输中碎片数据包乱序和传输效率低下的问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种基于数据包编号的多路并发传输方法的流程示意图。
图2为本发明提供的一种基于数据包编号的多路并发传输***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,为本发明实施例提供的一种基于数据包编号的多路并发传输方法的流程示意图。该基于数据包编号的多路并发传输方法包括如下步骤:
步骤S1,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将该若干碎片数据包进行多链路并发传输。
优选地,在该步骤S1中,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将该若干碎片数据包进行多链路并发传输具体包括,
步骤S101,根据该目标文件的数据容量信息和/或数据分区配置信息,确定对该目标文件进行该破碎处理的破碎分解算法;
步骤S102,根据该破碎分解算法,对该目标文件进行该破碎处理,以破碎分解到该若干碎片数据包;
步骤S103,对该若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
步骤S104,根据该排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行该多链路并发传输。
步骤S2,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息。
优选地,在该步骤S2中,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息具体包括,
步骤S201,通过预设调用算法,获取一个互斥锁的操作权限,并根据该互斥锁对每一个碎片数据包进行静态变量计数处理;
步骤S202,根据该静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
步骤S203,对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息。
优选地,在该步骤S2中,获取每一个碎片数据包对应的数据包编号信息后,还需要对该数据包编号信息进行优化处理,该优化处理具体包括,
假设用于生成该数据包编号信息的指标有N个,其中,该指标至少包括数据包形成时间、数据包大小、数据包文件类型和数据包前10和字符内容,通过下面公式(1)对该数据包编号信息中的每一个指标进行归一化处理
在上述公式(1)中,Ai表示第i个指标对应的归一化值,Ni表示第i个指标进行数值化后对应的值,i=1、2、3、…、N;
再根据下面公式(2),计算不同指标之间对应的直线距离
在上述公式(2)中,Dij表示第i个指标与第j个指标之间的直线距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据下面公式(3),计算不同指标之间的夹角距离
在上述公式(3)中,Cij表示第i个指标与第j个指标之间的夹角距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据计算得到的该直线距离和该夹角距离,对该数据包编号信息的所有指标进行聚类,将直线距离和夹角距离相近的指标划分为同一特征聚类,再根据该聚类的结果对该数据包编号信息进行关于特征聚类的优化处理;
由于在对碎片数据包进行编号时,为了保证编号的唯一性,需要对数据包中的不同数据信息进行考察,从而形成唯一的指令信息,一般而言,当用于形成指令信息的指标越多,越能够保证该数据包编号的唯一性,同时当形成指令信号的指标越多,该数据包编号的生成速度也越慢,这就需要对该数据包编号信息中的指标进行相应优化处理,通过上面的优化处理算法能够在保证数据包编号一致性的情况下提高数据包编号的计算速度,比如,对于某个碎片数据包,通常需要根据其中的20个指标进行编号,若对该20个指标执行上面优化处理算法对应的特征聚类,即将其中某些相近的指标进行合并,则最终需要进行编号的指标数量将远小于20个,当特征聚类得到5个特征指标,对应地只需要根据这5个特征指标进行编号即可,从而大大缩短编码时间。
步骤S3,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息。
优选地,在该步骤S3中,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息具体包括,
步骤S301,获取该多链路并发传输对应的传输标定时钟信息,并确定该传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
步骤S302,获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
步骤S303,根据该传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息。
步骤S4,基于该数据包编号信息和该传输到达顺序信息,对相应的若干碎片数据包进行重组处理。
优选地,在该步骤S4中,基于该数据包编号信息和该传输到达顺序信息,对相应的若干碎片数据包进行重组处理具体包括,
步骤S401,根据该数据包编号信息和该传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
步骤S402,根据该重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
步骤S403,根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行该重组处理。
参阅图2,为本发明实施例提供的一种基于数据包编号的多路并发传输***的结构示意图。该基于数据包编号的多路并发传输***包括破碎处理模块、多链路并发传输模块、锁定处理模块、传输超时判断处理模块和重组处理模块;其中,
该破碎处理模块用于对目标文件进行破碎处理,以得到对应的若干碎片数据包;
该多链路并发传输模块用于将该若干碎片数据包进行多链路并发传输;
该锁定处理模块用于对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息;
该传输超时判断处理模块用于对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
该重组处理模块用于根据该数据包编号信息和该传输到达顺序信息,对相应的若干碎片数据包进行重组处理。
优选地,该破碎处理模块包括破碎算法确定子模块、破碎分解子模块和数据包排序与传输处理子模块;
优选地,该破碎算法确定子模块用于根据该目标文件的数据容量信息和/或数据分区配置信息,确定对该目标文件进行该破碎处理的破碎分解算法;
优选地,该破碎分解子模块用于根据该破碎分解算法,对该目标文件进行该破碎处理,以破碎分解到该若干碎片数据包;
优选地,该数据包排序与传输处理子模块用于对该若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
优选地,该多链路并发传输模块还用于根据该排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行该多链路并发传输;
优选地,该锁定处理模块包括互斥锁调用子模块、数据包初步统计子模块和数据包编号确定子模块;
优选地,该互斥锁调用子模块用于通过预设调用算法,获取一个互斥锁的操作权限,并根据该互斥锁对每一个碎片数据包进行静态变量计数处理;
优选地,该数据包初步统计子模块用于根据该静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
优选地,该数据包编号确定子模块用于对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息;
优选地,该传输超时判断处理模块包括传输时间差确定子模块、环表生成子模块和传输到达顺序确定子模块;
优选地,该传输时间差确定子模块用于获取该多链路并发传输对应的传输标定时钟信息,并确定该传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
优选地,该环表生成子模块用于获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
优选地,该传输到达顺序确定子模块用于根据该传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
优选地,该重组模块包括缓存子模块、数据包关联划分子模块和重组处理子模块;
优选地,该缓存子模块用于根据该数据包编号信息和该传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
优选地,该数据包关联划分子模块用于根据该重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
优选地,该重组处理子模块用于根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行该重组处理。
从上述实施例的内容可知,该基于数据包编号的多路并发传输方法和***通过对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将若干碎片数据包进行多链路并发传输,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息,基于数据包编号信息和传输到达顺序信息,对相应的若干碎片数据包进行重组处理,该方法和***对碎片数据包同时进行锁定处理和传输超时判断处理来分别获取关于不同碎片数据包的数据包编号信息和传输达到顺序信息,从而避免对碎片数据包进行单一编号处理而引起的误编号情况,以提高碎片数据包的重组准确性和重组效率,同时也有效地防止多链路传输过程中出现编码重复和编码操作陷入死循环的情况,有效地解决多链路并发传输中碎片数据包乱序和传输效率低下的问题。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种基于数据包编号的多路并发传输方法,其特征在于,所述基于数据包编号的多路并发传输方法包括如下步骤:
步骤S1,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将所述若干碎片数据包进行多链路并发传输;
步骤S2,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息;
步骤S3,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
步骤S4,基于所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理。
2.如权利要求1所述的基于数据包编号的多路并发传输方法,其特征在于:
在所述步骤S1中,对目标文件进行破碎处理,以得到对应的若干碎片数据包,并将所述若干碎片数据包进行多链路并发传输具体包括,
步骤S101,根据所述目标文件的数据容量信息和/或数据分区配置信息,确定对所述目标文件进行所述破碎处理的破碎分解算法;
步骤S102,根据所述破碎分解算法,对所述目标文件进行所述破碎处理,以破碎分解到所述若干碎片数据包;
步骤S103,对所述若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
步骤S104,根据所述排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行所述多链路并发传输。
3.如权利要求1所述的基于数据包编号的多路并发传输方法,其特征在于:
在所述步骤S2中,对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息具体包括,
步骤S201,通过预设调用算法,获取一个互斥锁的操作权限,并根据所述互斥锁对每一个碎片数据包进行静态变量计数处理;
步骤S202,根据所述静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
步骤S203,对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息;
或者,
在所述步骤S2中,获取每一个碎片数据包对应的数据包编号信息后,还需要对所述数据包编号信息进行优化处理,所述优化处理具体包括,假设用于生成所述数据包编号信息的指标有N个,其中,所述指标至少包括数据包形成时间、数据包大小、数据包文件类型和数据包前10和字符内容,通过下面公式(1)对所述数据包编号信息中的每一个指标进行归一化处理
在上述公式(1)中,Ai表示第i个指标对应的归一化值,Ni表示第i个指标进行数值化后对应的值,i=1、2、3、…、N;
再根据下面公式(2),计算不同指标之间对应的直线距离
在上述公式(2)中,Dij表示第i个指标与第j个指标之间的直线距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据下面公式(3),计算不同指标之间的夹角距离
在上述公式(3)中,Cij表示第i个指标与第j个指标之间的夹角距离,Ai和Aj分别表示第i指标对应的归一化值与第j个指标对应的归一化值,i=1、2、3、…、N,j=1、2、3、…、N;
再根据计算得到的所述直线距离和所述夹角距离,对所述数据包编号信息的所有指标进行聚类,将直线距离和夹角距离相近的指标划分为同一特征聚类,再根据所述聚类的结果对所述数据包编号信息进行关于特征聚类的优化处理。
4.如权利要求1所述的基于数据包编号的多路并发传输方法,其特征在于:
在所述步骤S3中,对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息具体包括,
步骤S301,获取所述多链路并发传输对应的传输标定时钟信息,并确定所述传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
步骤S302,获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
步骤S303,根据所述传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息。
5.如权利要求1所述的基于数据包编号的多路并发传输方法,其特征在于:
在所述步骤S4中,基于所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理具体包括,
步骤S401,根据所述数据包编号信息和所述传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
步骤S402,根据所述重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
步骤S403,根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行所述重组处理。
6.一种基于数据包编号的多路并发传输***,其特征在于:
所述基于数据包编号的多路并发传输***包括破碎处理模块、多链路并发传输模块、锁定处理模块、传输超时判断处理模块和重组处理模块;
其中,
所述破碎处理模块用于对目标文件进行破碎处理,以得到对应的若干碎片数据包;
所述多链路并发传输模块用于将所述若干碎片数据包进行多链路并发传输;
所述锁定处理模块用于对每一个碎片数据包进行关于互斥锁的锁定处理,以此获取每一个碎片数据包对应的数据包编号信息;
所述传输超时判断处理模块用于对每一个碎片数据包进行传输超时判断处理,以此确定不同碎片数据包相互之间对应的传输达到顺序信息;
所述重组处理模块用于根据所述数据包编号信息和所述传输到达顺序信息,对相应的若干碎片数据包进行重组处理。
7.如权利要求6所述的基于数据包编号的多路并发传输***,其特征在于:
所述破碎处理模块包括破碎算法确定子模块、破碎分解子模块和数据包排序与传输处理子模块;其中,
所述破碎算法确定子模块用于根据所述目标文件的数据容量信息和/或数据分区配置信息,确定对所述目标文件进行所述破碎处理的破碎分解算法;
所述破碎分解子模块用于根据所述破碎分解算法,对所述目标文件进行所述破碎处理,以破碎分解到所述若干碎片数据包;
所述数据包排序与传输处理子模块用于对所述若干碎片数据包进行关于传输发起端的排序与传输发起集群确定处理;
所述多链路并发传输模块还用于根据所述排序与传输发起集群确定处理的结果,将每一个碎片数据包匹配只相应的传输链路中,以进行所述多链路并发传输。
8.如权利要求6所述的基于数据包编号的多路并发传输***,其特征在于:
所述锁定处理模块包括互斥锁调用子模块、数据包初步统计子模块和数据包编号确定子模块;其中,
所述互斥锁调用子模块用于通过预设调用算法,获取一个互斥锁的操作权限,并根据所述互斥锁对每一个碎片数据包进行静态变量计数处理;
所述数据包初步统计子模块用于根据所述静态变量计数处理的结果,获取每一个碎片数据包对应的编号统计初步信息;
所述数据包编号确定子模块用于对所有碎片数据包各自的编号统计初步信息进行关于预设函数算法的去重处理和校正处理,以此确定每一个碎片数据包对应的数据包编号信息。
9.如权利要求6所述的基于数据包编号的多路并发传输***,其特征在于:
所述传输超时判断处理模块包括传输时间差确定子模块、环表生成子模块和传输到达顺序确定子模块;其中,
所述传输时间差确定子模块用于获取所述多链路并发传输对应的传输标定时钟信息,并确定所述传输标定时钟信息与每一个碎片数据包各自传输到达时间信息之间的传输时间差信息;
所述环表生成子模块用于获取每一个碎片数据包各自的传输时间差信息与预设回环时间的一半之间的大小比较结果,以此生成关于所有碎片数据包的传输时间差鉴定环表;
所述传输到达顺序确定子模块用于根据所述传输时间差鉴定环表,确定每一个碎片数据包在各自的传输链路上的传输时间占比,以此确定不同碎片数据包相互之间对应的传输达到顺序信息。
10.如权利要求6所述的基于数据包编号的多路并发传输***,其特征在于:
所述重组模块包括缓存子模块、数据包关联划分子模块和重组处理子模块;其中,
所述缓存子模块用于根据所述数据包编号信息和所述传输到达顺序信息,对每一个碎片数据包进行关于不同缓存区块的缓存处理,以确定每一个碎片数据包的重组处理信息;
所述数据包关联划分子模块用于根据所述重组处理信息,对每一个碎片数据包进行重组关联性划分处理,以得到具有重组关联性的若干碎片数据包;
所述重组处理子模块用于根据预设重组算法模型,对具有重组关联性的若干碎片数据包进行所述重组处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911107784.7A CN110943942B (zh) | 2019-11-13 | 2019-11-13 | 一种基于数据包编号的多路并发传输方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911107784.7A CN110943942B (zh) | 2019-11-13 | 2019-11-13 | 一种基于数据包编号的多路并发传输方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110943942A true CN110943942A (zh) | 2020-03-31 |
CN110943942B CN110943942B (zh) | 2020-10-23 |
Family
ID=69906579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911107784.7A Active CN110943942B (zh) | 2019-11-13 | 2019-11-13 | 一种基于数据包编号的多路并发传输方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110943942B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917327A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种流媒体收录方法及一种播放器 |
CN101980509A (zh) * | 2010-11-05 | 2011-02-23 | 北京云快线软件服务有限公司 | 一种文件分片传输方法及装置 |
CN102833336A (zh) * | 2012-08-31 | 2012-12-19 | 河海大学 | 分散分布式信息采集与并发处理***中数据分包处理方法 |
EP2466463A3 (en) * | 2010-12-14 | 2013-06-12 | AppSense Limited | Process safe read/write locks |
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和*** |
-
2019
- 2019-11-13 CN CN201911107784.7A patent/CN110943942B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917327A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种流媒体收录方法及一种播放器 |
CN101980509A (zh) * | 2010-11-05 | 2011-02-23 | 北京云快线软件服务有限公司 | 一种文件分片传输方法及装置 |
EP2466463A3 (en) * | 2010-12-14 | 2013-06-12 | AppSense Limited | Process safe read/write locks |
CN102833336A (zh) * | 2012-08-31 | 2012-12-19 | 河海大学 | 分散分布式信息采集与并发处理***中数据分包处理方法 |
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN110943942B (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108733790B (zh) | 数据排序方法、装置、服务器和存储介质 | |
CN111638948B (zh) | 多通道高可用的大数据实时决策***及决策方法 | |
Zhang et al. | Qpbft: Practical byzantine fault tolerance consensus algorithm based on quantified-role | |
CN112286963A (zh) | 一种区块链终端数据可信查询***及其实现方法 | |
Cui et al. | A fast blockchain-based federated learning framework with compressed communications | |
CN111414589B (zh) | 基于区块链的作品原创审核方法、装置及设备 | |
CN110943942B (zh) | 一种基于数据包编号的多路并发传输方法和*** | |
CN110139402A (zh) | 一种基于灾害应急通信的自适应网关及其网络选择方法 | |
CN116501997B (zh) | 短链接生成方法、装置、电子设备及存储介质 | |
CN115103194B (zh) | 基于多解码模式的视频解码方法 | |
CN112104518A (zh) | 一种比特数据特征挖掘方法、***、设备及可读介质 | |
CN112491508B (zh) | 基于传输进程自适应的数据传输方法及装置 | |
CN115048430A (zh) | 数据核验方法、***、装置及存储介质 | |
CN111629217B (zh) | 边缘网络环境下基于XGBoost算法的VOD业务缓存优化方法 | |
CN113626516A (zh) | 数据增量同步方法和*** | |
CN115905414B (zh) | 一种内外网数据同步方法、***、电子设备及介质 | |
CN111988131A (zh) | 一种面向移动群智感知的区块链构建方法 | |
CN117331993B (zh) | 一种实时数据库用于交换数据的方法与设备 | |
Plugatarev et al. | Model for determining the message source by analyzing their arrival time | |
CN110309133B (zh) | 批量数据的处理方法和装置 | |
CN113342856B (zh) | 数据查询方法及装置 | |
CN117273764B (zh) | 一种电子雾化器防伪管理方法及*** | |
CN111404928B (zh) | 一种适用于实时交易场景的区块链节点共识方法 | |
CN117336296B (zh) | 一种集群共识的智能选择方法 | |
CN117014392A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210112 Address after: 2 / F, building 3, 19 Dongying Road, zhaoquanying Town, Shunyi District, Beijing Patentee after: Beijing Lianshan Science and Technology Co.,Ltd. Address before: 1 / F, building 3, 19 Dongying Road, zhaoquanying Town, Shunyi District, Beijing Patentee before: BEIJING LIANSHAN TIMES TECHNOLOGY Co.,Ltd. |