一种基于多播的局域网内文件更新方法及客户端技术

技术编号:20369464 阅读:32 留言:0更新日期:2019-02-16 19:48
本发明专利技术实施例提供了一种基于多播的局域网内文件更新方法和客户端。由上述本发明专利技术的实施例提供的技术方案可以看出,本发明专利技术实施例客户端记录待获取的第一分片文件;客户端向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。通过上述方法,在多播网络中,即使多播用户数量成倍增长,骨干网络中网络带宽也无需增加。

A Multicast-based File Updating Method and Client in LAN

The embodiment of the present invention provides a multicast-based in-LAN file update method and a client. As can be seen from the technical scheme provided by the embodiments of the invention, the client in the embodiment of the invention records the first fragment file to be acquired; the client sends a request to other clients in the LAN to request the first fragment file; and when the first fragment file exists in the fragment file received by other clients, the other clients receive the said fragment file. Response to requests. With the above methods, even if the number of multicast users doubles in multicast networks, the network bandwidth in backbone networks does not need to increase.

【技术实现步骤摘要】
一种基于多播的局域网内文件更新方法及客户端
本专利技术涉及通信
,尤其涉及一种基于多播的局域网内文件更新方法及客户端。
技术介绍
在软件开发中,基于C/S架构的系统往往需要在各个用户自行在PC端进行软件的更新。有可能出现这样一种情况,局域网内大量用户程序会在一个时间点内向服务器提出新版本请求,更新各个PC端的软件。这样其实存在同一版本的软件需要的更新资源一致,导致重复的向服务端发起对同一资源请求造成带宽以及服务器资源的浪费,在更新时段会有大量的服务端请求并且针对同一版本的请求对带宽和服务端流量以及对服务器的负载提出挑战,需要更多的服务端资源;而在大部分时间,服务端并没有大量访问请求。如果提升服务端运算能力,那么在大部分时间用不到这些运算能力;若不提升服务端运算能力,在刚刚发布新版本时,服务端压力会较大,对带宽也有更高要求,而且同一版本的资源在局域网内没有利用到局域网内的即时传输的速率,丢包率低的特点。所以,需要基于多播的局域网内文件更新方法来改善上述缺点。
技术实现思路
本专利技术的实施例提供了一种基于多播的局域网内文件更新方法和客户端,本专利技术提供了如下方案:客户端记录待获取的第一分片文件;客户端向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。根据本专利技术的上述方法,包括:客户端记录已收到的分片文件;接收其他客户端发送的获取第二分片文件的请求;根据所述请求确定所述第二分片文件是否存在于已收到的分片文件中,若存在,则发送对所述请求的响应。根据本专利技术的上述方法,包括:当在预设时间内,未接收到所述其他客户端对所述请求的响应,则所述客户端向服务端请求获取所述第一分片文件。根据本专利技术的上述方法,包括:接收所述服务端的发送缓存区内数据包,其中,所述数据包包含所述第一分片文件的分片数据;解析所述数据包获取所述分片数据,并将所述分片数据写入接收缓存区。根据本专利技术的上述方法,包括:当所述发送缓存区的数据包发送完毕,客户端检测所述接收缓存区的所述分片数据是否存在丢包数据;若存在,则重新向所述服务端请求所述丢包数据。根据本专利技术的上述方法,包括:接收所述服务端发送的对所述发送缓冲区内数据包的第一校验结果;其中,所述第一校验结果由所述服务端确定所述发送缓冲区内数据包已成功发送至所述客户端后,对所述发送缓冲区内数据包执行的第一校验;客户端对所述接收缓冲区所写入的所述分片数据执行的第二校验;当所述第一校验与所述第二校验匹配时,则确定所述分片数据接收完毕;根据所述分片数据获取所述第一分片文件。根据本专利技术的上述方法,包括:向所述局域网内所述其他客户端多播所述第一分片文件;当所述第一分片文件为其他客户端的待获取的第一分片文件;接收所述其他客户端发送的获取所述第一分片文件的请求;向所述其他客户端发送对所述请求的响应。根据本专利技术的上述方法,包括:将所述第一分片文件记录到已收到的分片文件中。根据本专利技术的另一方面,还提供一种基于多播的客户端,包括:记录模块:其用于记录待获取的第一分片文件;发送模块:其用于向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;接收模块:其用于当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。根据本专利技术的另一方面,所述记录模块还用于记录已收到的分片文件;所述接收模块还用于接收其他客户端发送的获取第二分片文件的请求;所述发送模块还用于根据所述请求确定所述第二分片文件是否存在于已收到的分片文件中,若存在,则发送对所述请求的响应。由上述本专利技术的实施例提供的技术方案可以看出,本专利技术实施例客户端记录待获取的第一分片文件;客户端向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。通过上述方法,在多播网络中,即使多播用户数量成倍增长,骨干网络中网络带宽也无需增加。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例一提供的应用场景图;图2为本专利技术实施例一提供的一种基于多播的局域网内文件更新方法的处理流程图;图3为本专利技术实施例一提供的当发生丢包时重传机制的流程图;图4为本专利技术实施例二提供的一种客户端的系统模块图。具体实施方式为便于对本专利技术实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本专利技术实施例的限定。实施例一多播是一种数据包传输方式,当有多台主机同时成为一个数据包的接受者时,出于对带宽和CPU负担的考虑,多播成为了一种最佳选择。多播通过把224.0.0.0-239.255.255.255的D类地址作为目的地址,有一台源主机发出目的地址是以上范围多播地址的报文,在网络中,如果有其他主机对于这个组的报文有兴趣的,可以申请加入这个组,并可以接受这个组,而其他不是这个组的成员是无法接受到这个组的报文的。在多播协议中,在网络设备和所连接的子网需要有一套协议或机制来保证网络设备知道所连接的子网中,有多少台主机属于一个特定的组。多播,是把从一个由源产生得报文发送给一组目的。在一个特定的路由器上,一个包得多个备份可能从多个接口上发出。如果有环路得存在,那么一个或多个包会返回到其输入的接口,而且这个包也会经复制发到其他的端口上。这一结果可能导致多播风暴,这个包不断在路由器与交换机间复制,直到TTL减为0。由于这是个复制过程,它的危害会比单播环路严重的多,所以所有的多播路由器必须知道多播包的源,并且需要保证多播包不能从源接口发出。所以他必须知道哪些是上游接口和下游接口,可以分辨出数据包的流向。如果在不是在源的上游接口收到数据包,就会把它丢弃掉。而多播路由协议必须关心到源的最短路径,或者说它关心到源的上游接口。同时,除了关心上游接口,但是在转发的时候,不能把数据包从除了上游接口的其他接口发送出去实现。组员可以在多播会话存活的时候,加入或退出一个组,而与其相连的路由器必须动态的根据直连子网内组员的存在或退出来决定要加入或剪除多播树的树枝。我们通过广播/剪除模式来去除多播树上的没有多播成员的树枝。也就是说,它是通过先把网际网络上的所有路由器都加入到多播树上,然后由每个路由器通过IGMP(InternetGroupManagementProtocol,互联网组管理协议)协议来查询是否有组员在直连的子网上,如果没有,就发出一条剪除消息,来剪除多余的树枝。在本实施例中,在局域网内有多个客户端,如附图1所示,服务器对更新的文件进行分片,在客户端上,每个客户端记录本客户端待获取的分片文件,具体地,可以将待获取的分片文件建立一个需求列表。当客户端请求获取所记录的待获取文件时,先向局域网内的其他客户端发请求,若得到其他客户端的回应,则不必在向服务端发请求;如果没有得到其他客户端的回应,则再向服务端发起请求。下面结合本专利技术的实施例提供的一种基于多播的局域网内文件更新方法的处本文档来自技高网...

【技术保护点】
1.一种基于多播的局域网内文件更新方法,应用于局域网内客户端,其特征在于,包括:客户端记录待获取的第一分片文件;客户端向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。

【技术特征摘要】
1.一种基于多播的局域网内文件更新方法,应用于局域网内客户端,其特征在于,包括:客户端记录待获取的第一分片文件;客户端向所述局域网内其他客户端发送请求以请求获取所述第一分片文件;当所述第一分片文件存在于其他客户端已收到的分片文件中,接收所述其他客户端对所述请求的响应。2.根据权利要求1所述的一种基于多播的局域网内文件更新方法,应用于局域网内客户端,其特征在于,包括:客户端记录已收到的分片文件;接收其他客户端发送的获取第二分片文件的请求;根据所述请求确定所述第二分片文件是否存在于已收到的分片文件中,若存在,则发送对所述请求的响应。3.根据权利要求1所述的一种基于多播的局域网内文件更新方法,其特征在于,包括:当在预设时间内,未接收到所述其他客户端对所述请求的响应,则所述客户端向服务端请求获取所述第一分片文件。4.根据权利要求3所述的一种基于多播的局域网内文件更新方法,其特征在于,所述客户端向服务端请求获取所述第一分片文件,包括:接收所述服务端的发送缓存区内数据包,其中,所述数据包包含所述第一分片文件的分片数据;解析所述数据包获取所述分片数据,并将所述分片数据写入接收缓存区。5.根据权利要求4所述的一种基于多播的局域网内文件更新方法,其特征在于,包括:当所述发送缓存区的数据包发送完毕,客户端检测所述接收缓存区的所述分片数据是否存在丢包数据;若存在,则重新向所述服务端请求所述丢包数据。6.根据权利要求5所述的一种基于多播的局域网内文件更新方法,其特征在于,包括:接收所述服...

【专利技术属性】
技术研发人员:高起跃王沛林朱兴龚乐天
申请(专利权)人:航天信息股份有限公司
类型:发明
国别省市:北京,11

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

1