问答题
在下列情况下,计算传送1000KB文件所需要的总时间,即从开始传送时起直到文件的最后一位到达目的地为止的时间。假定往返时间RTT为100ms,一个分组是1KB(即1024B)的数据,在开始传送整个文件数据之前进行的起始握手过程需要2RTT的时间。
问答题
带宽是1.5Mb/s,数据分组可连续发送。
【正确答案】提示,前面提到过,如果题目没有说考虑排队时延、处理时延就无需考虑。
由提示可知,总时延=发送时延+传输时延+握手时延,其中握手时延是题目增加的。两个起始的RTT(握手):100×2=200ms,传输时间:RTT/2=100/2=50ms,1KB=8bit×1024=8192bit,发送时间:1000KB/1.5Mb/s=8192000bit÷1500000b/s=5.46s,所以,总时间等于0.2+5.46+0.05=5.71s。
【答案解析】
问答题
带宽是1.5Mb/s,但在发送完每一个数据分组后,必须等待一个RTT(等待来自接收方的确认)才能发送下一个数据分组。
【正确答案】在上一小题答案的基础上再增加999个RTT,总时间为5.71+999×0.1=105.61s
注意:上题中的发送时间是所有分组的发送时间之和。
【答案解析】
问答题
假设带宽是无限大的值,即我们取发送时间为0,并且在等待每个RTT后可以发送多达20个分组。
【正确答案】由于发送时延为0,只需计算传输时延即可。由于每个分组为1KB,所以大小为1000KB的文件应分成1000KB/1KB=1000分组。由于每个RTT后可发送20个分组,所以一共需要1000/20=50次,50-1=49个RTT,最后一个分组到达目的地仅需0.5RTT(注意:在本次等待的RTT中一定包含了上次传输的传输时延,所以不要认为还需要另外计算传输时延),总时间为2×RTT(握手时间)十49RTT+0.5RTT=51.5RTT=0.1×51.5=5.15s。
【答案解析】
问答题
有两个网络,它们都提供可靠的面向的连接的服务,一个提供可靠的字节流,另一个提供可靠的报文流。请问两者是否相同?为什么?
【正确答案】不相同。报文流中,网络保持对报文边界的跟踪;而在字节流中,网络不做这样的跟踪。例如,一个进程向一条连接写了1024B,稍后又写了1024B。那么接收方共读了2048B。对于报文流,接收方将得到两个报文,每个报文1024B。而对于字节流,报文边界不被识别,接收方将全部204.8B当做一个整体,在此已经体现不出原先有两个不同报文的事实。
【答案解析】
问答题
协议与服务有何区别?有何联系?
【正确答案】协议是控制两个对等实体进行通信的规则的集合。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务,而要实现本层仂、议,还需要使用下一层提供的服务。
协议和服务的概念的区分:
1)协议的实现保证了能够向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议。即下面的协议对上面的服务用户是透明的。
2)协议是“水平的”,即协议是控制两个对等实体进行通信的规则。但服务是“垂直的”,即服务是由下层通过层间接口向上层提供的。
【答案解析】