从数据传输速率的视角思考信道利用率
@(计算机网络)
(2014.36)主机甲和主机乙之间使用GBN协议:甲的发送窗口尺寸是1000,数据帧长是1000字节,信道带宽是100Mbps.乙每收到一个数据帧就立即利用一个短数据帧进行确认(传输时延忽略)。若甲乙之间的单向传播时延是50ms,则甲可以达到的最大平均数据传输率是:80Mbps.
分析:我上来想的是,计算信道利用率的最大值,那么再乘以信道带宽便是最大值了。但是这个关系看起来并不是可靠的,因为信道利用率我们下的定义是发送数据的时间占发送周期的比率。
因此,还是采用直接计算更为直观。
一个发送周期是:发送方从发送第一个数据开始,到接收到第一个确认帧为止。
因此,一个发送周期内GBN协议可以连续发送1000个数据帧,共1MB。
发送一帧用时: 1000B÷108bps=8⋅10−5=0.08ms
发送周期T = 1000B÷108bps+RTT=100.08ms
则一个发送周期内可以连续发送1000帧,共用时80ms。所以一个发送周期内并不是每一刻都在发,受限制于窗口大小,因此达不到100Mbps.
所以最大传输速率约是:
1000⋅1000B÷0.1s=80Mbps.
需要思考的是,既然连续发送了,为什么达不到信道带宽呢?
这样想,达到带宽的话,需要一秒发送100Mb,约等于一秒发送12500帧。
一个发送周期是约为0.1秒,那么也就是一个发送周期要发1250帧。已经大于窗口数了,因此做不到100Mbps.
计算信道利用率:
α=一个发送周期内发送数据时间发送周期=1000⋅0.08100.08=80%
所以最大数据传输速率约为80Mbps.
一个发送周期内最多发送所有的窗口,这种限制理解是否正确?