CN107566321A - 文件的发送方法、装置及系统 - Google Patents
文件的发送方法、装置及系统 Download PDFInfo
- Publication number
- CN107566321A CN107566321A CN201610510292.2A CN201610510292A CN107566321A CN 107566321 A CN107566321 A CN 107566321A CN 201610510292 A CN201610510292 A CN 201610510292A CN 107566321 A CN107566321 A CN 107566321A
- Authority
- CN
- China
- Prior art keywords
- client device
- file
- server
- default packet
- multicast
- 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
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
Abstract
本发明提供了一种文件的发送方法、装置及系统,其中,该方法包括:服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,该预设分组内包括多个客户端设备;向该组播源发送该服务器需要下发的文件,并通过该组播源向该预设分组内的目标客户端设备组播该文件。采用上述技术方案,解决了相关技术中服务器向客户端设备推送文件效率差的问题,大幅提高了服务器下发文件的效率。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种文件的发送方法、装置及系统。
背景技术
在很多业务应用场景中,客户端设备应用程序,因业务功能需求,在某个时间段内需要同时向服务器下载文件,然而服务器带宽限制,无法承载短时间内大量的来自客户端设备的文件下载请求。采用组播方式传送文件,利用组播“一对多”的通信优势,选取客户端设备作为组播源传送文件,解决了服务器的请求并发带宽受限问题,使得在有效时间段内,客户端设备能够正常获取到文件。在现实应用中,组播文件时经常发生丢包情况,导致客户端设备无法在要求的时间内正常接收文件。对于丢包现象,一般解决方式有两种:(1)丢包客户端设备单独向服务器请求下载,当丢包客户端设备较多、文件较大时,又会出现服务器带宽限制问题。当文件较大时,客户端设备下载时间很长,无法保证在有效时间内接收完文件。(2)采用组播重传时,组播源本次组播结束后,无法立刻知道那些客户端设备丢包,以及丢包情况,并且重传后可能会改善丢包现象,但传输时延较长,有可能错过了客户端设备的文件有效时间。
服务器可以选择多个客户端设备作为组播源时,由于无法预先知晓客户端设备本身的性能情况和客户端设备之间的网络通讯情况,组播源可能存在本身性能差、存储空间不足等问题,组播源和其他客户端设备通讯状态差情况,仍然存在很多客户端设备在有效时间内接收不到文件,或接收不完整。
针对相关技术中服务器向客户端设备推送文件效率差的问题,目前还没有有效的解决方案。
发明内容
本发明实施例提供了一种文件的发送方法、装置及系统,以至少解决相关技术中服务器向客户端设备推送文件不合理的问题。
根据本发明的一个实施例,提供了一种文件的发送方法,包括:服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备;向所述组播源发送所述服务器需要下发的文件,并通过所述组播源向所述预设分组内的目标客户端设备组播所述文件。
可选地,服务器从预设分组内选择指定客户端设备包括:所述服务器确定接收所述文件的一个或多个目标客户端设备,并在所述一个或多个目标客户端设备所属的预设分组中选择所述指定客户端设备。
可选地,服务器从预设分组内选择指定客户端设备之前,所述方法还包括:所述服务器收集客户端设备之间的位置关系,依据所述位置关系将所述客户端设备划分为不同分组。
可选地,所述方法还包括:所述服务器收集以下信息之一:所述目标客户端设备的唯一标识,所述目标客户端设备的性能数据,所述目标客户端设备的邻近伙伴的唯一标识和性能数据。
可选地,所述预设分组通过以下方式确定:所述服务器收集客户端设备之间的位置关系,确定所述目标客户端设备的邻近伙伴,将所述目标客户端设备和所述邻近伙伴划分为同一组,其中,所述目标客户端设备组播消息,在预定时间内接收到所述邻近伙伴的应答信息。
可选地,所述方法还包括:在所述文件大小大于预设阈值时,将所述文件进行分片发送。
可选地,将所述文件进行分片发送之后,所述方法还包括:接收所述目标客户端设备的缺失第一分片信息,将与所述缺失第一分片信息对应的第一分片发送给所述目标客户端设备,其中,所述缺失第一分片信息用于标识所述目标客户端设备没有接收到所述第一分片。
可选地,所述服务器从预设分组内选择指定客户端设备包括:所述服务器选择所述预设分组中性能最优的客户端设备作为所述指定客户端设备。
可选地,所述服务器选择所述预设分组中性能最优的客户端设备作为所述指定客户端设备,包括:选择所述预设分组中CPU核数最高的客户端设备为所述指定客户端设备;在所述预设分组中的客户端设备的CPU核数相同的情况下,选择所述预设分组中内存最大的客户端设备为所述指定客户端设备;在所述预设分组中的客户端设备的CPU核数相同,内存相同的情况下,选择所述预设分组中磁盘空间最大的客户端设备为所述指定客户端设备。
可选地,所述预设分组通过以下方式确定:所述服务器依据预设规则对多个客户端设备进行分组,得到所述预设分组,其中,在所述多个客户端设备之间用于反映通信质量的参数值大于预设值时,将所述多个客户端设备分为同一组。
根据本发明的一个实施例,提供了一种文件的发送方法,其特征在于,包括:组播源接收服务器发送的文件,其中,所述组播源是所述服务器在预设分组内按照预定规则选择的指定客户端设备,其中,所述预设分组内包括多个客户端设备;所述组播源将向所述预设分组内的目标客户端设备组播所述文件。
可选地,组播源接收服务器发送的文件之前,所述多个客户端设备将以下信息至少之一上报所述服务器:所述目标客户端设备的唯一标识,所述目标客户端设备的性能数据,所述目标客户端设备的邻近伙伴的唯一标识和性能数据。
根据本发明的另一个实施例,提供了一种文件的发送装置,应用于服务器,包括:选取模块,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备;发送模块,用于向所述组播源发送所述服务器需要下发的文件,并通过所述组播源向所述预设分组内的目标客户端设备组播所述文件。
可选地,所述预设分组通过以下方式确定:所述服务器收集客户端设备之间的位置关系,确定所述目标客户端设备的邻近伙伴,将所述目标客户端设备和所述邻近伙伴划分为同一组,其中,所述目标客户端设备组播消息,在预定时间内接收到所述邻近伙伴的应答信息。
可选地,所述发送模块还用于在所述文件大小大于预设阈值时,将所述文件进行分片发送。
可选地,所述发送模块还用于在将所述文件进行分片发送之后,接收所述目标客户端设备的缺失第一分片信息,将与所述缺失第一分片信息对应的第一分片发送给所述目标客户端设备,其中,所述缺失第一分片信息用于标识所述目标客户端设备没有接收到所述第一分片。
根据本发明的另一个实施例,提供了一种文件的发送装置,应用于作为组播源的客户端设备,其特征在于,包括:接收模块,用于接收服务器发送的文件,其中,所述组播源是所述服务器在预设分组内按照预定规则选择的指定客户端设备,其中,所述预设分组内包括多个客户端设备;转发模块,用于向所述预设分组内的目标客户端设备组播所述文件。
根据本发明的另一个实施例,还提供了一种发送文件系统,其特征在于,包括:服务器,多个客户端设备,所述服务器,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备,并向所述组播源发送所述服务器需要下发的文件所述组播源,用于向所述预设分组内的目标客户端设备组播所述文件。
可选地,所述系统还包括:在所述服务器确定所述文件大小大于预设阈值时;所述服务器将所述文件进行分片发送;所述组播源接收所述分片发送的文件,并将所述文件组播到所述目标客户端设备。
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备;向所述组播源发送所述服务器需要下发的文件,并通过所述组播源向所述预设分组内的目标客户端设备组播所述文件。
该存储介质还用于执行以下步骤的程序代码:组播源接收服务器发送的文件,其中,所述组播源是所述服务器在预设分组内按照预定规则选择的指定客户端设备,其中,所述预设分组内包括多个客户端设备;所述组播源将向所述预设分组内的目标客户端设备组播所述文件。
通过本发明,服务器在多个客户端设备中进行分组,在每个分组内选择一个组播源,服务器将待发送到目标客户端设备的文件下发到组播源,由组播源将该文件组播到目标客户端设备。解决了相关技术中服务器向客户端设备推送文件效率差的问题,大幅提高了服务器下发文件的效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种文件的发送方法的流程图;
图2是根据本发明实施例的一种文件的发送方法流程图;
图3是根据本发明可选实施例服务器组播自动分组流程图;
图4是根据本发明可选实施例的一种分组示意图一;
图5是根据本发明可选实施例的一种分组示意图二;
图6是根据本发明实施例的文件的发送装置的结构框图一;
图7是根据本发明实施例的文件的发送装置的结构框图二。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请记载的实施例可以运行在计算机设备上,应用场景是服务器向目标客户端设备下发文件。
在本实施例中提供了一种运行于计算机设备上的一种文件的发送方法,图1是根据本发明实施例的一种文件的发送方法的流程图,如图1所示,该流程包括如下步骤:
步骤S102,服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,该预设分组内包括多个客户端设备;
步骤S104,向该组播源发送该服务器需要下发的文件,并通过该组播源向该预设分组内的目标客户端设备组播该文件。
通过上述步骤,服务器从预设分组内选择指定客户端设备作为组播源,向组播源下发文件,组播源将文件转发到目标客户端设备。解决了相关技术中服务器向客户端设备推送文件效率差的问题,大幅提高了服务器下发文件的效率。
可选地,该服务器确定接收该文件的一个或多个目标客户端设备,并在该一个或多个目标客户端设备所属的预设分组中选择该指定客户端设备。在服务器的管辖范围内,有多个客户端设备,在客户端设备可以通信的情况下,尽可能多的将客户端设备划分为一个组。在众多的客户端设备中,本次需要下发的文件对应的是部分客户端设备,即目标客户端设备。
可选地,服务器从预设分组内选择指定客户端设备之前,该服务器收集客户端设备之间的位置关系,依据该位置关系将该客户端设备划分为不同分组。需要说明的是,该申请文件中的位置关系不是物理意义上的距离关系,而是指在客户端设备之间在网络中传输信息快慢,客户端设备之间传输信息快,他们在网络中的位置关系近,即在该实施例中是依据客户端设备之间的传输信息快慢,进行分组。在上一个可选实施例中,服务器进行分组,分组依据的是客户端设备之间的位置关系。可选地,该服务器收集以下信息之一:该目标客户端设备的唯一标识,该目标客户端设备的性能数据,该目标客户端设备的邻近伙伴的唯一标识和性能数据。客户端设备的唯一标识用于标识客户端设备,性能数据主要是在服务器选取组播源时起作用,该性能数据包括客户端设备的存储空间等,至于目标客户端设备的邻近伙伴的相关数据则是为了服务器在划分组时使用,邻近伙伴是与客户端设备传输信息快的设备,不是物理意义上的距离关系,客户端设备组播消息,在预设时间可以接收到客户端设备消息应答的即为邻近伙伴。
在一个可选实施例中,该预设分组通过以下方式确定:该服务器收集客户端设备之间的位置关系,确定该目标客户端设备的邻近伙伴,将该目标客户端设备和该邻近伙伴划分为同一组,其中,该目标客户端设备组播消息,在预定时间内接收到该邻近伙伴的应答信息。在上述实施例中记载了分组的方式,需要说明的是,服务器每收到一次客户端设备的上报信息就会进行一次分组,或者,服务器每需要下发一次信息就会进行一次分组,以确保在服务器划分的分组在时效性的最优。相应的,可以预先设置客户端设备,在以下情况下上报信息:增加了新客户端设备,老客户端设备的变动,客户端设备重启等。
可选地,在该文件大小大于预设阈值时,将该文件进行分片发送。在下发文件过于大时,为了避免丢失以及考虑到组播源的性能等问题,服务器在下发文件时,将文件分片发送,目标客户端设备在接收到分片时自动将分片组合。可选地,将该文件进行分片发送之后,接收该目标客户端设备的缺失第一分片信息,将与该缺失第一分片信息对应的第一分片发送给该目标客户端设备,其中,该缺失第一分片信息用于标识该目标客户端设备没有接收到该第一分片。需要说明的是,该第一分片不具有先后顺序限定含义,并不是指将信息分成若干片之后的第一片。在一个可选实施例中,组播可能存在多个丢包,目标客户端设备缺少的所有分片都会向服务器单独获取,例如,目标文件被分成100分片,如果目标客户端设备缺少3个分片,则该目标客户端设备单独向服务器请求获取这3个分片。在目标客户端设备没有接收到一个分片时,不经过组播源,直接向服务器获取缺失的分片,提升了分片的传输效率。
可选地,该服务器从预设分组内选择指定客户端设备包括:该服务器选择该预设分组中性能最优的客户端设备作为该指定客户端设备。在该申请文件的背景技术中,记载了一段关于组播源性能的描述,在本实施例中,性能最优是综合考量客户端设备,例如客户端设备的CPU是单核双核?处理器是什么型号?存储空间是大于预设值等等。
可选地,该服务器选择该预设分组中性能最优的客户端设备作为该指定客户端设备,选取性能最优的客户端设备逐次比较客户端设备的CPU核数,内存大小,硬盘大小。选择该预设分组中CPU核数最高的客户端设备为该指定客户端设备;在该预设分组中的客户端设备的CPU核数相同的情况下,选择该预设分组中内存最大的客户端设备为该指定客户端设备;在该预设分组中的客户端设备的CPU核数相同,内存相同的情况下,选择该预设分组中磁盘空间最大的客户端设备为该指定客户端设备。
可选地,在以下情况下确定该客户端设备为性能最优:在反应终端性能的一个或多个参数大于预定值的情况下,确定该客户端设备为性能最优的客户端设备。
可选地,该预设分组通过以下方式确定:该服务器依据预设规则对多个客户端设备进行分组,得到该预设分组,其中,在该多个客户端设备之间用于反映通信质量的参数值大于预设值时,将该多个客户端设备分为同一组。结合上述实施例记载的分配小组方法,尽可能多的将客户端设备分在一组。
图2是根据本发明实施例的一种文件的发送方法流程图,如图2所示,步骤如下:
S202,组播源接收服务器发送的文件,其中,该组播源是该服务器在预设分组内按照预定规则选择的指定客户端设备,其中,该预设分组内包括多个客户端设备;
S204,该组播源将向该预设分组内的目标客户端设备组播该文件。
可选地,组播源接收服务器发送的文件之前,该多个客户端设备将以下信息至少之一上报该服务器:该目标客户端设备的唯一标识,该目标客户端设备的性能数据,该目标客户端设备的邻近伙伴的唯一标识和性能数据。
在本发明的一个可选实施例中,服务器通过收集客户端设备上报的邻近伙伴成员信息,自动完成客户端设备成员的分组。当服务器需要下发目标文件给多个目标客户端设备时,首先查询分组关系表,找到目标客户端设备所在的分组信息,然后在各个分组中选出性能最优的客户端设备作为组播源,充当组播源的客户端设备获取目标文件后,组播此文件。其他目标客户端设备通过组播推送,获取目标文件。当组播文件过大时,进行分片发送,客户端设备自动组合分片,分片丢包时,单独向服务器获取此分片。
具体步骤如下:
1.客户端设备程序启动后上报消息给服务器,消息包括:自身的唯一标识、自身的性能数据、邻近伙伴们的唯一标识和性能数据。
客户端设备A收集上报数据过程:
(1)客户端设备A发送组播消息GET_INFO。
(2)客户端设备B、C、D等监听到此消息,获取各自性能数据信息INFO,并将INFO信息连同自身标识作为消息组播发送出去。
(3)客户端设备A监听到B、C、D等的INFO消息,整理后将本机数据信息及B、C、D的数据信息上报到服务器侧。
2.服务器收到客户端设备上报的邻近伙伴成员信息后,自动分组,保存分组信息和客户端设备性能数据,更新分组关系表。
流程说明:
(1)服务器收到邻近伙伴成员信息列表list信息后,通过本地保存的分组关系表,获取各个成员的属组,没有属组信息的成员对应临时组。
(2)选择最优分组。在步骤(1)获取的分组信息中,获取包含list成员个数最多的组。若最优组为临时组,则生成新的组为最优组。
(3)更新分组关系表。分组关系表中已存在的list中的成员属组更新为最优组,不在分组关系表中的成员加入表中,属组对应为最优组。
3.组播下发文件。服务器获取目标客户端设备所在的分组信息,选择各分组中性能最好的客户端设备作为组播源进行组播文件。当组文件比较大时,进行分片组播。组播源向服务器请求下载文件时,分片组播,边下载边组播。客户端设备对收到的分片进行组片,遇到缺失的分片即可单独向服务器获取即可。
采用上述实施例记载的方法,服务器向客户端设备推送文件时,改善了丢包现象,减少了传输时延,客户端设备更高效地获取到文件,保证了文件的有效接收时间。对于大文件推送,提升了客户端设备接收效率。
在执行上述实施例记载的方法之前,存在预置条件:客户端设备处于组播监听的状态。
以下是本发明可选实施例的具体实施方式
一,客户端设备程序启动后上报消息给服务器,消息包括:自身的唯一标识、自身的性能数据、邻近伙伴们的唯一标识和性能数据。
二,服务器收到客户端设备上报的邻近伙伴成员信息后,自动分组,保存分组信息和客户端设备性能数据。图3是根据本发明可选实施例服务器组播自动分组流程图,如图3所示,步骤如下;
步骤S301,服务器收到客户端设备上报的邻近伙伴成员信息列表信息list。
步骤S302,遍历list,查找本地保存的分组关系表group_relation。
步骤S303,获取每个伙伴成员的属组。尚无属组的新成员列表记为list_new,对应临时组group_0。
步骤S304,找出最优分组。在S303中获取的分组信息中,获取包含list成员个数最多的组即为最优组group_best。
步骤S305,若最优组为group_0,产生新的组为最优组group_best。
步骤S306,若最优化不是group_0,当前最优组记为group_best。
步骤S307,遍历list中的成员member,若member是尚未分组的新成员,则在表group_relation中增加一条记录,member对应属组group_best。若memberber不是新成员,执行步骤S308。
步骤S308,判断member的属组是否为group_best,若member属组不是group_best,更新属组为group_best;若member属组是group_best,不改变。
下面举例说明上述分组流程:
(1)第一次分组:此时服务器尚无成员分组信息。
收到第一个客户端设备机上报的组播内成员数据信息,假设成员为A、B、C。成员无分组信息,对应临时分组group_0。此时产生新的组记做组1,成员A、B、C加入组1,表1是第一次分组的关系表,如表1所示:
表1
客户端设备 | 属组 |
A | 1 |
B | 1 |
C | 1 |
(2)第N(N>2)次分组。
假设前N-1次分组后,形成图4,图4是根据本发明可选实施例的一种分组示意图一,如图4所示,展示了第N-1次分组后的分组情况。表2是第N次上报的客户端设备成员对应的属组信息表,如表2所示:
表2
客户端设备 | 属组 |
C | 1 |
E | 5 |
F | 1 |
H | 4 |
X | 0 |
第N次收到客户端设备上报的邻近伙伴成员列表为C、E、F、H、X。
遍历成员,获取此次上报的成员对应的属组信息,表3是第N次上报的属组对应成员个数的统计表,如表3所示,尚未分组的成员对应临时组0。
表3
属组 | 伙伴成员个数 |
1 | 2 |
4 | 1 |
5 | 1 |
0 | 1 |
计算属组中的伙伴成员个数,见表3,最佳分组为组1。
组1内的成员C、F组信息不变,更新分组关系表中E、H的属组信息为1,增加一条记录X对应组1。
更新后的分组关系见图5,图5是根据本发明可选实施例的一种分组示意图二,如图5所示,展示了第N次分组后的分组情况。
三,组播下发文件。服务器获取目标客户端设备所在的分组信息,选择各分组中性能最好的客户端设备作为组播源进行组播文件。
组播下发文件的详细过程如下,
(1)服务器通过分组关系表获取目标客户端设备所在的属组。
(2)获取各属组下的成员客户端设备,根据成员客户端设备的性能数据获取最佳的客户端设备作为组播源,并通知组播源。
(3)组播源向服务器下载文件后,通过组播发出。对于大文件组播,选择分片组播,下载完一个分片后即可组播出去。
(4)目标客户端设备收到组播文件。对于分片文件,自动组合。缺少的分片,单独向服务器下载即可。
本申请实施例中服务器对客户端设备进行自动分组,并保存分组信息,通过分组方式设置组播源,组播文件,改善丢包现象。当组播文件过大时,采用分片发送,客户端设备丢失的小分片单独向服务器获取,客户端设备自动完成组片,提高了发送接收效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例该的方法。
实施例2
在本实施例中还提供了一种文件的发送装置,应用于服务器,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的文件的发送装置的结构框图一,该装置应用于服务器,如图6所示,该装置包括:
选取模块62,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,该预设分组内包括多个客户端设备;
发送模块64,与选取模块62连接,用于向该组播源发送该服务器需要下发的文件,并通过该组播源向该预设分组内的目标客户端设备组播该文件。
可选地,该预设分组通过以下方式确定:该服务器收集客户端设备之间的位置关系,确定该目标客户端设备的邻近伙伴,将该目标客户端设备和该邻近伙伴划分为同一组,其中,该目标客户端设备组播消息,在预定时间内接收到该邻近伙伴的应答信息。
可选地,该选取模块62还用于确定接收该文件的一个或多个目标客户端设备,并在该一个或多个目标客户端设备所属的预设分组中选择该指定客户端设备。
可选地,该选取模块62还用于从预设分组内选择指定客户端设备之前,收集客户端设备之间的位置关系,依据该位置关系将该客户端设备划分为不同分组。
可选地,该服务器收集以下信息之一:该目标客户端设备的唯一标识,该目标客户端设备的性能数据,该目标客户端设备的邻近伙伴的唯一标识和性能数据。
可选地,该发送模块64还用于在该文件大小大于预设阈值时,将该文件进行分片发送。
可选地,该发送模块64还用于在将该文件进行分片发送之后,接收该目标客户端设备的缺失第一分片信息,将与该缺失第一分片信息对应的第一分片发送给该目标客户端设备,其中,该缺失第一分片信息用于标识该目标客户端设备没有接收到该第一分片。
可选地,该选取模块62还用于选择该预设分组中性能最优的客户端设备作为该指定客户端设备。
可选地,该预设分组通过以下方式确定:该服务器依据预设规则对多个客户端设备进行分组,得到该预设分组,其中,在该多个客户端设备之间用于反映通信质量的参数值大于预设值时,将该多个客户端设备分为同一组。
图7是根据本发明实施例的文件的发送装置的结构框图二,该装置应用于作为组播源的客户端设备,如图7所示,该装置包括:
接收模块72,用于接收服务器发送的文件,其中,该组播源是该服务器在预设分组内按照预定规则选择的指定客户端设备,其中,该预设分组内包括多个客户端设备;
转发模块74,与接收模块72连接,用于向该预设分组内的目标客户端设备组播该文件。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
根据本发明的另一个实施例,还提供了一种发送文件系统,其特征在于,包括:服务器,多个客户端设备,
该服务器,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,该预设分组内包括多个客户端设备,并向该组播源发送该服务器需要下发的文件
该组播源,用于向该预设分组内的目标客户端设备组播该文件。
可选地,该系统还包括:
在该服务器确定该文件大小大于预设阈值时;
该服务器将该文件进行分片发送;
该组播源接收该分片发送的文件,并将该文件组播到该目标客户端设备。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,该预设分组内包括多个客户端设备;
S2,向该组播源发送该服务器需要下发的文件,并通过该组播源向该预设分组内的目标客户端设备组播该文件。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
S3,组播源接收服务器发送的文件,其中,该组播源是该服务器在预设分组内按照预定规则选择的指定客户端设备,其中,该预设分组内包括多个客户端设备;
S4,该组播源将向该预设分组内的目标客户端设备组播该文件。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例中记载的方法步骤。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种文件的发送方法,其特征在于,包括:
服务器从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备;
向所述组播源发送所述服务器需要下发的文件,并通过所述组播源向所述预设分组内的目标客户端设备组播所述文件。
2.根据权利要求1所述的方法,其特征在于,服务器从预设分组内选择指定客户端设备包括:
所述服务器确定接收所述文件的一个或多个目标客户端设备,并在所述一个或多个目标客户端设备所属的预设分组中选择所述指定客户端设备。
3.根据权利要求1所述的方法,其特征在于,服务器从预设分组内选择指定客户端设备之前,所述方法还包括:
所述服务器收集客户端设备之间的位置关系,依据所述位置关系将所述客户端设备划分为不同分组。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述服务器收集以下信息之一:所述目标客户端设备的唯一标识,所述目标客户端设备的性能数据,所述目标客户端设备的邻近伙伴的唯一标识和性能数据。
5.根据权利要求4所述的方法,其特征在于,所述预设分组通过以下方式确定:
所述服务器收集客户端设备之间的位置关系,确定所述目标客户端设备的邻近伙伴,将所述目标客户端设备和所述邻近伙伴划分为同一组,其中,所述目标客户端设备组播消息,在预定时间内接收到所述邻近伙伴的应答信息。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述文件大小大于预设阈值时,将所述文件进行分片发送。
7.根据权利要求6所述的方法,其特征在于,将所述文件进行分片发送之后,所述方法还包括:
接收所述目标客户端设备的缺失第一分片信息,将与所述缺失第一分片信息对应的第一分片发送给所述目标客户端设备,其中,所述缺失第一分片信息用于标识所述目标客户端设备没有接收到所述第一分片。
8.根据权利要求1所述的方法,其特征在于,所述服务器从预设分组内选择指定客户端设备包括:
所述服务器选择所述预设分组中性能最优的客户端设备作为所述指定客户端设备。
9.根据权利要求8所述的方法,其特征在于,所述服务器选择所述预设分组中性能最优的客户端设备作为所述指定客户端设备,包括:
选择所述预设分组中CPU核数最高的客户端设备为所述指定客户端设备;
在所述预设分组中的客户端设备的CPU核数相同的情况下,选择所述预设分组中内存最大的客户端设备为所述指定客户端设备;
在所述预设分组中的客户端设备的CPU核数相同,内存相同的情况下,选择所述预设分组中磁盘空间最大的客户端设备为所述指定客户端设备。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述预设分组通过以下方式确定:所述服务器依据预设规则对多个客户端设备进行分组,得到所述预设分组,其中,在所述多个客户端设备之间用于反映通信质量的参数值大于预设值时,将所述多个客户端设备分为同一组。
11.一种文件的发送方法,其特征在于,包括:
组播源接收服务器发送的文件,其中,所述组播源是所述服务器在预设分组内按照预定规则选择的指定客户端设备,其中,所述预设分组内包括多个客户端设备;
所述组播源将向所述预设分组内的目标客户端设备组播所述文件。
12.根据权利要求11所述的方法,其特征在于,组播源接收服务器发送的文件之前,所述多个客户端设备将以下信息至少之一上报所述服务器:
所述目标客户端设备的唯一标识,所述目标客户端设备的性能数据,所述目标客户端设备的邻近伙伴的唯一标识和性能数据。
13.一种文件的发送装置,应用于服务器,其特征在于,包括:
选取模块,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括多个客户端设备;
发送模块,用于向所述组播源发送所述服务器需要下发的文件,并通过所述组播源向所述预设分组内的目标客户端设备组播所述文件。
14.根据权利要求13所述的装置,其特征在于,所述预设分组通过以下方式确定:
所述服务器收集客户端设备之间的位置关系,确定所述目标客户端设备的邻近伙伴,将所述目标客户端设备和所述邻近伙伴划分为同一组,其中,所述目标客户端设备组播消息,在预定时间内接收到所述邻近伙伴的应答信息。
15.根据权利要求13所述的装置,其特征在于,所述发送模块还用于在所述文件大小大于预设阈值时,将所述文件进行分片发送。
16.根据权利要求15所述的装置,其特征在于,所述发送模块还用于在将所述文件进行分片发送之后,接收所述目标客户端设备的缺失第一分片信息,将与所述缺失第一分片信息对应的第一分片发送给所述目标客户端设备,其中,所述缺失第一分片信息用于标识所述目标客户端设备没有接收到所述第一分片。
17.一种文件的发送装置,应用于作为组播源的客户端设备,其特征在于,包括:
接收模块,用于接收服务器发送的文件,其中,所述组播源是所述服务器在预设分组内按照预定规则选择的指定客户端设备,其中,所述预设分组内包括多个客户端设备;
转发模块,用于向所述预设分组内的目标客户端设备组播所述文件。
18.一种发送文件系统,其特征在于,包括:服务器,多个客户端设备,
所述服务器,用于从预设分组内选择指定客户端设备,并将该指定客户端设备作为组播源,其中,所述预设分组内包括所述多个客户端设备,并向所述组播源发送所述服务器需要下发的文件
所述组播源,用于向所述预设分组内的目标客户端设备组播所述文件。
19.根据权利要求18所述的系统,其特征在于,所述系统还包括:
在所述服务器确定所述文件大小大于预设阈值时;
所述服务器将所述文件进行分片发送;
所述组播源接收所述分片发送的文件,并将所述文件组播到所述目标客户端设备。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610510292.2A CN107566321B (zh) | 2016-06-30 | 2016-06-30 | 文件的发送方法、装置及系统 |
PCT/CN2017/087569 WO2018001063A1 (zh) | 2016-06-30 | 2017-06-08 | 文件的发送方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610510292.2A CN107566321B (zh) | 2016-06-30 | 2016-06-30 | 文件的发送方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107566321A true CN107566321A (zh) | 2018-01-09 |
CN107566321B CN107566321B (zh) | 2021-06-15 |
Family
ID=60785912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610510292.2A Active CN107566321B (zh) | 2016-06-30 | 2016-06-30 | 文件的发送方法、装置及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107566321B (zh) |
WO (1) | WO2018001063A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110430480A (zh) * | 2019-08-09 | 2019-11-08 | 深圳市迈岭信息技术有限公司 | 一种流媒体云存储同步的系统和方法 |
CN110491386A (zh) * | 2019-08-16 | 2019-11-22 | 北京云中融信网络科技有限公司 | 一种生成会议纪要的方法、装置和计算机可读存储介质 |
CN110969458A (zh) * | 2018-09-29 | 2020-04-07 | 武汉斗鱼网络科技有限公司 | 一种客户端集群的积分方法、客户端及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111092741B (zh) * | 2018-10-24 | 2022-04-29 | 玲珑视界科技(北京)有限公司 | 一种通过组播通道进行文件分发系统及方法 |
CN113099259B (zh) * | 2021-04-19 | 2024-04-16 | 北京沃东天骏信息技术有限公司 | 流媒体的组播发送方法、装置、组播服务器以及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499914A (zh) * | 2008-01-28 | 2009-08-05 | 华为技术有限公司 | 一种组播系统的父节点选择方法、系统及节点 |
CN102802094A (zh) * | 2012-09-12 | 2012-11-28 | 上海斐讯数据通信技术有限公司 | 一种epon系统中缩短组播业务流下发延时的改进方法 |
US20140344408A1 (en) * | 2010-06-02 | 2014-11-20 | Microsoft Corporation | Recognition system for sharing information |
CN104540120A (zh) * | 2014-12-24 | 2015-04-22 | 中国科学院计算技术研究所 | 一种PMIPv6支持移动组播的路由优化方法及系统 |
CN104980482A (zh) * | 2014-12-24 | 2015-10-14 | 深圳市腾讯计算机系统有限公司 | 文件发送方法及装置、文件接收方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100346605C (zh) * | 2003-06-26 | 2007-10-31 | 华为技术有限公司 | 一种组播源控制的方法和系统 |
CN102118254A (zh) * | 2010-01-05 | 2011-07-06 | 上海贝尔股份有限公司 | 一种上行组播控制方法及其装置 |
CN104506330B (zh) * | 2014-11-28 | 2018-08-17 | 北京奇艺世纪科技有限公司 | 一种消息同步方法和系统 |
-
2016
- 2016-06-30 CN CN201610510292.2A patent/CN107566321B/zh active Active
-
2017
- 2017-06-08 WO PCT/CN2017/087569 patent/WO2018001063A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499914A (zh) * | 2008-01-28 | 2009-08-05 | 华为技术有限公司 | 一种组播系统的父节点选择方法、系统及节点 |
US20140344408A1 (en) * | 2010-06-02 | 2014-11-20 | Microsoft Corporation | Recognition system for sharing information |
CN102802094A (zh) * | 2012-09-12 | 2012-11-28 | 上海斐讯数据通信技术有限公司 | 一种epon系统中缩短组播业务流下发延时的改进方法 |
CN104540120A (zh) * | 2014-12-24 | 2015-04-22 | 中国科学院计算技术研究所 | 一种PMIPv6支持移动组播的路由优化方法及系统 |
CN104980482A (zh) * | 2014-12-24 | 2015-10-14 | 深圳市腾讯计算机系统有限公司 | 文件发送方法及装置、文件接收方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110969458A (zh) * | 2018-09-29 | 2020-04-07 | 武汉斗鱼网络科技有限公司 | 一种客户端集群的积分方法、客户端及系统 |
CN110430480A (zh) * | 2019-08-09 | 2019-11-08 | 深圳市迈岭信息技术有限公司 | 一种流媒体云存储同步的系统和方法 |
CN110430480B (zh) * | 2019-08-09 | 2022-02-18 | 深圳市迈岭信息技术有限公司 | 一种流媒体云存储同步的系统和方法 |
CN110491386A (zh) * | 2019-08-16 | 2019-11-22 | 北京云中融信网络科技有限公司 | 一种生成会议纪要的方法、装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107566321B (zh) | 2021-06-15 |
WO2018001063A1 (zh) | 2018-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107566321A (zh) | 文件的发送方法、装置及系统 | |
CN107332876B (zh) | 区块链状态的同步方法及装置 | |
TWI259013B (en) | Method and system for reducing message instances | |
CN101218770B (zh) | 无线资源分配方法、通信装置 | |
US7852788B2 (en) | Method of organizing nodes of a network into groupings of nodes, computer program for implementing such a method and communication device forming a node of a network of nodes | |
CN100521661C (zh) | 一种向群组发送即时消息的方法 | |
CN110808948B (zh) | 远程过程调用方法、装置及系统 | |
CN108881354A (zh) | 一种推送信息存储方法、装置、服务器和计算机存储介质 | |
CN103874019A (zh) | 语音交互方法和装置 | |
CN102833778A (zh) | 无线访问控制器测试系统和方法 | |
CN104980290A (zh) | 一种建立群组的方法及服务器 | |
KR20120125184A (ko) | 네트워크 접근 방법 및 이를 위한 장치 | |
CN111884875A (zh) | 一种离线设备确定方法及装置 | |
CN103716230A (zh) | 消息发送方法、装置及服务器 | |
CN105243078B (zh) | 一种文件资源的分发方法、系统和装置 | |
CN103299298B (zh) | 处理业务的方法和系统 | |
CN107396417B (zh) | 用于网络系统的网络通信方法 | |
JP2007288312A (ja) | 無線lanを用いたデータ収集方法およびデータ収集システム | |
CN105763535A (zh) | 会话消息列表处理方法、设备和系统 | |
CN104796435A (zh) | 一种消息推送方法及服务器 | |
CN104079663A (zh) | 分布式实时同步网络系统及其通告数据的方法 | |
CN105516247A (zh) | 通信应用的信息推荐方法和装置 | |
CN102769830B (zh) | 组播报文发送方法和装置、网络设备 | |
CN111815339B (zh) | 一种营销信息推送方法及设备 | |
US20110264763A1 (en) | Method for retrieving object from device management client and associated device management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180418 Address after: 518057 Nanshan District science and technology, Guangdong Province, South Road, No. 55, No. Applicant after: ZTE Corporation Address before: Yuhuatai District of Nanjing City, Jiangsu province 210012 Bauhinia Road No. 68 Applicant before: Nanjing Zhongxing New Software Co., Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |