数据分享系统及方法技术方案

技术编号:14827517 阅读:32 留言:0更新日期:2017-03-16 14:23
一种数据分享方法,应用于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,所述数据分享方法包括:从一服务器下载数据;在所述群组内广播一“加入我们”封包以邀请所述其他电子装置加入一分享树;判断是否接收到群组内一第二电子装置发出的“收养我”封包;在接收到“收养我”封包时判断所述第二电子装置是否可成为所述第一电子装置的子节点;在所述第二电子装置可成为所述第一电子装置的子节点时,建立所述第一电子装置与所述第二电子装置的连接;及传送所下载的数据至所述第二电子装置。本发明专利技术还提供一种数据分享系统。本发明专利技术的数据分享系统可降低服务器的负荷及避免同时下载导致的网络拥堵。

【技术实现步骤摘要】

本专利技术涉及一种数据分享系统及方法,特别是关于一种服务器向多个终端设备分享数据的系统及方法。
技术介绍
当需要从服务器下载更新软件或下载影像或视频等数据文件到一组电子装置(例如一个大公司内的多台网络电话机、客户端电脑等),这些电子装置通常是通过网络分别连接到服务器去下载。当所有电子装置同时连接到服务器下载数据时,会给服务器造成沉重的负担,而且,还可能造成网络拥堵。
技术实现思路
鉴于以上内容,有必要提供一种数据分享系统及方法,能够利用分享树的方式将数据逐层传送至每一节点。一种数据分享系统,运行于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,所述的数据分享系统包括:下载模块,用于从服务器下载数据;广播模块,用于在所述群组内广播一“加入我们”封包以邀请所述其他电子装置加入一分享树,所述“加入我们”封包包括所述第一电子装置的识别信息,所述封包的类型,所述封包的内容;收养模块,用于判断是否接收到群组内一第二电子装置发出的“收养我”封包,所述“收养我”封包包括第二电子装置的识别信息及封包的类型,所述收养模块还用于在接收到“收养我”封包时判断所述“收养我”封包的识别信息是否与所述第一电子装置相同,当所述“收养我”封包的识别信息与所述第一电子装置相同时,所述收养模块还用于基于一预定法则判断所述第二电子装置是否可成为所述第一电子装置的子节点,所述预定法则包括:一个父节点最多包括一个左节点和一个右节点,每一节点仅只有一个父节点;所述收养模块还用于在所述第二电子装置可成为所述第一电子装置的子节点时,建立所述第一电子装置与所述第二电子装置的连接;传送模块,用于传送所下载的数据至所述第二电子装置。一种数据分享系统,运行于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,所述的数据分享系统包括:孤儿模块,用于在接收到群组内一第二电子装置发出的“加入我们”封包时,判断所述“加入我们”封包的识别信息是否与所述第一电子装置相同,及在所述识别信息与所述电子装置相同时判断所述电子装置是否愿意加入一分享树,当所述第一电子装置愿意加入所述分享树时,使所述第一电子装置进入一“孤儿”状态,所述“孤儿”状态表明所述第一电子装置愿意加入一分享树;一被收养模块,用于在所述第一电子装置进入“孤儿”状态时开启一通信端口,并在所述群组内广播“收养我”封包,当收到来自一父节点的连线请求时通过所述通信端口与所述父节点建立连接,并在接收到来自父节点的“收养”封包时使所述第一电子装置进入“被收养”状态;及接收模块,用于在所述第一电子装置进入“被收养”状态时接收来自父节点的数据。一种数据分享方法,应用于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,所述的数据分享方法包括:从一服务器下载数据;在所述群组内广播一“加入我们”封包以邀请所述其他电子装置加入一分享树,所述“加入我们”封包包括所述第一电子装置的识别信息,所述封包的类型,所述封包的内容;判断是否接收到群组内一第二电子装置发出的“收养我”封包,所述“收养我”封包包括第二电子装置的识别信息及封包的类型;在接收到“收养我”封包时判断所述“收养我”封包的识别信息是否与所述第一电子装置相同;当所述“收养我”封包的识别信息与所述第一电子装置相同时,基于一预定法则判断所述第二电子装置是否可成为所述第一电子装置的子节点,所述预定法则包括:一个父节点最多包括一个左节点和一个右节点,每一节点仅只有一个父节点;在所述第二电子装置可成为所述第一电子装置的子节点时,建立所述第一电子装置与所述第二电子装置的连接;及传送所下载的数据至所述第二电子装置。一种数据分享方法,应用于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,所述的数据分享方法包括:在接收到群组内一第二电子装置发出的“加入我们”封包时,判断所述“加入我们”封包的识别信息是否与所述第一电子装置相同;在所述识别信息与所述电子装置相同时判断所述电子装置是否愿意加入一分享树;当所述第一电子装置愿意加入所述分享树时,使所述第一电子装置进入一“孤儿”状态,所述“孤儿”状态表明所述第一电子装置愿意加入一分享树;在所述第一电子装置进入“孤儿”状态时开启一通信端口;在所述群组内广播“收养我”封包;当收到来自一父节点的连线请求时通过所述通信端口与所述父节点建立连接;在接收到来自父节点的“收养”封包时使所述第一电子装置进入“被收养”状态;及在所述第一电子装置进入“被收养”状态时接收来自父节点的数据。相较于现有技术,本专利技术所述的数据分享系统及方法能够利用分享树将数据逐层传送,以便降低对服务器的存取量,同时避免造成网络拥堵。附图说明图1是本专利技术较佳实施例的数据分享架构示意图。图2是本专利技术较佳实施例的分享树的示意图。图3是本专利技术电子装置的较佳实施例的模块图。图4是本专利技术电子装置的较佳实施例的另一模块图。图5是本专利技术较佳实施例的数据封包的示意图。图6是本专利技术较佳实施例的确定分享树的节点的规则的示意图。图7是本专利技术数据分享方法的较佳实施例的流程图。图8是本专利技术数据分享方法的较佳实施例的另一流程图。图9是本专利技术数据分享方法的较佳实施例的再一流程图。图10是本专利技术数据分享方法的较佳实施例的又一流程图。图11是现有的数据分享架构示意图。主要元件符号说明电子装置1,3,4,1101服务器2,1102分享树100种子10,600非种子节点12父节点120子节点122第一数据分享系统30存储器31,41处理器32,42设置模块301下载模块302广播模块303收养模块304传送模块305错误模块306第二数据分享系统40孤儿模块401被收养模块402接收模块403传送模块404收养模块405错误模块406数据封包500组织ID字段502产品ID字段504群组ID字段506种子MAC字段508类型字段510主体内容长度字段512主体内容字段514种子的右子节点602种子的右子节点的左子节点604种子的右子节点的左子节点的右子节点606下面结合实施方式进行详细说明。具体实施方式参阅图11所示,是现有的数据分享架构示意图。在该架构中,多个电子装置1102,例如,网络电话,互联网协议电话(VoiceOverInternetProtocol,VOIP)网关,客户端电脑等,与一服务器1100通过因特网或广域网(WideAreaNetwork,WAN)等网络进行连接。所述电子装置1102可通过局域网(LocalAreaNetwork,LAN)等网络进行连接。所述电子装置1102可分布在不同的LAN中。所述电子装置1102分别各自通过网络从所述服务器1100下载数据。图1示出了本专利技术的数据分享架构的较佳实施例的示意图。多个电子装置1,例如网络电话,互联网协议电话(VoiceOverInternetProtocol,VOIP)网关,客户端电脑等,与一服务器2通过因特网或广域网(WideAreaNetwork,WAN)等网络进行连接。所述电子装置1102可通过局域网(LocalAreaNetwork,LAN)等网络进行连接。所述电子装置1102可分布在不同的LAN中。位于同一LAN的电子装置1可设置为一组,该组本文档来自技高网...
数据分享系统及方法

【技术保护点】
一种数据分享系统,运行于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,其特征在于,所述的数据分享系统包括:下载模块,用于从服务器下载数据;广播模块,用于在所述群组内广播一“加入我们”封包以邀请所述其他电子装置加入一分享树,所述“加入我们”封包包括所述第一电子装置的识别信息,所述封包的类型,所述封包的内容;收养模块,用于判断是否接收到群组内一第二电子装置发出的“收养我”封包,所述“收养我”封包包括第二电子装置的识别信息及封包的类型,所述收养模块还用于在接收到“收养我”封包时判断所述“收养我”封包的识别信息是否与所述第一电子装置相同,当所述“收养我”封包的识别信息与所述第一电子装置相同时,所述收养模块还用于基于一预定法则判断所述第二电子装置是否可成为所述第一电子装置的子节点,所述预定法则包括:一个父节点最多包括一个左节点和一个右节点,每一节点仅只有一个父节点;所述收养模块还用于在所述第二电子装置可成为所述第一电子装置的子节点时,建立所述第一电子装置与所述第二电子装置的连接;及传送模块,用于传送所下载的数据至所述第二电子装置。

【技术特征摘要】
2015.09.08 US 14/8478921.一种数据分享系统,运行于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,其特征在于,所述的数据分享系统包括:下载模块,用于从服务器下载数据;广播模块,用于在所述群组内广播一“加入我们”封包以邀请所述其他电子装置加入一分享树,所述“加入我们”封包包括所述第一电子装置的识别信息,所述封包的类型,所述封包的内容;收养模块,用于判断是否接收到群组内一第二电子装置发出的“收养我”封包,所述“收养我”封包包括第二电子装置的识别信息及封包的类型,所述收养模块还用于在接收到“收养我”封包时判断所述“收养我”封包的识别信息是否与所述第一电子装置相同,当所述“收养我”封包的识别信息与所述第一电子装置相同时,所述收养模块还用于基于一预定法则判断所述第二电子装置是否可成为所述第一电子装置的子节点,所述预定法则包括:一个父节点最多包括一个左节点和一个右节点,每一节点仅只有一个父节点;所述收养模块还用于在所述第二电子装置可成为所述第一电子装置的子节点时,建立所述第一电子装置与所述第二电子装置的连接;及传送模块,用于传送所下载的数据至所述第二电子装置。2.如权利要求1所述的数据分享系统,其特征在于,所述预定法则还包括:当一父节点的LastBits为N时,子节点的IP地址有N位最低有效字节与父节点相同,且子节点的IP地址的第N+1位最低有效字节为“0”时,所述子节点为父节点的左子节点,子节点的IP地址的第N+1位最低有效字节为“1”时,所述子节点为父节点的右子节点,其中LastBits代表所述父节点在分享树中的层级数,根节点的层级为“0”,子节
\t点的层级为父节点的层级数加1。3.如权利要求1所述的数据分享系统,其特征在于,还包括一错误模块,用于当从服务器下载数据出现错误时,传送一错误封包给子节点,所述错误封包描述所述错误的原因。4.如权利要求1所述的数据分享系统,其特征在于,所述识别信息包括如下中的一个或多个:组织名、产品号、群组号、所述分享树的根节点的MAC地址。5.一种数据分享系统,运行于一第一电子装置中,该第一电子装置与多个其他电子装置相连以形成一个群组,其特征在于,所述的数据分享系统包括:孤儿模块,用于在接收到群组内一第二电子装置发出的“加入我们”封包时,判断所述“加入我们”封包的识别信息是否与所述第一电子装置相同,及在所述识别信息与所述电子装置相同时判断所述电子装置是否愿意加入一分享树,当所述第一电子装置愿意加入所述分享树时,使所述第一电子装置进入一“孤儿”状态,所述“孤儿”状态表明所述第一电子装置愿意加入一分享树;一被收养模块,用于在所述第一电子装置进入“孤儿”状态时开启一通信端口,并在所述群组内广播“收养我”封包,当收到来自一父节点的连线请求时通过所述通信端口与所述父节点建立连接,并在接收到来自父节点的“收养”封包时使所述第一电子装置进入“被收养”状态;及接收模块,用于在所述第一电子装置进入“被收养”状态时接收来自父节点的数据。...

【专利技术属性】
技术研发人员:蔡毅轩
申请(专利权)人:鸿富锦精密工业深圳有限公司鸿海精密工业股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1