CN1519743A - 利用广播机制均衡负载的文件预装系统及其方法 - Google Patents
利用广播机制均衡负载的文件预装系统及其方法 Download PDFInfo
- Publication number
- CN1519743A CN1519743A CNA031019080A CN03101908A CN1519743A CN 1519743 A CN1519743 A CN 1519743A CN A031019080 A CNA031019080 A CN A031019080A CN 03101908 A CN03101908 A CN 03101908A CN 1519743 A CN1519743 A CN 1519743A
- Authority
- CN
- China
- Prior art keywords
- file
- client
- server
- data
- connection
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
一种利用广播机制均衡负载的文件预装系统及其方法,应用于客户机/服务器网络结构,该系统包括:数据连接,以无面向连接方式建立于所述服务器与客户机之间,用以从服务器向客户机传播数据包;命令连接,以面向连接方式建立于所述服务器与客户机之间,用以双向传输命令请求。该方法包括:在该客户机与服务器之间建立两个连接,一个采用无面向连接方式的数据连接,另一个采用面向连接方式的命令连接;通过数据连接,从服务器向客户机传播数据包,通过命令连接,在客户机与服务器之间建立双向的传输命令请求;以及客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置。本发明具有占用较少的网络带宽,工序安排灵活的优点。
Description
技术领域
本发明涉及一种文件预装系统及方法,尤其涉及一种应用于客户机/服务器网络结构,利用广播机制均衡负载的文件预装系统及方法。
背景技术
计算机(包括笔记型计算机和台式计算机)在出厂之前都要在硬盘上预装操作系统和应用软件,用户购买一台计算器后,打开电源即可使用。
为达到这一目标,一般的做法是:首先,在一台样机上进行常规的操作,包括分区、格式化、安装操作系统、安装随机软件等;然后在DOS下将样机硬盘复制成一个镜像文件,并将该镜像文件放在服务器上的共享目录中;最后通过客户机下载镜像文件,根据镜像文件恢复一个出货镜像。
这种方法的优点是系统和软件只需安装一次,减少了工序和工时。然而这样做仍然存在下列明显的不足之处:
1.若有n个客户机同时从服务器上下载出货镜像时,网络流量是一个客户机时的n倍,当客户机数量很多时会对网络造成巨大的负担,不仅使下载效率大大下降,甚至会造成网络数据过多,使网络瘫痪。
2.当有若干个客户机同时在线下载出货镜像文件时,服务器对同一个镜像文件进行并发处理,因为没有对并发处理进行统一调度,所以会对服务器磁盘造成较大的负担,在一定程度上降低了数据下载速率。
3.当生产线上同时在线的出货镜像较多时,为提高效率,不得不采取使用高性能服务器、增加服务器数量,采用千兆网等措施,这样一来就大大增加了生产成本。
一个明显的例子是,当生产线上同时有20台客户机下载出货镜像时,下载1G的出货镜像文件需要45分钟,而只有一台客户机在线时,下载相同的出货镜像时只需要5分钟。
发明内容
本发明的目的在于提供一种利用广播机制均衡负载的文件预装系统及其方法,无论每个镜像文件同时对应多少台客户机,其只需要一台客户机的带宽就可实现对多客户机的数据传输,不用扩容现有网络,即可以较低成本实现较高效率的镜像文件的下载安装。本发明提供一种利用广播机制均衡负载的文件预装系统,应用于客户机/服务器网络结构,该系统包括:数据连接,以无面向连接方式建立于所述服务器与客户机之间,用以从服务器向客户机传播数据包;以及命令连接,以面向连接方式建立于所述服务器与客户机之间,用以双向传输命令请求。
本发明还提供一种利用广播机制均衡负载的文件预装方法,应用于客户机/服务器网络结构,该方法包括:在该客户机与服务器之间建立两个连接,一个采用无面向连接方式的数据连接,另一个采用面向连接方式的命令连接;通过数据连接,从服务器向客户机传播数据包,通过命令连接,在客户机与服务器之间建立双向的传输命令请求;以及客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置。
本发明具有以下优点:
1.占用较少的网络带宽:由于服务器采用的是广播方式,数据广播一次,所有的客户机均能收到广播资料,因此,无论每个镜像文件同时对应多少台客户机,数据传输只占用和对应一台客户机时相同的带宽。较少的网络带宽带来的进一步的优点是减少了网络数据过多的危险。
2.生产效率高:由于一台和多台客户机同时下载镜像文件所占用的时间是基本相同的,所以在生产线上大批量生产时能体现出较高的生产效率。
3.工序安排灵活:由于服务器端采用UDP协议向客户机广播数据包时,只要监测到有客户机在线就循环播发镜像文件的数据,客户机只要监测到所有的磁盘位置都已写入数据便退出。这样可保证客户机没有必要从镜像文件的开始下载数据,即客户机没有必要同时启动,从而可保证生产工序的安排有较大的弹性。
4.较低的生产成本:从速度上考虑,100M的网络环境已满足客户机的需求,因为当前的速度瓶颈为客户机的解压缩和写硬盘,更快的网速和更高的服务器性能已不再成为必要的需求。这样就没有必要要求速度更高的网络环境和性能更高的服务器。
附图说明
图1为本发明的利用广播机制均衡负载的文件预装系统及方法所运行的网络环境示意图;
图2为本发明的利用广播机制均衡负载的文件预装系统结构示意图;
图3为本发明所涉及的服务器端功能模块示意图;
图4为本发明所涉及的客户机端功能模块示意图;
图5为本发明的利用广播机制均衡负载的文件预装方法流程图;
图6为本发明所涉及的从服务器向客户机传输数据包的步骤流程图;以及
图7为本发明所涉及的客户机接收数据包并写入磁盘的步骤流程图。
附图标记说明:
10服务器端,11服务器管理模块,12读文件模块,13写套接字模块,20客户机端,21客户机管理模块,22读套接字模块,23写文件模块,24解压缩模块,30集线器(Share Hub),40交换机(Switch Hub),101数据连接,102命令连接,
步骤501 在该客户机与服务器之间建立两个连接,一个采用无面向连接方式的数据连接,另一个采用面向连接方式的命令连接
步骤502 通过数据连接,从服务器向客户机广播数据包,通过命令连接,在客户机与服务器之间建立双向的传输命令请求
步骤503 客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置
步骤601 服务器端侦听并响应客户机的请求命令
步骤602 查找需要安装的镜像文件的当前数据段
步骤603 确定该当前数据段的位置参数
步骤604 根据该位置参数读取该数据段
步骤605 确定写套接字任务队列的节点
步骤606 按照该节点,将读取出的数据段压入该写套接字任务队列
步骤607 将该节点的数据包广播出去
步骤608 释放该节点
步骤701 从套接字读取数据包
步骤702 创建一写文件任务队列节点
步骤703 根据该节点将数据包压入写文件任务队列
步骤704 从该写文件任务队列中获得该节点
步骤705 根据该节点将资料写入磁盘指定位置
步骤706 释放该节点
具体实施方式
请参见图1,为本发明的利用广播机制均衡负载的文件预装系统及方法所运行的网络环境示意图,服务器端10通过集线器(Share Hub)30和交换机(Switch Hub)40与客户机端20组成网络。连接客户机的所有(通常只有一个)的网络集线器连接在一个交换机上,交换机屏蔽掉服务器的IP地址,以免数据的广播影响网络上的其它系统。
参见图2,为本发明的利用广播机制均衡负载的文件预装系统结构示意图,该系统由服务器端10、客户机端20、数据连接101和命令连接102组成。客户机端20负责接收数据、必要时解压缩数据,然后将镜像文件的原始数据写入客户机磁盘中的指定位置;服务器端10负责管理欲安装的镜像文件、响应客户机的请求、向客户机广播镜像文件数据包以及用户交互功能及统一调度客户端20的访问需求;数据连接101以无面向连接方式建立于所述服务器与客户机之间,用以从服务器向客户机广播数据包;命令连接102以面向连接方式建立于所述服务器与客户机之间,用以双向传输命令请求。
上述该无面向连接方式可以是采用UDP协议,而面向连接方式可以采用TCP协议。
当服务器10采用UDP协议向客户机广播数据包时,由于每个数据包的头部均含有数据包的位置信息,因此每个镜像文件只广播一次,所有的客户机都能收到文件数据。客户机端20在内存中维护一个链表,链表的信息表示磁盘上那一块位置已写入数据,那一块位置尚未写入数据,服务器10只要监测到有客户机在线就循环播放镜像文件的数据,客户机只要监测到所有的磁盘位置都已写入数据便退出。这样可保证客户机没有必要从镜像文件的开始下载数据,即客户机没有必要同时激活,从而可保证生产工序的安排有较大的弹性。
参见图3,系为服务器端功能模块示意图,其由服务器管理模块11、读文件模块12和写套接字模块13组成。其中,读文件模块12用以读取磁盘中的镜像文件,写套接字模块13用以将从镜像文件中读取出的数据包广播出去,服务器管理模块,用以管理该读文件模块和写套接字模块,并监控客户端的请求。
参见图4,系为客户机端功能模块示意图,其由客户机管理模块21、读套接字模块22和写文件模块23组成。其中,读套接字模块22用以从广播端口读取数据包,写文件模块23用以将数据写入磁盘指定位置,客户机管理模块21用以管理该读套接字模块和写文件模块,监控数据包的丢失情况,并向服务器端发出请求。如果镜像文件是经过压缩处理的,那么在客户机端还可以包含有一解压缩模块24,用以将读取出的经过压缩的数据包解压缩。
为了提高下载效率,服务器端和客户机端均可采用多线程并行处理,各模块之间可通过队列传递数据。
参见图5,为本发明的利用广播机制均衡负载的文件预装方法流程图。首先,在该客户机与服务器之间建立两个连接,一个采用无面向连接方式的数据连接,另一个采用面向连接方式的命令连接(步骤501);然后,通过数据连接,从服务器向客户机广播数据包,通过命令连接,在客户机与服务器之间建立双向的传输命令请求(步骤502);最后,客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置(步骤503)。
参见图6,为本发明所涉及的从服务器向客户机传输资料包数据包的步骤流程图,首先服务器端侦听并响应客户机的请求命令(步骤601);接着,查找需要安装的镜像文件的当前数据段(步骤602);确定该当前数据段的位置参数(步骤603);根据该位置参数读取该数据段(步骤604);确定写套接字任务队列的节点(步骤605);按照该节点,将读取出的数据段压入该写套接字任务队列(步骤606);将该节点的数据包广播出去(步骤607);释放该节点(步骤608)。
其中,服务器端用于侦听到有客户机在线就循环广播镜像文件的数据包。对于需要安装的镜像文件,可以将其切分成若干数据段,并可通过创建一读文件任务队列来对该镜像文件的数据段进行管理和排序。
在读取文件之前,需要确定当前数据段的位置参数,如:偏移地址(Offset)或长度(LEN)等。
参见图7,为本发明所涉及的客户机接收数据包并写入磁盘的步骤流程图。首先,从套接字读取数据包(步骤701);接着,创建一写文件任务队列节点(步骤702);根据该节点将数据包压入写文件任务队列(步骤703);从该写文件任务队列中获得该节点(步骤704);根据该节点将资料写入磁盘指定位置(步骤705);最后,释放该节点(步骤706)。
其中,如果镜像文件是经过压缩处理的,那么在上述创建一写文件任务队列节点(步骤702)之后,还包含一将读取出的经压缩的数据包解压缩的步骤。
在客户机将数据写入磁盘指定位置之后,如果该客户机监测到所有的磁盘位置都已写入了数据便退出。
以上所述的实施例,只是本发明的较佳实施例,并不是用来限定本发明的实施范围;所有依本发明的权利要求书的范围所作的不脱离本发明的精神和范围内的变化与修饰,都在本发明的保护范围之内。
Claims (18)
1.一种利用广播机制均衡负载的文件预装系统,应用于一客户机/服务器网络结构,其特征在于,该系统包括:
一数据连接,以无面向连接方式建立于所述服务器与客户机之间,用以从服务器向客户机广播数据包;以及
一命令连接,以面向连接方式建立于所述服务器与客户机之间,用以双向传输命令请求。
2.如权利要求1所述的利用广播机制均衡负载的文件预装系统,其特征在于,该无面向连接方式是UDP协议。
3.如权利要求1所述的利用广播机制均衡负载的文件预装系统,其特征在于,该面向连接方式是TCP协议。
4.如权利要求1所述的利用广播机制均衡负载的文件预装系统,其特征在于,所述数据包的头部均含有数据包的位置信息。
5.如权利要求1所述的利用广播机制均衡负载的文件预装系统,其特征在于,所述服务器端还包含:
一读文件模块,用以读取磁盘中的镜像文件;
一写套接字模块,用以将从镜像文件中读取出的数据包广播出去;以及
一服务器管理模块,用以管理该读文件模块和写套接字模块,并监控客户端的请求。
6.如权利要求1所述的利用广播机制均衡负载的文件预装系统,其特征在于,所述客户机端还包含:
一读套接字模块,用以从广播端口读取数据包;
一写文件模块,用以将数据写入磁盘指定位置;以及
一客户机管理模块,用以管理该读套接字模块和写文件模块,监控数据包的丢失情况,并向服务器端发出请求。
7.如权利要求6所述的利用广播机制均衡负载的文件预装系统,其特征在于,所述客户机端还包含一解压缩模块,用以将读取出的经过压缩的数据包解压缩。
8.如权利要求6所述的利用广播机制均衡负载的文件预装系统,其特征在于,所述客户机端的内存中维护有一链表,链表的信息表示磁盘上哪一块位置已写入数据,哪一块位置尚未写入数据。
9.一种利用广播机制均衡负载的文件预装方法,应用于一客户机/服务器网络结构,该方法包括:
在该客户机与服务器之间建立两个连接,一个采用无面向连接方式的数据连接,另一个采用面向连接方式的命令连接;
通过数据连接,从服务器向客户机广播数据包,通过命令连接,在客户机与服务器之间建立双向的传输命令请求;以及
客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置。
10.如权利要求9所述利用广播机制均衡负载的文件预装方法,其特征在于,该无面向连接方式是UDP协议。
11.如权利要求9所述利用广播机制均衡负载的文件预装方法,其特征在于,该面向连接方式是TCP协议。
12.如权利要求9所述利用广播机制均衡负载的文件预装方法,其特征在于,该通过数据连接,从服务器向客户机传输数据包的步骤,还包含如下步骤:
监听并响应客户机的请求命令;
查找需要安装的镜像文件的当前数据段;
确定该当前数据段的位置参数;
根据该位置参数读取该数据段;
确定写套接字任务队列的节点;
按照该节点,将读取出的数据段压入该写套接字任务队列;
将该节点的数据包广播出去;以及
释放该节点。
13.如权利要求12所述利用广播机制均衡负载的文件预装方法,其特征在于,所述侦听并响应客户机的请求命令的步骤,只要服务器侦听到有客户机在线就循环广播镜像文件的数据包。
14.如权利要求12所述利用广播机制均衡负载的文件预装方法,其特征在于,所述查找需要安装的镜像文件的当前数据段的步骤,可通过创建一读文件任务队列来对该镜像文件的数据段进行管理和排序。
15.如权利要求12所述利用广播机制均衡负载的文件预装方法,其特征在于,所述当前数据段的位置参数包括偏移地址和长度。
16.如权利要求9所述利用广播机制均衡负载的文件预装方法,其特征在于,所述客户机接收到从服务器端广播出来的数据包,并将其写入到磁盘指定位置的步骤,还包括如下步骤:
从套接字读取数据包;
创建一写文件任务队列节点;
根据该节点将数据包压入写文件任务队列;
从该写文件任务队列中获得该节点;
根据该节点将数据写入磁盘指定位置;以及
释放该节点。
17.如权利要求16所述利用广播机制均衡负载的文件预装方法,其特征在于,所述创建一写文件任务队列节点步骤之后,还包含一将读取出的经压缩的数据包解压缩的步骤。
18.如权利要求16所述利用广播机制均衡负载的文件预装方法,其特征在于,所述根据该节点将数据写入磁盘指定位置的步骤,如果该客户机监测到所有的磁盘位置都已写入数据便退出。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN 03101908 CN1278251C (zh) | 2003-01-23 | 2003-01-23 | 利用广播机制均衡负载的文件预装系统及其方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN 03101908 CN1278251C (zh) | 2003-01-23 | 2003-01-23 | 利用广播机制均衡负载的文件预装系统及其方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1519743A true CN1519743A (zh) | 2004-08-11 |
| CN1278251C CN1278251C (zh) | 2006-10-04 |
Family
ID=34281506
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN 03101908 Expired - Lifetime CN1278251C (zh) | 2003-01-23 | 2003-01-23 | 利用广播机制均衡负载的文件预装系统及其方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN1278251C (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101982955A (zh) * | 2010-11-19 | 2011-03-02 | 深圳华大基因科技有限公司 | 高性能文件传输系统及方法 |
| CN117425147A (zh) * | 2023-09-08 | 2024-01-19 | 重庆数智融合创新科技有限公司 | 一种生产线终端数据分发系统及方法 |
-
2003
- 2003-01-23 CN CN 03101908 patent/CN1278251C/zh not_active Expired - Lifetime
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101982955A (zh) * | 2010-11-19 | 2011-03-02 | 深圳华大基因科技有限公司 | 高性能文件传输系统及方法 |
| WO2012065520A1 (zh) * | 2010-11-19 | 2012-05-24 | 深圳华大基因科技有限公司 | 文件传输系统及方法 |
| CN101982955B (zh) * | 2010-11-19 | 2013-09-04 | 深圳华大基因科技有限公司 | 高性能文件传输系统及方法 |
| CN117425147A (zh) * | 2023-09-08 | 2024-01-19 | 重庆数智融合创新科技有限公司 | 一种生产线终端数据分发系统及方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN1278251C (zh) | 2006-10-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1171153C (zh) | 管理服务器和客户机间的连接的系统和方法 | |
| CN1288575C (zh) | 用于管理客户与服务器之间的连接的系统和方法 | |
| CN1132113C (zh) | 使用http的计算机网络的性能优化 | |
| US10783121B2 (en) | Techniques for optimizing data flows in hybrid cloud storage systems | |
| US20060167969A1 (en) | Data caching based on data contents | |
| CN1605071A (zh) | 用于延迟的网络信息传输的设备和方法 | |
| US20110078467A1 (en) | Reducing energy consumption in a computing cluster | |
| CN1372405A (zh) | 接续持续连接 | |
| EP2011029B1 (en) | Managing network response buffering behavior | |
| CN115858184A (zh) | 一种rdma内存管理方法、装置、设备及介质 | |
| CN1714346A (zh) | 用于数据传输和接收的系统和方法 | |
| WO2021012723A1 (zh) | 多媒体文件存储、读取方法 | |
| US20010049727A1 (en) | Method for effficient and scalable interaction in a client-server system in presence of bursty client requests | |
| CN1909462A (zh) | 一种服务器 | |
| CN1197296C (zh) | 信息交换机 | |
| US20060224759A1 (en) | System and method for a peer-to-peer streaming content operation by a browser plug-in | |
| CN1519743A (zh) | 利用广播机制均衡负载的文件预装系统及其方法 | |
| US20040064644A1 (en) | Structure and method of cache memory data update | |
| CN1873613A (zh) | 均衡负载的文件预装系统及方法 | |
| CN101064715A (zh) | 基于嵌入式系统的p2p技术实现 | |
| US7480739B1 (en) | Segregated caching of linked lists for USB | |
| US20040240388A1 (en) | System and method for dynamic assignment of timers in a network transport engine | |
| CN1863051A (zh) | 多节点智能网络应用服务系统中的应用管理子系统及方法 | |
| CN1725728A (zh) | 一种基于信令协议的缓冲区的管理方法 | |
| CN1559037A (zh) | 一种使数据单元流入终端的备份交换机 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant | ||
| ASS | Succession or assignment of patent right |
Owner name: I VALLEY HOLDINGS CO., LTD. Free format text: FORMER OWNER: YINGYEDA CO., LTD., TAIWAN Effective date: 20150723 |
|
| C41 | Transfer of patent application or patent right or utility model | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20150723 Address after: Cayman Islands, George Town Patentee after: Microsoft Corp. Address before: Taipei City, Taiwan, China Patentee before: Yingda Co.,Ltd. |
|
| CX01 | Expiry of patent term | ||
| CX01 | Expiry of patent term |
Granted publication date: 20061004 |