假定要在⽹络上传送1.5MB的⽂件。设分组⻓度为1KB,往返时间RTT=80ms。传送数据之前还需要有建⽴TCP连 接的时间,这时间是2×RTT=160ms。试计算在以下⼏种情况下接收⽅收完该⽂件的最后⼀个⽐特所需的时间。 (1)数据发送速率为10Mb/s,数据分组可以连续发送。 (2)数据发送速率为10Mb/s,但每发送完⼀个分组后要等待⼀个RTT时间才能再发送⼀个分组。 (3)数据发送速率极快,可以不考虑发送数据所需的时间。但规定在每⼀个RTT往返时间内只能发送20个分组。 (4)数据发送速率极快,可以不考虑发送数据所需的时间。但在第⼀个RTT往返时间内只能发送⼀个分组,在第 ⼆个RTT内可发送两个分组,在第三个RTT内可发送四个分组(即23-1=22=4个分组
时间: 2024-04-03 22:31:34 浏览: 97
关于传输虚拟化中数据分组乱序问题的研究
首先需要将文件大小从 MB 转换为比特(bit),然后根据数据发送速率和分组长度计算出每个分组的发送时间,再加上建立连接和往返时间的时间,最后乘以分组数即可得到接收方收完该文件的最后一个比特所需的时间。
1. 数据发送速率为10Mb/s,数据分组可以连续发送。
文件大小为1.5MB,即12Mb,每个分组长度为1KB,即8Kb,分组数为12*1024/8=1536个。
每个分组发送时间为8Kb/10Mb=0.0008s=0.8ms,建立连接和往返时间的时间为160ms+80ms=240ms。
接收方收完该文件的最后一个比特所需的时间为(0.8ms+240ms)*1536=376.32s。
2. 数据发送速率为10Mb/s,但每发送完一个分组后要等待一个RTT时间才能再发送一个分组。
文件大小、分组长度和分组数同上,即文件大小为1.5MB,每个分组长度为1KB,分组数为1536个。
每个分组发送时间和建立连接和往返时间的时间同上,即每个分组发送时间为0.8ms,建立连接和往返时间的时间为240ms。
由于每发送完一个分组需要等待一个RTT时间,即160ms,因此实际发送时间为0.8ms+240ms+160ms=400ms。
接收方收完该文件的最后一个比特所需的时间为(400ms+80ms)*1536=667.296s。
3. 数据发送速率极快,可以不考虑发送数据所需的时间。但规定在每一个RTT往返时间内只能发送20个分组。
文件大小、分组长度和分组数同上,即文件大小为1.5MB,每个分组长度为1KB,分组数为1536个。
每个RTT往返时间内可以发送的分组数为20个,因此需将分组数分为多个组,每组包含20个分组。
每个分组发送时间和建立连接和往返时间的时间同上,即每个分组发送时间为0.8ms,建立连接和往返时间的时间为240ms。
每个组发送时间为20*0.8ms+240ms=256ms。
共需发送的组数为1536/20=77.28,向上取整为78。
接收方收完该文件的最后一个比特所需的时间为(256ms+80ms)*78=23638.4ms=23.6384s。
4. 数据发送速率极快,可以不考虑发送数据所需的时间。但在第一个RTT往返时间内只能发送一个分组,在第二个RTT内可发送两个分组,在第三个RTT内可发送四个分组(即23-1=22=4个分组)。
文件大小、分组长度和分组数同上,即文件大小为1.5MB,每个分组长度为1KB,分组数为1536个。
第一个RTT往返时间内只能发送一个分组,因此第一个分组发送时间为0.8ms+240ms=240.8ms。
第二个RTT往返时间内可以发送两个分组,因此第二个分组发送时间为0.8ms*2+240ms=241.6ms。
第三个RTT往返时间内可以发送四个分组,因此第三个分组发送时间为0.8ms*4+240ms=242.4ms。
第四个RTT往返时间内可以发送八个分组,因此第四个分组发送时间为0.8ms*8+240ms=244ms。
共需发送的分组数为1536个,因此第一个往返时间内发送一个分组,第二个往返时间内发送两个分组,第三个往返时间内发送四个分组,第四个往返时间内发送八个分组,依次类推,直到最后一个分组发送完毕。
接收方收完该文件的最后一个比特所需的时间为(240.8ms+241.6ms+242.4ms+244ms)*2-240ms=2366.4ms=2.3664s。
阅读全文