[说明]
A公司准备建立一个合同管理和查询系统。该系统由1台服务器和100台客户机构成,服务器和客户机之间通过局域网进行通信,服务器通过专线连接到两个交易网关A和B。系统构成如图所示。
服务器是对称多处理器系统,操作系统使用虚拟存储。操作系统需要60MB的主存(假设与CPU的数量无关)。
系统需要处理4种类型的操作:从交易网关接收数据,完成应用1到应用3的操作。
服务器直接从交易网关接收数据(该操作被称为接收任务)。应用l至应用3需要客户机与服务器协作完成,其中由服务器执行的部分被分别称为应用任务1、应用任务2和应用任务3(如表所示)。对于接收任务,即便是在峰值时间,也必须在10s内完成,否则数据会丢失。
系统中的100台客户机的配置完全相同。一台客户机一次只能处理一个应用,不能同时处理多个应用。一个应用完成之后,才能处理下一个应用。
服务器根据客户机选择的应用创建不同的应用任务。当客户机上的处理完成后,相应的应用任务也完成了。当服务器启动时,分别为每个交易网关创建一个接收任务。
在峰值时间,处理应用1的客户机有50台,处理应用2的客户机有30台,处理应用3的客户机有 20台。
由于该系统使用虚拟存储,因此没有必要全部从主存中为操作系统和每个任务申请存储空间。但是,如果系统从主存中分配给操作系统的存储空间不到其所需的80%,分配给应用任务的存储空间不到其所需的50%,分配给接收任务的存储空间不到其所需的80%,则系统性能会下降到不能接受的程度。
如果在服务器和客户机之间采用TCP/IP协议通信,则在峰值时间,局域网上传输的数据的最小流量是多少
参考答案:应用任务1的数据量:D1=50×2000×64×8b=51.2×106b
应用任务2的数据量:D2=30×1000×64×8b=15.36×106b
应用任务3的数据量:D3=20×3600×8b=0.576×106b
峰值时间段局域网上传输的数据的最小流量:
=(5.12+1.536+0.0192)×106b/s=6.6752Mbps
解析:
这是一道要求读者根据实际应用环境熟练应用数据传输速率公式进行计算的综合题。本题的计算思路如下。
①根据表5-9所提供的信息,由于试题中未给出服务器直接从交易网关接收数据的接收任务的具体数据量,而它与计算峰值时间点该局域网上传输的数据流量无关,因此可不做考虑。
②由于在峰值时间,处理应用任务1的客户机有50台,而应用任务1由2000个记录构成,每个记录64B,因此峰值时间段局域网上传输应用任务1的数据量D1为:
D1=50×2000×64×8b=51200000b=51.2×106b
注意计算时要把64B转换成64×8b,以便统一单位,为后面计算数据传输速率奠定基础。
③同理,处理系统中应用任务2的客户机有30台,而应用任务2由1000个记录构成,每个记录64B,因此峰值时间段局域网上传输应用任务2的数据量D2为:
D2=30×1000×64×8b=15360000b=15.36×106b
④处理系统中应用任务3的客户机有20台,而应用任务3的“合同包含的数据为3600B”,因此峰值时间段局域网上传输应用任务3的数据量D3为:
D3=20×3600×8b=1536×106b
⑤峰值时间段局域网上传输的数据的最小流量,是指这100台客户机同时与服务器进行相互通信的数据传输速率。设该数据的最小流量为R,根据数据传输速率计算公式
可得:
=(5.12+1.536+0.0192)×106b/s=6.6752×106b/s=6.6752Mbps
⑥若考虑该局域网上的控制信息的开销(以太网帧头、IP头、TCP/UDP头等),则该局域网上传输的数据的最小流量约为7Mbps。
⑦注意,常见的一种错误计算过程如下:
产生这种错误计算结果的原因有二:含糊地理解数据传输速率计算公式所表示的意义;没注意到题目中“每台客户机一次只能处理一个应用任务”这个关键信息。