掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法及装置

文献发布时间:2023-06-19 10:14:56


数据处理方法及装置

技术领域

本申请实施例涉及数据通信技术领域,尤其涉及数据处理方法及装置。

背景技术

随着互联网的发展,各类网络应用都需要建立数据传输。然而互联网的传输网络并非总是可靠,在传输过程中,由于种种不稳定性会导致数据丢包的现象。现有技术中解决数据丢包的问题,是由接收端确认出现丢包时,向发送端请求重传数据,发送端根据请求重传整个数据包给接收端,导致内存消耗大、传输效率低。

发明内容

本申请实施例提供一种数据处理方法及装置,以根据数据包的特征识别丢失的数据帧的比例,只有当比例达到足够时才触发重传,提高传输效率、降低内存消耗。

在第一方面,本申请实施例提供了一种数据处理方法,包括:

接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列;

提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码;

比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

进一步的,还包括:

获取系列特征码相比系列随机码之间的差异位置,以确定所述数据中所丢失的数据帧;

所述重传请求包括丢失数据帧的识别码,发送重传请求至发送端,以接收来自发送端的对应的数据帧。

进一步的,还包括:

检测发送端的当前接入数量,选取至少部分发送端作为传输队列,并确定与传输队列中的发送端建立数据传输的顺序;

其中,确定所述顺序包括以下方式:

获取传输队列的发送端的接入时间,根据发送端的接入时间顺序确定与传输队列的所述发送端建立数据传输的顺序;

或者,同时发送握手信号给传输队列的发送端,根据接收到发送端基于握手信号而反馈的反馈信号的时间顺序,建立数据传输的顺序。

进一步的,当确定与传输队列的发送端建立数据传输的顺序后,与当前的发送端建立数据传输时,关闭与其他发送端之间的数据传输通道。

进一步的,与当前的发送端建立数据传输并接收到来自发送端的数据,且需要发送重传请求给当前的发送端以接收该当前的发送端的对应的数据帧时,发送重传请求给当前的发送端,并打开与下个发送端之间的数据传输通道,接收下一个发送端所发送的数据和系列随机码。

进一步的,获取每一个发送端的重传比例,所述重传比例用于表示预设时间段内发送数据的全部次数中需要重传传输的占比;

当发送端的所述重传比例达到阈值时,将该发送端从传输队列中剔除。

进一步的,采集从传输队列中被剔除的发送端的传输特征,当所述传输特征符合设定需求时,将该发送端重新纳入传输队列,所述传输特征包括网络特征、物理线路特征、路由信息、系统资源特征。

在第二方面,本申请实施例提供了一种数据处理装置,包括:

数据接收模块:用于接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列;

特征提取模块:用于提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码;

特征比对模块:用于比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

进一步的,还包括如下模块:

丢失数据确定模块:用于获取系列特征码相比系列随机码之间的差异位置,以确定所述数据中所丢失的数据帧;

重传请求发送模块:用于发送重传请求至发送端,以接收来自发送端的对应的数据帧,所述重传请求包括丢失数据帧的识别码。

进一步的,还包括如下模块:

数量检测模块:用于检测发送端的当前接入数量,选取至少部分发送端作为传输队列,并确定与传输队列中的发送端建立数据传输的顺序;

其中,确定所述顺序包括以下方式:

获取传输队列的发送端的接入时间,根据发送端的接入时间顺序确定与传输队列的所述发送端建立数据传输的顺序;

或者,同时发送握手信号给传输队列的发送端,根据接收到发送端基于握手信号而反馈的反馈信号的时间顺序,建立数据传输的顺序。

进一步的,当确定与传输队列的发送端建立数据传输的顺序后,与当前的发送端建立数据传输时,关闭与其他发送端之间的数据传输通道。

进一步的,与当前的发送端建立数据传输并接收到来自发送端的数据,且需要发送重传请求给当前的发送端以接收该当前的发送端的对应的数据帧时,发送重传请求给当前的发送端,并打开与下个发送端之间的数据传输通道,接收下一个发送端所发送的数据和系列随机码。

进一步的,获取每一个发送端的重传比例,所述重传比例用于表示预设时间段内发送数据的全部次数中需要重传传输的占比;

当发送端的所述重传比例达到阈值时,将该发送端从传输队列中剔除。

进一步的,采集从传输队列中被剔除的发送端的传输特征,当所述传输特征符合设定需求时,将该发送端重新纳入传输队列,所述传输特征包括网络特征、物理线路特征、路由信息、系统资源特征。

在第三方面,本申请实施例提供了一种计算机设备,包括:存储器以及一个或多个处理器;

所述存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的数据处理方法。

在第四方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的基数据处理方法。

本申请实施例通过在发送数据时一并发送系列随机码,以对接收到的数据中的特征码与系列随机码进行比对,当差异度达到预设条件时才触发重传,并能够大大降低内存消耗以及提高传输效率,并且可以减少网络往返发送数据的时延。

附图说明

图1是本申请实施例提供的一种数据处理方法的流程图;

图2是本申请实施例提供的一种数据处理装置的结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

图1给出了本申请实施例提供的的流程图,本申请实施例提供的数据处理方法可以由数据处理装置来执行,该数据处理装置可以通过硬件和/或软件的方式实现,并集成在计算机设备中。

本发明实施例提供的数据处理方法可以应用在发送端与接收端之间。发送端与接收端之间通过通信网络进行通信。该网络可以为广域网、局域网。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以提供云服务器、云数据库、云计算、云通信、大数据库和人工智能平台等基础云计算服务器的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能手表等智能设备。发送端与接收端之间的连接可以通过有线网络连接也可以通过无线网络通信,可以直接通信或者间接通信。作为应用场景,例如,发送端可以是终端设备或者服务器,当发送端是终端设备时,接收端为服务器,当发送端为服务器时,接收到为终端设备。例如,用户通过终端设备上安装的通讯类软件的客户端,与其他用户进行数据传输时,客户端将用户输入的数据发送给服务器,此时,终端设备为发送端,服务器为接收端。在另一种场景中,用户通过终端设备上安装的社交软件进行视频观看时,服务器将视频发送给用户的客户端,此时发送端为接收端,服务器为发送端。

下述以数据处理装置执行数据处理方法为例进行描述。参考图1,该数据处理方法包括:

S101:接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列。

本步骤中,由发送端发送数据和系列随机码至接收端。本实施例以音频数据为例进行解释说明。由于音频的特殊性,每一个数据帧可能仅对于一个音符,如果仅仅因为单个音符而触发重传,可能带来传输效率降低的问题。在本发明实施例中,数据包括若干数据帧,其中系列随机码例如为ABCDE,所示例性的具有5个特征码,因此可以理解的是,数据具有五个数据帧,而每一个数据帧例如为XXXX-Y,其中Y表示特征码,则数据为:XXXX-AXXXX-BXXXX-C XXXX-D XXXX-E,系列随机码的ABCDE与数据帧的特征码一一对应排列。

S102:提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码。

同样以上述举例示例进行描述,提取数据中的全部特征码,也即是提取XXXX-AXXXX-B XXXX-C XXXX-D XXXX-E中的“ABCDE”,比对“ABCDE”与系列随机码是否一致。当不一致时,由于特征码均是按顺序一一对应排列,能够快速反应所缺失的数据帧。

S103:比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

例如,发送端所发送的数据为:XXXX-A XXXX-B XXXX-C XXXX-D XXXX-E,而接收端接收到的数据为:XXXX-A XXXX-C XXXX-D XXXX-E。提取接收端接收到的数据的特征码为ACDE,而系列随机码为ABCDE,比对ACDE和ABCDE之间的差异度,可见差异为缺失特征码B所对应的数据帧,且可以计算到缺失率为五分之一,也即差异度为五分之一,假设预设条件为差异度大于五分之二,说明此时未达到触发重传请求的条件。另外一种情况下,假设收到的数据为XXXX-A XXXX-B,提取的数据的特征码为AB,而系列随机码为ABCDE,缺少了三个数据帧,缺失率为五分之三,以及达到触发重传请求的条件,接收端发送重传请求给发送端,由发送端根据重传请求再一次发送数据。

进一步更为优选的,本发明实施例还包括获取系列特征码相比系列随机码之间的差异位置,以确定所述数据中所丢失的数据帧;所述重传请求包括丢失数据帧的识别码,发送重传请求至发送端,以接收来自发送端的对应的数据帧。

例如提取的数据的特征码为ACDE,系列随机码为ABCDE,比对两者的差异位置,可发现排序第二的位置特征码缺失,也即是该特征码对应的数据帧确实,则发送重传请求时,也即发送该数据帧的识别码至发送端,以使发送端发送该数据帧至接收端,而不用再把全部数据重新上传,避免增大网络传输压力。

更进一步的,本发明实施例还包括检测发送端的当前接入数量,选取至少部分发送端作为传输队列,并确定与传输队列中的发送端建立数据传输的顺序。

例如检测到当前共有5个终端设备接入服务器,假设根据该服务器的物理性能限定其最多能同时接入5个终端设备,那么此时可以将全部终端设备,也即是接送的作为传输队列。而另外一个示例,假设当前有6个终端设备接入服务器,同样假设服务最多能接入5个终端设备,则从6个终端设备中选取5个终端设备纳入至传输队列中。至于从6个人终端设备中选取5个终端设备的方式可以是基于发送端接入的时间先后顺序进行选择,也可以是其他条件,例如发送数据的紧急优先级。

当选取好传输队列之后,为了避免5个终端设备同时传输数据而增大丢包率,因此设定5个终端设备按顺序建立数据传输。在本实施例中,确定所述顺序的方式包括:获取传输队列的发送端的接入时间,根据发送端的接入时间顺序确定与传输队列的所述发送端建立数据传输的顺序。

作为另外一种示例,可以根据传输队列中发送端的响应时间速度来确定数据传输的顺序。具体的,同时发送握手信号给传输队列的发送端,根据接收到发送端基于握手信号而反馈的反馈信号的时间顺序,建立数据传输的顺序。

作为本发明实施例进一步优选的可实施方式,当确定与传输队列的发送端建立数据传输的顺序后,与当前的发送端建立数据传输时,关闭与其他发送端之间的数据传输通道。从而可以确保充足的资源进行当前的数据传输,尽量避免丢包等数据故障。

与当前的发送端建立数据传输并接收到来自发送端的数据,且需要发送重传请求给当前的发送端以接收该当前的发送端的对应的数据帧时,发送重传请求给当前的发送端,并打开与下个发送端之间的数据传输通道,接收下一个发送端所发送的数据和系列随机码。由于本发明实施例设置了重传请求仅仅是针对缺少部分进行重传,占用内存小,影响传输速率小,因此可以打开与下一个发送端之间的数据传输通道,降低下一个发送端的等待时间。

进一步的,获取每一个发送端的重传比例,所述重传比例用于表示预设时间段内发送数据的全部次数中需要重传传输的占比;当发送端的所述重传比例达到阈值时,将该发送端从传输队列中剔除。当重传比例过大时,表明该发送端与接收端之间可能出现了某些故障,因此暂停该发送端的数据传输通道。

优选的,采集从传输队列中被剔除的发送端的传输特征,当所述传输特征符合设定需求时,将该发送端重新纳入传输队列,所述传输特征包括网络特征、物理线路特征、路由信息、系统资源特征。传输中发送端与接收端之间网络传输过程中所涉及的硬件设备、软件设备、网络信号灯均可能造成丢包,因此传输特征应包括涵盖多个方面的考察因素。网络特征包括网络自身问题、网络拥堵、网络端口形成瓶颈等。物理线路特征例如是物理线路故障,系统资源特征例如是系统资源不足,路由信息例如是路由故障。

另外一方面,如图2所示,本发明实施例还提供一种数据处理装置,其可以实现本发明实施例的数据处理方法,具体的,其包括数据接收模块201、特征提取模块202、特征比对模块203。数据接收模块201用于接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列;特征提取模块202用于提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码。特征比对模块203用于比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

进一步的,还包括丢失数据确定模块和重传请求发送模块,其中丢失数据确定模块用于获取系列特征码相比系列随机码之间的差异位置,以确定所述数据中所丢失的数据帧;重传请求发送模块用于发送重传请求至发送端,以接收来自发送端的对应的数据帧,所述重传请求包括丢失数据帧的识别码。

作为优选的实施方式,还包括如下模块:

数量检测模块:用于检测发送端的当前接入数量,选取至少部分发送端作为传输队列,并确定与传输队列中的发送端建立数据传输的顺序;

其中,确定所述顺序包括以下方式:

获取传输队列的发送端的接入时间,根据发送端的接入时间顺序确定与传输队列的所述发送端建立数据传输的顺序;

或者,同时发送握手信号给传输队列的发送端,根据接收到发送端基于握手信号而反馈的反馈信号的时间顺序,建立数据传输的顺序。

在本发明实施例中,当确定与传输队列的发送端建立数据传输的顺序后,与当前的发送端建立数据传输时,关闭与其他发送端之间的数据传输通道。

进一步优选的,与当前的发送端建立数据传输并接收到来自发送端的数据,且需要发送重传请求给当前的发送端以接收该当前的发送端的对应的数据帧时,发送重传请求给当前的发送端,并打开与下个发送端之间的数据传输通道,接收下一个发送端所发送的数据和系列随机码。

在本发明中,更进一步的,获取每一个发送端的重传比例,所述重传比例用于表示预设时间段内发送数据的全部次数中需要重传传输的占比;

当发送端的所述重传比例达到阈值时,将该发送端从传输队列中剔除。

进一步的,采集从传输队列中被剔除的发送端的传输特征,当所述传输特征符合设定需求时,将该发送端重新纳入传输队列,所述传输特征包括网络特征、物理线路特征、路由信息、系统资源特征。

本发明实施例还提供一种计算机设备,包括:存储器以及一个或多个处理器;

所述存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的数据处理方法,该数据处理方法包括接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列;提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码;比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的数据处理方法,该数据处理方法包括:接收来自发送端的数据和系列随机码,所述数据包括若干连续的数据帧,每一个数据帧均带有特征码和识别码,所述系列随机码由多个与数据中的数据帧数量一致的特征码排列组成,所述系列随机码中的特征码依照所述数据中全部数据帧的特征码顺序一一对应排列;提取数据中的全部特征码,并将特征码按照对应数据帧的排列顺序排列组成系列特征码;比对系列随机码与系列特征码的差异度,当差异度达到预设条件时,发送重传请求。

存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。

当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的数据处理方法,还可以执行本申请任意实施例所提供的数据处理方法中的相关操作。

上述实施例中提供的数据处理装置、设备及存储介质可执行本申请任意实施例所提供的数据处理方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的数据处理方法。

上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。

相关技术
  • 图像数据处理方法、用于图像数据处理方法的程序、记录有用于图像数据处理方法的程序的记录介质和图像数据处理装置
  • 药箱的数据处理方法、装置、数据处理方法和装置
技术分类

06120112476970