第六章部分习题答案
第七题
- 原题:在这道习题中,我们探讨CRC的某些性质。对于在6.2.3节中给出的生成多项式G(=1001),回答下列问题:
a.为什么它能够检测数据D中的任何单比特差错?
b.上述G能够检测任何奇数比特差错吗?为什么?
- 解题思路:本题思路很简单,将题目转换一下,就是一个能被G模2整除的数,如果突然增大某个值,那么它还能被G模2整除吗?注意:根据第六章内容,模2运算加不进位、减不借位,因此可以认为都是增大某个值。
- a问题解答:如果第i位比特被翻转,则被校验的数大小变为:K = (D * 2r) XOR R + 2i,其中(D * 2r) XOR R这部分能被G模2整除,剩下的2i是否能被G模2整除呢?答案是不能,因为G中有2位是1,明显是除不尽的。
- b问题解答:可以注意到,G=1001这个数能被11模2整除,但是任何包含奇数个1的数(这些1不必要连续)不能被11模2整除。因此能够检测出来。
第八题
- 原题:在6.3节中,我们提供了时隙ALOHA效率推导的概要。在本习题中,我们将完成这个推导。
a.前面讲过,当有N个活跃节点时,时隙ALOHA的效率是Np(1-p)N-1。求出使这个表达式最大化的p值p*。
b.使用在(a)中求出的p值,令N接近于无穷,求出时隙ALOHA的效率。(提示:当N接近于无穷时,(1 - 1/N)N接近于1/e。)
- 解题思路:涉及到一些高等数学求导和极限的知识。
- a问题解答:对于一个连续函数的最大值,我们可以通过求导的方式来计算,
原式 f(p) = Np(1-p)N-1 则其导数 f`(p) = (Np)`(1-p)N-1 - Np((1-p)N-1)` = N(1-p)N-1 - Np(N - 1)(1-p)N-2 = N(1-p)N-2((1 - p) - p(N - 1)) = N(1-p)N-2(1 - pN) 当导数为0时,能取到最大值,则此时p=1/N,即p*=1/N。 |
- b问题解答:将a问题求出的p*带入原式,变形为N*1/N(1 - 1/N)N-1=(1 - 1/N)N-1。接下来就是求该式的当N->∞时的极限了
limn->∞(1 - 1/N)N-1 = limn->∞((1 - 1/N)N/(1 - 1/N)) 由于limn->∞(1 - 1/N)N = 1/e,limn->∞(1 - 1/N) = 1 所以上式值为1/e |
第九题
- 原题:说明纯ALOHA的最大效率是1/(2e)
- 解题思路:同第八题。
- 问题解答:先通过求导的方式求得最大值,然后求极限
原式 f(p) = Np(1-p)2(N-1) step1.首先仍然是使用求导的方式得到p=1/(2N-1)时,原始能取得最大值。 step2.将p=1/(2N-1)代入到原式,得到f(N) = N/(2N-1) * (1 - 1/(2N-1))2(N-1) 使用换元法凑多项式(1-1/N)N,令t=2N-1,则N=(t+1)/2 因此f(N) = (t+1)/2t * (1-1/t)t-1 = (t+1)/2t * ((1-1/t)t/(1-1/t)) = (t+1)/2t * t/(t-1) * (1-1/t)t = (t+1)/2(t-1) * (1-1/t)t 由于t->∞,所以limt->∞f(t) = limt->∞(t+1)/2(t-1) * (1-1/t)t = limt->∞(t+1)/2(t-1) * limt->∞(1-1/t)t = 1/2 * 1/e = 1/2e |
第十八题
- 原题:假设节点A和节点B在同一10Mbps广播信道上,这两个节点的传播时延为325比特时间。假设对这个广播信道使用CSMA/CD和以太网分组。假设节点A开始传输一帧,并且在它传输结束之前节点B开始传输一帧。在A检测到B已经传输之前,A能完成传输吗?为什么?如果回答是可以,则A错误地认为它的帧已成功传输而无碰撞。提示:假设在t=0比特时刻,A开始传输一帧。在最坏的情况下,A传输一个512+64比特时间的最小长度的帧。因此A将在t=512+64比特时刻完成帧的传输。如果B的信号在比特时间t=512+64比特之前到达A,则答案是否定的。在最坏的情况下,B的信号什么时候到达A?
- 解题思路:首先确认一个大前提,那就是B如果检测到有A流量,则也不会进行发送帧,所以最坏情况是在A的第一比特刚好要到B时,B开始发送。
- 问题解答:基于解题思路,我们以A的第一比特传输轨迹进行参考,如图,第一比特在X1、X2、X3这几个地方,B均能发出帧。如果B的帧在A传数据之前到达A,A就能检测到;如果不能,就无法检测到,所以B最晚能在324比特时刻(也就是A的第一比特即将到达B)发送第一比特,该比特在324+325=649比特时间到达A,而A的帧长只有576比特时间,所以A已经发送完毕了,无法检测到碰撞。
![](https://img2020.cnblogs.com/blog/1266638/202105/1266638-20210516214655317-1273029040.png)
第十九题
- 原题:假设节点A和节点B在相同的10Mbps广播信道上,并且这两个节点的传播时延为245比特时间。假设A和B同时发送以太网帧,帧发生了碰撞,然后A和B在CSMA/CD算法中选择不同的K值。假设没有其他节点处于活跃状态,来自A和B的重传会碰撞吗?为此,完成下面的例子就足以说明问题了。假设A和B在t=0比特时间开始传输。它们在t=245比特时间都检测到了碰撞。假设KA=0,KB=1。B会将它的重传调整到什么时间?A在什么时间开始发送?(注意:这些节点在返回第2步之后,必须等待一个空闲信道,参见协议。)A的信号在什么时间到达B呢?B在它预定的时刻抑制传输吗?
- 解题思路:对CSMA/CD的协议要足够了解,其中最容易出错的是节点先等待,再返回第二步,并且在第二步时必须等待一个空闲信道,才能发送。
- 问题解答:下面是一个时间流水线图
时刻 | 事件 |
0 | A和B开始传输 |
245 | A和B检测到碰撞 |
293 | A和B完成jam signal信号传输。jam signal:阻塞信号,当检测到冲突后,停止原帧发送,并发送一个6字节大小的阻塞信号,这一点在书中并未讲到 |
293 + 245 = 538 | B最后一个比特(阻塞信号的比特)达到A;A检测到一个空闲的信道 |
538 + 96 = 634 | A开始传输,这里的96是A对空闲信道的持续检测比特数 |
293 + 512 * 1 = 805 | B等待512比特后,返回第2步,然后开始侦测空闲信道(96比特时间) |
634 + 245 = 879 | A第一比特到达B |
805 + 96 = 901 | B对空闲信道侦测完毕,在805~901期间,A比特到达B,所以B会抑制传输 |
第二十题
- 原题:在这个习题中,你将对一个类似于CSMA/CD的多路访问协议的效率进行推导。在这个协议中,时间分为时隙,并且所有适配器都与时隙同步。然而,和时隙ALOHA不同的是,一个时隙的长度(以秒计)比一帧的时间(即传输一帧的时间)小得多。令S表示一个时隙的长度。假设所有帧都有恒定长度L=kRS,其中R是信道的传输速率,k是一个大整数。假定有N个节点,每个节点都有无穷多帧要发送。我们还假设dprop < S,以便所有节点在一个时隙时间结束之前能够检测到碰撞。这个协议描述如下:(1)对于某给定的时隙,如果没有节点占有这个信道,所有节点竞争该信道;特别是每个节点以概率p在该时隙传输。如果刚好有一个节点在该时隙中传输,该节点在后续的k-1个时隙占有信道,并传输它的整个帧;(2)如果某节点占用了信道,所有其他节点抑制传输,直到占有信道的这个节点完成了该帧的传输为止。一旦该节点传输完它的帧,所有节点竞争该信道。注意到此信道在两种状态之间交替:“生产性状态”(它恰好持续k个时隙)和“非生产性状态”(它持续随机数个时隙)。显然,该信道的效率是k/(k+x),其中x是连续的非生产性时隙的期望值。
a.对于固定的N和p,确定这个协议的效率。
b.对于固定的N,确定使该效率最大化的p值。
c.使用在(b)中求出的p(它是N的函数),确定当N趋向无穷时的效率。
d.说明随着帧长度变大,该效率趋近于1。
- 解题思路:根据题目意思,k/(k+x)即在一个固定k+x长度的时隙中,k是传输时隙,x是空闲时隙。由于一个帧长度持续k个时隙,并且中间是不可分割的,我们也可以认为是“经过x个空闲时隙后,才出现一个传输时隙”,这符合我们的几何分布模型(即在n次伯努利试验中,试验k次才得到第一次成功的机率。详细地说,是:前k-1次皆失败,第k次成功的概率。几何分布是帕斯卡分布当r=1时的特例)。
- a问题解答:使用几何分布期望公式
令Y是一个随机数,它表示首次出现传输时隙时所有的时隙总数: P(Y=m) = β(1-β)m-1 m=1,2,3,4··· 其中β是多节点竞争下传输时隙出现的概率,即β=Np(1-p)N-1 根据几何分布期望公式,Y的期望为: E[Y] = 1/β 又因为Y是总次数期望,而最后一个是成功,则前面失败次数的期望为: x = E[X] = E[Y] - 1 = (1-β)/β 将β的值Np(1-p)N-1代入上式,得到 x = (1 - Np(1-p)N-1)/(Np(1-p)N-1) 再将x的值代入k/(k+x),得到k/(k + [(1 - Np(1-p)N-1)/(Np(1-p)N-1)]) |
- b问题解答:要使a中得到的协议效率最大化,在N固定的情况下(注意K也是固定的生产时隙大小),则分母要最小
k + (1 - (Np(1-p)N-1) /(Np(1-p)N-1)) = k - 1 + 1/(Np(1-p)N-1) 则Np(1-p)N-1要最大,这个就是我们前面推导的时隙ALOHA在N固定时,p取何值能做到效率最大的问题。我们知道p取1/N时,该式子能取到最大值。 也即当p=1/N时,该协议效率最大 |
- c问题解答:同样利用时隙ALOHA的结论直接做解答
将p=1/N代入到a问题的答案中,得到 效率 = k / (k + (1 - (1-1/N)N-1)/((1-p)N-1))) 所以 limN->∞效率 = k / (k + (1-1/e)/(1/e)) = k / (k+e-1) |
- d问题解答:意思是对c中的结果,求k->∞的极限
limk->∞f(k) = limk->∞k / (k+e-1) 分子分母次幂相同,则极限为1 |
第二十三题
- 原题:考虑图6-15。假定所有链路都是100Mbps,在该网络中的9台主机和两台服务器之间,能够取得的最大总聚合吞吐量是多少?你能够假设任何主机或服务器能够向任何其他主机或服务器发送分组?为什么?
![](https://img2020.cnblogs.com/blog/1266638/202105/1266638-20210516220520071-797700279.png)
- 解题思路:在书中讲到交换机是无碰撞、全双工的,且每个接口速率相互独立,根据这三个特点,我们来分配流量。在分配流量过程中,尽量避免瓶颈效应。
- 问题解答:设电气工程系为A,其中三台主机标记为A1、A2、A3;计算机科学系为B,包含B1、B2、B3三台主机;计算机工程系为C,包含C1、C2、C3三台主机。流量分配策略为:
(1)A1<->A2:100Mbps全双工 (2)B1<->B2:100Mbps全双工 (3)C1<->C2:100Mbps全双工 (4)web服务器<->A3:100Mbps全双工 (5)mail服务器<->B3:50Mbps全双工 (6)mail服务器<->C3:50Mbps全双工 (7)B3<->C3:50Mbps全双工 总流量:(100 * 4 + 50 * 3) * 2 = 1100Mbps 其中乘以2是因为全双工的原因,同时上行和下行 |
第二十四题
- 原题:假定在图6-15中的3台连接各系的交换机用集线器来代替。所有链路是100Mbps。现在回答习题23中提出的问题。
- 解题思路:类似于23题,但是由于各个系的交换机编程了集线器,而集线器是一个物理层设备,且有广播域冲突,因此将每个系的所有主机加上集线器都简化成一台与交换机连接的主机,且速率为100Mbps。
- 问题解答:设电气工程系为A,计算机科学系为B,计算机工程系为C。流量分配策略为:
(1)web服务器<->A:100Mbps全双工 (2)mail服务器<->B:50Mbps全双工 (3)mail服务器<->C:50Mbps全双工 (4)B<->C:50Mbps全双工 总流量:(100 + 50 * 3) * 2 = 500Mbps 其中乘以2是因为全双工的原因,同时上行和下行 |