CN112398797B - 数据传输方法、接收装置、发送装置、介质、设备及系统 - Google Patents
数据传输方法、接收装置、发送装置、介质、设备及系统 Download PDFInfo
- Publication number
- CN112398797B CN112398797B CN201910762460.0A CN201910762460A CN112398797B CN 112398797 B CN112398797 B CN 112398797B CN 201910762460 A CN201910762460 A CN 201910762460A CN 112398797 B CN112398797 B CN 112398797B
- Authority
- CN
- China
- Prior art keywords
- data
- receiving
- detection
- marks
- data transmission
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明公开了一种数据传输方法、数据传输接收装置、发送装置、介质、设备及系统,数据传输方法应用于接收端,接收下发的多个数据包和与其一一对应的标记;在接收时长内的预定时刻,判断接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在所述数据包丢失。本发明中的数据传输方法、数据传输接收装置、发送装置、介质、设备及系统,能够在数据更新过程中快速确定是否有数据丢失,以确保数据传输的完整性,提高数据传输成功率。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据传输方法、数据传输接收装置、发送装置、介质、设备及系统。
背景技术
Content Delivery Network(简称CDN),即内容分发网络,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需要的内容,从而有效提高用户访问网站的响应速度,解决网络拥塞问题。
当目标业务的提供者需要对业务服务器内的目标业务进行升级或变更时,业务服务器中存储的目标业务需要进行更新。此时,需要对缓存有目标业务的CDN的全部节点服务器进行更新,以保证用户终端通过CDN的节点服务器获取到的目标业务的内容资源为更新后的内容资源。
在现有技术的传统CDN缓存机制中,全网内容更新基于消息队列的形式实现。当内容更新时,由一台中心服务器管理上千台节点服务器,中心服务器需要确认所有节点服务器的状态并跟踪节点服务器的推送情况,但由于比如中心服务器负载高、距离其它节点服务器距离远、跨运营商等原因,造成通过节点服务器跟踪失败需要重传的问题,导致系统无法一次实现内容在全网更新完成。
因此,现有技术中的传统CDN缓存机制以及相应的解决方法存在如下缺陷:
1.中心服务器无法获知推送内容是否成功;
2.目前通用的提高下发成功率的方法一般就是进行多次下发操作,以提高下发成功率,但是该方法效率低下,且占据带宽资源;
3.通过对内容分发网络中每个边缘节点进行检查,以确保内容下发成功,但该方法效率低下,特别是当边缘节点多时,造成内容分发速度极慢;
4.当使用TCP进行传输时,建立链接需要进行三次握手,访问数据需要持续的交互时间较长。
发明内容
为了解决上述技术问题,本发明提供了一种数据传输方法、数据传输接收装置、发送装置、介质、设备及系统。
本发明提供的数据传输方法,应用于接收端,包括:
接收下发的多个数据包和与其一一对应的标记;
在接收时长内的预定时刻,判断接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在所述数据包丢失。
上述数据传输方法还具有以下特点:所述数据传输方法包括:
在接收时长内进行n次检测,所述预定时刻为从第二次检测的结束时刻至第n次检测的结束时刻之间的任意时刻。
上述数据传输方法还具有以下特点:所述数据传输方法进一步包括:
在接收时长内,进行连续的n次检测,所述预定时刻为第二次检测至第n次检测中任意一次检测的结束时刻。
上述数据传输方法还具有以下特点:所述数据传输方法进一步包括:
在接收时长内,进行连续的n次检测,所述预定时刻为判断周期的结束时刻;
所述判断周期定义为:所述第二次检测至第n-1次检测中的任意一次检测作为基础周期,所述基础周期的开始时刻减去期望时长的时刻为第一时刻,所述基础周期的结束时刻加上期望时长的时刻为第二时刻,所述第一时刻与第二时刻之间为判断周期,所述第二时刻为所述预定时刻;
在所述预定时刻,判断所述判断周期内接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在数据包丢失。
上述数据传输方法还具有以下特点:所述标记包括数字标记,判断接收到的多个所述标记经过排列后是否符合预定顺序的方法包括:
判断接收到的多个所述数字标记经过排列后,是否与所述数字标记下发时的排列顺序相同,若否,则存在所述数据包丢失。
上述数据传输方法还具有以下特点:判断接收到的多个所述标记经过排列后是否符合预定顺序的方法包括:
确定所述数字标记下发时的最小数字标记和最大数字标记,判断接收到的多个所述数字标记是否同时满足以下两个条件:
同时包含所述最小数字标记和所述最大数字标记;
与所述数字标记下发时的排列顺序相同;
若否,则存在所述数据包丢失。
上述数据传输方法还具有以下特点:所述传输方法还包括:
若所述接收端存在所述数据包丢失,则该接收端从与其相邻的接收端获取丢失的所述数据包,或者,该接收端从上层节点获取丢失的所述数据包。
本发明还提供了一种数据传输接收装置,包括:
接收单元,用于接收下发的多个数据和与其一一对应的标记;
检测单元,用于在接收时长内,对接收到的多个数据包进行检测并记录与其对应的所述标记;
排列单元,用于对接收到的多个所述标记进行排列;
判断单元,用于在预定时刻判断接收到的多个所述标记经过排列后是否符合预定顺序。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述程序被处理器执行时实现如上所述的数据传输方法。
本发明还提供了一种传输设备,包括:收发器、存储器、处理器;
所述收发器用于收发报文;
所述存储器用于存储指令和数据;
所述处理器用于读取所述存储器中存储的指令和数据,以执行如上所述的数据传输方法。
本发明还提供了一种数据传输方法,应用于发送端,包括:
获取待下发数据;
根据所述待下发数据生成多个数据包和与其一一对应的标记;
将多个所述数据包和与其对应的所述标记同时下发,多个所述标记根据其对应的所述数据包的下发顺序按照预定顺序排列。
上述数据传输方法还具有以下特点:所述标记包括数字标记,多个所述数据包按时间顺序依次下发,所述数字标记按照自然数由小到大的预定顺序排列。
本发明还提供了一种数据传输方法,应用于发送端,包括:
获取待下发数据;
根据所述待下发数据生成多个数据包和与其一一对应的标记;
将多个所述数据包和与其对应的所述标记同时下发,多个所述标记根据其对应的所述数据包的下发顺序按照预定顺序排列。
上述数据传输方法还具有以下特点:所述标记包括数字标记,多个所述数据包按时间顺序依次下发,所述数字标记按照自然数由小到大的预定顺序排列。
本发明还提供了一种数据传输发送装置,包括:
获取模块,用于获取待下发数据;
生成模块,用于根据待下发数据生成多个数据包和与其一一对应的标记;
下发模块,用于将多个所述数据包和与其对应的所述标记同时下发。
上述数据传输发送装置还具有以下特点:
所述生成模块包括:
数据包生成单元,用于根据所述待下发数据生成多个数据包
标记生成单元,用于生成与多个所述数据包一一对应的标记。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述程序被处理器执行时实现如上所述的数据传输方法。
本发明还提供了一种传输设备,所述传输设备包括:收发器、存储器、处理器;
所述收发器用于收发报文;
所述存储器用于存储指令和数据;
所述处理器用于读取所述存储器中存储的指令和数据,以执行如上所述的数据传输方法。
本发明还提供了一种数据传输系统,应用于内容分发网络,所述传输系统包括如上所述的数据传输接收装置,以及如上所述的数据传输发送装置。
本发明中的数据传输方法、数据传输接收装置、发送装置及系统,能够在数据更新过程中快速确定是否有数据丢失,以确保数据传输的完整性,提高数据传输成功率。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是具体实施方式中的应用于接收端的数据传输方法的流程图;
图2是具体实施方式中的应用于发送端的数据传输方法的流程图;
图3是具体实施方式中的数据传输方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
本申请提供了一种数据传输方法,应用于接收端,以使接收端能够实现自查,当数据接收过程中出现数据包丢失的情况,接收端能够及时发现,并快速进行处理,保证数据接收过程的可靠性和准确性。其中,接收端可以设置在除了中心服务器之外的,其余全部能够执行数据接收操作的服务器上,比如可以设置在边缘服务器、子服务器、父服务器上,只要是需要执行数据传输过程中的接收任务的服务器上局可以使用本申请中的应用于接收端上的数据传输方法,以确保数据包能够成功下发,特别是在边缘节点较多时,能够有效提高数据包下发准确性和下发效率。
如图1所示,本申请中的应用于接收端的数据传输方法包括:
接收下发的多个数据包和与其一一对应的标记;
在接收时长内的预定时刻,判断接收到的多个标记经过排列后是否符合预定顺序,若否,则存在数据包丢失。
其中,本申请中的数据包可以理解为包含有数据的一个个信息存储单元,也可以理解为是一个个事件,为了确定在数据传输过程中,接收端是否接收到了下发的全部数据包,在下发时,每个数据包均具有与其一一对应的标记。标记可以是数字标记,也可以是字母标记,还可以是字母和数字标记的组合,只要能够起到相应的标记作用,并且方便对其进行排列,能够快速识别是否接收到全部数据包的标记均可。
比如,依次下发了10个数据包,给每个数据包赋予一个数字标记,按照下发的顺序,数据包对应的标记为1、2、3、…、7、8、9、10。接收端在接收时长内持续接收数据包,如果到预定时刻止,按照接收端接收到数据包的时间顺序,接收到的数据包的标记为1、9、7、10、8、5、3、2、4、6,上述标记排列后为1、2、3、…、7、8、9、10,与数据包下发时的预定顺序相同,则判断数据包没有丢失情况。如果到预定时刻止,按照接收端接收到的数据包的时间顺序,接收到数据包的标记为1、9、7、10、3、2、4、6,上述标记排列后为1、2、3、4、6、7、9、10,与数据包下发时的预定顺序不同,缺少了5和8,则判断数据包存在丢失情况。
再比如,依次下发了5个数据包,给每个数据包赋予一个字母标记,按照下发的顺序,数据包对应的标记为a、b、c、d、e。接收端在接收时长内持续接收数据包,如果到预定时刻止,按照接收端接收到数据包的时间顺序,接收到的数据包的标记为c、d、e、b、a,上述标记排列后为a、b、c、d、e,与数据包下发时的预定顺序相同,则判断数据包没有丢失情况。如果到预定时刻止,按照接收端接收到的数据包的时间顺序,接收到数据包的标记为a、e、b、c,上述标记排列后为a、b、c、e,与数据包下发时的预定顺序不同,缺少了d,则判断数据包存在丢失情况。
再比如,依次下发了5个数据包,给每个数据包赋予一个字母标记,按照下发的顺序,数据包对应的标记为A1、A2、A3、A4、A5。接收端在接收时长内持续接收数据包,如果到预定时刻止,按照接收端接收到数据包的时间顺序,接收到的数据包的标记为A1、A2、A3、A4、A5,与数据包下发时的预定顺序相同,则判断数据包没有丢失情况。如果到预定时刻止,按照接收端接收到的数据包的时间顺序,接收到数据包的标记为A1、A2、A4、A5,与数据包下发时的预定顺序不同,缺少了A3,则判断数据包存在丢失情况。
为了保证数据传输的准确性和可靠性,若接收端存在数据包丢失,则接收端所在的服务器可以通过报警的方式通知技术人员,该接收端存在数据包丢失的情况,以便于技术人员快速进行处理,保证数据传输顺利进行。在进行报警的同时,接收端所在的服务器还可以从与其相邻的接收端获取丢失的数据包,或者,该接收端从上层节点获取丢失的数据包,从而使得整个数据传输系统更加完善。
比如接收端设置在子服务器上,由于一个子服务器可以与多个父服务器相连,当接收端判断存在数据包丢失时,接收端从与其相连的距离其最近的父服务器处获取丢失的数据包。再比如,接收端设置在边缘服务器上,由于多个边缘服务器可以设置在同一个房间中,因此,接收端从与其相连的边缘服务器上获取丢失的数据包更加便捷更加高效,整个数据传输系统更加完善。另外,接收端在发现数据包丢失时,从与其相连的最近的边缘服务器上获取丢失的数据包,而不是从中心服务器获取丢失的数据包,有效减少了回源带宽,缩减带宽成本。
进一步地,本申请中的数据传输方法还包括:
在接收时长内进行n次检测,预定时刻为从第二次检测的结束时刻至第n次检测的结束时刻之间的任意时刻。
在数据传输过程中,为了保证在预定时刻进行检测和判断的时候,在很大概率上已经将下发的数据包全部接收,通常不会将第一次检测的结果作为判断结果,为了提高判断准确性,本申请将预定时刻设置为从第二检测的结束时刻至第n次检测的结束时刻之间的任意时刻,以保证检测和判断准确性。其中,接收时长内的n次检测可以是连续的,也可以是不连续的,比如,接收时长为3分钟,每分钟检测一次并进行判断,即在第一分钟、第二分钟和第三分钟分别进行连续的三次检测和判断。再比如,接收时长为3分钟,在第30秒进行一次检测和判断,在第1分钟不进行检测和判断,在第2分钟进行一次检测和判断。同时,每次检测之间的间隔的时间长度可以是不固定的,比如,接收时长为3分钟,即维护3分钟的事件队列,在第25秒的时候进行第一次检测和判断,在第60秒的时候进行第二次检测和判断,在第68秒的时候进行第三次检测和判断,那么可以将第二次检测结束的时刻作预定时刻进行检测和判断,也可以将第65秒作为预定时刻进行判断。
优选地,数据传输方法进一步包括:
在接收时长内,进行连续的n次检测,预定时刻为第二次检测至第n次检测中任意一次检测的结束时刻。
其中,连续的n次检测中每次检测的持续时长可以不相同,即可以进行不等时长的检测,比如第一次检测持续1分钟,从第一次检测的结束时刻开始进入第二次检测,第二次检测持续2分钟,从第二次检测的结束时刻开始进入第三次检测,第三次检测持续30秒。
当然,为了提高检测过程的规律性,保证整个检测过程更加稳定、准确,优选采用在接收时长内,进行连续的n次检测,每次检测持续第一预定时长,预定时刻为第二次检测至第n次检测中任意一次检测的结束时刻。
在一个具体的实施例中,接收时长为3分钟,即在接收数据包的过程中维护3分钟的时间队列,第一预定时长为60秒,也即,在3分钟内对下发的数据包持续接收,共进行3次检测,每次检测持续60秒。为了保证检测和判断的准确性,忽略0秒至60秒中队列中的数据包,对第二次检测完成后队列中的数据包进行判断。假设与下发的多个数据包一一对应的标记为数字标记,且在下发时,数字标记按照从1开始的自然数依次排列,那么在第二次检测的最后时刻,判断接收到的数据包的标记按照顺序排列后是否能够形成与下发时一致,即从1开始的自然数依次排列的预定顺序,如果不能,则说明数据包丢失,需要进行报警并重新获取丢失的数据包;如果接收到的数据包的标记能够形成数据包下发时的预定顺序,则说明接收到了全部的数据包,数据包没有丢失。
在此,需要注意的是,在接收数据包的过程中会出现一种特殊的情况,即虽然没有将全部的数据包接收完全,但接收到的数据包的标记能够形成按照下发时的预定顺序进行排列。比如,依次下发了10个数据包,给每个数据包赋予一个数字标记,按照下发的顺序,数据包对应的标记为1、2、3、…、7、8、9、10。接收端在3分钟内持续接收数据包,将第二次检测结束时刻作为预定时刻,在完成第二次检测的时刻,按照接收端接收到数据包的时间顺序,接收到的数据包的标记为2、7、8、5、3、4、6,上述标记排列后为2、3、…、7、8。此时,在预定时刻进行判断时,虽然缺少了1、9、10,但其余的各个数字标记都是按照数据包下发时的预定顺序进行排列的,此时,如果判断结果为判断数据包没有丢失情况,也容易导致数据接收不完全。因此,为了进一步提高数据接收可靠性和准确性,需要确定下发时的标记中第一个标记和最后一个标记,并在进行判断时,确认是否接收到了第一个标记和最后一个标记,进而在对接收到的全部标记进行判断,如果全部标记按照下发时的预定顺序排列,则不存在数据包丢失;若全部标记排列后没有按照预定顺序排列,则存在数据包丢失。
因此,当标记为数字标记时,判断接收到的多个标记经过排列后是否符合预定顺序的方法包括:
确定数字标记下发时的最小数字标记和最大数字标记,判断接收到的多个数字标记是否同时满足以下两个条件:
同时包含最小数字标记和最大数字标记;
与数字标记下发时的排列顺序相同;
若否,则存在数据包丢失。
当标记为字母或字母与数字的组合时,判断接收到的多个标记经过排列后是否符合预定顺序的方法包括:
确定标记下发时的第一个标记和最后一个标记,判断接收到的多个标记是否同时满足以下两个条件:
同时包含第一个标记和最后一个标记;
与标记下发时的排列顺序相同;
若是,则数据包完全接收,如否,则存在数据包丢失。
更进一步地,数据传输方法包括:
在接收时长内,进行连续的n次检测,预定时刻为判断周期的结束时刻;
判断周期定义为:第二次检测至第n-1次检测中的任意一次检测作为基础周期,基础周期的开始时刻减去期望时长的时刻为第一时刻,基础周期的结束时刻加上期望时长的时刻为第二时刻,第一时刻与第二时刻之间为判断周期,第二时刻为预定时刻;
在预定时刻,判断判断周期内接收到的多个标记经过排列后是否符合预定顺序,若否,则存在数据包丢失。
在一个具体的实施例中,接收时长为3分钟,即维护3分钟的时间队列,在3分钟内共进行3次检测,每次检测持续1分钟,将判断周期的结束时刻作为预定时刻。第二次检测的开始时刻为第60秒,第二次检测的结束时刻为第120秒,将第二次检测作为基础周期,期望时长为10s,则判断周期为第50秒至第130秒。在整个接收时长内,持续接收数据包,在第130秒时判断第50秒至第130秒内接收到的多个标记经过排列后是否符合预定顺序,如果符合预定顺序说明没有数据包丢失,如果不符合预定顺序,则说明存在数据包丢失。
本申请还提供了一种数据传输接收装置,可以设置在除了中心服务器之外的其余所有具有接收下发指令的服务器上,数据传输接收装置包括:
接收单元,用于接收下发的多个数据和与其一一对应的标记;
检测单元,用于在接收时长内,对接收到的多个数据包进行检测并记录与其对应的标记;
排列单元,用于对接收到的多个标记进行排列;
判断单元,用于在预定时刻判断接收到的多个标记经过排列后是否符合预定顺序。
数据传输接收装置还包括控制单元,控制单元可以是服务器的一部分,控制单元中预存有接收时长的数值、第一预定时长、检测次数、检测时长等数值,控制单元分别与上述各个单元相连,并对其进行控制,以保证检测和判断可靠性。并且,为了提高数据传输的效率,在边缘服务器、除中心服务器外的其他各级服务器上均设置有P2P客户端软件,数据传输接收装置与P2P客户端软件先练,从P2P客户端软件中获取下发的数据包并加入到队列中,进而进行检测和判断。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的数据传输方法。
本申请还提供了一种传输设备,包括用于收发报文的收发器、用于存储指令和数据的存储器、以及用于读取存储器中存储的指令和数据的处理器。上述计算机可读存储介质应用于上述传输设备上,计算机程序存储在处理器中,该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该指令、该程序、该代码集或该指令集有处理器加载并执行以实现上述实施例的数据传输方法中传输设备所执行的操作。
本申请还提供了一种数据传输方法,应用于发送端,发送端可以设置在中心服务器上,还可以设置在比如父服务器等具有数据下发需求的服务器上,以保证通过发送端下发的数据包,能够与接收端形成配合,保证数据下发的准确性和可靠性。
如图2所示,本申请提供的应用于发送端的数据传输方法包括:
获取待下发数据;
根据待下发数据生成多个数据包和与其一一对应的标记;
将多个数据包和与其对应的标记同时下发,多个标记根据其对应的数据包的下发顺序按照预定顺序排列。
其中,在获取待下发数据时,发送端可以通过比如API接口等多种满足需求的接口从数据中心获取数据。标记包括数字标记,多个数据包按时间顺序依次下发,数字标记按照自然数由小到大的预定顺序排列。当然,可以理解的是,标记还可以是字母标记,比如英文字母,或者希腊字母等,还可以是字母标记与数字标记的组合。当标记为英文字母时,多个数据包按时间顺序依次下发,字母标记按照26个英文字母的预定顺序排列。当标记为希腊字母时,多个数据包按照时间顺序依次下发,字母标记按照希腊字母的预顺序排列。当标记为字母和数字的组合标记时,比如英文字母和数字的组合,数字作为英文字母的下标,多个数据包按时间顺序依次下发时,下表按照自然数由小到大的书序排列,英文字母按照26个英文字母的预定顺序排列。比如A1、A2、A3、A4、A5、B1、B2、B3、B4、B5。数据包与标记一一对应,按照数据包下发顺序,标记按照预定顺序排列,接收端接收到数据包后和标记后,能够准确判断是否有数据包丢失,保证数据传输完整新,提高数据推送成功率。
本申请还提供了一种数据传输发送装置,可以设置在中心服务器,以及具有下发数据需求的其他服务器上,比如父服务器。数据传输发送装置上设置有P2P客户端,该客户端与数据传输接收装置上的P2P客户端配合使用,P2P客户端能够将数据由发送装置快速地下发至接收装置。P2P客户端用于维护集群的链路状态,发送装置上的P2P客户端在接收到数据后,发送装置直接选择合适的节点对数据进行下发,采用P2P客户端能够有效降低源服务器的压力,提高数据传输速度。
传统的P2P都使用高效的udp协议,该协议对每次发送的数据的大小有限制。在数据下发过程中,偶尔会遇到url长度大于udp协议限制值的情况,此时,需要对长度过长的数据进行拆分,并对拆分出来的每一段数据段赋予一个唯一的序列号,通过该序列号能够清楚的获知该数据段是数据被拆分的数据的哪个部分。接收装置接收到发送装置发送端数据段后,会根据每个数据段唯一的序列号将各个数据段进行合并和封装,形成完整的数据。目前在实际实施过程中,当数据大于512个字节时,就对数据进行拆分,拆分成多个数据段。并且,当某一数据大于2048个字节时,需要反馈错误信息,以便于操作人员进行处理。在此,需要说明的是,上述数据段及与数据段唯一对应的序列号,与本申请在下发过程中的数据包和与数据包对应的标记是完全不同的。在具体实施过程中,可以将一个数据包再拆分成多个数据段,并对每个数据段再赋予一个序列号。
本发明中的数据传输发送装置包括:
获取模块,用于获取待下发数据,通过比如API接口等多种满足需求的接口从数据中心获取数据;
生成模块,用于根据待下发数据生成多个数据包和与其一一对应的标记;
下发模块,用于将多个数据包和与其对应的标记同时下发。
其中,生成模块又包括数据包生成单元和标记生成单元。具体的,数据包生成单元,用于根据待下发数据生成多个数据包,在数据包生成过程中遵循一定的方法,设定好每次下发的数据包的大小为M,当待下发的数据的任务的大小超过M时,将数据分成多个数据包下发。比如,下发的数据的任务为2.5M,由于每个数据包的大小为M,因此,需要将下发的数据分成3个数据包,每个数据包中的任务分别为M、M和0.5M。标记生成单元,用于生成与多个数据包一一对应的标记,从而保证数据包在下发时,数据包按照时间顺序下发时,标记能够形成有序排列,即标记按照预定顺序排列。比如需要下发100个数据包,则可以根据数据包按照时间顺序下发的顺序,将标记设置为与其一一对应的10001、10002、10003、…、10098、10099、100100。当然,可以理解的是,标记不一定按照上述方式进行记录,还可以采用其他方式,比如1、2、3、…、98、99、100这样的方式进行标记。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的数据传输方法。
本申请还提供了一种传输设备,包括用于收发报文的收发器、用于存储指令和数据的存储器、以及用于读取存储器中存储的指令和数据的处理器。上述计算机可读存储介质应用于上述传输设备上,计算机程序存储在处理器中,该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该指令、该程序、该代码集或该指令集有处理器加载并执行以实现上述实施例的数据传输方法中传输设备所执行的操作。
本发明还提供了一种数据传输系统,应用于内容分发网络,传输系统包括上述的数据传输接收装置和数据传输发送装置,以提高数据传输过程的稳定性、完整性和高效性。
数据传输系统还包括中心数据收集装置,用于收集内容分发网络服务的客户更新的数据,并对数据进行汇总、封装,并将数据放入数据库中,用于后续查询和执行任务。中心数据收集装置与数据传输发送装置相连,数据传输发送装置从中心数据收集装置处获取数据,进行下发给数据传输接收装置。
如图3所示,下面通过一个完整的实施例对本申请中的数据传输方法进行详细说明:
客户更新数据后,中心数据收集装置获取客户更新的数据,并对客户更新的数据进行汇总、封装,并将数据放入数据库中。以此同时,数据传输发送装置的获取模块通过API接口从数据中心收集装置处获取更新的数据。接着,数据传输发送装置的数据包生成模块根据数据的大小,生成多个数据包;标记生成单元生成与数据包一一对应的标记。下发模块将数据包按照时间顺序依次下发,与数据包对应的标记形成预定顺序。
数据传输接收装置的接收单元接收数据传输装置发送的多个数据包和与其一一对应的标记,检测单元在接收时长内,对接收到的多个数据包进行检测并记录与其对应的标记。排列单元对接收到的多个标记进行排列,判断单元在预定时刻判断接收到的多个标记经过排列后是否符合预定顺序,如果符合预定顺序,说明数据传输发送装置下发的所有数据包均被接收到了,如果不符合预定顺序,说明存在数据包丢失,此时,数据传输接收装置从与其相邻的服务器处获取丢失的数据包,或者从上层服务器处获取丢失的数据包,以保证数据传输可靠性和完整性,提高下发成功率。
在使用本发明中的数据传输系统对客户更新数据由中心服务器向边缘服务器进行数据推送过程中,根据服务器设置方式不同采用不同的推送方式。一个具体的推送方式是,一个父节点对应多个子节点,则可以先向父节点进行推送,再由父节点向子节点进行二级推送,采用上述推送方式,能够有效避免推送热点问题出现,即只有父节点进行了数据更新,子节点才会进行数据更新。当某热点问题被持续搜索时,由于搜索人数和搜索次数非常多,可能数据还没有来得及在全网进行推送时,如果采用多个子节点对应多个父节点的推送方式,则有的父节点进行了数据更新,有的父节点没有进行数据更新,造成子节点无法及时获得更新数据的问题,有可能出现及时在数据已经进行推送后,仍然获得的是旧数据的情况。
另一个具体的推送方式是,一个父节点对应多个子节点,一个子节点对应多个父节点,这样的设置方式可以实现全网推送。但由于采用这样的推送方式会出现上述的热点推送问题,为了解决这个问题,可以采用下列方式进行推送。由于客户更新的信息在全网推送时间非常短,一般只需要2秒,发送端节点的P2P客户端获取到更新的信息后,判断要推送的url的热度,对于访问频繁的rul,对其进行记录,将其放入特殊队列中,在确保全网推送完成后,一般持续时间为5秒,再将存放在特殊队列中的url进行推送,以保证推送后被访问到的内容为更新后的内容。
另外,本申请中的数据传输方法还可以用于对内容分发网络的数据传输过程进行测试。即使当客户没有进行数据更新时,也可以定期通过数据传输发送装置向数据传输接收装置发送数据包,作为监控任务,以判断内容分发网络的数据传输过程是否正常,从而保证整个数据传输系统的可靠性,提高数据传输过程的稳定性和传输成功率。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (8)
1.一种数据传输方法,应用于接收端,所述接收端设置在CDN网络中执行数据接收操作的服务器上,其特征在于,接收下发的多个数据包和与其一一对应的标记;
在接收时长内的预定时刻,判断接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在所述数据包丢失;若存在所述数据包丢失,则根据推送方式的不同,该接收端从与其相邻的接收端获取丢失的所述数据包,或者,该接收端从上层节点获取丢失的所述数据包;
在接收时长内进行n次检测,所述预定时刻为从第二次检测的结束时刻至第n次检测的结束时刻之间的任意时刻。
2.如权利要求1所述的数据传输方法,其特征在于,所述数据传输方法进一步包括:
在接收时长内,进行连续的n次检测,所述预定时刻为第二次检测至第n次检测中任意一次检测的结束时刻。
3.如权利要求1所述的数据传输方法,其特征在于,所述数据传输方法进一步包括:
在接收时长内,进行连续的n次检测,所述预定时刻为判断周期的结束时刻;
所述判断周期定义为:所述第二次检测至第n-1次检测中的任意一次检测作为基础周期,所述基础周期的开始时刻减去期望时长的时刻为第一时刻,所述基础周期的结束时刻加上期望时长的时刻为第二时刻,所述第一时刻与第二时刻之间为判断周期,所述第二时刻为所述预定时刻;
在所述预定时刻,判断所述判断周期内接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在数据包丢失。
4.如权利要求1所述的数据传输方法,其特征在于,所述标记包括数字标记,判断接收到的多个所述标记经过排列后是否符合预定顺序的方法包括:
判断接收到的多个所述数字标记经过排列后,是否与所述数字标记下发时的排列顺序相同,若否,则存在所述数据包丢失。
5.如权利要求4所述的数据传输方法,其特征在于,判断接收到的多个所述标记经过排列后是否符合预定顺序的方法包括:
确定所述数字标记下发时的最小数字标记和最大数字标记,判断接收到的多个所述数字标记是否同时满足以下两个条件:
同时包含所述最小数字标记和所述最大数字标记;
与所述数字标记下发时的排列顺序相同;
若否,则存在所述数据包丢失。
6.一种数据传输接收装置,应用于接收端,所述接收端设置在CDN网络中执行数据接收操作的服务器上,其特征在于,包括:
接收单元,用于接收下发的多个数据包和与其一一对应的标记;
检测单元,用于在接收时长内,对接收到的多个数据包进行检测并记录与其对应的所述标记;
排列单元,用于对接收到的多个所述标记进行排列;
判断单元,用于在预定时刻判断接收到的多个所述标记经过排列后是否符合预定顺序,若否,则存在所述数据包丢失;若存在所述数据包丢失,则根据推送方式的不同,该接收端从与其相邻的接收端获取丢失的所述数据包,或者,该接收端从上层节点获取丢失的所述数据包,在接收时长内进行n次检测,所述预定时刻为从第二次检测的结束时刻至第n次检测的结束时刻之间的任意时刻。
7.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至5任一项所述的数据传输方法。
8.一种传输设备,其特征在于,所述传输设备包括:收发器、存储器、处理器;
所述收发器用于收发报文;
所述存储器用于存储指令和数据;
所述处理器用于读取所述存储器中存储的指令和数据,以执行权利要求1至5任一项所述的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910762460.0A CN112398797B (zh) | 2019-08-19 | 2019-08-19 | 数据传输方法、接收装置、发送装置、介质、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910762460.0A CN112398797B (zh) | 2019-08-19 | 2019-08-19 | 数据传输方法、接收装置、发送装置、介质、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112398797A CN112398797A (zh) | 2021-02-23 |
CN112398797B true CN112398797B (zh) | 2023-05-02 |
Family
ID=74603244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910762460.0A Active CN112398797B (zh) | 2019-08-19 | 2019-08-19 | 数据传输方法、接收装置、发送装置、介质、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112398797B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114337938B (zh) * | 2021-12-14 | 2023-08-29 | 海光信息技术股份有限公司 | 一种数据传输方法、数据重传方法、装置和相关设备 |
CN114500036A (zh) * | 2022-01-24 | 2022-05-13 | 华润电力技术研究院有限公司 | 一种传输数据的方法、装置以及介质 |
CN114584848B (zh) * | 2022-02-25 | 2023-01-24 | 北京博维仕科技股份有限公司 | 基于环境数据的视频网络传输安全漏洞检测方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162706A (zh) * | 2014-05-28 | 2015-12-16 | 华为技术有限公司 | 组播传输方法、装置及系统 |
CN109040199A (zh) * | 2018-07-13 | 2018-12-18 | 广州虎牙信息科技有限公司 | 一种分发资源数据的方法、系统及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008013528A1 (en) * | 2006-07-25 | 2008-01-31 | Thomson Licensing | Recovery from burst packet loss in internet protocol based wireless networks using staggercasting and cross-packet forward error correction |
CN101394252A (zh) * | 2008-11-12 | 2009-03-25 | 北京佳讯飞鸿电气股份有限公司 | 一种基于rtp的数据传输方法 |
CN103259623A (zh) * | 2013-04-16 | 2013-08-21 | 京信通信系统(广州)有限公司 | 一种数据传输方法及装置 |
CN106937241B (zh) * | 2015-12-31 | 2021-05-18 | 华为技术有限公司 | 时序数据检测方法及装置 |
CN105743805A (zh) * | 2016-01-28 | 2016-07-06 | 昭文科技(北京)股份有限公司 | 一种数据传输方法及装置 |
CN107979449B (zh) * | 2016-10-25 | 2020-11-20 | 杭州海康威视数字技术股份有限公司 | 一种数据传输方法及装置 |
CN108377427B (zh) * | 2018-01-29 | 2021-11-26 | 明博教育科技股份有限公司 | 一种实时视频传输方法和系统 |
CN108683555A (zh) * | 2018-04-17 | 2018-10-19 | 上海电力学院 | 一种rtp丢包检测方法 |
CN109560901B (zh) * | 2018-11-14 | 2021-09-21 | 广州虎牙信息科技有限公司 | 一种数据重传方法、装置、终端设备及存储介质 |
-
2019
- 2019-08-19 CN CN201910762460.0A patent/CN112398797B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162706A (zh) * | 2014-05-28 | 2015-12-16 | 华为技术有限公司 | 组播传输方法、装置及系统 |
CN109040199A (zh) * | 2018-07-13 | 2018-12-18 | 广州虎牙信息科技有限公司 | 一种分发资源数据的方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112398797A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112398797B (zh) | 数据传输方法、接收装置、发送装置、介质、设备及系统 | |
CN104301203B (zh) | 一种消息推送方法和设备 | |
CN106953905B (zh) | 域间目录共享方法及装置 | |
CN103036967A (zh) | 一种下载管理设备、方法及数据下载系统 | |
US8825837B2 (en) | Notice of restored malfunctioning links | |
EP3508985A1 (en) | Scalable synchronization with cache and index management | |
CN103036969A (zh) | 用于提供文件下载地址的管理设备及方法 | |
CN112650606B (zh) | 一种消息处理方法、装置、系统、电子设备及存储介质 | |
US20140359066A1 (en) | System, method and device for offline downloading resource and computer storage medium | |
CN107580052B (zh) | 自演进的网络自适应爬虫方法及系统 | |
CN101147380A (zh) | 用于高效扩展p2p网络的方法和装置 | |
CN108540505B (zh) | 一种内容更新方法及装置 | |
CN104468189A (zh) | 一种针对不同客户版本自动升级bios的方法 | |
CN112367345A (zh) | 数据处理方法、服务端设备及计算机可读存储介质 | |
US20090165011A1 (en) | Resource management method, information processing system, information processing apparatus, and program | |
CN111526185A (zh) | 数据下载方法、装置、系统及存储介质 | |
CN106899651B (zh) | 通信处理方法、系统及网络通信系统 | |
CN111131498B (zh) | Url信息更新方法、缓存服务器、设备及存储介质 | |
CN110505177B (zh) | 一种信息收集系统、终端设备及远程主机 | |
CN107493308B (zh) | 一种发送消息的方法和装置及分布式设备集群系统 | |
CN103609081A (zh) | 通过解析进行路由 | |
CN105592143B (zh) | 一种文件加载方法及装置 | |
US6484175B1 (en) | Method and apparatus for providing network management data | |
CN112445859A (zh) | 数据管理方法、装置和系统 | |
CN115134618B (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 |