第一章
1-10试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit),从源站到目的站共经过k段链路,每段链路的传播时延为d(s),数据率为C(bit/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小?
答:对电路交换,当t=s时,链路建立;
当t=s+x/C,发送完最后一bit;
当t=s+x/C+kd,所有的信息到达目的地。
对分组交换,当t=x/C, 发送完最后一bit;
为到达目的地,最后一个分组需经过k-1个分组交换机的转发,
每次转发的时间为p/C,
所以总的延迟= x/C+(k-1)p/C+kd
所以当分组交换的时延小于电路交换
x/C+(k-1)p/C+kd<s+x/C+kd时,
(k-1)p/C<s
1-11在上题的分组交换网中,设报文长度和分组长度分别为x和(p+h)(bit),其中p为分组的数据部分的长度,而h为每个分组所带的控制信息固定长度,与p的大小无关。通信的两端共经过k段链路。链路的数据率为b(bit/s),但传播时延和结点的排队时间均可忽略不计。若打算使总的时延为最小,问分组的数据部分长度p应取为多大?
答:分组个x/p,
传输的总比特数:(p+h)x/p
源发送时延:(p+h)x/pb
最后一个分组经过k-1个分组交换机的转发,中间发送时延:(k-1)(p+h)/b
总发送时延D=源发送时延+中间发送时延
D=(p+h)x/pb+(k-1)(p+h)/b
令其对p的导数等于0,求极值
p=√hx/(k-1)
1-18 ,假设信号在媒体上的传播速率为2.3*1000000000m/s。媒体长度l分别为:
(1) 10cm(网卡)
(2) 100m(局域网)
(3) 100km(城域网)
(4) 5000km(广域网)
试计算当数据率为Mb/s1和10Gb/s时在以上媒体中正在传播的比特数。
解:传播时延=信道长度/电磁波在信道上的传播速率
时延带宽积=传播时延*带宽
(1)0.1m/2.3/1000000000*1*10000000b/s=0.000435bit
(2)100m/2.3/1000000000*1*10000000b/s=0.435bit
(3)100000/2.3/1000000000*1*10000000=435bit
(4)5000000/2.3/1000000000*1*10000000=21739bit
1-19, 长度为100字节的应用层数据交给运输层传送,再加上20字节的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传递,加上首部和尾部共18字节。试求数据的传输效率。
若应用层数据长度为1000字节,数据的传输效率是多少?
解:(1)100/(100+20+20+18)=63.3%
(2)1000/(1000+20+20+18)=94.5%
第二章
题目:共有4个站进行码分多址通信。4个站的码片序列为
A:(-1-1-1+1+1-1+1+1) B:(-1-1+1-1+1+1+1-1)
C:(-1+1-1+1+1+1-1-1) D:(-1+1-1-1-1-1+1-1)
现收到这样的码片序列S:(-1+1-3+1-1-3+1+1)。问哪个站发送数据了?发送数据的站发送的是0还是1?
答:S·A=(+1-1+3+1-1+3+1+1)/8=1, A发送1
S·B=(+1-1-3-1-1-3+1-1)/8=-1, B发送0
S·C=(+1+1+3+1-1-3-1-1)/8=0, C无发送
S·D=(+1+1+3-1+1+3+1-1)/8=1, D发送1
第三章
3-07 要发送的数据为1101011011。采用CRC的生成多项式是P(x)=x4+x+1 。试求应添加在数据后面的余数。
数据在传输过程中最后一个1变成了0,问接收端能否发现?
若数据在传输过程中最后两个1都变成了0,问接收端能否发现?
答:添加的检验序列为1110 (11010110110000除以10011)
数据在传输过程中最后一个1变成了0,11010110101110除以10011,余数为011,不为0,接收端可以发现差错。
数据在传输过程中最后两个1都变成了0,11010110001110除以10011,余数为101,不为0,接收端可以发现差错。
3-16 数据率为10Mbit/s的以太网的码元传输速率是多少波特?
答:以太网使用曼彻斯特编码,这就意味着发送的每一位都有两个信号周期。标准以太网的数据速率是10Mb/s,因此波特率是数据率的两倍,即20M波特。
3-20 假定1km长的CSMA/CD网络的数据率为1Gbit/s。设信号在网络上的传播速率为200000km/s。求能够使用此协议的最短帧长。
答:对于1km电缆,单程端到端传播时延为:τ=1÷200000=5×10-6s=5μs,
端到端往返时延为: 2τ=10μs
为了能按照CSMA/CD工作,最小帧的发送时延不能小于10μs,以1Gb/s速率工作,10μs可发送的比特数等于:10×10-6×1×109=10000bit=1250字节。
3-28 有10个站连接到以太网上,试计算以下三种情况下每一个站所能得到带宽。
(1)10个站点连接到一个10Mbit/s以太网集线器;
(2)10站点连接到一个100Mbit/s以太网集线器;
(3)10个站点连接到一个10Mbit/s以太网交换机。
答:(1)10个站共享10Mbit/s;
(2)10个站共享100Mbit/s;
(3)每一个站独占10Mbit/s。
9、100个站分布在4km长的总线上,协议采用CSMA/CD。总线速率为5Mbit/s,帧平均长度为1000bit。试估算每个站每秒种发送的平均帧数的最大值。传播时延为5μs/km。
答:a=τ/T0=τC/L=5μs/km×4km×5Mbit/s÷1000bit=0.1
当站点数较大时,信道利用率最大值Smax接近=1/(1+4.44a)=0.6925
信道上每秒发送的帧的最大值= Smax×C/L=0.6925×5Mbit/s/1000bit=3462
每个站每秒种发送的平均帧数的最大值=3462/100=34
3-29 10Mbit/s以太网升级到100Mbit/s和1Gbit/s甚至10Gbit/s时,需要解决哪些技术问题?在帧的长度方面需要有什么改变?为什么?传输媒体应当有什么改变?
答:以太网升级时,由于数据传输率提高了,帧的发送时间会按比例缩短,这样会影响冲突的检测。所以需要减小最大电缆长度或增大帧的最小长度,使参数a保持为较小的值,才能有效地检测冲突。在帧的长度方面,几种以太网都采用802.3标准规定的以太网最小最大帧长,使不同速率的以太网之间可方便地通信。100bit/s的以太网采用保持最短帧长(64byte)不变的方法,而将一个网段的最大电缆长度减小到100m,同时将帧间间隔时间由原来的9.6μs,改为0.96μs。1Gbit/s以太网采用保持网段的最大长度为100m的方法,用“载波延伸”和“分组突法”的办法使最短帧仍为64字节,同时将争用字节增大为512字节。传输媒体方面,10Mbit/s以太网支持同轴电缆、双绞线和光纤,而100Mbit/s和1Gbit/s以太网支持双绞线和光纤,10Gbit/s以太网只支持光纤。
10Mbit/s以太网升级到100Mbit/s和1Gbit/s甚至10Gbit/s时,需要解决哪些技术问题?在帧的长度方面需要有什么改变?为什么?传输媒体应当有什么改变?
答:以太网升级时,由于数据传输率提高了,帧的发送时间会按比例缩短,这样会影响冲突的检测。所以需要减小最大电缆长度或增大帧的最小长度,使参数a保持为较小的值,才能有效地检测冲突。在帧的长度方面,几种以太网都采用802.3标准规定的以太网最小最大帧长,使不同速率的以太网之间可方便地通信。100bit/s的以太网采用保持最短帧长(64byte)不变的方法,而将一个网段的最大电缆长度减小到100m,同时将帧间间隔时间由原来的9.6μs,改为0.96μs。1Gbit/s以太网采用保持网段的最大长度为100m的方法,用“载波延伸”和“分组突法”的办法使最短帧仍为64字节,同时将争用字节增大为512字节。传输媒体方面,10Mbit/s以太网支持同轴电缆、双绞线和光纤,而100Mbit/s和1Gbit/s以太网支持双绞线和光纤,10Gbit/s以太网只支持光纤。
欲保持10M,100M,1G的MAC协议兼容,要求最小帧长的发送时间大于最长的冲突检测时间,因而千兆以太网采用载波扩充方法。而且为了避免由此带来的额外开销过大,当连续发送多个短帧时采用帧突发技术。而100M以太网采用的则是保持帧长不变但将最大电缆长度减小到100m。 其它技术改进: (1)采用专用的交换集线器,缩小冲突域 (2)发送、接收、冲突检测传输线路独立,降低对媒体带宽要求 (3)为使用光纤、双绞线媒体,采用新的信号编码技术。
第四章
4-21某单位分配到一个B类IP地址,其net-id为129.250.0.0。该单位有4000台机器,平均分布在16个不同的地点。如选用子网掩码为255.255.255.0,试给每一地点分配一个子网号码,并计算出每个地点主机号码的最小值和最大值。
答:4000/16=250,平均每个地点250台机器。如选255.255.255.0为掩码,则每个网络所连主机数=28-2=254>250,共有子网数=28-2=254>16,能满足实际需求。
可给每个地点分配如下子网号码
地点: 子网号(subnet-id) 子网网络号 主机IP的最小值和最大值
1: 00000001 129.250.1.0 129.250.1.1---129.250.1.254
2: 00000010 129.250.2.0 129.250.2.1---129.250.2.254
3: 00000011 129.250.3.0 129.250.3.1---129.250.3.254
4: 00000100 129.250.4.0 129.250.4.1---129.250.4.254
5: 00000101 129.250.5.0 129.250.5.1---129.250.5.254
6: 00000110 129.250.6.0 129.250.6.1---129.250.6.254
7: 00000111 129.250.7.0 129.250.7.1---129.250.7.254
8: 00001000 129.250.8.0 129.250.8.1---129.250.8.254
9: 00001001 129.250.9.0 129.250.9.1---129.250.9.254
10: 00001010 129.250.10.0 129.250.10.1---129.250.10.254
11: 00001011 129.250.11.0 129.250.11.1---129.250.11.254
12: 00001100 129.250.12.0 129.250.12.1---129.250.12.254
13: 00001101 129.250.13.0 129.250.13.1---129.250.13.254
14: 00001110 129.250.14.0 129.250.14.1---129.250.14.254
15: 00001111 129.250.15.0 129.250.15.1---129.250.15.254
16: 00010000 129.250.16.0 129.250.16.1---129.250.16.254
4-22一具数据报长度为4000字节(固定首部长度)。现在经过一个网络传送,但此网络能够传送的最大数据长度为1500字节。试问应当划分为几个短些的数据报片?各数据报片的数据字段长度、片偏移字段和MF标志应为何数值?
答:IP数据报固定首部长度为20字节
|
总长度(字节) |
数据长度(字节) |
MF |
片偏移 |
原始数据报 |
4000 |
3980 |
0 |
0 |
数据报片1 |
1500 |
1480 |
1 |
0 |
数据报片2 |
1500 |
1480 |
1 |
185 |
数据报片3 |
1040 |
1020 |
0 |
370 |
4-29 一个自治系统有5个局域网,其连接图如图6-61所示。LAN2至LAN5上的主机数分别为:91,150,3和15。该项自治系统分配到的IP地址块为30.138.118/23。试给出每一个局域网的地址块(包括前缀)。
解:分配网络前缀时应先分配地址数较多的前缀。
地址块30.138.118/23可写成30.138.118.0/23
写成二进制表示:00011110 10001010 01110110 00000000
掩码 11111111 11111111 11111110 00000000
LAN3有150个主机加一个路由器地址为151个地址。
地址块 00011110 10001010 0111011* ********
分配地址块 00011110 10001010 01110110 ********
即 30.138.118.0/24
LAN2有91个主机加一个路由器地址为92个地址。
分配地址块 00011110 10001010 01110111 0*******
即 30.138.119.0/25
LAN5有15个主机加一个路由器地址为16个地址。需要/27地址块,可分配/26地址块。
分配地址块 00011110 10001010 01110111 10******
即 30.138.119.128/26
LAN4有3个主机加一个路由器地址为4个地址。至少需要/29地址块
分配地址块 00011110 10001010 01110111 11000***
即 30.138.119.192/29
LAN1至少有3个IP地址供路由器用。也分一个/29地址块
分配地址块 00011110 10001010 01110111 11001***
即 30.138.119.200/29
4-17 一个3200bit长的TCP报文传到IP层,加上160bit的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有1200bit,因此数据报在路由器必须进行分片。试问第二个局域网向其上层要传送多少比特的数据(这里的“数据”当然指局域网看见的数据)?
答:第二个局域网所能传送的最长数据帧中的数据部分只有1200bit,即每个IP数据片的数据部分<1200-160(bit),由于片偏移是以8字节即64bit为单位的,所以IP数据片的数据部分最大不超过1024bit,这样3200bit的报文要分4个数据片,所以第二个局域网向上传送的比特数等于(3200+4×160),共3840bit。
4-37 某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分4个一样大的子网。试问:
1、 每个子网的前缀有多长?
2、 每一个子网中有多少个地址?
3、 每一个子网的地址块是什么?
4、 每一个子网可分配给主机使用的最小地址和最大地址是什么?
一共有28位做网络地址,4位做主机地址.即掩码是/28 255.255.255.240
解析:
136.23.12.64/28 主机范围:136.23.12.65--78
136.23.12.80/28 :136.23.12.81--94
136.23.12.96/28 :136.23.12.97--110
136.23.12.112/28 :136.23.12.113--126
每个子网中16个地址,其中1个网络号,一个广播地址,14个主机地址.
4-24 试找出可产生以下数目的A类子网的子网掩码(采用连续掩码)
(1)2,(2)6,(3)20,(4)62,(5)122,(6)250
答:(3)20+2=22<25(加2即将不能作为子网号的全1和全0的两种,所以子网号占用5bit,所以网络号加子网号共13bit,子网掩码为前13个1后19个0,即255.248.0.0。依此方法:
(1)255.192.0.0,(2)255.224.0.0,(4)255.252.0.0,(5)255.254.0.0,(6)255.255.0.0
4-25 以下有四个子网掩码,哪些是不推荐使用的?
(1)176.0.0.0,(2)96.0.0.0,(3)127.192.0.0,(4)255.128.0.0
答:只有(4)是连续的1和连续的0的掩码,是推荐使用的。
4-26 有如下的四个/24地址块,试进行最大可能的聚合。
212.56.132.0/24,212.56.133.0/24。212.56.134.0/24,212.56.135.0/24
答:212=(11010100)2,56=(00111000)2
132=(10000100)2,
133=(10000101)2
134=(10000110)2,
135=(10000111)2
所以共同的前缀有22位,即11010100 00111000 100001,聚合的CIDR地址块是:212.56.132.0/22
4-27有两个CIDR地址块208.128/11和208.130.28/22。是否有哪一个地址块包含了另一地址块?如果有,请指出,并说明理由。
答:208.128/11的前缀为:11010000 100
208.130.28/22的前缀为:11010000 10000010 000101,它的前11位与208.128/11的前缀是一致的,所以208.128/11地址块包含了208.130.28/22这一地址块。
4-30 一个大公司有一个总部和三个下属部门.公司分配到的网络前缀是192.77.33/24.公司
的网络布局如图.总部共有五个局域网,其中LAN1~LAN4都连接到路由器R1上,
R1再通过LAN5与路由其R5相连.R5和远地的三个部门的局域网LAN6~LAN8通
过广域网相连.每个局域网旁边标明的红色数字是局域网上主机数.试给每个局域网
分配一个合适的网络前缀.
分配网络前缀时应先分配地址数较多的前缀,本题的答案很多种,下面是其中的一种答案.
LAN1: 192.77.33.0/26
LAN3: 192.77.33.64/27; LAN6: 192.77.33.96/27;
LAN7: 192.77.33.128/27; LAN8; 192.77.33.160/27
LAN2: 192.77.33.192/28; LAN4: 192.77.33.208/28
LAN5: 192.77.33.224/29 (考虑到以太网可能还要连接及个主机,故留有余地)
WAN1:192.77.33.232/30; WAN2: 192.77.33.236/30; 192.77.33.240/30
4-41假定网络中的路由器B的路由表有如下的项目(这三列分别表示“目的网络”、“距离”和“下一跳路由器”)
N1 7 A
N2 2 C
N6 8 F
N8 4 E
N9 4 F
现在B收到从C发来的路由信息(这两列分别表示“目的网络”和“距离” ):
N2 4
N3 8
N6 4
N8 3
N9 5
试求出路由器B更新后的路由表。
解:路由器B更新后的路由表如下:
N1 7 A 无新信息,不改变
N2 5 C 相同的下一跳,更新
N3 9 C 新的项目,添加进来
N6 5 C 不同的下一跳,距离更短,更新
N8 4 E 不同的下一跳,距离一样,不改变
N9 4 F 不同的下一跳,距离更大,不改变
4-42假定网络中的路由器A的路由表有如下的项目(这三列分别表示“目的网络”、“距离”和“下一跳路由器”)
N1 4 B
N2 2 C
N3 1 F
N4 5 G
现在A收到从C发来的路由信息(这两列分别表示“目的网络”和“距离” ):
N1 2
N2 1
N3 3
试求出路由器A更新后的路由表。
解:路由器A更新后的路由表如下:
N1 3 C 不同的下一跳,距离更短,改变
N2 2 C 不同的下一跳,距离一样,不变
N3 1 F 不同的下一跳,距离更大,不改变
N4 5 G 无新信息,不改变
第五章
5-14解:下面是打印出的十六进制格式的UDP首部
06 32 00 0D 00 1C E2 17
a.源端口是什么?
b.目的地址是什么?
c.用户数据报的总长度是多少?
e.数据的总长度是多少?
d.该分组是从客户发给服务器还是反过来?
f.客户进程是什么?
源端口是0X0632 = 1586
目的端口是0X000D = 14
总长度是是0X001C = 29 BYTES
UDP_HEADER
______________________________________________________
0______________________16___________________________31
___发送端口号(16bit)____|____接收端口号(16bit)_____|
_______包的长度_________|_________检查和_____________|
5-16解析:停止等待协议中发送的数据帧是否需要编号?需要编几位号?为什么?
在计算机网络发展的初期,通讯网的传输质量较差,所以在数据链路层采用基于可靠传输的该协议。现在通讯网的质量大幅度提高,该协议已停止使用,所以帧的编号位已经不使用。但是在有些通讯原理教科书上,该协议只作为原理进行讲解,对编号位数普遍位曾提及。
在停止等待协议中,确认帧是否需要序号?请说明理由。 答:在一般情况下,确认帧不需要序号。但如果超时时间设置短了一些,则可能会出现问题,即有时发送方会分不清对哪一帧的确认。
5-35解析:五段链路的传播时延=250*2+(1500/150000)*3*1000=530ms
五段链路的发送时延=960/(48*1000)*5*1000=100ms
所以五段链路单程端到端时延=530+100=630ms
5-02解析:从通信和信息处理的角度来看,运输层向它上面的应用层提供通信服务。运输层为应用进程之间提供端到端的逻辑通信。
5-03解析:都是,这要从不同层次来看。在运输层是面向连接的,在网络层则是无连接的。
5-06解析:丢弃.
TCP/IP三次握手工作方式:
TCP握手协议
5-24一个TCP连接下面使用256Kb/s的链路,其端到端时延为128ms.经测试,发现吞吐
量只有120Kb/s.试问发送窗口是多少
解答
来回路程的时延等于256ms(=128ms×2).设窗口值为X(注意:以字节为单位),假
定一次最大发送量等于窗口值,且发射时间等于256ms,那么,每发送一次都得停下来期待
再次得到下一窗口的确认,以得到新的发送许可.这样,发射时间等于停止等待应答的时间,
结果,测到的平均吞吐率就等于发送速率的一半,即
8X÷(256×1000)=256×0.001
X=8192
所以,窗口值为8192.
如何进行三次握手
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:
未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。
Backlog参数:表示未连接队列的最大容纳数目。
SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。
BAST的含义
试说明10BASE5,10BASE2,10BASE-T,和10BROAD36和 FOMAU 所代表的意思。
答:10BASE5:“10”表示数据率为10Mbit/s,“BASE”表示电缆上的信号是基带信号, “5”表示每一段电缆的最大长度是500m。
10BASE2:“10”表示数据率为10Mbit/s,“BASE”表示电缆上的信号是基
带信号, “2”表示每一段电缆的最大长度是185m。
10BASE-T:“10”表示数据率为10Mbit/s,“BASE”表示电缆上的信号是
基带信号, “T”表示使用双绞线作为传输媒体。
10BROAD36:“10”表示数据率为10Mbit/s,“BROAD”表示电缆上的信
号是宽带信号,“36”表示网络的最大跨度是3600m。
FOMAU : (Fiber Optic Medium Attachment Unit) 光纤媒介附属单元。
10和1代表网络数据传输速率分别为10Mbps和1Mbps,BASE和BROAD分别表示基带和频分多路复用的宽带。5、2和36分别表示传输媒体线缆段最大长度分别为500米、185(约200)米和3600米;T表示是采用双绞线;F表示光纤。10BASE5是50欧同轴粗缆;10BASE2是50欧同轴细缆;10BASE-T为一种物理星状拓扑而逻辑上为总线结构的以太网;1BASE5指AT&T公司的StarLAN的物理媒体规范,使用和10BASE-T一样的双绞线,可通过一种称为菊花链的机制进行扩展;10BASE-F又分为适用于以星状拓扑连接站和转发器的无源系统10BASE-FP、点对点连接站或转发器的光纤链路10BASE-FL、以及点对点主干光纤链路10BASE-FB;10BROAD36采用75欧的CATV同轴电缆。FOMAU是采用光纤(Fiber Optic)的媒体接入单元MAU(Media Access Unit),用以连接扩展以太网的转发器之间的光纤链路FOIRL(Fiber Optic Inter-Repeater Link)。