分组交换的报文交付时间

图1
首先对在公式中需要的一些变量进行说明:假设我们有 M b i t s M bits Mbits报文需要进行发送,采用分组交换的方式进行发送,假设分组的长度(大小)为 L   b i t s L\ bits L bits .假设链路带宽(数据传输速率)为 R   b p s R\ bps R bps .假设从发送方到接收方的跳步数 h h h, 路由器 数为 n n n .那么我们可以得到分组交付时间 T T T的计算公式如下:
T = M / R + ( h − 1 ) L / R = M / R + n L / R (1) \begin{aligned} T &=M / R+(h-1) L / R \\ &=M / R+n L / R \end{aligned} \tag{1} T=M/R+(h1)L/R=M/R+nL/R(1)
下面给出上面 公式 1 {1} 1 的推导过程:

  • 由于采用分组交换的方式,因此从发送开始计时,经过时间 L / R L/R L/R,源端系统的发送的第一个分组经过一个跳步达到第一个路由器;
  • 经过第二个 L / R L/R L/R此时源端系统发送了两个分组,同时第二个第二个路由器也收到了第一个路由器转发的分组;
  • 重复上面的过程,经过时间 ( L / R ) ∗ h (L/R)*h (L/R)h,目的端系统收到了第一个分组;
  • 此后每经过一个时间 L / R L/R L/R目的端系统就收到一个分组,总的分组数量为 M / L M/L M/L,同时由于已经接收到了一个分组,因此还需要接收 M / L − 1 M/L-1 M/L1个分组.
    由此我们得到总的交付时间的计算公式 2 2 2
    T = h ∗ L / R + ( M / L − 1 ) L / R = M / R + ( h − 1 ) L / R (2) \begin{aligned} T &=h* L / R+(M/L-1) L / R \\ &=M / R+(h-1) L / R \end{aligned} \tag{2} T=hL/R+(M/L1)L/R=M/R+(h1)L/R(2)
    显然我们知道跳步数和路由器数之间存在这样的关系 n = h − 1 n=h-1 n=h1,将其带入 公式 2 2 2 因此我们最后得到的公式为
    T = M / R + n L / R (3) \begin{aligned} T &=M / R+n L / R \end{aligned} \tag{3} T=M/R+nL/R(3)

示例

下面我们通过以2009年全国计算机考研中的一道试题来加深对上面推导过程的理解:

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

图2
【分析&求解】:由于题目中需要计算的是一个最小 时间,因此我们需要选择图中上面的一条链路进行计算.我们还需要计算 980000 B 980 000B 980000B的数据需要拆分为多少个分组.由于每个分组大小为 1000 B 1 000B 1000B,我们假设有 x x x个分组,因此可以列出下面方程:
1000 x = 980000 + 20 x 1000x = 980000+20x 1000x=980000+20x
解上面方程我们知道有 1000 1000 1000个分组,由于在发送数据的过程中头部数据也需要进行发送,因此我们按 公式 1 {1} 1 列出下面的算式计算得到时间 T T T
T = ( 980000 + 20 × 1000 ) × 8 / 100 M + 2 × 1000 × 8 / 100 M = 80.16 m s \begin{aligned} T &= (980000+20×1000)×8/100M + 2×1000×8/100M \\ &=80.16 ms \end{aligned} T=(980000+20×1000)×8/100M+2×1000×8/100M=80.16ms
因此,从H1发送开始到H2接收完为止,需要的时间至少是80.16ms.

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值