计算机网络(第7版) - 第一章 概述 - 习题【补充】

计算机网络教程第五版|微课版 - 第一章 概述 - 习题

第一章、概述【补充】

本章的习题

  1. 试从多个方面比较电路交换、报文交换和分组交换的主要优缺点
    (1)电路交换:由于电路交换在通信之前要在通信双方之间建立一条被双方独占的物理通路(由通信双方之间的交换设备和链路逐段连接而成),因而有以下优缺点:
    优点:  
    ①由于通信线路为通信双方用户专用,数据直达,所以传输数据的时延非常小。  
    ②通信双方之间的物理通路一旦建立,双方可以随时通信,实时性强。  
    ③双方通信时按发送顺序传送数据,不存在失序问题。  
    ④电路交换既适用于传输模拟信号,也适用于传输数字信号。  
    ⑤电路交换的交换设备(交换机等)及控制均较简单。   
    缺点:  
    ①电路交换的平均连接建立时间对计算机通信来说嫌长。  
    ②电路交换连接建立后,物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用低。  
    ③电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。
    (2)报文交换:报文交换是以报文为数据交换的单位,报文携带有目标地址、源地址等信息,在交换结点采用存储转发的传输方式,因而有以下优缺点: 
    优点:  
    ①报文交换不需要为通信双方预先建立一条专用的通信线路,不存在连接建立时延,用户可随时发送报文。  
    ②由于采用存储转发的传输方式,使之具有下列优点:a.在报文交换中便于设置代码检验和数据重发设施,加之交换结点还具有路径选择,就可以做到某条传输路径发生故障时,重新选择另一条路径传输数据,提高了传输的可靠性;b.在存储转发中容易实现代码转换和速率匹配,甚至收发双方可以不同时处于可用状态。这样就便于类型、规格和速度不同的计算机之间进行通信;c.提供多目标服务,即一个报文可以同时发送到多个目的地址,这在电路交换中是很难实现的;d.允许建立数据传输的优先级,使优先级高的报文优先转换。  
    ③通信双方不是固定占有一条通信线路,而是在不同的时间一段一段地部分占有这条物理通路,因而大大提高了通信线路的利用率。  
    缺点
    ①由于数据进入交换结点后要经历存储、转发这一过程,从而引起转发时延(包括接收报文、检验正确性、排队、发送时间等),而且网络的通信量愈大,造成的时延就愈大,因此报文交换的实时性差,不适合传送实时或交互式业务的数据。 
    ②报文交换只适用于数字信号。 
    ③由于报文长度没有限制,而每个中间结点都要完整地接收传来的整个报文,当输出线路不空闲时,还可能要存储几个完整报文等待转发,要求网络中每个结点有较大的缓冲区。为了降低成本,减少结点的缓冲存储器的容量,有时要把等待转发的报文存在磁盘上,进一步增加了传送时延。
    (3)分组交换:分组交换仍采用存储转发传输方式,但将一个长报文先分割为若干个较短的分组,然后把这些分组(携带源、目的地址和编号信息)逐个地发送出去,因此分组交换除了具有报文的优点外,与报文交换相比有以下优缺点: 
    优点:  
    ①加速了数据在网络中的传输。因为分组是逐个传输,可以使后一个分组的存储操作与前一个分组的转发操作并行,这种流水线式传输方式减少了报文的传输时间。此外,传输一个分组所需的缓冲区比传输一份报文所需的缓冲区小得多,这样因缓冲区不足而等待发送的机率及等待的时间也必然少得多。  
    ②简化了存储管理。因为分组的长度固定,相应的缓冲区的大小也固定,在交换结点中存储器的管理通常被简化为对缓冲区的管理,相对比较容易。  
    ③减少了出错机率和重发数据量。因为分组较短,其出错机率必然减少,每次重发的数据量也就大大减少,这样不仅提高了可靠性,也减少了传输时延。  
    ④由于分组短小,更适用于采用优先级策略,便于及时传送一些紧急数据,因此对于计算机之间的突发式的数据通信,分组交换显然更为合适些。   
    缺点:  
    ①尽管分组交换比报文交换的传输时延少,但仍存在存储转发时延,而且其结点交换机必须具有更强的处理能力。  
    ②分组交换与报文交换一样,每个分组都要加上源、目的地址和分组编号等信息,使传送的信息量大约增大5%~10%,一定程度上降低了通信效率,增加了处理的时间,使控制复杂,时延增加。一定程度上降低了通信效率,增加了处理的时间,使控制复杂,时延增加。  
    ③当分组交换采用数据报服务时,可能出现失序、丢失或重复分组,分组到达目的结点时,要对分组按编号进行排序等工作,增加了麻烦。若采用虚电路服务,虽无失序问题,但有呼叫建立、数据传输和虚电路释放三个过程。  
    总之,若要传送的数据量很大,且其传送时间远大于呼叫时间,则采用电路交换较为合适;当端到端的通路有很多段的链路组成时,采用分组交换传送数据较为合适。从提高整个网络的信道利用率上看,报文交换和分组交换优于电路交换,其中分组交换比报文交换的时延小,尤其适合于计算机之间的突发式的数据通信。

  2. 计算机网络中的主干网和本地接入网的主要区别是什么
    主干网络一般是分布式的,具有分布式网络的特点:其中任何一个结点都至少和其它两个结点直接相连;而本地接入网一般是集中式的,具有集中式网络的特点:所有的信息流必须经过中央处理设备(交换结点),链路从中央交换结点向外辐射。

  3. 客户服务器方式与对等通信方式的主要区别是什么?有没有相同的地方? 
    主要区别:在于客户服务器描述的是进程之间的服务与被服务的关系,客户是服务请求方,服务器是服务提供方;而对等通信方式并不区分哪一个是服务请求方还是服务提供方,只要两个主机都运行了对等连接软件,就可以进行平等的、对等连接通信。 
    相同的地方:客户服务器方式和对等通信方式都是端系统运行的程序之间的通信方式。对等连接方式从本质上看仍然是使客户服务器方式,只是对等连接中的每一个主机既是客户又是服务器。

  4. 假定网络的利用率到达了90%。试估算一下现在的网络时延是它的最小值的多少倍? 
    公式: D = D 0 1 − U D=\frac{D_{0}}{1-U} D=1UD0,其中D是网络当前时延, D 0 D_0 D0网络空闲时延,U是利用率
    ∵ D 0 D = 1 − U = 1 − 90 % = 0.1 \because \frac{D_0}{D}=1-U=1-90\%=0.1 DD0=1U=190%=0.1
    ∴ D D 0 = 10 \therefore \frac{D}{D_0}=10 D0D=10
    所以现在的网络时延是它的最小值的10倍。

  5. 计算机通信网有哪些非性能特征非性能特征与性能指标有什么区别? 
    计算机通信网的非性能特征有:费用,质量,标准化,可靠性,可扩展性和可升级性,易于管理和维护。 
    性能指标是从不同的方面来直接度量计算机网络的性能,而非性能特征虽然与性能指标有很大的关系,对计算机网络的性能也有很大的影响,但不是直接用来度量网络性能的。

  6. 假设信号在媒体上的传播速率为 2.3 ∗ 1 0 8 2.3*10^8 2.3108 m/s。媒体长度l分别为
    (1)10 cm(网络接口卡)
    (2)100 m(局域网)
    (3)100 km(城域网)
    (4)5000 km(广域网)

    试计算当数据率为1Mbit/s和10Gbit/s时以上媒体正在传播的比特数
    e.g.
    当媒体长度l = 10 cm时,即 0.1 m:
    传播时延 = 媒体长度l / 传播速率 = 0.1 2.3 ∗ 1 0 8 ≈ 4.35 ∗ 1 0 − 10 \frac{0.1}{2.3*10^8}\approx4.35*10^{-10} 2.31080.14.351010 s
    当数据率 = 1 Mbit/s时:
    比特数 = 1 Mbit/s ∗ * 4.35 ∗ 1 0 − 10 4.35*10^{-10} 4.351010 s = 1 ∗ 1 0 6 1*10^6 1106 bit/s ∗ * 4.35 ∗ 1 0 − 10 4.35*10^{-10} 4.351010 s = 4.35 ∗ 1 0 − 4 4.35*10^{-4} 4.35104 bit
    当数据率 = 10 Gbit/s时:
    比特数 = 10 Gbit/s ∗ * 4.35 ∗ 1 0 − 10 4.35*10^{-10} 4.351010 s = 10 ∗ 1 0 9 10*10^9 10109 bit/s ∗ * 4.35 ∗ 1 0 − 10 4.35*10^{-10} 4.351010 s = 4.35 4.35 4.35 bit
    【注意事项】:15 GB = 15 ∗ 2 30 ∗ 8 15*2^{30}*8 152308 bit;10 Gbit/s = 10 ∗ 1 0 9 10*10^9 10109 bit/s

媒体长度l 传播时延 数据率 = 1Mbit/s 数据率 = 10Gbit/s
(1) 0.1 0.1 0.1 m 4.35 ∗ 1 0 − 10 4.35*10^{-10} 4.351010 s 4.35 ∗ 1 0 − 4 4.35*10^{-4} 4.35104 4.35 4.35 4.35
(2) 100 100 100 m 4.35 ∗ 1 0 − 7 4.35*10^{-7} 4.35107 s 0.435 0.435 0.435 4.35 ∗ 1 0 3 4.35*10^3 4.35103
(3) 100 100 100 km 4.35 ∗ 1 0 − 4 4.35*10^{-4} 4.35104 s 4.35 ∗ 1 0 2 4.35*10^2 4.35102 4.35 ∗ 1 0 6 4.35*10^6 4.35106
(4) 5000 5000 5000 km 0.0217 0.0217 0.0217 s 2.17 ∗ 1 0 4 2.17*10^4 2.17104 2.17 ∗ 1 0 8 2.17*10^8 2.17108
  1. 长度为100字节的应用层数据交给运输层传送,需加上20字节的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传送,加上首部和尾部18字节。试求数据的传输效率。数据的传输效率是指发送的应用层数据除以所发送的总数(即应用数据加上各种首部和尾部的额外开销)。若应用层数据长度为1000字节,数据的传输效率是多少
    (1)数据长度为 100 B(B表示字节)时:
    以太网的帧长:100 B + 20 B + 20 B + 18 B = 158 B
    数据传输效率 = 100 B 158 B \frac{100 B}{158 B} 158B100B = 63.3 %
    (2)数据长度为 1000 B(B表示字节)时:
    以太网的帧长:1000 B + 20 B + 20 B + 18 B = 1058 B
    数据传输效率 = 1000 B 1058 B \frac{1000 B}{1058 B} 1058B1000B = 94.5 %
    传输效率明显提高了。
  2. 网络体系结构为什么要采用分层次的结构?试举出一些与分层体系结构的思想相似的日常生活。 
    答:因为分层可以带来很多好处: 
    (1)各层之间是独立的。 
    (2)灵活性好。 
    (3)结构上可分割开。 
    (4)易于实现和维护。 
    (5)能促进标准化工作。 
    类似目前实际生活中的电子商务模式
    网上商城(应用层) 
    网站管理层(网站管理系统) 
    服务器主机(服务平台) 
    技术服务(技术支持) 
    物流配送系统(货物及配送支持)
  3. 网络协议的三个要素是什么各有什么含义? 
    网络协议:为进行网络中的数据交换而建立的规则、标准或约定。
    由以下三个要素组成: 
    (1)语法:即数据与控制信息的结构或格式。 
    (2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。 
    (3)同步:即事件实现顺序的详细说明。
  4. 为什么一个网络协议必须把各种不利的情况都考虑到? 
    因为协议必须保证数据在网络中能有条不紊地交换,而不允许出现死锁等现象,因此,协议不能假定一切都是正常的和非常理想的,不能只看在正常情况下是否正确,而是必须非常仔细地检查这个协议能否应付各种异常情况。
  5. 试举出日常生活中有关“透明”这种名词的例子。 
    例如:货车。只要装箱符合货柜车大细标准的,不管箱里装的是什么货物,都可以用货车来传输。
  6. 假定要在网络上传送 1.5 MB的文件。设分组长度为 1 KB,往返时间 RTT = 80 ms。传送数据之前还需要有建立TCP连接的时间,这时间是 2 × RTT = 160 ms。试计算在以下几种情况下接收方收完该文件的最后一个比特所需的时间。
    (1)数据发送速率为 10 Mb/s,数据分组可以连续发送
    (2)数据发送速率为 10 Mb/s,但每发送完一个分组后要等待一个RTT时间才能再发送一个分组。
    (3)数据发送速率极快,可以不考虑发送数据所需的时间。但规定在每一个RTT往返时间内只能发送 20 个分组。
    (4)数据发送速率极快,可以不考虑发送数据所需的时间。但在第一个RTT往返时间内只能发送一个分组,在第二个RTT内可发送两个分组,在第三个RTT内可发送四个分组(即 2 3 − 1 2^{3-1} 231= 2 2 = 4 2^2=4 22=4 个分组)

    题目的已知条件中的 M = 2 20 2^{20} 220 = 1048576, K= 2 10 2^{10} 210=1024。
    1)1.5 MB = 1.5 ∗ 1048576 1.5 * 1048576 1.51048576 B = 1.5 ∗ 1048576 ∗ 8 1.5 * 1048576 * 8 1.510485768 bit = 12582912 bit
    发送这些比特所需时间=12582912 bit/( 10 ∗ 1 0 6 10*10^6 10106 bit/s)= 1.258 s。
    最后一个分组的传播时间还需要 0.5×RTT=40 ms。
    总共需要的时间 = 2×RTT + 1.258 + 0.5×RTT = 0.16 + 1.258 + 0.04 = 1.458 s。
    2)需要划分的分组数 = 1.5 MB/1 KB = 1536。
    从第一个分组到达直到最后一个分组到达要经历 1535×RTT = 1535×0.08 = 122.8 s。
    总共需要的时间 = 1.458 + 122.8 = 124.258 s。
    3)在每一个RTT往返时间内只能发送20个分组。1536个分组,需要76个RTT,76个RTT可以发送 76×20 = 1520 个分组,最后剩下 16 个分组,一次发送完。但最后一次发送的分组到达接收方也需要 0.5×RTT 。
    因此,总共需要的时间 = 76.5×RTT + 2×RTT = 6.12+0.16 = 6.28 s。
    4)在两个RTT后就开始传送数据。
    经过n个RTT后就发送了 1 + 2 + 4 + … + 2 n − 1 = 2 n − 1 1+2+4+…+2^{n-1}=2^{n}-1 1+2+4++2n1=2n1 个分组。
    若 n=10,那么只发送了 2 10 − 1 = 1023 2^{10}-1=1023 2101=1023 个分组。可见10个RTT不够。
    若 n=11,那么只发送了 2 11 − 1 = 2047 2^{11}-1=2047 2111=2047 个分组。因此在第11个RTT内,可以把所有剩下的分组都发送完毕(总共只有 1536 个分组)。由于发送速率极快,在第10 个RTT结束后,只要再经过 0.5xRTT,剩下所有的分组即可到达接收方。因此,接收方收到改文件的最后一个比特所需的时间是(2 + 10 + 0.5)× RTT = 12.5 × 0.08 = 1 s。
  7. 有一个对点链路,长度为50km。若数据在此链路上的传播速度为 2 ∗ 1 0 8 2*10^8 2108 m/s,试问链路的带宽应为多少才能使传播时延和发送 100 字节的分组的发送时延一样大?如果发送的是 512 字节长的分组,结果又应如何?
    ① 传播时延 = 信道长度/传播速率
    ② 发送时延 = 数据长度/发送速率
    ③ 带宽(某信道能通过的最高数据率)bit/s
    整条链路的传播时延 = 50 k m 2 ∗ 1 0 8 m / s \frac{50 km}{2*10^8 m/s} 2108m/s50km = 2.5 × 1 0 − 4 2.5 × 10^{-4} 2.5×104 s = 250 μs
    100 B时,带宽 = 100 B 250 μ s \frac{100 B}{250μs} 250μs100B = 100 ∗ 8 b i t 250 μ s \frac{100 * 8 bit}{250μs} 250μs1008bit = 3.2 ∗ 1 0 6 3.2*10^6 3.2106 bit/s = 3.2 Mbit/s
    512 B时,带宽 = 512 B 2.5 ∗ 1 0 − 4 s \frac{512 B}{2.5 * 10^{-4}s} 2.5104s512B = 512 ∗ 8 b i t 250 μ s \frac{512 * 8 bit}{250μs} 250μs5128bit = 16384000 bit/s ≈ 16.38 ∗ 1 0 6 \approx16.38*10^6 16.38106 bit/s = 16.38 Mbit/s
  8. 有一个点对点链路,长度为 20000 km。数据的发送速率是1 kbit/s,要发送的数据有100 bit。数据在此链路上的传播速度为 2 × 1 0 8 2×10^8 2×108 m/s。假定我们可以看见在线路上传输的比特,试画出我们看到的线路上的比特(画两个图,一个在 100 bit 刚刚发送完时,另一个是再经过 0.05 s后)。
    100 bit 的发送时间 = 100 b i t 1000 b i t / s \frac{100 bit}{1000bit/s} 1000bit/s100bit = 0.1 s
    如图①所示,0.1 s 的时间可以传播 20000 km,正好是线路的长度。因此,当发送的第一个比特到达终点时,发送方的也正好把 100 bit 发送完毕,整个线路上都充满了所传输的 100 bit 。
    计算机网络(第7版) - 第一章 概述 - 习题【补充】_第1张图片
    再经过 0.05 s 后,所有的比特都向前走了 10000 km。这就是说,发送的前 50 bit 已经到达终点了,剩下的 50 bit 还在线路上传播。最后一个比特刚好走了一半(10000km),在线路的正中间。
  9. 条件同上题。但数据的发送速率改为 1 Mbit/s。和上题的结果相比较,你可以得出什么结论?
    100 bit 的发送时间 = 100 b i t 1 ∗ 1 0 6 b i t / s \frac{100bit}{1*10^6 bit/s} 1106bit/s100bit = 0.0001 s,只有上一题的千分之一。
    如图②所示,0.0001 s 的时间可以传播 20 km,只有线路长度的千分之一。因此现在整个 100 bit 都在线路的靠发送端的位置(图没有按比例画)。
    计算机网络(第7版) - 第一章 概述 - 习题【补充】_第2张图片
    再经过 0.05 s 后,所有的比特都向前走了 10000 km。这时,整个 100 bit 都在线路上传播。最后一个比特正好走了一半(10000 km),在线路的正中间。
    总结,和上题相比较,我们可以看出,同样是在一条线路上传输 100 bit 的数据,在较低速的线路上(例如,1 kbit/s 的发送速率),100 bit 的数据看起来像是“数据流”,而在较高速的线路上(例如,1 Mbit/s 的发送速率),100 bit 的数据看起来像是“小分组”。
  10. 以 1 Gbit/s 的速率发送数据。试问在以距离或时间为横坐标时,一个比特的宽度分别是多少?
    当我们在某一个位置上观察信号随时间的变化规律时,我们往往需要以时间为横坐标来看信号的变化。当以 1 Gbit/s 的速率发送数据时,每一个比特的持续时间是 1 0 − 9 10^{-9} 109 s,也就是 0.001 μs = 1 ns(ns表示纳秒,即 1 0 − 9 10^{-9} 109 s)。因此,在以时间为横坐标的图上,每一个比特的宽度为 1 ns(见下图所示)。
    计算机网络(第7版) - 第一章 概述 - 习题【补充】_第3张图片
    现在看以距离为横坐标的情况。
    假定信号在线路上的传播速度是 2 ∗ 1 0 8 2*10^8 2108 m/s(即 2 3 \frac{2}{3} 32倍的光速),那么在一个比特时间内(即 1 0 − 9 10^{-9} 109 s)信号可以前进 20 cm。上图下面一个即表示这种情况,即当时间为某一数值时信号在线路上的“快照”。请注意,横坐标的量纲不同,我们不能说哪一个信号更宽一些或更窄一些。这是不能相比的。
  11. 我们在互联网上传送数据经常是从某一源点传送到某一终点,而并非传送过去又在传送回来。那么为什么往返时间 RTT 是个很重要的性能指标呢
    我们在传送数据时,经常要使用 TCP 协议。TCP 链接的建立需要消耗时间,这与 RTT 有密切关系。在传输数据时也常常需要对方的确认。在发送数据时要经过多少时间才能收到对方的确认,这也取决于往返时间 RTT 的大小。
    另外,在计算吞吐率时,有时也要考虑到往返时间 RTT 。例如,一个 1 0 6 10^{6} 106字节的文件在 1 Gbit/s 的发送速率下,只需要 8 ms。但如果我们是通过网络向远方某个主机请求把这样大的文件发送过来,而 RTT = 100 ms,那么总共需要时间至少为 100 + 8 = 108 ms,是原来发送的十几倍。

转载自 《计算机网络(第7版)》著者:谢希仁

点我回顶部 ☚

 
 
 
 
 
 
 
Fin.

你可能感兴趣的:(网络通信学习)