CN106385322B - 一种数据组呼方法、装置及系统 - Google Patents
一种数据组呼方法、装置及系统 Download PDFInfo
- Publication number
- CN106385322B CN106385322B CN201610808544.XA CN201610808544A CN106385322B CN 106385322 B CN106385322 B CN 106385322B CN 201610808544 A CN201610808544 A CN 201610808544A CN 106385322 B CN106385322 B CN 106385322B
- Authority
- CN
- China
- Prior art keywords
- mark
- data
- server
- terminal
- data slice
- 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
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/08—Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供了一种数据组呼方法、装置及系统,其中方法包括:确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识。本申请可以保证服务器不会接收过多反馈信息而不可用。这样,便可以在服务器上采用数据重传思想来保证数据准确性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种数据组呼方法、装置及系统。
背景技术
伴随着科学技术的迅速发展,集群业务从窄带走向宽带,带宽方面的限制大大减弱,因此数据组呼技术迅速发展。数据组呼的通常实现方式为服务器通过宽带向一组终端广播同一数据,以实现一组终端接收同一数据的目的。
可是,在服务器向一组终端广播数据的情况下,数据在传输过程中可能会丢失。由于服务器与各个终端之间的传输路径可以不同,所以针对一个终端而言,若在服务器与该终端之间的数据传输过程未出现问题,则该终端可以正确接收数据;若该服务器与该终端之间的数据传输过程出现问题,则该终端可能无法正确接收数据。因此,针对服务器向一组终端广播的同一数据的过程而言,一些终端可以正确接收数据,一些终端可能无法正确接收数据。
所以在传输可靠性较高的数据过程中,目前的数据组呼技术无法保证数据传输的准确性,进而导致一些终端无法正常接收并使用数据。
发明内容
本申请发明人在研究过程中发现可以利用重传思想来保证数据准确性。
重传思想具体而言为:当一个终端无法正确接收服务器的数据时,终端可以向服务器发送反馈信息,反馈信息包括丢失数据标识。服务器可以根据反馈信息向终端再次广播与丢失数据标识对应的数据,以便终端可以再次接收数据,从而保证数据准确性。
但是,针对目前数据组呼系统而言,一组终端中的终端数量较多。若各个终端均向服务器广播反馈信息,则聚集到服务器上的反馈信息则会非常多。服务器会因为无法处理过多的反馈信息而不可用,进而导致服务器出现拒绝服务的严重后果。基于此,目前的数据组呼技术的协议未具有重传定义。
为此,本申请提供了一种数据组呼方法,以便达到在不引起服务器不可用的前提下使服务器达到重传数据的目的,进而提高数据传输的准确性。
本申请提供了以下技术手段:
一种数据组呼方法,包括:
确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;
在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;
在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识。
优选的,在所述目标数据标识对应的数据片被划分为N个数据片的情况下,则所述反馈门限值大于或等于1,并且小于N。
优选的,所述确定与目标数据标识对应的当前终端丢失数据片标识,包括:
接收所述服务器广播的、包含目标数据标识的当前数据片对象;
在所述服务器第一次广播所述当前数据片对象的情况下,确定与所述目标数据标识对应的历史终端丢失数据片标识;
利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识。
优选的,所述利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识,包括:
在判定所述当前数据片对象正确接收的情况下,则将所述当前数据片对象对应的当前标识与上一次正确接收数据片对象的历史标识进行对比;
若所述当前标识与所述历史标识连续,则将所述历史终端丢失数据片标识确定为当前终端丢失数据片标识;
若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的所有中间标识,确定为中间丢失数据片标识;
将所述中间丢失数据片标识更新至所述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识。
优选的,所述利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识,包括:
在判定所述当前数据片对象未正确接收的情况下,将所述当前数据片对象对应的当前标识确定为已丢失数据片标识;
将所述当前数据片对象对应的当前标识与上一次正确接收数据片对象的历史标识进行对比;
若所述当前标识与所述历史标识连续,则将已丢失数据片标识更新至述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识;
若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的所有中间标识,确定为中间丢失数据片标识;
将所述中间丢失数据片标识和已丢失数据片标识、更新至所述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识。
优选的,在向服务器发送所述遗漏数据片标识之后,还包括:
接收所述服务器广播的当前服务器丢失数据片标识;
再次在所述当前终端丢失数据片标识中,确定出所述当前服务器丢失数据片标识所不具有的遗漏数据片标识;
在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识;
重复执行上述步骤直到所述遗漏数据片标识中的标识数量不大于所述反馈门限值。
优选的,还包括:
在服务器将包含目标数据标识的数据片对象发送完毕后,在已有终端丢失数据片标识中、确定所述已有服务器丢失数据片标识所不具有的遗漏数据片标识;若所述遗漏数据片标识非空集,则将所述遗漏数据片标识发送至所述服务器,由所述服务器确定最终服务器数据片标识。
优选的,还包括:
接收所述服务器依据所述最终服务器数据片标识逐个广播的遗漏数据片对象;
在所述服务器非第一次广播所述当前数据片对象的情况下,判断所述已有终端丢失数据片标识是否包含所述遗漏数据片标识;
若所述已有终端丢失数据片标识包含所述遗漏数据片标识,则接收所述遗漏数据片对象;
若所述遗漏数据片对象正确接收的情况下,则在所述已有终端丢失数据片标识中删除所述遗漏数据片标识;
在所述最终服务器数据片标识的所述数据片均广播完毕之后,判断所述已有终端丢失数据片标识是否为空集;
若所述已有终端丢失数据片标识为空集,则释放与所述服务器的会话连接;
若所述已有终端丢失数据片标识不为空集,则进入接收所述服务器依据所述最终服务器数据片标识逐个广播的遗漏数据片对象的步骤,直到服务器将遗漏数据片对象发送完毕。
一种数据组呼方法,应用于数据组呼系统的服务器所述方法包括:
接收终端发送的与目标数据标识对应的遗漏数据片标识;
利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;
广播所述当前服务器丢失数据片标识;
重复执行上述步骤直到包含目标数据标识的数据片对象均广播完毕。
优选的,在所述目标数据的所有数据片对象均广播完毕之后,还包括:
广播已有服务器丢失数据片标识;
在预设时间内接收终端发送的遗漏数据片标识;
利用所述遗漏数据片标识更新所述已有服务器丢失数据片标识,并获得最终服务器数据片标识。
优选的,还包括:
依据所述最终服务器数据片标识逐个广播遗漏数据片对象;在所述最终服务器数据片标识的所述数据片均广播完毕之后,清空所述最终服务器数据片标识;
接收终端发送的已有终端丢失数据片标识;
利用所述终端组中的终端发送的已有终端丢失数据片标识,重新确定所述最终服务器数据片标识;
重复执行以上步骤直到所述最终服务器数据片标识为空集,或者,所述数据传输次数到达指定重发次数。
优选的,本申请还提供一种终端,包括:
第一处理器,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;并在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向通信模块发送所述遗漏数据片标识;
第一通信模块,用于向所述服务器发送所述遗漏数据片标识。
优选的,本申请还提供一种服务器,包括:
第二通信模块,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;
第二处理器,用于利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;并控制通信模块广播所述当前服务器丢失数据片标识;重复执行上述步骤直到包含目标数据标识的数据片对象均广播完毕。
一种数据处理系统,包括:
服务器和与所述服务器相连的多个终端组;
所述服务器,用于执行上述的数据组呼方法;
每个终端组中的终端,用于上述数据组呼方法。
一种数据组呼装置,包括:
第一确定单元,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;
第二确定单元,用于在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;
发送单元,用于在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识。
一种数据组呼装置,包括:
接收单元,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;
广播单元,用于广播所述当前服务器丢失数据片标识。
通过以上技术内容,可以看出本申请具有以下有益效果:
本申请提供的数据组呼方法,将当前终端丢失数据片标识与历史服务器丢失数据片标识进行对比,并确定终端上已有的而服务器上不具有的数据片标识,该数据片标识即服务器上遗漏的所有已丢失数据片的数据片标识,简称遗漏数据片标识。
为了防止服务器因无资源来处理过多的遗漏数据片标识而不可用,可以为终端设定一个反馈门限值,在终端的遗漏数据片标识中的标识数量大于反馈门限值时,向服务器发送遗漏数据片标识,在终端的遗漏数据片标识中的标识数量不大于反馈门限值时,不向服务器发送遗漏数据片标识。
这样,可以降低多个终端同时向服务器反馈遗漏数据片标识的概率,从而保证服务器不会接收过多反馈信息而不可用。这样,便可以在服务器上采用数据重传思想来保证数据准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种数据组呼系统的结构示意图图;
图2为本申请实施例公开的一种数据组呼系统中服务器与终端的结构示意图;
图3为本申请实施例公开的数据租呼方法的流程图;
图4为本申请实施例公开的又一数据租呼方法的流程图;
图5为本申请实施例公开的又一数据租呼方法的流程图;
图6为本申请实施例公开的又一数据租呼方法的流程图;
图7为本申请实施例公开的又一数据租呼方法的流程图;
图8为本申请实施例公开的又一数据租呼方法的流程图;
图9为本申请实施例公开的又一数据租呼方法的流程图;
图10为本申请实施例公开的又一数据租呼方法的流程图;
图11为本申请实施例公开的又一数据租呼方法的流程图;
图12为本申请实施例公开的一种终端的示意图;
图13为本申请实施例公开的一种服务器的示意图;
图14为本申请实施例公开的一种数据租呼装置的结构示意图;
图15为本申请实施例公开的又一数据租呼装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了方便本领域技术人员更加清楚了解本申请的应用场景,在介绍本申请的实施例之前,首先介绍一种数据组呼系统。如图1所示,所述系统具体包括服务器100和与所述服务器100相连的多个终端组200。图示中采用终端组1、终端组2……终端组M表示,M为非零自然数。
下面以一个终端组200中一个终端为例,详细介绍服务器100与终端之间的结构关系。如图2所示,在服务器100与终端之间具有演进型分组系统(Evolved Packet System,EPS)300、集群控制单元(Trunking Control Function,TCF)400和集群媒体单元(TrunkingMedia Function,TMF)500。
可以理解的是,服务器100向终端广播的数据信息,需要经过依次经过TMF 500、TCF 400和EPS 300才能够到达终端;为了方便后续描述,本申请在后续过程中将此过程简化为服务器100向终端广播数据信息。同理,终端向服务器100发送的反馈信息,需要经过依次经过EPS 300、TCF 400和TMF 500才能够到达服务器100;为了方便后续描述,本申请在后续过程中将此过程简化为终端向服务器100发送反馈信息。
服务器100可以在一段时间内向终端组发送多个数据,本申请以多个数据中一个目标数据为例,对本申请的数据组呼方法进行详细描述。其它数据的传输过程与目标数据的传输过程是一致的,可以参考目标数据的传输过程。
本申请中服务器100可以获取待广播至终端组的目标数据。由于目标数据的数据量较大,为了方便传输可以将目标数据切分成N个数据片。具体切分过程可以为预先设定每个数据片的标准数据量。针对目标数据而言,以标准数据量为依据对目标数据实施切分,以使得大部分数据片的数据量均为标准数据量。为了方便后续叙述,本申请设定目标数据切分为N个数据片,N为非零自然数。
为了方便后续处理,服务器100可以为每个数据片分配连续的数据片标识。例如,为N个数据片依次分配的数据片标识为1、2、3……N,又如,a、b、c……,数据片标识可以根据具体情况而定,在此不做限定。
服务器在传输每个数据片之前,首先会构建一个目标数据的包头。包头包括每个数据片长度和数据片数量N以及一些描述性语言。终端可以在接收目标数据的数据片的过程中使用包头中的信息,进行后续处理。
服务器100每次传输一个数据片,为了使得终端得知数据片的相关信息,可以为每个数据片添加数据片信息,数据片信息可以包括数据片的标识、终端组的组标识、目标数据标识和数据传输次数等内容。服务器将数据片和数据片信息合并在一起,为了便于称呼后续简称数据片对象,那么目标数据可以看作是多个数据片对象的组合。
服务器100每次向终端组广播目标数据中一个数据片对象,那么在经过多次传输之后,便可以将目标数据所有数据片均广播至终端组。
下面详细介绍终端组中各个终端和服务器的传输目标数据的过程。首先介绍终端组中各个终端的处理过程。
基于图1所示的数据组呼系统,本申请提供了一种数据组呼方法。应用于图1所示的一个终端组中的各个终端。如图3所示,具体包括以下步骤:
下述步骤S301-303为确定与目标数据标识对应的当前终端丢失数据片标识的过程。
步骤S301:接收所述服务器广播的包含目标数据标识的当前数据片对象。
服务器广播的当前数据片对象中包括当前数据片和当前数据片信息。当前数据片信息包括当前数据片的当前标识、服务器旨在将目标数据发送至终端组的组标识、服务器发送的目标数据对应的目标数据标识和数据传输次数等内容。下面一一介绍各个内容的作用。
针对终端组的组标识而言,由于数据组呼系统中具有多个终端组,服务器以广播地方式发送当前数据片对象,因此,所有终端组均可以得知当前数据片对象。每个终端组在利用组标识确定当前数据片对象是发送自身之后,从而接收当前数据片对象。若终端组利用组标识确定当前数据片对象不是发送至自身的,从而忽略当前数据片对象。具体确定过程不是申请的重点,在此不再详述。
针对目标数据标识而言,由于服务器可以在一段时间内向终端组广播多个数据,目标数据为其中一个数据。因此,终端组中各个终端可以通过当前数据信息中的目标数据标识,来确定服务器广播的当前数据片为目标数据的一个数据片,而不是其它数据的数据片。然后,可以利用目标数据标识来执行后续处理过程,在后续步骤中将进行详细说明。
针对当前标识而言,终端可以通过当前数据片的当前标识来确定当前数据片在目标数据中的所处位置并执行一些其它处理。其它处理过程将在后续步骤中进行详细说明。
针对数据传输次数而言,终端可以通过当前数据片对象中的数据传输次数来确定服务器为第几次广播该数据片。针对不同的数据传输次数,终端会执行不同的处理过程。若数据传输次数表示为第一次广播当前数据片,则执行步骤S302。若数据传输次数表示为非第一次广播当前数据片,则执行其它处理过程,其它处理过程将在后续实施例中进行详细描述。
步骤S302:在所述数据传输次数表示所述服务器第一次广播所述当前数据片对象的情况下,确定与所述目标数据标识对应的历史终端丢失数据片标识。
步骤S303:利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识。
利用所述当前数据片对象和与所述目标数据标识对应的历史终端丢失数据片标识,重新确定与所述目标数据标识对应的当前终端丢失数据片标识;其中,所述历史终端丢失数据片标识和所述当前终端丢失数据片标识,均由该终端已丢失数据片的标识组成。
终端可以接收服务器广播的多个数据,每个数据均可以采用数据标识来表示。为了方便终端管控各个数据,终端上存储有与各个数据标识对应的历史终端丢失数据片标识。其中,历史终端丢失数据片标识的含义为在传输目标数据过程中,针对目标数据而言终端所有已丢失数据片的标识。终端可以在存储空间中查找与目标数据标识对应的历史终端丢失数据片标识。
为了更加方便本领域技术人员更加清楚了解与目标数据标识对应的历史终端丢失数据片标识,下面以一个具体实例来详细说明。例如,以目标数据分为6个数据片为例,各个数据片的标识为1、2、3、4、5和6。在当前数据片的当前标识为6的情况下,假设终端在此之前已经丢失标识2和标识4对应的数据片,则历史终端丢失数据片标识为标识2和标识4的。
由于终端在接收数据片对象的过程中,丢失数据片会持续变化,所以,在终端接收当前数据片对象之后,首先会更新历史终端丢失数据片标识,以便终端及时得知自身已丢失数据片的最新情况。
下面详细介绍终端更新历史终端丢失数据片标识的具体过程,如图4所示,包括以下步骤:
步骤S401:判断当前数据片是否准确接收。若是,则进入步骤S402,否则进入步骤S406。
在接收当前数据片对象之后从中提取当前数据片,并判断当前数据片是否完整。由于服务器在发送当前数据片时,可以计算当前数据片的MD5码,并伴随着当前数据片发送至终端。终端在接收当前数据片之后,仍然利用同样方式计算已接收的当前数据片的MD5码。
可以理解的是,若终端接收到的当前数据片与服务器发送的当前数据片一致的话,终端计算的MD5码与服务器计算的MD5码应该是一致的。因此,在终端确定自身计算得到的MD5码与服务器发送的MD5码一致的话,则确定当前数据片正确接收,否则确定当前数据片未正确接收。
步骤S402:判断当前标识与历史标识是否连续。即,将所述当前数据片的当前标识与上一次正确接收数据片的历史标识进行对比;其中,所述服务器上所述目标数据的N个数据片的标识连续,并且所述服务器依照连续的数据片标识逐个向所述终端组广播各个数据片。
服务器上目标数据的N个数据片标识是连续的,服务器向终端广播数据片时,也是按照连续的数据片标识逐个广播的。例如,假设N个数据片标识为1、2、……N。那么,服务器会依次发送标识1对应的数据片对象、标识2对应的数据片对象……标识N对应的数据片对象。
在一些情况下,由于传输过程出现问题,数据片对象可能未到达终端便已丢失。为了统计这些由于未能够到达终端而丢失的数据片,本步骤在存储空间中确定上次正确接收的数据片的历史标识。然后,将当前数据片的当前标识与上次正确接收的数据片的历史标识进行对比,对比的目的为判断当前标识与历史标识是否连续,进而确定是否有丢失数据片。
例如,延续上述举例,在当前数据片的当前标识为6的情况下,假设终端在此之前已经丢失标识为2和4的数据片,而与标识X对应的数据片正确接收。那么本步骤将标识6与标识X进行对比,判断标识X和标识6是否连续。
步骤S403:若所述当前标识与所述历史标识连续,则确定未丢失数据片。
由于服务器在广播数据片对象时,为按照连续的数据片标识广播的,因此,若当前标识与历史标识连续时,则确定当前标识与历史标识之间未丢失中间数据片。由于当前数据片也正确接收,所以可以确定在传输当前数据片的本次传输过程中未丢失数据片。在此情况下,无需更新历史终端丢失数据片标识。
例如,延续上述举例,假设终端上次正确接收的数据片为标识5对应的数据片,即历史标识为标识5,则将标识5与当前数据片的标识6进行对比,进而发现标识5和标识6是连续的,所以,可以确定在标识5和标识6之间未丢失中间数据片。
步骤S404:若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的中间标识,确定为中间丢失数据片标识。
若当前标识与历史标识不连续,则确定在当前标识与历史标识之间丢失了中间数据片。然后根据当前标识与历史标识,确定两者之间的一个或多个中间标识,然后将一个或多个中间标识的确定为中间丢失数据片标识。
例如,延续上述举例,假设终端上次准确接收的数据片为标识3对应的数据片,即历史标识为标识3,则将标识3与当前数据片的标识6进行对比,进而发现标识3和标识6是不连续的。所以,确定标识3和标识6之间的中间标识:标识4和标识5,从而将标识4和标识5确定中间丢失数据片标识。
步骤S405:将所述中间丢失数据片标识更新至与所述目标数据标识对应的历史终端丢失数据片标识中,并确定与所述目标数据标识对应的当前终端丢失数据片标识。
在步骤S404中确定中间丢失数据片标识之后,由于当前数据片正确接收,所以仅利用中间丢失数据片标识更新历史终端丢失数据片标识即可,将更新后的历史终端丢失数据片标识确定为当前终端丢失数据片标识。
在更新历史终端丢失数据片标识的过程中,若中间丢失数据片标识中一个数据片标识在历史终端丢失数据片标识中已有,则无需重复添加至历史终端丢失数据片标识中。若中间丢失数据片标识中一个数据片标识在历史终端丢失数据片标识中没有,则向历史终端丢失数据片标识中添加该数据表标识。
例如,延续上述举例,中间丢失数据片标识为标识4和标识5,历史终端丢失数据片标识为表示2和标识4,则针对中间丢失数据片标识中的标识4,由于在历史终端丢失数据片标识中已经具有,因此,无需将标识4添加至历史终端丢失数据片标识中;则针对中间丢失数据片标识中的标识5,由于在历史终端丢失数据片标识中已经不具有,因此,需将标识5添加至历史终端丢失数据片标识中。更新历史终端丢失数据片标识之后得到的当前终端丢失数据片标识为标识2、标识4和标识5。
步骤S406:在判定所述当前数据片未正确接收的情况下,将所述当前数据片确定为已丢失数据片。
在终端确定当前数据片未正确接收的情况下,则将当前数据片的当前标识也确定已丢失数据片,然后执行步骤S407。
步骤S407:判断当前标识与历史标识是否连续。即,将所述当前数据片的当前标识与上一次正确接收数据片的历史标识进行对比;其中,所述服务器上所述目标数据的N个数据片的标识连续,并且所述服务器依照连续的数据片标识逐个向所述终端组广播各个数据片。若是,则进入步骤S408,否则进入步骤S409。
本步骤的执行过程与步骤S402一致,参考上述内容即可,在此不再赘述。
步骤S408:若所述当前标识与所述历史标识连续,则将所述当前数据片的当前标识更新至与所述目标数据标识对应的历史终端丢失数据片标识中,并确定与所述目标数据标识对应的当前终端丢失数据片标识。
若当前标识与历史标识连续,则确定在当前标识与历史标识之间不具有丢失的数据片。在此情况下,直接将当前数据片的当前标识更新至历史终端丢失数据片标识中即可。
步骤S409:若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的中间标识,确定为中间丢失数据片标识。
若当前标识与历史标识不连续,则确定中间丢失数据片标识,具体执行过程参考步骤S404即可,在此不再赘述。
步骤S410:将所述当前数据片和所述中间丢失数据片标识更新至与所述目标数据标识对应的历史终端丢失数据片标识中,并确定与所述目标数据标识对应的当前终端丢失数据片标识。
由于当前数据片和中间丢失数据片标识对应的数据片均为已丢失数据片,所以将当前数据片的当前标识和中间丢失数据片标识中的一个或多个中间标识,更新至历史终端丢失数据片标识中即可。
上述过程详细介绍了更新历史终端丢失数据片标识并得到当前终端丢失数据片标识的详细过程,已在步骤S405中进行详细描述,在此不再赘述。
接着返回图3,进入步骤S304:确定与目标数据标识对应的历史服务器丢失数据片标识。
历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
服务器可以统计各个终端目前已丢失的数据片标识,然后将各个终端目前已丢失的数据片标识进行汇总,从而用于表示服务器已知所述目标数据目前已丢失的数据片标识的历史服务器丢失数据片标识。
终端可以在存储空间中查找与目标数据标识对应的历史服务器丢失数据片标识。为了方便本领域技术人员更加清楚了解历史服务器丢失数据片标识,下面以一个具体实例来详细说明。
例如,以目标数据分为6个数据片为例,各个数据片的标识为1、2、3、4、5和6。在当前数据片的当前标识为6的情况下,假设服务器已知的各个终端已丢失标识1、标识2和标识3的数据片,则历史服务器丢失数据片标识为标识1、标识2和标识3的。
伴随着数据传输过程,终端上已丢失的数据片在发生变化。为了保证服务器可以准确知晓各个终端的已丢失数据片的变化,终端可以将当前终端丢失数据片标识与终端已存储的历史服务器丢失数据片标识进行对比。终端已存储的历史服务器丢失数据片标识为服务器上次广播至终端的,因此,终端上存储的历史服务器丢失数据片标识,即为服务器上存储的历史服务器丢失数据片标识。
步骤S305:在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识。
将当前终端丢失数据片标识与历史服务器丢失数据片标识进行对比,如果历史服务器丢失数据片标识包含当前终端丢失数据片标识,则说明服务器未遗漏已丢失的数据片标识;如果历史服务器丢失数据片标识未全部包含当前终端丢失数据片标识,则说明服务器遗漏已丢失的数据片标识。
然后,在当前终端丢失数据片标识中确定出历史服务器丢失数据片标识不具有的数据片,这些数据片即为服务器上遗漏的已丢失数据片,因此将这些数据片的称为遗漏数据片标识。
例如,延续上述举例,历史服务器丢失数据片标识为标识1、标识2和标识3的,当前终端丢失数据片标识为标识2、标识4和标识5。通过比对,可以发现标识4和标识5在当前终端丢失数据片标识中具有,而在历史服务器丢失数据片标识中不具有。因此,将标识4和标识5确定为遗漏数据片标识。
步骤S306:在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识,其中,所述反馈门限值至少为1且小于N。
可以理解的是,如果历史服务器丢失数据片标识包含当前终端丢失数据片标识,即遗漏数据片标识为空集,则说明该终端上当前已丢失的所有数据片标识,服务器已经全部知晓。此情况下,说明服务器上的历史服务器丢失数据片标识应该是比较准确的,所以,该终端无需向服务器发送遗漏数据片标识。
若遗漏数据片标识非空集,则说明该终端上当前已丢失的所有数据片中有一部分数据片(遗漏数据片标识中的数据片)是遗漏的,理论上,终端可以向服务器发送遗漏数据片标识,以便更新服务器上已有的历史服务器丢失数据片标识。
本步骤通过判定遗漏数据片标识是否为空集,可以过滤一部分遗漏数据片标识为空集的终端,从而可以减少一部分向服务器发送丢失数据片的终端数量。
但是,发明人研究发现通过判定遗漏数据片标识是否为空集的方式,仍然无法解决服务器不可用的问题,因为仍然有很多终端的遗漏数据片标识非空集,因此本实施例为每个终端设定一个反馈门限值。反馈门限值至少为1且小于N,具体数值可以根据具体情况而定,在此不做限定。
只有在遗漏数据片标识中标识数量大于反馈门限值的情况下,终端才向服务器发送遗漏数据片标识。由于遗漏数据片标识非空集的数量可能较多,但是遗漏数据片标识的标识数量大于反馈门限值的终端数量不会很多。因此,通过设定反馈门限值可以过滤掉遗漏数据片标识的标识数量不大于反馈门限的大部分终端,因此,向服务器发送遗漏数据片标识的终端数量大大减少。
细心的本领域技术人员会发现,按照此方式可能会遗漏掉一些已丢失的数据片标识。确实是这样的,按照此方式可能会遗漏掉数据片标识,但是遗漏的数据片标识的数量相比现有技术而言大大减少。因为,一些终端丢失的数据片可能是相同的,假设终端1丢失标识1的数据片,终端2可能也丢失标识1的数据片。终端1可能因为标识数量不大于反馈门限,而无法将标识1发送至服务器;但是,终端2可能因为标识数量大于反馈门限,将标识1发送至服务器,所以,服务器仍然可以得知标识1的数据片已丢失。
通过以上内容可以看出本实施例具有以下有益效果:
本申请提供的数据组呼方法,将当前终端丢失数据片标识与历史服务器丢失数据片标识进行对比,并确定终端上已有的而服务器上不具有的数据片标识,该数据片标识即服务器上遗漏的所有已丢失数据片的数据片标识,简称遗漏数据片标识。
为了防止服务器因无资源来处理过多的遗漏数据片标识而不可用,可以为终端设定一个反馈门限值,在终端的遗漏数据片标识中的标识数量大于反馈门限值时,向服务器发送遗漏数据片标识,在终端的遗漏数据片标识中的标识数量不大于反馈门限值时,不向服务器发送遗漏数据片标识。
这样,降低多个终端同时向服务器反馈遗漏数据片标识的概率,从而保证服务器不会接收过多反馈信息而不可用。这样,便可以在服务器上采用数据重传思想来保证数据准确性。
在终端组中的终端执行图3所示的实施例,并向服务器发送遗漏数据片标识之后,服务器可以根据终端组中的终端发送的遗漏数据片标识更新已有的历史服务器丢失数据片标识,并得到当前服务器丢失数据片标识。由于服务器上的服务器数据片标识已由历史服务器丢失数据片标识改变为当前服务器丢失数据片标识,因此,服务器可以重新向终端组的各个终端广播当前服务器丢失数据片标识。
下面介绍终端在接收服务器发送的当前服务器丢失数据片标识的处理过程。如图5所示,具体包括以下步骤:
步骤S501:接收所述服务器广播的当前服务器丢失数据片标识;其中,所述当前服务器丢失数据片标识为所述服务器利用所述终端组中的终端发送的遗漏数据片标识更新服务器上已有的所述历史服务器丢失数据片标识后得到的。
服务器在更新历史服务器丢失数据片标识得到当前服务器丢失数据片标识之后,可以向图3所示的实施例中终端广播当前服务器丢失数据片标识,终端则可以接收当前服务器丢失数据片标识。
步骤S502:将所述当前终端丢失数据片标识与所述当前服务器丢失数据片标识进行对比,并再次在所述当前终端丢失数据片标识中确定所述当前服务器丢失数据片标识所不具有的遗漏数据片标识。
由于图3所示的实施例中当前终端丢失数据片标识与历史服务器丢失数据片标识进行对比,由于历史服务器丢失数据片标识改变为当前服务器丢失数据片标识。可以理解的是,终端上的遗漏数据片标识也会随之发生变化。因此,将当前终端丢失数据片标识与当前服务器丢失数据片标识进行对比,从而重新确定终端的遗漏数据片标识。具体过程可以参看步骤S303的详细描述,在此不再赘述。
步骤S503:判断所述遗漏数据片标识中标识数量是否大于反馈门限值,若是,则进入步骤S504;否则进入步骤S505。
由于遗漏数据片标识可能也发生变化,其中标识数量也会随时发生变化。因此,重新判断遗漏数据片标识中的标识数量是否大于反馈门限值。
步骤S504:在所述遗漏数据片标识中的标识数量大于所述反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识,进入步骤S501。
若遗漏数据片的标识数量大于反馈门限值,则向服务器发送所述遗漏数据片标识。
服务器可以重新接收终端组中的终端发送的遗漏数据片标识,并依据终端组中的终端重新确定当前服务器丢失数据片标识,然后进入步骤S501,重复执行上述过程,直到终端组中没有终端向服务器发送遗漏数据片标识。
步骤S505:利用所述当前服务器丢失数据片标识,更新终端存储的所述历史服务器丢失数据片标识。
在终端组中没有终端向服务器发送遗漏数据片标识之后,则说明终端对当前服务器丢失数据片标识的处理过程已经完毕,此时可以利用当前服务器丢失数据片标识更新终端已存储的历史服务器丢失数据片标识,以便下一个循环过程的执行。
图3-图5所示的实施例为服务器向终端发送当前数据片对象的相关处理过程。可以理解的是,服务器向终端发送每个数据片对象,终端均按图3-图5所示的过程进行处理,直到服务器发送目标数据的所有数据片对象发送完毕。
在上述图3-图5的处理过程中,伴随着服务器不断发送数据片对象,终端上的当前终端丢失数据片标识在不断变化,与此同时,服务器上的当前服务器数据片对象也在不断变化。在所有数据片对象发送完毕之后,当前终端丢失数据片标识则为自身已经具有的所有已丢失的数据片标识的,因此,将此时的当前终端丢失数据片标识称为已有终端丢失数据片标识。在所有数据片对象发送完毕之后,当前服务器丢失数据片标识则为各个终端所有已丢失的数据片标识的汇总,因此,将服务器此时的当前服务器丢失数据片标识称为已有服务器丢失数据片标识。
为了再次确定是否还有遗漏的数据片标识,在所有数据片均发送完毕之后,服务器可以再次向终端组广播已有服务器丢失数据片标识。下面介绍终端在接收已有服务器丢失数据片标识的处理过程。
步骤S601:接收服务器在所述目标数据的所有数据片对象均广播完毕之后,向所述终端组的各个终端广播的已有服务器丢失数据片标识;其中,所述已有服务器丢失数据片标识为服务器在广播所有数据片对象之后,服务器已知所述目标数据所有已丢失数据片的数据片标识。
详细执行过程与步骤S301类似,可以参见步骤S301,在此不再赘述。
步骤S602:将已有终端丢失数据片标识与所述已有服务器丢失数据片标识进行对比,并在所述已有终端丢失数据片标识中确定所述已有服务器丢失数据片标识所不具有的遗漏数据片标识;其中,所述已有终端丢失数据片标识为终端在接收所有数据片对象之后,所确定所有已丢失数据片的数据片标识。
详细执行过程与步骤S303类似,可以参见步骤S303,在此不再赘述。
步骤S603:若所述遗漏数据片标识非空集,则将所述遗漏数据片标识发送至所述服务器,由所述服务器确定最终服务器数据片标识。
本步骤与图3所示的实施例不同的是,本步骤判断遗漏数据片标识是否为空集,而不是判断遗漏数据片标识的标识数量是否大于反馈门限值。这样做的目的为,使得终端上的所有遗漏数据片均发送至服务器,以便服务器最终准确将各个终端已丢失的数据片进行汇总,而不会因为反馈门限值的限制而遗漏部分数据片标识。
由于经过图3-图5所示的实施例,服务器仍然遗漏数据片标识的概率是较低的,所以此时不会具有大量的终端的遗漏数据片标识仍然为非空集,即,不会出现较多的终端再次向服务器发送遗漏数据片标识,因此,该过程不会引起服务器不可用。
服务器可以再次接收终端发送再次发送的遗漏数据片标识,利用遗漏数据片标识更新已有服务器丢失数据片标识,并得到最终服务器数据片标识。最终服务器数据片标识的含义为在第一次目标数据传输过程中,各个终端所有已丢失数据片的数据片标识的汇总。
在服务器在确定最终服务器数据片标识之后,可以依据最终数据片标识中包含的数据片标识,重传与之对应的数据片对象,从而使得各个终端可以重新接收数据片对象,以便完成接收目标数据的目的。
如图7所示,终端重新接收数据片对象的过程包括以下步骤:
步骤S701:接收所述服务器依据所述最终服务器数据片标识逐个广播的遗漏数据片对象;其中,所述遗漏数据片对象包括遗漏数据片、遗漏数据片标识、所述终端组的组标识、目标数据标识和数据传输次数。
终端接收一个遗漏数据片对象,具体过程可以参考步骤S301,在此不再赘述。与步骤S301不同的是,遗漏数据片标识中数据传输次数非第一次。因此不再执行步骤S302,而是执行步骤S702。
步骤S702:在所述数据传输次数表示所述服务器非第一次广播所述当前数据片对象的情况下,判断所述已有终端丢失数据片标识是否包含所述遗漏数据片标识。
由于最终服务器数据片标识中包含各个终端已丢失数据片的标识(即遗漏数据片标识),并且各个终端已丢失的数据片可能不相同的,因此,服务器下发一个与遗漏数据片标识对应的遗漏数据片对象,可能是本终端已丢失数据片,可能不是本终端已丢失的数据片。
所以,终端在接收遗漏数据片对象之后,首先判断遗漏数据片的遗漏标识是否在终端自身的已有终端丢失数据片标识中;若在,则表示遗漏数据片对象确实是自身已丢失的,进入步骤S703;否则,表示自身已经在第一次传输目标数据的过程正确接收遗漏数据片对象,因此,不必重复接收遗漏数据片对象。
步骤S703:若所述已有终端丢失数据片标识包含所述遗漏数据片标识,则接收所述遗漏数据片对象。
若遗漏数据片对象确实是自身已丢失的,则接收遗漏数据片对象。然后验证遗漏数据片是否正确接收。
步骤S704:若所述遗漏数据片对象正确接收的情况下,则在所述已有终端丢失数据片标识中删除所述遗漏数据片标识。
若经过验证之后,发现遗漏数据片已经正确接收,则可以在已有终端丢失数据片标识中删除遗漏数据片标识,以便已有终端丢失数据片标识中始终由终端已丢失的数据片标识组成。
步骤S705:判断所述已有终端丢失数据片标识是否为空集。若是,则进入步骤S706,否则进入步骤S707。
若已有终端丢失数据片标识不为空集,则进入步骤S701继续接收服务器下发的遗漏数据片标识。重复执行上述过程直到服务器将遗漏数据片对象发送完毕。
步骤S706:若所述已有终端丢失数据片标识为空集,则释放与所述服务器的会话连接。
在正确接收遗漏数据片对象并删除遗漏数据片标识之后,会判断已有终端丢失数据片标识是否为空集,若已经为空集,则说明该终端已经全部接收目标数据,此时可以释放与服务器的连接,不必继续接收后续的遗漏数据片对象,可以去执行其它处理过程。
可以理解的是,在图7所示的过程执行完毕之后,服务器可以将已有服务器丢失数据片标识清空。如果在图7所述的过程执行完毕之后,仍然有一部分终端的已有终端丢失数据片标识为非空集,则各个终端可以向服务器再次发送已有终端丢失数据片标识。
服务器根据仅根据各个终端已发送的已有终端丢失数据片标识的并集,再次作为已有服务器丢失数据片标识。然后,重新执行图7所示的实施例,以便各个终端再次接收遗漏数据片。
可以理解的是,为了防止终端恶意攻击服务器,即恶意向服务器持续发送遗漏数据片,进而导致服务器会持续执行图7所示的执行过程,从而占用服务器很多资源。为此,服务器可以设置重传次数,用于表示图7所示的执行过程的上限次数。重传次数可以依据具体情况而定,在此不做限定。
假设重传次数为3,则服务器最多执行三次图7所示的执行过程。在此之后,即便已有服务器丢失数据片标识仍然不为空集,服务器也不会在重传数据片对象,以防止终端的恶意攻击。
图3-图7为终端侧的执行过程,下面介绍服务器则的执行过程。
服务器首先获取待广播目标数据,然后将目标数据分为N个数据片,并为每个数据片分配连续数据片标识。这些执行过程已经在图1所示的数据组呼系统的实施例中进行详细描述,在此不再赘述。
下面介绍服务器向终端发送当前数据片的当前数据片对象的具体过程。如图8所示,具体包括以下步骤:
步骤S801:广播与目标数据中当前数据片对应的当前数据片对象,其中,所述当前数据片对象包括当前数据片、所述当前数据片的当前标识、所述终端组的组标识、目标数据标识和数据传输次数;所述目标数据被所述服务器切分为N个数据片,所述当前数据片为其中一个数据片,N为非零自然数;。
步骤S802:接收所述终端组中多个终端发送的遗漏数据片标识,所述遗漏数据片标识由终端在确定所述遗漏数据片标识中的标识数量大于反馈门限值的情况下向所述服务器发送;所述反馈门限值至少为1且小于N。
其中,所述遗漏数据片标识为在所述当前终端丢失数据片标识中确定的所述历史服务器丢失数据片标识所不具有的遗漏数据片的;所述当前终端丢失数据片标识为利用所述当前数据片对象更新与所述目标数据标识对应的历史终端丢失数据片标识得到的;所述历史终端丢失数据片标识和所述当前终端丢失数据片标识,均由该终端已丢失数据片的标识组成;所述历史服务器丢失数据片标识为,所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
图8所示的具体过程,已在图3所示的实施例中进行详细描述,因此可以参看图3所示的实施例的详细描述,在此不再赘述。
服务器在接收所述终端组中多个终端发送的遗漏数据片标识之后,可以更新自身的历史服务器丢失数据片标识,并更新终端上已存储的历史服务器丢失数据片标识。如图9所示,具体包括以下执行步骤:
步骤S901:利用所述终端组中的终端发送的遗漏数据片标识,更新已有的所述历史服务器丢失数据片标识并获得当前服务器丢失数据片标识。
服务器可以利用各个终端的遗漏数据片标识来更新已有的历史服务器丢失数据片标识。具体更新过程可以为:针对每个遗漏数据片标识中每个遗漏数据片标识执行下述过程,判断历史服务器丢失数据片标识是否包含遗漏数据片标识,若包含则不必添加至已有历史服务器丢失数据片标识中,若不包含则添加至已有历史服务器丢失数据片标识中。
在所有遗漏数据片标识均执行更新操作之后,将更新后的已有服务器丢失数据片标识确定为当前服务器丢失数据片标识。
步骤S902:广播所述当前服务器丢失数据片标识。
为了更新终端上的历史服务器丢失数据片标识,服务器可以向终端组广播当前服务器丢失数据片标识。各个终端可以执行图5所示的实施例,从而实现更新终端上已存储的历史服务器丢失数据片标识的目的。具体过程可以参看图5所示的实施例,在此不再赘述。
步骤S903:重复执行上述步骤直到所述目标数据的所有数据片对象均广播完毕。
服务器在步骤S901和步骤S902之后,可以再次向终端广播数据片对象,在接收终端发送的遗漏数据片标识之后,重复执行步骤S901和步骤S902,直到服务器发送完毕所有数据片对象。
步骤S904:将所述目标数据的所有数据片对象均广播完毕之后的所述当前服务器丢失数据片标识,确定为已有服务器丢失数据片标识。
在服务器广播完所有数据片对象之后,此时,服务器上当前服务器丢失数据片标识即为服务器已知的、各个终端已丢失数据片的标识的汇总。因此,可以将这些数据片标识确定为已有服务器丢失数据片标识。
为了再次确定已有服务器丢失数据片标识是否有遗漏,在所述目标数据的所有数据片对象均广播完毕之后,可以执行查漏补缺的过程。如图10所示,具体包括以下步骤:
步骤S1001:广播所述已有服务器丢失数据片标识。
步骤S1002:在预设时间内接收所述终端组中的终端发送的遗漏数据片标识;其中,所述遗漏数据片标识为终端将已有终端丢失数据片标识与所述已有服务器丢失数据片标识进行对比,并在所述已有终端丢失数据片标识中确定所述已有服务器丢失数据片标识所不具有的遗漏数据片的;并且,所述遗漏数据片标识非空集;所述已有终端丢失数据片标识为终端在接收所有数据片对象之后,所确定已丢失数据片的;
步骤S1003:利用所述终端组的中终端发送的遗漏数据片标识更新所述已有服务器丢失数据片标识,并得到最终服务器数据片标识。
上述过程已在图6所示的实施例中进行详细说明,在此不再赘述。
在服务器在确定最终服务器数据片标识之后,可以依据最终数据片标识中包含的数据片标识,重传与之对应的数据片对象,从而使得各个终端可以重新接收数据片对象,以便完成接收目标数据的目的。
如图11所示,服务器重新广播数据片对象的过程,包括以下步骤:
步骤S1101:依据所述最终服务器数据片标识逐个广播遗漏数据片对象;其中,所述遗漏数据片对象包括遗漏数据片、遗漏数据片标识、所述终端组的组标识、目标数据标识和数据传输次数。
步骤S1102:在所述最终服务器数据片标识的所述数据片均广播完毕之后,清空所述最终服务器数据片标识;
步骤S1103:接收所述终端组中的终端发送的已有终端丢失数据片标识;其中,终端在判定所述已有终端丢失数据片标识非空集的情况下,向所述服务器发送所述已有终端丢失数据片标识。
步骤S1104:利用所述终端组中的终端发送的已有终端丢失数据片标识,重新确定所述最终服务器数据片标识。
步骤S1105:重复执行以上步骤直到所述最终服务器数据片标识为空集,或者,所述数据传输次数到达指定重发次数。
上述过程已在图7所示的实施例中进行详细说明,在此不再赘述。
在图11所示的过程中,在服务器上添加了重传技术,从而可以提高数据传输的准确性。
如图1所示,本申请提供一种数据组呼系统,包括服务器100和与所述服务器100相连的多个终端组200。
所述终端组用于执行图3-图7任一项所述的数据组呼方法;
所述服务器用于执行图8-图11任一项所述的数据组呼方法。
如图12所示,本申请提供了一种终端,包括:
第一处理器1201,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;并在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向通信模块发送所述遗漏数据片标识;
第一通信模块1202,用于向所述服务器发送所述遗漏数据片标识。
如图13所示,本申请还提供了一种服务器,包括:
第二通信模块1301,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;
第二处理器1302,用于利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;并控制通信模块广播所述当前服务器丢失数据片标识;重复执行上述步骤直到包含目标数据标识的数据片对象均广播完毕。
如图13所示,本申请提供了一种服务器,包括:处理器;
所述处理器,用于执行图8-图11任一项所述的数据组呼方法。
如图14所示,本申请提供了一种数据组呼装置,其特征在于,包括:
第一确定单元121,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;
第二确定单元122,用于在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;
发送单元123,用于在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识。
如图15所示,本申请提供了一种数据组呼装置,包括:
接收单元131,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;
广播单元132,用于广播所述当前服务器丢失数据片标识。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (16)
1.一种数据组呼方法,其特征在于,包括:
确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;
在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;
在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识;
其中,当前终端丢失数据片标识表示:针对目标数据而言,终端于当前时刻时所有已丢失数据片的标识;
其中,历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
2.如权利要求1所述的方法,其特征在于,在所述目标数据标识对应的数据片被划分为N个数据片的情况下,则所述反馈门限值大于或等于1,并且小于N。
3.如权利要求1所述的方法,其特征在于,所述确定与目标数据标识对应的当前终端丢失数据片标识,包括:
接收所述服务器广播的、包含目标数据标识的当前数据片对象;
在所述服务器第一次广播所述当前数据片对象的情况下,确定与所述目标数据标识对应的历史终端丢失数据片标识;
利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识;
其中,历史终端丢失数据片标识表示:针对目标数据而言,终端于当前时刻之前所有已丢失数据片的标识。
4.如权利要求3所述的方法,其特征在于,所述利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识,包括:
在判定所述当前数据片对象正确接收的情况下,则将所述当前数据片对象对应的当前标识与上一次正确接收数据片对象的历史标识进行对比;
若所述当前标识与所述历史标识连续,则将所述历史终端丢失数据片标识确定为当前终端丢失数据片标识;
若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的所有中间标识,确定为中间丢失数据片标识;
将所述中间丢失数据片标识更新至所述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识。
5.如权利要求3所述的方法,其特征在于,所述利用所述历史终端丢失数据片标识和所述当前数据片对象,确定所述当前终端丢失数据片标识,包括:
在判定所述当前数据片对象未正确接收的情况下,将所述当前数据片对象对应的当前标识确定为已丢失数据片标识;
将所述当前数据片对象对应的当前标识与上一次正确接收数据片对象的历史标识进行对比;
若所述当前标识与所述历史标识连续,则将已丢失数据片标识更新至述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识;
若所述当前标识与所述历史标识不连续,则将所述当前标识与所述历史标识之间的所有中间标识,确定为中间丢失数据片标识;
将所述中间丢失数据片标识和已丢失数据片标识、更新至所述历史终端丢失数据片标识中,并将更新后的历史终端丢失数据片标识、确定为当前终端丢失数据片标识。
6.如权利要求1所述的方法,其特征在于,在向服务器发送所述遗漏数据片标识之后,还包括:
接收所述服务器广播的当前服务器丢失数据片标识;
再次在所述当前终端丢失数据片标识中,确定出所述当前服务器丢失数据片标识所不具有的遗漏数据片标识;
在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识;
重复执行权利要求1中三个步骤和权利要求6中上述三个步骤,直到所述遗漏数据片标识中的标识数量不大于所述反馈门限值;
其中,当前服务器丢失数据片标识为所述服务器本次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
7.如权利要求1所述的方法,其特征在于,还包括:
在服务器将包含目标数据标识的数据片对象发送完毕后,在已有终端丢失数据片标识中、确定已有服务器丢失数据片标识所不具有的遗漏数据片标识;若遗漏数据片标识非空集,则将所述遗漏数据片标识发送至所述服务器,由所述服务器确定最终服务器数据片标识;
其中,已有终端丢失数据片标识为在目标数据的所有数据片对象发送完毕之后,所有已丢失的数据片标识的集合;
其中,已有服务器丢失数据片标识为在目标数据的所有数据片对象发送完毕之后,服务器已知所述目标数据目前已丢失数据片的标识;
其中,最终服务器数据片标识为服务器最终已知所述目标数据目前已丢失数据片的标识。
8.如权利要求7所述的方法,其特征在于,还包括:
接收所述服务器依据所述最终服务器数据片标识逐个广播的遗漏数据片对象;
在所述服务器非第一次广播所述当前数据片对象的情况下,判断所述已有终端丢失数据片标识是否包含所述遗漏数据片标识;
若所述已有终端丢失数据片标识包含所述遗漏数据片标识,则接收所述遗漏数据片对象;
若所述遗漏数据片对象正确接收的情况下,则在所述已有终端丢失数据片标识中删除所述遗漏数据片标识;
在所述最终服务器数据片标识的所述数据片均广播完毕之后,判断所述已有终端丢失数据片标识是否为空集;
若所述已有终端丢失数据片标识为空集,则释放与所述服务器的会话连接;
若所述已有终端丢失数据片标识不为空集,则进入接收所述服务器依据所述最终服务器数据片标识逐个广播的遗漏数据片对象的步骤,直到服务器将遗漏数据片对象发送完毕。
9.一种数据组呼方法,其特征在于,应用于数据组呼系统的服务器所述方法包括:
接收终端发送的与目标数据标识对应的遗漏数据片标识;
利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;
广播所述当前服务器丢失数据片标识;
重复执行上述三个步骤直到包含目标数据标识的数据片对象均广播完毕;
其中,历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识;
其中,当前服务器丢失数据片标识为所述服务器本次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
10.如权利要求9所述的方法,其特征在于,在所述目标数据的所有数据片对象均广播完毕之后,还包括:
广播已有服务器丢失数据片标识;
在预设时间内接收终端发送的遗漏数据片标识;
利用所述遗漏数据片标识更新所述已有服务器丢失数据片标识,并获得最终服务器数据片标识;
其中,已有服务器丢失数据片标识为在目标数据的所有数据片对象发送完毕之后,服务器已知所述目标数据目前已丢失数据片的标识;
其中,最终服务器数据片标识为服务器最终已知所述目标数据目前已丢失数据片的标识。
11.如权利要求10所述的方法,其特征在于,还包括:
依据所述最终服务器数据片标识逐个广播遗漏数据片对象;在所述最终服务器数据片标识的所述数据片均广播完毕之后,清空所述最终服务器数据片标识;
接收终端发送的已有终端丢失数据片标识;
利用所述终端组中的终端发送的已有终端丢失数据片标识,重新确定所述最终服务器数据片标识;
重复执行以上步骤直到所述最终服务器数据片标识为空集,或者,所述数据传输次数到达指定重发次数;
其中,已有终端丢失数据片标识为在目标数据的所有数据片对象发送完毕之后,所有已丢失的数据片标识的集合。
12.一种终端,其特征在于,包括:
第一处理器,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;并在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向通信模块发送所述遗漏数据片标识;
第一通信模块,用于向所述服务器发送所述遗漏数据片标识;
当前终端丢失数据片标识表示:针对目标数据而言,终端于当前时刻时所有已丢失数据片的标识;
历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
13.一种服务器,其特征在于,包括:
第二通信模块,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;
第二处理器,用于利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;并控制通信模块广播所述当前服务器丢失数据片标识;重复执行上述第二通信模块和第二处理器的操作,直到包含目标数据标识的数据片对象均广播完毕;
其中,历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识;
其中,当前服务器丢失数据片标识为所述服务器本次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
14.一种数据处理系统,其特征在于,包括:
服务器和与所述服务器相连的多个终端组;
所述服务器,用于执行如权利要求9-11任一项所述的数据组呼方法;
每个终端组中的终端,用于执行如权利要求1-8任一项所述的数据组呼方法。
15.一种数据组呼装置,其特征在于,包括:
第一确定单元,用于确定与目标数据标识对应的当前终端丢失数据片标识和历史服务器丢失数据片标识;
第二确定单元,用于在所述当前终端丢失数据片标识中,确定出所述历史服务器丢失数据片标识所不具有的遗漏数据片标识;
发送单元,用于在所述遗漏数据片标识中的标识数量大于反馈门限值的情况下,向所述服务器发送所述遗漏数据片标识;
当前终端丢失数据片标识表示:针对目标数据而言,终端于当前时刻时所有已丢失数据片的标识;
历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
16.一种数据组呼装置,其特征在于,包括:
接收单元,用于接收终端发送的与目标数据标识对应的遗漏数据片标识;利用所述终端组中的终端发送的遗漏数据片标识,更新历史服务器丢失数据片标识,并获得当前服务器丢失数据片标识;
广播单元,用于广播所述当前服务器丢失数据片标识;
重复执行上述接收单元和广播单元的操作,直到包含目标数据标识的数据片对象均广播完毕;
其中,历史服务器丢失数据片标识为所述服务器上次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识;
其中,当前服务器丢失数据片标识为所述服务器本次向所述终端组的各个终端广播的、服务器已知所述目标数据目前已丢失数据片的标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610808544.XA CN106385322B (zh) | 2016-09-07 | 2016-09-07 | 一种数据组呼方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610808544.XA CN106385322B (zh) | 2016-09-07 | 2016-09-07 | 一种数据组呼方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106385322A CN106385322A (zh) | 2017-02-08 |
CN106385322B true CN106385322B (zh) | 2019-11-15 |
Family
ID=57938200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610808544.XA Active CN106385322B (zh) | 2016-09-07 | 2016-09-07 | 一种数据组呼方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106385322B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109756854B (zh) * | 2017-11-06 | 2021-10-26 | 普天信息技术有限公司 | 一种集群业务释放方法 |
CN112988391B (zh) * | 2021-03-30 | 2023-08-01 | 北京字跳网络技术有限公司 | 数据处理方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075311A (zh) * | 2010-12-27 | 2011-05-25 | 中国人民解放军理工大学 | 一种基于网络编码的无线协同广播/组播方法 |
CN103281356A (zh) * | 2013-05-03 | 2013-09-04 | 青岛海信传媒网络技术有限公司 | 一种分发文件的方法及系统 |
CN102355495B (zh) * | 2011-09-27 | 2014-01-22 | 中国联合网络通信集团有限公司 | 数据处理方法、装置和系统 |
CN104618260A (zh) * | 2015-01-08 | 2015-05-13 | 重庆金美通信有限责任公司 | 一种基于udp的可配策略数据传输方法 |
CN105162706A (zh) * | 2014-05-28 | 2015-12-16 | 华为技术有限公司 | 组播传输方法、装置及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002077846A (ja) * | 2000-08-25 | 2002-03-15 | Toshiba Corp | 有料放送受信装置 |
US20130196663A1 (en) * | 2012-01-27 | 2013-08-01 | Qualcomm Incorporated | System selection in multi-rat user equipment |
-
2016
- 2016-09-07 CN CN201610808544.XA patent/CN106385322B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075311A (zh) * | 2010-12-27 | 2011-05-25 | 中国人民解放军理工大学 | 一种基于网络编码的无线协同广播/组播方法 |
CN102355495B (zh) * | 2011-09-27 | 2014-01-22 | 中国联合网络通信集团有限公司 | 数据处理方法、装置和系统 |
CN103281356A (zh) * | 2013-05-03 | 2013-09-04 | 青岛海信传媒网络技术有限公司 | 一种分发文件的方法及系统 |
CN105162706A (zh) * | 2014-05-28 | 2015-12-16 | 华为技术有限公司 | 组播传输方法、装置及系统 |
CN104618260A (zh) * | 2015-01-08 | 2015-05-13 | 重庆金美通信有限责任公司 | 一种基于udp的可配策略数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106385322A (zh) | 2017-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104484295B (zh) | 并行计算机系统中基于接收方滑动窗口的数据传输方法 | |
CN105450785B (zh) | 一种文件传输方法和装置 | |
RU2545999C2 (ru) | Способ, устройство и система для передачи информации в виде данных | |
CN106034149A (zh) | 一种账户识别方法及装置 | |
CN105991246A (zh) | 一种数据重传方法及装置 | |
CN111526606B (zh) | 用于数据传输的方法及装置、智能家居设备、存储介质 | |
CN105281810A (zh) | 一种传输数据的方法、设备和系统 | |
CN106385322B (zh) | 一种数据组呼方法、装置及系统 | |
CN105391629B (zh) | 一种资源备份的方法及装置 | |
CN103312469B (zh) | 组播重传中的确认代表选择方法及装置 | |
EP1788756B1 (en) | Apparatus and method for transmitting packets in wireless network | |
CN110022534B (zh) | 一种基于组播的数据传输方法及装置 | |
CN111555984A (zh) | 用于数据传输的方法及装置、智能家居设备、存储介质 | |
CN104636103B (zh) | 一种键盘数据传输方法及装置 | |
CN106789695B (zh) | 报文处理方法及装置 | |
CN106161318B (zh) | 一种信号处理方法、发送机、接收机及系统 | |
CN104348711B (zh) | 消息接收装置及方法 | |
CN103731424A (zh) | 一种网络数据的传输方法、装置及系统 | |
CN108306937B (zh) | 短信验证码的发送方法、获取方法、服务器及存储介质 | |
CN111432441B (zh) | 音频数据发送方法及装置、计算机可读存储介质 | |
CN106304389A (zh) | 一种资源碰撞的指示方法及装置 | |
CN113794620B (zh) | 消息发送方法、装置、设备、系统与存储介质 | |
CN110838967B (zh) | 虚拟专用网络的连接方法、服务器、客户端和存储介质 | |
CN107644055B (zh) | 一种基于训练数据的通信保障能力生成方法 | |
CN108633025A (zh) | 一种波束恢复方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |