【计算机网络笔记】分组交换中的报文交付时间计算例题

系列文章目录

什么是计算机网络?
什么是网络协议?
计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换


题目

在下图所示的采用"存储-转发"方式的分组交换网络中所有链路的数据传输速率为100 Mbps,分组大小为1 000 B,其中分组头大小为20 B。若主机H1向主机H2发送一个大小为980 000 B的文件,则在不考虑分组拆装时间和传播延迟的情况下,从H1发送开始到H2接收完为止,需要的时间至少是多少?

解答

首先注意:

  • 题目中说分组大小是1000B,其中分组头是20B,那一个分组中所携带的报文数据大小只有980B。
  • 因为询问的是至少需要多少时间,那么所有的分组都应该走最近的路径,也就是说经过的路由器(跳步数)越少,时间越短。

解:因为要传输的报文大小是980 000B(980K),并且一个分组中携带980B的报文数据,所以这个报文就应该被拆分为1000个 数据块,每个数据块再加上20B的头,就组成了一个分组。H1发送整个报文需要的传输延迟为(1000*1000)* 8 / 100 000 000 = 80ms(*8是因为1B=8bit。报文的大小是按照B也就是字节给的,而传输速率单位是Mbit,是按照比特给的);根据路由选择基本原理,所有数据分组应该经过两个路由 器的转发,所以再加上最后一个分组的两次转发的 传输延迟,即2*1000*8/100 000 000=0.16ms。所以 ,H2收完整个文件至少需要80+0.16=80.16ms

相关推荐
诸葛思颖17 分钟前
【论文阅读笔记】FL+HC(联邦学习+层次聚类)
论文阅读·笔记·聚类
序属秋秋秋1 小时前
《Linux系统编程之进程基础》【进程优先级】
linux·运维·c语言·c++·笔记·进程·优先级
河铃旅鹿4 小时前
Android开发-java版:Framgent
android·java·笔记·学习
AA陈超7 小时前
ASC学习笔记0020:用于定义角色或Actor的默认属性值
c++·笔记·学习·ue5·虚幻引擎
IMPYLH9 小时前
Lua 的 collectgarbage 函数
开发语言·笔记·junit·单元测试·lua
思成不止于此9 小时前
深入理解 C++ 多态:从概念到实现的完整解析
开发语言·c++·笔记·学习·多态·c++40周年
谅望者10 小时前
数据分析笔记08:Python编程基础-数据类型与变量
数据库·笔记·python·数据分析·概率论
iiiiii1111 小时前
【论文阅读笔记】多实例学习方法 Diverse Density(DD):在特征空间中寻找正概念的坐标
论文阅读·人工智能·笔记·机器学习·ai·学习方法·多实例学习
inputA11 小时前
【LwIP源码学习8】netbuf源码分析
android·c语言·笔记·嵌入式硬件·学习
JM丫12 小时前
内网理论知识总结
笔记·网络安全