问答题 [说明]
A公司准备建立一个合同管理和查询系统。该系统由1台服务器和100台客户机构成,服务器和客户机之间通过局域网进行通信,服务器通过专线连接到两个交易网关A和B。系统构成如图所示。

服务器是对称多处理器系统,操作系统使用虚拟存储。操作系统需要60MB的主存(假设与CPU的数量无关)。
系统需要处理4种类型的操作:从交易网关接收数据,完成应用1到应用3的操作。
服务器直接从交易网关接收数据(该操作被称为接收任务)。应用l至应用3需要客户机与服务器协作完成,其中由服务器执行的部分被分别称为应用任务1、应用任务2和应用任务3(如表所示)。对于接收任务,即便是在峰值时间,也必须在10s内完成,否则数据会丢失。
问答题 要保证在峰值时间应用任务的处理速度仍可接受,服务器所需的最小主存是多少?(单位:MB)
【正确答案】操作系统本身需要的主存为60MB
应用任务1至应用任务3所需的主有为50×6+30×6+20×10=680MB
接收任务所需要的主存为2×5=10MB
服务器所需的最小主存为60MB×80%+680MB×50%+10MB×80%=396MB
【答案解析】[解析]
这是一道要求读者根据实际应用环境计算服务器最小内存的综合题。本题的计算思路如下。
①由题干的关键信息“数据服务器操作系统使用虚拟存储,操作系统需要60MB的主存”可知,操作系统本身需要的主存为60MB。
②根据题干的关键信息“在峰值时间点,处理应用任务1的客户机有50台,处理应用任务2的客户机有30台,处理应用任务3的客户机有20台”,结合表5-9中“占用的主存”列所提供的信息可计算出,应用任务1至应用任务3所需的主存为50×6+30×6+20×10=680MB。
③在图5-14所示的网络拓扑结构中,服务器需要通过专线链路与交易网关A、交易网关B进行通信,即服务器中有2个相对应的接收任务(此处是本题解答的难点之一,考生在计算过程中往往只按1个接收任务进行计算);结合表5-9所提供的信息可计算出接收任务所需要的主存为2×5=10MB。
④根据题干的关键信息“如果系统从主存中分配给操作系统的存储空间不到其所需的80%,分配给应用任务的存储空间不到其所需的50%,分配给接收任务的存储空间不到其所需的80%,系统性能会下降到不能接受的程度”可知,在峰值时间点,服务器所需的最小主存为60MB×80%+680MB×50%+10MB×80%=396MB。
问答题 在峰值时间,使用单独的CPU无法保证在规定的时间内完成各种应用。为了解决这个问题,需要增加CPU的数量。计算在这种情况下,服务器上安装的CPU的最小数量。(注:假设处理速度与CPU的数量成正比。)
【正确答案】应用任务1至应用任务3所需的CPU处理时间为50×300ms+30×200ms=21000ms=21s
接收任务所需的CPU处理时间为2~200=400ms=0.4s
在服务器上需要安装的最小的CPU数量为
【答案解析】[解析]
这是一道要求读者根据实际应用环境计算服务器最小CPU数量的分析理解题。本题的解答思路如下。
①根据题干的关键信息“在峰值时间点,处理应用任务1的客户机有50台,处理应用任务2的客户机有30台,处理应用任务3的客户机有20台”,结合表5-9中“CPU处理时间”列所提供的信息可计算出应用任务1至应用任务3所需的CPU处理时间为50×300ms+30×200ms=21000ms=21s。
②由[问题1]的分析可知,服务器需要处理分别来自交易网关A、交易网关B的接收任务,结合表5-9中每个接收任务所需的CPU处理时间为200ms可计算出系统总的接收任务所需的CPU处理时间为2×200=400ms=0.4s。
③根据题干的关键信息“对于接收任务,即便是在峰值时间,也必须在10s内完成,否则数据会丢失”可知,要保证在10s内不丢失数据,则在服务器上需要安装的最小的CPU数量为
问答题 如果在服务器和客户机之间采用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-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。
⑦注意,常见的一种错误计算过程如下:
问答题 在该系统中是否适合采用UDP作为服务器与客户机的通信协议?用150字以内的文字说明原因(可针对不同应用进行讨论)。
【正确答案】由于UDP协议是一种不可靠、无连接的协议,其报头长度固定为8B,适用于一些要求运行效率较高的应用,而应用任务1、应用任务2用于实时显示交易数据,且数据在局域网内部传输,偶发性的数据包丢失关系不大,因此适合选择UDP协议
应用任务3用于处理合同数据,数据不准丢失,为了保证数据的完整性,不适合选择UDP协议
【答案解析】[解析]
这是一道要求读者根据实际应用环境选择传输层协议的综合分析题。本题的解答思路如下。
①在TCP/IP协议簇中,传输层协议主要有传输控制协议(TCP)和用户数据报协议(UDP)。其中, TCP协议是一种提供高可靠服务、面向连接、全双工通信的协议,其报头长度为20-60B,它适用于需要大量传输交互式报文的应用场合(例如HTTP协议、SMTP协议、FTP协议等)。而UDP协议是一种不可靠的、无连接的协议,其报头长度固定为8B,它适用于一些要求运行效率较高的特殊应用场合(例如SNMP协议、DNS系统、IP电话、流媒体通信等)。
②在表5-9所提供的信息中,应用任务1、应用任务2用于实时显示交易数据,而且数据在局域网内部传输(数据的丢包率较低、可靠性较高),偶发性的数据包丢失关系不大,因此适合选择UDP协议。
③应用任务3用于处理合同数据,数据信息较为重要,不准丢失,因此为了保证数据的完整性,应用任务3应选用传输可靠性高的TCP协议,而不适合选择UDP协议。