首页 > 试题广场 >

假设网络带宽是128MBs,网络单向延时为100ms, 1

[填空题]
假设网络带宽是128MB/s,网络单向延时为100ms, 1000个客户端(单线程)同时向服务器传输64KB大小的文件,每个请求大小为64KB,服务器磁盘并发写入速度30MB/s,在传输过程中,服务器吞吐量为 1MB/S ,单个请求响应时间为 2ms
一共64K*1000 = 64MB 的数据 , 则传输时延:(64M)/(128MB/S)=500ms , 在加上网络单向时延100ms,则64MB的数据从客户端全部到达服务器端需要600ms,如果服务器磁盘写速度无限大,那么可以保证最大吞吐量:64MB/600ms = 107MB/S  ,但是服务器磁盘写速度只有30MB/S,也就是说数据到达的速度太快了,在服务器端会有阻塞,服务器端最大只能达到30MB/S的吞吐率。

第二问则在600ms的基础上加上回来的链路时延100ms,一共700ms。 
发表于 2016-05-12 22:12:18 回复(9)
单个请求为单线程1000×64K=64M,128M/s带宽传送64M需要500ms,再加上双向延时200ms,总时长为700ms。
发表于 2015-06-21 16:58:28 回复(11)
这道题怎么算的?求大牛指教
发表于 2015-05-06 18:02:24 回复(0)
64大于30 30 500+200
发表于 2015-08-30 00:16:09 回复(0)
服务器吞吐量为30MB为啥就直接等于磁盘IO写入速度
发表于 2016-07-31 12:25:34 回复(0)
<Strong>受限于服务器端磁盘写入速度30M/s。目前并发64M/500ms已经超出了服务器端处理能力,时间长了,服务器早就宕机了</Strong>

发表于 2016-09-08 15:54:35 回复(0)
前面的几个解析不都是错的??
很多人解析的1000个客户端上传64M的数据怎么要500ms的时延??500ms的这个时延明显是写磁盘导致的,平均下来是每个请求500ms,加上往返是100*2=200ms,所以单个请求是700ms。
好几个排名在前面的都错了
发表于 2016-08-01 22:51:50 回复(1)
T1=1000*64/1024MB/128Mbps488ms
1000*64/1024MB/0.588s≈106Mbps>>30Mbps
T2=488ms+2*100ms=688ms
编辑于 2022-09-26 23:25:02 回复(1)

难道就没有人发现 $64K * 1000 != 64M$ 吗???

发表于 2018-02-12 19:59:58 回复(0)
不会啊啊

发表于 2016-07-21 15:56:17 回复(0)
服务器写磁盘,或者说服务时间不用算吗???????
发表于 2016-02-24 23:11:14 回复(0)
这个题感觉吞吐量应该是受限于服务器端磁盘写入速度30M/s。目前并发64M/500ms已经超出了服务器端处理能力,是不是应该被丢包?

发表于 2015-08-22 20:34:23 回复(0)