CN103986764A - 用于多客户端协同文件上传的设备和方法 - Google Patents
用于多客户端协同文件上传的设备和方法 Download PDFInfo
- Publication number
- CN103986764A CN103986764A CN201410208555.5A CN201410208555A CN103986764A CN 103986764 A CN103986764 A CN 103986764A CN 201410208555 A CN201410208555 A CN 201410208555A CN 103986764 A CN103986764 A CN 103986764A
- Authority
- CN
- China
- Prior art keywords
- client
- file
- fragmentation
- upload
- file fragmentation
- 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
Abstract
提供了一种用于多客户端协同文件上传的设备和方法。所述设备包括:分片上传配置模块,用于在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端;文件信息获取模块,用于从客户端获取包括客户端期望分片上传的文件的文件列表,并存储所述文件列表中所包括的文件的文件信息;文件分片获取模块,用于基于文件信息获取模块存储的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
Description
技术领域
本申请涉及一种文件上传设备和方法,更具体地讲,涉及一种用于多客户端协同文件上传的设备和方法。
背景技术
目前,在服务器(诸如用于查杀病毒的服务器)从客户端收集文件时,对于单个文件,服务器通常只能从单个客户端获取,在这种情况下,如果文件过大,则需要花费非常多的时间来上传,并且还会占用长时间占用较大的带宽,这会影响客户端用户的网络体验。此外,由于上传时间过长,那么在上传过程中如果网络出现故障或者网络状况不佳,则可能难以完成文件上传。因此,需要一种更有效的文件上传方法。
发明内容
根据本发明的一方面,提供了一种用于多客户端协同文件上传的设备,所述设备包括:分片上传配置模块,用于在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端;文件信息获取模块,用于从客户端获取包括客户端期望分片上传的文件的文件列表,并存储所述文件列表中所包括的文件的文件信息;文件分片获取模块,用于基于文件信息获取模块存储的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
所述分片上传配置模块可包括:会话连接确定模块,用于在接收到客户端的文件上传请求时,确定是否允许客户端与所述设备进行会话连接以上传文件,并且如果允许客户端与所述设备进行会话连接,则将与文件分片上传配置相关的信息发送到客户端;注册模块,用于注册允许会话连接的客户端的标识符、注册时间、文件列表有效时间以及分配的通道密码。
会话连接确定模块可确定当前与所述设备同时会话的客户端的数量是否已达到可与所述设备同时会话的客户端的最大数量。如果当前与所述设备同时会话的客户端的数量未达到所述最大数量,则会话连接确定模块可确定允许请求上传文件的客户端与所述设备进行会话连接以上传文件,并且将允许连接消息发送到请求上传文件的客户端。所述允许连接消息包括与文件分片上传配置相关的信息。如果当前与所述设备同时会话的客户端的数量已达到所述最大数量,则会话连接确定模块可确定不允许请求上传文件的客户端与所述设备进行会话连接,并且向请求上传文件的客户端发送等待消息。所述等待消息包括关于客户端下一次发送文件上传请求所需要等待的时间的信息。
与文件分片上传配置相关的信息可包括:分配给客户端的通道密码、分片大小、允许上传的单个文件的最大大小、允许上传的文件列表中文件的最大个数、以及文件列表有效时间中的至少一个。
所述文件信息获取模块可包括:文件列表接收模块,用于接收客户端的文件列表,并从客户端获取客户端的标识符和用于加密解密的令牌;验证模块,用于基于获取的标识符和令牌对客户端进行验证;文件信息存储模块,用于存储包括在客户端的文件列表中的文件的文件信息。如果验证模块成功验证了客户端,则可将包括在客户端的文件列表中的文件的文件信息保存在文件信息存储模块中;如果验证模块未能成功验证客户端,则可删除所接收的客户端的文件列表。
文件分片获取模块可包括:文件分片确定模块,用于响应于客户端的文件分片上传请求,基于文件信息获取模块中存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识一起发送到客户端;文件分片存储模块,用于接收并存储从客户端发送的文件分片。
文件信息获取模块还可基于文件分片获取模块的文件分片的接收和存储状况,更新存储的每个文件的文件信息中的文件的状态和文件分片的状态。文件分片确定模块可基于文件信息获取模块中存储的文件的状态和文件分片的状态来确定需要客户端上传的分片。
文件分片获取模块还可包括:计数模块,用于在文件分片确定模块从客户端接收到文件分片上传请求之后确定所述设备当前同时接收的文件的数量是否超过预设阈值。如果计数模块确定同时接收的文件数量达到预设阈值,并且文件分片确定模块确定客户端没有正在上传的文件,则文件分片确定模块可向客户端发送结束消息。如果计数模块确定同时接收的文件数量未达到预设阈值,并且文件分片确定模块确定客户端当前没有上传文件,则文件分片确定模块可基于文件信息存储模块中存储的文件信息,从属于客户端的文件之中选择需要客户端上传的文件,从选择文件的文件分片之中选择需要客户端上传的文件分片的片编号,并将与选择的文件分片相应的片编号以及与选择的文件对应的文件标识发送到客户端。
根据本发明的另一方面,提供了一种用于用于多客户端协同文件上传的的客户端,所述客户端包括:请求模块,用于向接收文件的设备发送文件上传请求并从所述设备接收响应消息;文件分片配置模块,用于在接收到的响应消息是包括与文件分片上传配置相关的信息的允许连接消息的情况下,基于与文件分片上传配置相关的信息,对期望上传的文件进行分片,并将包括与期望上传的文件及期望上传的文件的文件分片相关的信息的文件列表发送到所述设备;文件分片上传模块,用于向所述设备发送文件分片上传请求,从所述设备接收关于指定上传的文件分片的信息,并基于接收的关于指定上传的文件分片的信息上传指定的文件分片。
根据本发明的另一方面,提供了一种于多客户端协同文件分片上传的系统,所述系统包括:客户端,用于以分片的形式上传文件;服务器设备,用于接收客户端分片上传的文件。客户端可向服务器设备发送文件上传请求,服务器在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端,客户端基于从服务器接收的与文件分片上传配置相关的信息,对期望上传的文件进行分片,并将与期望分片上传的文件及期望上传的文件的文件分片相关的文件信息发送到服务器设备,服务器设备基于存储在服务器设备中的与客户端相应的文件的文件信息指定需要客户端上传的文件分片,并从客户端接收指定的文件分片。
根据本发明的另一方面,提供了一种用于多客户端协同文件上传的方法,所述方法包括:在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端;从客户端获取包括客户端将要分片上传的文件的文件列表,并存储所述文件列表中包括的文件的文件信息;基于存储的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
发送与文件分片上传配置相关的信息的步骤可包括:在接收到客户端的文件上传请求时,确定是否允许客户端与所述设备进行会话连接以上传文件,如果允许客户端与所述设备进行会话连接,则可将与文件分片上传配置相关的信息发送到客户端;注册允许会话连接的客户端的标识符、注册时间、文件列表有效时间以及分配的通道密码。
确定是否允许客户端与所述设备进行会话连接以上传文件的步骤可包括:确定当前与所述设备同时会话的客户端的数量是否已达到可与所述设备同时会话的客户端的最大数量。如果当前与所述设备同时会话的客户端的数量未达到所述最大数量,则可确定允许请求上传文件的客户端与所述设备进行会话以上传文件,并且将可允许连接消息发送到请求上传文件的客户端,其中,所述允许连接消息包括与文件分片上传配置相关的信息。如果当前与所述设备同时会话的客户端的数量已达到所述最大数量,则可确定不允许请求上传文件的客户端与所述设备进行会话连接,并且可向请求上传文件的客户端发送等待消息,其中,所述等待消息包括关于客户端下一次发送文件上传请求所需要等待的时间的信息。
与文件分片上传配置相关的信息可包括:分配给客户端的通道密码、分片大小、允许上传的单个文件的最大大小、允许上传的文件列表中文件的最大个数、以及文件列表有效时间中的至少一个。
所述文件信息获取步骤可包括:接收客户端的文件列表,并从客户端获取客户端的标识符和用于加密解密的令牌;基于获取的标识符和令牌对客户端进行验证。如果成功验证了客户端,则保存包括在客户端的文件列表中的文件的文件信息,如果未能成功验证客户端,则可删除所接收的客户端的文件列表。
文件分片获取步骤可包括:响应于客户端的文件分片上传请求,基于存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识一起发送到客户端;接收并存储从客户端发送的文件分片。
文件信息获取步骤可还基于在文件分片获取步骤中的文件分片的接收和存储状况,更新存储的每个文件的文件信息中的文件的状态和文件分片的状态。确定文件分片的步骤可基于存储的文件的状态和文件分片的状态来确定需要客户端上传的分片。
文件分片获取步骤还可包括:在从客户端接收到文件分片上传请求之后确定所述设备当前同时接收的文件的数量是否超过预设阈值。如果确定同时接收的文件数量达到预设阈值,并且确定客户端没有正在上传的文件,则可向客户端发送结束消息;如果确定同时接收的文件数量未达到预设阈值,并且确定客户端当前没有上传文件,则可基于文件信息存储模块中存储的文件信息,从属于客户端的文件之中选择需要客户端上传的文件,从选择文件的文件分片之中选择需要客户端上传的文件分片的片编号,并将与选择的文件分片相应的片编号以及与选择的文件对应的文件标识发送到客户端。
根据本发明的另一方面,提供了一种在客户端实现的用于多客户端协同文件上传的方法,所述方法包括:向接收文件的设备发送文件上传请求并从所述设备接收响应消息;在接收到的响应消息是包括与文件分片上传配置相关的信息的允许连接消息的情况下,基于与文件分片上传配置相关的信息,对期望上传的文件进行分片,并将包括与期望上传的文件及期望上传的文件的文件分片相关的信息的文件列表发送到所述设备;向所述设备发送文件分片上传请求,从所述设备接收关于指定上传的文件分片的信息,并基于接收的关于指定上传的文件分片的信息上传指定的文件分片。
根据本发明的另一方面,提供了一种用于多客户端协同文件上传的方法,所述方法包括:由客户端向服务器设备发送文件上传请求;当服务器设备在接收到客户端的文件上传请求时,由服务器设备将与文件分片上传配置相关的信息发送到客户端;由客户端基于从服务器设备接收的与文件分片上传配置相关的信息,对期望上传的文件进行分片,并将与期望分片上传的文件及期望上传的文件的文件分片相关的文件信息发送到服务器设备;由服务器设备基于存储在服务器设备中的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
有益效果
根据本发明的用于多客户端协同文件上传的设备和方法能够利用多个客户端同时在线协同上传相同的文件,从而加速文件接收并节省所需要使用的带宽。此外,由于采用了文件分片上传,因此即使在文件当前未能完全上传而断开了上传通道的情况下,在之后再次建立起上传通道时,可继续上传之前未能上传的文件部分。
附图说明
通过下面结合示例性地示出一例的附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1是示出根据本发明的实施例的用于多客户端协同文件上传的设备的框图;
图2是示出根据本发明的实施例的用于多客户端协同文件上传的设备的配置的示例;
图3是示出根据本发明的示例性实施例的客户端的框图;
图4是示出根据本发明的示例性实施例的在用于多客户端协同文件上传的设备的操作的流程图;
图5是示出根据本发明的示例性实施例客户端的操作的流程图;
图6是示出根据本发明的实施例的用于多客户端协同文件上传的设备和客户端之间的交互的示例性示意图。
在附图中,相同的标号表示相同或相似的元件。
具体实施方式
提供以下参照附图进行的描述以帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。所述描述包括各种特定细节以帮助理解,但这些细节被认为仅是示例性的。因此,本领域的普通技术人员将认识到:在不脱离本发明的范围和精神的情况下,可对这里描述的实施例进行各种改变和修改。此外,为了清楚和简明,可省略已知功能和构造的描述。
图1是示出根据本发明的实施例的用于多客户端协同文件上传的设备100的框图。
参照图1,设备100包括:分片上传配置模块110、文件信息获取模块120和文件分片获取模块130。所述设备100可被设置在用于多客户端协同文件上传的服务器中、或者本身可以是用于多客户端协同文件上传的服务器,或者是其他需要收集文件的设备。此外,本发明的用于多客户端协同文件上传的设备100和客户端200可使用HTTP协议。然而,应该理解,本发明不限于此,本发明还可适用于其他基于TCP协议的上层应用协议。
在本发明的实施例中,分片上传配置模块110可在接收到客户端200的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端200。文件信息获取模块120可从客户端200获取包括客户端200期望分片上传的文件的文件列表,并存储所述文件列表中所包括的文件的文件信息。文件分片获取模块130可基于文件信息获取模块120中存储的与客户端200相应的文件的文件信息,向客户端指定需要客户端200上传的文件分片并从客户端200接收指定的文件分片。
以下将参照图2详细描述根据本发明的示例性实施例的用于多客户端协同文件上传的设备100的配置。
图2是示出根据本发明的实施例的用于多客户端协同文件上传的设备100的配置的示例。
如图2中所示,根据本发明的示例性实施例的分片上传配置模块110可包括会话连接确定模块111和注册模块112。
在当前示例性实施例中,会话连接确定模块111可在接收到客户端200的文件上传请求时,确定是否允许客户端200与设备100进行会话连接以上传文件。如果允许客户端200与设备100进行会话连接,则会话连接确定模块111将与文件分片上传配置相关的信息发送到客户端200。此外,如果不允许客户端200与设备100进行会话连接,则会话连接确定模块111可将其他响应消息(例如,结束消息、等待消息等)发送到客户端200。
仅作为示例,考虑到服务器的能力,可与设备100同时会话的客户端的总数应该控制在合适的数量,以在保证文件上传效率的同时不对设备100造成过重的负担。因此,在本发明的实施例中,会话连接确定模块111可确定当前与设备100同时会话的客户端的数量是否已达到可与设备100同时会话的客户端的最大数量(可由用户设置或可基于设备100的通信能力确定)。
如果当前与设备100同时会话的客户端的数量已达到所述最大数量,则会话连接确定模块111可确定不允许当前请求上传文件的客户端200与设备100进行会话连接,并且可向请求上传文件的客户端200发送等待消息。在所述等待消息中可包括关于客户端200下一次发送文件上传请求所需要等待的时间的信息。在这种情况下,接收到等待消息的客户端200可在等待所述时间之后重复以上请求上传文件的处理。
此外,如果当前与所述设备同时会话的客户端的数量未达到所述最大数量,则会话连接确定模块111可确定允许请求上传文件的客户端200连接到所述设备100以上传文件,并且可将允许连接消息发送到请求上传文件的客户端200。所述允许连接消息可包括与文件分片上传的配置相关的信息,例如,分配给客户端200的通道密码(即,可以是由设备100随机生成的一个字符串)、分片大小、允许上传的单个文件的最大大小、允许上传的文件列表中文件的最大个数、以及文件列表有效时间等。客户端200的文件列表有效时间是指从客户端200发送文件列表时起所述文件列表的有效时间。当客户端200向设备100发送文件列表之后经过了文件列表有效时间之后,发送的文件列表失效,在这种情况下,客户端200可再次发送新的文件列表。
客户端200可基于所接收的与文件分片上传配置相关的信息配置文件(例如,将单个文件划分为多个指定大小的文件分片),发送文件列表(包括关于客户端200期望上传的文件及其文件分片的信息,例如,想要上传的文件的文件名或文件标识(例如,文件hash)、文件分片的大小、所述文件的文件分片的数量及片编号范围等等),并随后基于设备100的指示上传文件分片。
注册模块112可注册(例如,存储)允许会话连接的客户端的标识符(例如,GUID)、注册时间(即,注册模块112为客户端200分配通道密码时的客户端ID开始有效的时间,并可用于在后续操作中判定客户端200是否超过有效期)、分配的通道密码以及文件列表有效时间。在本发明的示例性实施例中,客户端200发送的文件上传请求可包括客户端200的标识符,因此,注册模块112可从所述文件上传请求提取客户端200的标识符。
在图2中,根据当前示例性实施例的文件信息获取模块120可包括文件列表接收模块121、验证模块122和文件信息存储模块123。
具体地讲,文件列表接收模块121可接收客户端200的文件列表,并还可从客户端200获取客户端的标识符和用于加密解密的令牌(token)。在本发明的示例性实施例中,客户端200可基于从设备100接收到的通道密码来生成所述令牌,并且客户端200可将所述令牌、自己的标识符(GUID)以及文件列表一起发送给设备100的文件列表接收模块121。
验证模块122可基于文件列表接收模块121获取的标识符和令牌对客户端进行验证。例如,验证模块122可基于获取的客户端200的标识符从注册模块112提取分配给所述客户端200的通道密码,并基于提取的通道密码对接收的令牌进行解密,以对客户端进行验证。如果验证模块122成功验证了客户端(例如,如果对令牌解码成功),则可将包括在客户端200的文件列表中的每个文件的文件信息(包括例如,每个文件的文件名或文件标识、文件MD5、文件大小、自定义文件类型(可用于设备100按类型调度待收集的文件)、自定义文件来源(可用于设备100按照来源调度待收集的文件)、文件分片的大小、文件的文件分片的数量及片编号范围等等)与客户端200的标识符关联地保存在文件信息存储模块123中,从而可便于基于客户端的标识符查找与该客户端相应的文件。如果未能成功验证客户端(例如,如果对令牌解码失败),则删除所接收的客户端200的文件列表。在完成验证之后,验证模块160还可将验证结果(验证成功或验证失败)发送给客户端200。
应理解,在本发明的实施例中,相同的文件应具有相同的文件标识以及文件分片。此外,尽管上述示例中仅以一个客户端200为例说明了设备100存储客户端200的文件的文件信息的处理,但应该理解,设备100可存储多个客户端的文件的文件信息,在这种情况下,对于文件信息存储模块123中存储的文件的文件信息,同一个文件的文件信息可与多个客户端相关联,同一个客户端可与多个文件的文件信息相关联。例如,如果客户端200上传的文件列表中包括的文件F1的文件信息已存储在文件信息存储模块123中,则文件信息存储模块123可将该文件F1的文件信息标记为还与客户端200的标识符关联,而无需再次存储文件F1的文件信息;如果客户端200上传的文件列表中包括的文件F2的文件信息未存储在文件信息存储模块123中,则可将文件F的文件信息与客户端200的标识符关联地存储在文件信息存储模块123中。
优选地,通常分配给允许上传文件的客户端的通道密码是有使用时限的,因此,在验证客户端200之前,验证模块170还可首先验证分配给该客户端200的通道密码是否过期,并将验证的结果发送给所述客户端200。如果验证模块170确定通道密码过期,则可在注册模块112中重新注册客户端200的信息;如果通道密码未过期,则使用所述通道密码继续进行之后的验证(例如,对令牌的解密)。
根据本发明的示例性实施例的文件分片获取模块130可包括:文件分片确定模块131和文件分片存储模块132。
在当前实施例中,文件分片确定模块131可响应于客户端的文件分片上传请求,基于文件信息获取模块中存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识(例如,文件hash)一起发送到客户端200,使得客户端200可基于接收的文件标识和片编号上传相应的文件分片。文件分片存储模块132可接收并存储从客户端发送的文件分片。
具体地讲,客户端200的文件分片上传请求可携带客户端200的标识符,从而文件分片确定模块131可基于所述标识符从文件信息存储模块123中存储的文件信息之中搜索出属于客户端200的文件的文件信息,并基于搜索出的文件信息确定需要客户端200上传的文件分片。
更具体地,在本发明的当前示例性实施例中,文件信息存储模块123中存储的文件信息还可包括文件的状态(例如,0指示未开始上传,1指示上传完成,2指示正在上传,3指示部分已上传但目前客户端未在上传文件因而所述文件进入低优先级队列)和文件分片的状态(例如,0指示未开始上传,1指示上传完成,2指示正在上传)。此外,文件的状态还可包括文件多次上传失败进入监禁状态等状态,文件分片的状态还可包括文件分片已被调度、文件分片未被调度、文件分片调度多次失败等状态。文件信息存储模块123可基于文件分片获取模块130的文件分片的接收和存储情况(例如,文件分片已被调度、文件分片未被调度、文件分片被调度的次数、文件分片被多次调度但仍未能上传、文件分片正被上传、文件分片已被上传和存储等),更新存储的每个文件的文件信息中的文件的状态和该文件的每个文件分片的状态,从而文件分片确定模块131可基于文件信息存储模块123中存储的文件的状态和文件分片的状态来确定需要客户端上传的分片。在本发明的示例性实施例中,如果某个文件分片被多次调度但仍不能上传,则可降低相应文件的上传优先级。
例如,文件分片确定模块131可基于文件信息存储模块123中存储的属于客户端200的文件的文件信息,从客户端200的还未上传的某个文件(文件状态为0)中选择当前将上传的文件分片(文件分片状态为0),或在所述客户端正在上传文件(文件状态为2)的情况下,从正在上传的文件的尚未上传的文件分片(文件状态为0)中随机选择将要上传的分片。如果文件分片确定模块131确定客户端200当前没有还未上传完的文件并且也没有需要上传的文件(即,属于客户端200的所有文件的文件状态均为1),则向客户端200发送指示该客户端的所有文件上传完毕的结束消息。
此外,由于所述设备100所能同时接收的文件的个数通常是有限的,因此优选地,根据本发明的当前示例性实施例的文件分片获取模块130还可包括计数模块(未示出)来在文件分片确定模块131从客户端接收到文件分片上传请求之后确定设备100当前同时接收的文件的数量是否超过预设阈值(例如,设备100所能同时接收的文件的最大个数或用户设置的某个值)。
如果计数模块确定同时接收的文件数量达到预设阈值,并且文件分片确定模块131确定客户端200没有正在上传的文件,则文件分片确定模块131向客户端200发送指示当前文件传输连接已满的结束消息。
如果计数模块确定同时接收的文件的数量未达到预设阈值,并且文件分片确定模块131确定客户端200当前没有正在上传文件,则文件分片确定模块131基于文件信息存储模块123中存储的文件信息,从属于客户端200的文件之中选择需要客户端200上传的文件,从选择的文件的文件分片之中选择需要上传的文件分片的片编号,并将与选择的文件分片相应的片编号以及与选择的文件对应的文件标识发送到客户端200。
然而,应理解,如果文件分片确定模块131确定客户端200正在上传文件,则不管设备100同时接收的文件数量是否到预设阈值,文件分片确定模块131都可基于文件信息存储模块123中存储的文件信息,从客户端200的正在上传的文件的上传队列确定正在上传的文件的还未上传的分片,从还未上传的分片之中随机确定一个分片,并将与确定的分片相应的片编号以及与正在上传的文件对应的文件标识发送到客户端200。
以上已参照图2详细描述了根据本发明的示例性实施例的用于多客户端协同文件上传的设备100。然而,应理解,图2中示出的设备配置及其操作仅是示例,可根据需求添加其他模块或者是减少或修改一些模块。
例如,如果对客户端200与设备100进行会话连接的会话连接数量没有限制,则可会话连接确定模块111可在接收到客户端的文件上传请求时直接将与文件分片上传配置相关的信息发送到客户端200。又例如,在另一实施例中,文件信息获取模块120可不包括验证模块122,而是总是接收并存储来自客户端的文件列表中的文件信息,并定期清理所存储的文件信息,例如,如果某个文件信息在一段预定时间期间没有被更新或使用,则删除所述文件信息。
优选地,在图2中,当文件分片存储模块132在存储文件分片之前还可对文件分片进行验证。例如,当文件分片存储模块132接收到的文件分片所属的客户端不属于注册模块112中注册的允许会话连接的客户端时,则文件分片存储模块132可不存储所述文件分片,并向客户端发送指示未要求该客户端上传文件的第一文件上传失败消息。
又例如,当文件分片存储模块132接收到的文件分片所属的文件不属于存储在文件信息存储模块123中的文件时,文件分片存储模块132不存储所述文件分片,并向客户端发送指示接收到的文件分片所属的文件在设备100上不存在的第二文件上传失败消息。
又例如,如果文件分片存储模块132接收到的文件分片的大小与发送给客户端的文件分片上传的配置中规定的文件分片大小不一致并且所述文件分片不是最后一个分片(可通过所述文件分片的片编号和文件列表中所述文件分片所属文件的片编号范围来确定)时,文件分片存储模块132不存储所述文件分片,并向客户端发送指示接收到的文件分片的大小与规定的分片大小不一致的第三文件上传失败消息。
图3是示出根据本发明的示例性实施例的客户端200的框图。
如图3所示,所述客户端包括:请求模块210、文件分片配置模块220和文件分片上传模块230。
请求模块210可向根据本发明的用于多客户端协同文件上传的设备100发送文件上传请求并从所述设备100接收响应消息。
在本发明的实施例中,如果请求模块210接收到的响应消息是等待消息,则请求模块210基于等待消息中所包括关于客户端下一次发送文件上传请求所需要等待的时间的信息,在经过所述时间之后重新发送文件上传请求。
如果请求模块310接收到的响应消息是允许连接消息,则文件分片配置模块220可基于允许连接消息中与文件分片上传配置相关的信息,对想要上传的文件进行分片,并将包括关于客户端想要上传的文件及其文件分片的信息(例如,想要上传的文件的文件名或文件标识,所述文件的文件分片的数量及片编号范围等等)的文件列表发送到设备100。
然后,文件分片上传模块230可向设备100发送文件分片上传请求,从设备100接收关于指定上传的文件分片的信息(包括与指定上传的文件分片相应的片编号和指定上传的文件分片所属文件的文件标识等信息),并基于接收的关于指定上传的文件分片的信息上传指定的文件分片。上传的文件分片的大小等配置应与客户端200从设备100接收到的文件分片上传配置一致。
尽管在前面的实施例中描述了客户端200上传文件分片的处理,但应该理解,如果客户端200与其他客户端都拥有某个文件A,则设备100在接收客户端200上传的文件A的分片时,还可指定具有文件A的其他客户端上传与客户端200上传的分片不同的文件A的分片。这样,对于相同的文件,设备100可指定具有该文件的多个客户端发送该文件的不同文件分片,从而实现多客户端协同文件上传。
图4是示出根据本发明的示例性实施例的在用于多客户端协同文件上传的设备100的操作的流程图。
在410,用于多客户端协同文件上传的设备100的分片上传配置模块110可在接收到客户端200的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端200。
具体地讲,在410,分片上传配置模块110的会话连接确定模块111可在接收到客户端的文件上传请求时,确定是否允许客户端200与设备100进行会话连接以上传文件,如果允许客户端200与设备100进行会话连接,则将与文件分片上传配置相关的信息发送到客户端200。
优选地,为了将与设备100同时会话的客户端的总数控制在合适的数量以不对设备造成更大的负担,在本发明的示例性实施例中,会话连接确定模块111可确定当前与设备100同时会话的客户端的数量是否达到可与设备100同时会话的客户端的最大数量。
如果当前与所述设备100同时会话的客户端的数量已达到所述最大数量,则会话连接确定模块111可确定不允许当前请求上传文件的客户端200与所述设备100进行会话连接,并且可向请求上传文件的客户端200发送等待消息。在所述等待消息中可包括关于客户端200下一次发送文件上传请求所需要等待的时间的信息,在这种情况下,接收到等待消息的客户端200可在等待所述时间之后重复以上请求上传文件的处理。
如果当前与所述设备同时会话的客户端的数量未达到预定最大数量,则会话连接确定模块111可确定允许请求上传文件的客户端200连接到所述设备100,并且可将允许连接消息发送到请求上传文件的客户端200。所述允许连接消息可包括与文件分片上传的配置相关的信息,例如,分配给客户端200的通道密码、分片大小、允许上传的单个文件的最大大小、允许上传的文件列表中文件的最大个数、以及文件列表有效时间。
此外,在410,如果允许客户端200与设备100进行会话连接,则还可在注册模块112中注册允许会话连接的客户端200的标识符(例如,GUID)、注册时间、分配的通道密码以及文件列表有效时间。
在420,设备100的文件信息获取模块120可从客户端200获取包括客户端200将要分片上传的文件的文件列表,并存储所述文件列表中包括的文件的文件信息。
具体地讲,在420,文件信息获取模块120的文件列表接收模块121可接收客户端200的文件列表,并还可从客户端200获取客户端200的标识符和用于加密解密的令牌。然后文件信息获取模块120的验证模块122可基于获取的标识符和令牌对客户端200进行验证。如果验证模块122成功验证了客户端200,则将包括在客户端200的文件列表中的文件的文件信息保存在文件信息获取模块120的文件信息存储模块123中;如果验证模块122未能成功验证客户端200,则删除所接收的客户端的文件列表。
在430,设备100的文件分片获取模块130可基于文件信息获取模块120存储的与客户端相应的文件的文件信息,向客户端指定需要客户端200上传的文件分片并从客户端200接收指定的文件分片。
具体地讲,文件分片获取模块130的文件分片确定模块131可响应于客户端的文件分片上传请求,基于文件信息存储模块123中存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识一起发送到客户端。之后,可由文件分片存储模块132接收并存储从客户端200发送的文件分片。
优选地,文件信息存储模块123还可基于在430中的文件分片的接收和存储情况,更新存储的每个文件的文件信息中的文件的状态和文件分片的状态。在这种情况下,在步骤430,文件分片确定模块131可基于文件信息存储模块123中存储的文件的状态和文件分片的状态来确定需要客户端200上传的分片。
优选地,在430中,在从客户端接收到文件分片上传请求之后,文件分片获取模块130的计数模块(未示出)还可确定设备100当前同时接收的文件的数量是否超过预设阈值。
如果计数模块确定同时接收的文件数量达到预设阈值,并且文件分片确定模块131确定客户端200没有正在上传的文件,则文件分片确定模块131向客户端200发送指示当前文件传输连接已满的结束消息。
如果计数模块确定同时接收的文件的数量未达到预设阈值,并且文件分片确定模块131确定客户端200当前没有正在上传文件,则文件分片确定模块131基于文件信息存储模块123中存储的文件信息,从属于客户端200的文件之中选择需要客户端上传的文件,从选择的文件的文件分片之中选择需要上传的文件分片的片编号,并将与选择的文件分片相应的片编号以及与选择的文件对应的文件标识发送到客户端200。
如果文件分片确定模块131确定客户端200正在上传文件,则不管设备100同时接收的文件数量是否到预设阈值,文件分片确定模块131都可基于文件信息存储模块123中存储的文件信息,从客户端200的正在上传的文件的上传队列确定正在上传的文件的还未上传的分片,从还未上传的分片之中随机确定一个分片,并将与确定的分片相应的片编号以及与正在上传的文件对应的文件标识发送到客户端。
以上处理仅是示例,在图2中已详细描述了设备100的各个模块可执行的其他操作,因此,为了简明,在此将不再进行更加详细的描述。然而,应该理解,本领域技术人员可根据需要添加、减少或修改一些操作步骤,并改变一些步骤的执行顺序。
图5是示出根据本发明的示例性实施例客户端200的操作的流程图。
参照图5,在510,可由所述客户端200的请求模块310向设备100发送文件上传请求并从所述设备100接收响应消息。
在520,可由所述客户端200的文件分片配置模块220基于响应消息中包括的与文件分片上传配置相关的信息,对想要上传的文件进行分片,并将包括与想要上传的文件及其文件分片相关的信息的文件列表发送到所述设备100。
然而,应该理解,如果在510从设备100接收到的响应消息是等待消息,则所述流程结束,并且客户端在经过等待消息中指定的一段时间之后重新进行510。
在530,可由所述客户端的文件分配上传模块330向设备100发送文件分片上传请求,从设备100接收关于指定上传的文件分片的信息,并基于接收的关于指定上传的文件分片的信息上传指定的文件分片。
图6是示出根据本发明的实施例的协同文件分片上传设备和客户端之间的交互的示例性示意图。
为了简明,图6仅示出客户端200可向设备100(在此假设可以是服务器设备)上传文件分片的示例。然而应该理解,客户端200与服务器设备100的交互步骤不限于图中示出的,可基于实践在所述交互中添加、减少或改变一些步骤。
如图6中所示,首先,可由客户端200向服务器设备100发送文件上传请求(610)。
服务器设备100可在接收到所述请求之后确定是否允许与所述客户端200进行会话连接以上传文件。如果允许客户端200与服务器设备100进行会话连接,则服务器设备100可将与文件分片上传配置相关的信息发送到客户端200(620)。
此外,服务器设备100还可注册允许会话连接的客户端200的标识符(例如,GUID)、注册时间、分配的通道密码以及文件列表有效时间。此外,如果不允许客户端200与服务器设备100进行会话连接,则服务器设备100可将其他响应消息(例如,结束消息、等待消息等)发送到客户端200。
客户端200在接收到与文件分片上传配置相关的信息之后,可按所述配置对期望上传的文件进行分片。然后,客户端200可将与期望上传的文件及期望上传的文件的文件分片相关的文件信息发送到服务器设备100,并且还可一起发送自己的标识符和token等信息(630)。
此外,在本发明的实施例中,服务器设备100还可基于获取的标识符和令牌对客户端进行验证。如果成功验证了客户端200,则服务器设备100保存包括在客户端200的文件列表中的文件的文件信息,如果未能成功验证客户端,则服务器设备100删除所接收的客户端的文件列表。
之后,客户端200可向服务器设备100发送文件分片上传请求(640)。服务器设备100在接收到文件分片上传请求之后,基于存储的与客户端相应的文件的文件信息,指定需要客户端上传的文件分片,并将关于指定上传的文件分片的信息(例如,与指定的文件分片相应的片编号和指定的文件分片所属文件的文件标识等)发送到客户端200(650)。
更进一步,在服务器设备100指定文件分片之前,还可先判断当前是否能够接收来自客户端100的文件分片。已结合图2详细描述了该判断,因此为了简明,在此将不再进行详细描述。
客户端200可基于接收的关于指定上传的文件分片的信息上传指定的文件分片(包括文件分片数据、文件分片所属文件的文件标识以及文件分片的片编号等)(660)。然后,客户端200可发送下一文件分片上传请求(670),随后重复650至660的处理,直到所有文件分片传送完毕为止(680)。
以上已详细描述了本发明,在根据本发明的用于多客户端协同文件上传的设备和方法中,因为根据本发明的服务器设备可获得多个客户端的文件列表并指定每个客户端上传的文件分片,因此,对于多个客户端均具有的相同文件的情况,根据本发明的服务器设备能够指定并从这多个客户端同时接收不同的文件分片,从而能够利用多个客户端同时在线协同上传相同的文件,加速文件接收并节省了所需要使用的带宽。此外,由于采用了文件分片上传,因此即使在文件当前未能完全上传而断开了上传通道的情况下,在之后再次建立起上传通道时,可继续上传之前未能上传的文件部分。
本发明示例性实施例可实现为计算机可读记录介质上的计算机可读代码。计算机可读记录介质是可存储其后可由计算机系统读出的数据的任意数据存储装置。计算机可读记录介质的示例包括:只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光数据存储装置和载波(诸如经有线或无线传输路径通过互联网的数据传输)。计算机可读记录介质也可分布于连接网络的计算机系统,从而计算机可读代码以分布式存储和执行。此外,完成本发明的功能程序、代码和代码段可容易地被与本发明相关的领域的普通程序员在本发明的范围之内解释。
尽管已经参照其示例性实施例具体显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离权利要求所限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
Claims (10)
1.一种用于多客户端协同文件上传的设备,所述设备包括:
分片上传配置模块,用于在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端;
文件信息获取模块,用于从客户端获取包括客户端期望分片上传的文件的文件列表,并存储所述文件列表中所包括的文件的文件信息;
文件分片获取模块,用于基于文件信息获取模块存储的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
2.如权利要求1所述的设备,其中,所述分片上传配置模块包括:
会话连接确定模块,用于在接收到客户端的文件上传请求时,确定是否允许客户端与所述设备进行会话连接以上传文件,并且如果允许客户端与所述设备进行会话连接,则将与文件分片上传配置相关的信息发送到客户端;
注册模块,用于注册允许会话连接的客户端的标识符、注册时间、文件列表有效时间以及分配的通道密码。
3.如权利要求1所述的设备,其中,所述文件信息获取模块包括:
文件列表接收模块,用于接收客户端的文件列表,并从客户端获取客户端的标识符和用于加密解密的令牌;
验证模块,用于基于获取的标识符和令牌对客户端进行验证;
文件信息存储模块,用于存储包括在客户端的文件列表中的文件的文件信息,
其中,如果验证模块成功验证了客户端,则将包括在客户端的文件列表中的文件的文件信息保存在文件信息存储模块中,
如果验证模块未能成功验证客户端,则删除所接收的客户端的文件列表。
4.如权利要求1所述的设备,其中,文件分片获取模块包括:
文件分片确定模块,用于响应于客户端的文件分片上传请求,基于文件信息获取模块中存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识一起发送到客户端;
文件分片存储模块,用于接收并存储从客户端发送的文件分片。
5.如权利要求4所述的设备,其中,文件信息获取模块还基于文件分片获取模块的文件分片的接收和存储状况,更新存储的每个文件的文件信息中的文件的状态和文件分片的状态,
其中,文件分片确定模块基于文件信息获取模块中存储的文件的状态和文件分片的状态来确定需要客户端上传的分片。
6.一种用于多客户端协同文件上传的方法,所述方法包括:
在接收到客户端的文件上传请求时,将与文件分片上传配置相关的信息发送到客户端;
从客户端获取包括客户端将要分片上传的文件的文件列表,并存储所述文件列表中包括的文件的文件信息;
基于存储的与客户端相应的文件的文件信息,向客户端指定需要客户端上传的文件分片并从客户端接收指定的文件分片。
7.如权利要求6所述的方法,其中,发送与文件分片上传配置相关的信息的步骤包括:
在接收到客户端的文件上传请求时,确定是否允许客户端与所述设备进行会话连接以上传文件,如果允许客户端与所述设备进行会话连接,则将与文件分片上传配置相关的信息发送到客户端;
注册允许会话连接的客户端的标识符、注册时间、文件列表有效时间以及分配的通道密码。
8.如权利要求6所述的方法,其中,所述文件信息获取步骤包括:
接收客户端的文件列表,并从客户端获取客户端的标识符和用于加密解密的令牌;
基于获取的标识符和令牌对客户端进行验证;
其中,如果成功验证了客户端,则保存包括在客户端的文件列表中的文件的文件信息,
如果未能成功验证客户端,则删除所接收的客户端的文件列表。
9.如权利要求6所述的方法,其中,文件分片获取步骤包括:
响应于客户端的文件分片上传请求,基于存储的文件信息确定需要客户端上传的文件分片,并将与确定的文件分片相应的片编号和确定的文件分片所属文件的文件标识一起发送到客户端;
接收并存储从客户端发送的文件分片。
10.如权利要求9所述的方法,其中,文件信息获取步骤还基于在文件分片获取步骤中的文件分片的接收和存储状况,更新存储的每个文件的文件信息中的文件的状态和文件分片的状态,
其中,确定文件分片的步骤基于存储的文件的状态和文件分片的状态来确定需要客户端上传的分片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410208555.5A CN103986764B (zh) | 2014-05-16 | 2014-05-16 | 用于多客户端协同文件上传的设备和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410208555.5A CN103986764B (zh) | 2014-05-16 | 2014-05-16 | 用于多客户端协同文件上传的设备和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103986764A true CN103986764A (zh) | 2014-08-13 |
CN103986764B CN103986764B (zh) | 2018-02-06 |
Family
ID=51278587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410208555.5A Active CN103986764B (zh) | 2014-05-16 | 2014-05-16 | 用于多客户端协同文件上传的设备和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103986764B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和系统 |
CN105577772A (zh) * | 2015-12-17 | 2016-05-11 | 腾讯科技(北京)有限公司 | 素材接收方法、素材上传方法及装置 |
CN105743966A (zh) * | 2015-12-28 | 2016-07-06 | 哈尔滨安天科技股份有限公司 | 一种文件分块多点上传的方法及系统 |
CN106101204A (zh) * | 2016-06-03 | 2016-11-09 | 腾讯科技(深圳)有限公司 | 一种会话方法、系统、客户端及服务器 |
CN106302715A (zh) * | 2016-08-12 | 2017-01-04 | 北京奇虎科技有限公司 | 一种文件管理方法、装置及系统 |
CN106909766A (zh) * | 2015-12-18 | 2017-06-30 | 中国移动通信集团公司 | 一种信息处理方法及电子设备 |
CN109496419A (zh) * | 2018-05-23 | 2019-03-19 | 优视科技新加坡有限公司 | 文件处理方法、装置和系统 |
CN109831506A (zh) * | 2019-01-31 | 2019-05-31 | 百度在线网络技术(北京)有限公司 | 文件上传方法、装置、终端、服务器及可读存储介质 |
CN109977077A (zh) * | 2019-03-25 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 模型文件存储方法、装置、可读存储介质和计算机设备 |
CN111131450A (zh) * | 2019-12-23 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 文件上传方法、重组方法及装置 |
CN112217903A (zh) * | 2020-10-27 | 2021-01-12 | 广东广宇科技发展有限公司 | 大文件传输方法、装置、服务器及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080183710A1 (en) * | 2007-01-29 | 2008-07-31 | Brett Serjeantson | Automated Media Analysis And Document Management System |
CN102571788A (zh) * | 2011-12-30 | 2012-07-11 | 北京奇虎科技有限公司 | 一种样本收集方法及系统 |
CN102821119A (zh) * | 2011-06-10 | 2012-12-12 | 北大方正集团有限公司 | 一种客户端、上传文件的方法、系统和设备 |
CN103561100A (zh) * | 2013-11-06 | 2014-02-05 | 乐视网信息技术(北京)股份有限公司 | 一种云上传方法及系统、调度设备、客户端 |
CN103595760A (zh) * | 2013-10-15 | 2014-02-19 | 北京航空航天大学 | 基于云端的文件画面共享方法 |
-
2014
- 2014-05-16 CN CN201410208555.5A patent/CN103986764B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080183710A1 (en) * | 2007-01-29 | 2008-07-31 | Brett Serjeantson | Automated Media Analysis And Document Management System |
CN102821119A (zh) * | 2011-06-10 | 2012-12-12 | 北大方正集团有限公司 | 一种客户端、上传文件的方法、系统和设备 |
CN102571788A (zh) * | 2011-12-30 | 2012-07-11 | 北京奇虎科技有限公司 | 一种样本收集方法及系统 |
CN103595760A (zh) * | 2013-10-15 | 2014-02-19 | 北京航空航天大学 | 基于云端的文件画面共享方法 |
CN103561100A (zh) * | 2013-11-06 | 2014-02-05 | 乐视网信息技术(北京)股份有限公司 | 一种云上传方法及系统、调度设备、客户端 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和系统 |
CN105577772B (zh) * | 2015-12-17 | 2020-07-07 | 腾讯科技(北京)有限公司 | 素材接收方法、素材上传方法及装置 |
CN105577772A (zh) * | 2015-12-17 | 2016-05-11 | 腾讯科技(北京)有限公司 | 素材接收方法、素材上传方法及装置 |
CN106909766A (zh) * | 2015-12-18 | 2017-06-30 | 中国移动通信集团公司 | 一种信息处理方法及电子设备 |
CN106909766B (zh) * | 2015-12-18 | 2019-06-07 | 中国移动通信集团公司 | 一种信息处理方法及电子设备 |
CN105743966A (zh) * | 2015-12-28 | 2016-07-06 | 哈尔滨安天科技股份有限公司 | 一种文件分块多点上传的方法及系统 |
CN106101204A (zh) * | 2016-06-03 | 2016-11-09 | 腾讯科技(深圳)有限公司 | 一种会话方法、系统、客户端及服务器 |
CN106101204B (zh) * | 2016-06-03 | 2018-11-09 | 腾讯科技(深圳)有限公司 | 一种会话方法、系统、客户端及服务器 |
CN106302715A (zh) * | 2016-08-12 | 2017-01-04 | 北京奇虎科技有限公司 | 一种文件管理方法、装置及系统 |
CN106302715B (zh) * | 2016-08-12 | 2020-02-14 | 北京奇虎科技有限公司 | 一种文件管理方法、装置及系统 |
CN109496419A (zh) * | 2018-05-23 | 2019-03-19 | 优视科技新加坡有限公司 | 文件处理方法、装置和系统 |
CN109496419B (zh) * | 2018-05-23 | 2022-01-28 | 阿里巴巴(中国)有限公司 | 文件处理方法、装置和系统 |
CN109831506A (zh) * | 2019-01-31 | 2019-05-31 | 百度在线网络技术(北京)有限公司 | 文件上传方法、装置、终端、服务器及可读存储介质 |
CN109977077A (zh) * | 2019-03-25 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 模型文件存储方法、装置、可读存储介质和计算机设备 |
CN111131450A (zh) * | 2019-12-23 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 文件上传方法、重组方法及装置 |
CN112217903A (zh) * | 2020-10-27 | 2021-01-12 | 广东广宇科技发展有限公司 | 大文件传输方法、装置、服务器及存储介质 |
CN112217903B (zh) * | 2020-10-27 | 2023-08-15 | 广东广宇科技发展有限公司 | 大文件传输方法、装置、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103986764B (zh) | 2018-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103986764A (zh) | 用于多客户端协同文件上传的设备和方法 | |
US9094854B2 (en) | Reducing power consumption for M2M communications in wireless networks | |
CN106233815B (zh) | 用于通过一个或多个流为一个或多个用户设备提供服务的系统及方法 | |
CN104093064B (zh) | 在终端设备之间进行视频互动的方法、系统及装置 | |
KR101165746B1 (ko) | 푸시 메시지 서비스 시스템 및 방법 | |
CN107483627A (zh) | 一种文件分发、下载方法、分发服务器、客户端及系统 | |
CN102685203A (zh) | 数据资源传输的方法和设备 | |
CN105450785B (zh) | 一种文件传输方法和装置 | |
RU2010109376A (ru) | Способ и устройство для поддержки широковещательных и групповых услуг в системе беспроводной связи | |
US10020916B2 (en) | Method and apparatus for data communication of vehicle | |
CN110995513A (zh) | 物联网系统中的数据发送、接收方法、物联网设备及平台 | |
CN102523282A (zh) | 移动终端共享数据的方法、装置及网络服务器 | |
US20200380478A1 (en) | Api charging system, api charging management method, and api charging program | |
JP5476975B2 (ja) | ネットワーク間データ配信システム、情報通信端末、コンテンツ配信サーバ | |
CN106302093B (zh) | 一种通信方法、系统及服务器 | |
US8504655B1 (en) | Proxy delegation for content delivery | |
CN102946559B (zh) | 一种数字电视终端的升级方法、终端、服务器及其系统 | |
CN105119968A (zh) | 一种图片传输方法及装置 | |
CN113661754B (zh) | 数据传输方法、装置、用户设备及存储介质 | |
CN105119805B (zh) | 一种即时通信数据传输方法及即时通信数据传输系统 | |
Abedini et al. | Harnessing multiple wireless interfaces for guaranteed QoS in proximate P2P networks | |
CN114124891A (zh) | 网络请求的处理方法和装置、存储介质及电子装置 | |
JP2002169738A (ja) | ファイル配信方法 | |
WO2014032489A1 (zh) | 一种推送业务的实现方法和设备 | |
JP6919213B2 (ja) | 通信機、通信システム、通信方法、およびプログラム |
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 |