章节索引
- 第一章 – 计算机网络概述 (6题)
- 第二章 – 物理层 (5题)
- 第三章 – 数据链路层 (13题)
- 第四章 – 网络层 (20题)
- 第五章 – 运输层 (14题)
- 第六章 – 应用层 (14题)
总计:72道题目young
第一章
1-01 计算机网络向用户可以提供哪些服务?
答:连通性和共享
1-04 为什么说互联网是自印刷术发明以来人类在存储和交换信息领域的最大变革?
答:融合其他通信网络,在信息化过程中起核心作用,提供最好的连通性和信息共享,第一次提供了各种媒体形式的实时交互能力。
1-13 客户-服务器方式与P2P对等通信方式的主要区别是什么?有没有相同的地方?
答:前者严格区分服务和被服务者,后者无此区别。后者实际上是前者的双向应用。
1-17 收发两端之间的传输距离为1000 km,信号在媒体上的传播速率为2×10^8 m/s。试计算以下两种情况的发送时延和传播时延: (1) 数据长度为10^7 bit,数据发送速率为100 kbit/s。 (2) 数据长度为10^3 bit,数据发送速率为1 Gbit/s。 从以上计算结果可得出什么结论?
解:(1)发送时延:ts=10^7/10^5=100s 传播时延tp=10^6/(2×10^8)=0.005s
(2)发送时延ts =10^3/10^9=1µs 传播时延:tp=10^6/(2×10^8)=0.005s
结论:若数据长度大而发送速率低,则在总的时延中,发送时延往往大于传播时延。但若数据长度短而发送速率高,则传播时延就可能是总时延中的主要成分。
1-20 网络体系结构为什么要采用分层次的结构?试举出一些与分层体系结构的思想相似的日常生活的例子。
答:分层的好处: ①各层之间是独立的。某一层可以使用其下一层提供的服务而不需要知道服务是如何实现的。 ②灵活性好。当某一层发生变化时,只要其接口关系不变,则这层以上或以下的各层均不受影响。 ③结构上可分割开。各层可以采用最合适的技术来实现 ④易于实现和维护。 ⑤能促进标准化工作。
与分层体系结构的思想相似的日常生活有邮政系统,物流系统。
1-25 试举出日常生活中有关”透明”这一名词的例子。
答:电视,计算机视窗操作系统、工农业产品
第二章
2-01 物理层要解决哪些问题?物理层的主要特点是什么?
答:物理层要解决的主要问题: (1)物理层要尽可能地屏蔽掉物理设备和传输媒体,通信手段的不同,使数据链路层感觉不到这些差异,只考虑完成本层的协议和服务。 (2)给其服务用户(数据链路层)在一条物理的传输媒体上传送和接收比特流(一般为串行按顺序传输的比特流)的能力,为此,物理层应该解决物理连接的建立、维持和释放问题。 (3)在两个相邻系统之间唯一地标识数据电路
物理层的主要特点: (1)由于在OSI之前,许多物理规程或协议已经制定出来了,而且在数据通信领域中,这些物理规程已被许多商品化的设备所采用,加之,物理层协议涉及的范围广泛,所以至今没有按OSI的抽象模型制定一套新的物理层协议,而是沿用已存在的物理规程,将物理层确定为描述与传输媒体接口的机械,电气,功能和规程特性。 (2)由于物理连接的方式很多,传输媒体的种类也很多,因此,具体的物理协议相当复杂。
2-02 规程与协议有什么区别?
答:规程专指物理层协议
2-03 试给出数据通信系统的模型并说明其主要组成构件的作用。
答:源点:源点设备产生要传输的数据。源点又称为源站。 发送器:通常源点生成的数据要通过发送器编码后才能在传输系统中进行传输。 接收器:接收传输系统传送过来的信号,并将其转换为能够被目的设备处理的信息。 终点:终点设备从接收器获取传送过来的信息。终点又称为目的站 传输系统:信号物理通道
2-09 用香农公式计算一下,假定信道带宽为3100Hz,最大信息传输速率为35kbit/s,那么若想使最大信息传输速率增加60%,问信噪比S/N应增大到多少倍?如果在刚才计算出的基础上将信噪比S/N再增大到10倍,问最大信息传输速率能否再增加20%?
答:C = W log2(1+S/N) b/s→SN1=2^(C1/W)-1=2^(35000/3100)-1 SN2=2^(C2/W)-1=2^(1.6C1/w)-1=2^(1.635000/3100)-1 SN2/SN1=100信噪比应增大到约100倍。
C3=Wlog2(1+SN3)=Wlog2(1+10*SN2) C3/C2=18.5%
如果在此基础上将信噪比S/N再增大到10倍,最大信息通率只能再增加18.5%左右
2-16 共有四个站进行码分多址CDMA通信。四个站的码片序列为: 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) 现收到这样的码片序列:(-1+1-3+1-1-3+1+1)。问哪个站发送数据了?发送数据的站发送的是1还是0?
解: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-01 数据链路(即逻辑链路)与链路(即物理链路)有何区别?”链路接通了”与”数据链路接通了”的区别何在?
答:数据链路与链路的区别在于数据链路出链路外,还必须有一些必要的规程来控制数据的传输,因此,数据链路比链路多了实现通信规程所需要的硬件和软件。
“电路接通了”表示链路两端的结点交换机已经开机,物理连接已经能够传送比特流了,但是,数据传输并不可靠,在物理连接基础上,再建立数据链路连接,才是”数据链路接通了”,此后,由于数据链路连接具有检测、确认和重传功能,才使不太可靠的物理链路变成可靠的数据链路,进行可靠的数据传输当数据链路断开连接时,物理电路连接不一定跟着断开连接。
3-03 网络适配器的作用是什么?网络适配器工作在哪一层?
答:适配器(即网卡)来实现数据链路层和物理层这两层的协议的硬件和软件 网络适配器工作在TCP/IP协议中的网络接口层(OSI中的数据链里层和物理层)
3-04 数据链路层的三个基本问题(封装成帧、透明传输和差错检测)为什么都必须加以解决?
答:帧定界是分组交换的必然要求 透明传输避免消息符号与帧定界符号相混淆 差错检测防止合差错的无效数据帧浪费后续路由上的传输和处理资源
3-06 PPP协议的主要特点是什么?为什么PPP不使用帧的编号?PPP适用于什么情况?为什么PPP协议不能使数据链路层实现可靠传输?
答:简单,提供不可靠的数据报服务,检错,无纠错 不使用序号和确认机制 地址字段A只置为0xFF。地址字段实际上并不起作用。 控制字段C通常置为0x03。 PPP是面向字节的 当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充(和HDLC的做法一样),当PPP用在异步传输时,就使用一种特殊的字符填充法 PPP适用于线路质量不太差的情况下、PPP没有编码和确认机制
3-07 要发送的数据为1101011011。采用CRC的生成多项式是P(X)=X^4+X+1。试求应添加在数据后面的余数。 若要发送的数据在传输过程中最后一个1变成了0,即变成了1101011010,问接收端能否发现? 若要发送的数据在传输过程中最后两个1都变成了0,即变成了1101011000,问接收端能否发现? 采用CRC检验后,数据链路层的传输是否就变成了可靠的传输?
答:作二进制除法,1101011011 0000 10011 得余数1110,添加的检验序列是1110. 作二进制除法,两种错误均可发展 仅仅采用了CRC检验,缺重传机制,数据链路层的传输还不是可靠的传输。
3-09 一个PPP帧的数据部分(用十六进制写出)是7D5EFE277D5D7D5D657D5E。试问真正的数据是什么(用十六进制写出)?
答:7D 5E FE 27 7D 5D 7D 5D 65 7D 5E 7E FE 27 7D 7D 65 7D
3-10 PPP协议使用同步传输技术传送比特串0110111111111100。试问经过零比特填充后变成怎样的比特串?若接收端收到的PPP帧的数据部分是0001110111110111110110,试问删除发送端加入的零比特后会变成怎样的比特串?
答:01101111111111 00 011011111011111000 0001110111110111110110 00011101111111111 110
3-15 什么叫作传统以太网?以太网有哪两个主要标准?
答:DIX Ethernet V2标准的局域网 DIX Ethernet V2标准与IEEE的802.3标准
3-20 假定1km长的CSMA/CD网络的数据率为1Gbit/s。设信号在网络上的传播速率为200000km/s。求能够使用此协议的最短帧长。
答:对于1km电缆,单程传播时间为1/200000=5微秒,来回路程传播时间为10微秒,为了能够按照CSMA/CD工作,最小帧的发射时间不能小于10微秒,以Gb/s速率工作,10微秒可以发送的比特数等于1010^-6/110^-9=10000,因此,最短帧是10000位或1250字节长
3-22 假定在使用CSMA/CD协议的10Mbit/s以太网中某个站在发送数据时检测到碰撞,执行退避算法时选择了随机数r=100。试问这个站需要等待多长时间后才能再次发送数据?如果是100Mbit/s的以太网呢?
答:对于10mb/s的以太网,以太网把争用期定为51.2微秒,要退后100个争用期,等待时间是51.2(微秒)100=5.12ms 对于100mb/s的以太网,以太网把争用期定为5.12微秒,要退后100个争用期,等待时间是5.12(微秒)100=512微秒
3-27 有10个站连接到以太网上。试计算以下三种情况下每一个站所能得到的带宽。 (1)10个站都连接到一个10Mbit/s以太网集线器: (2)10个站都连接到一个100Mbit/s以太网集线器; (3)10个站都连接到一个10Mbit/s以太网交换机。
答:(1)10个站都连接到一个10Mb/s以太网集线器:1mbs (2)10个站都连接到一个100mb/s以太网集线器:10mbs (3)10个站都连接到一个10mb/s以太网交换机:10mbs
3-29 以太网交换机有何特点?用它怎样组成虚拟局域网?
答:以太网交换机则为链路层设备,可实现透明交换 虚拟局域网VLAN是由一些局域网网段构成的与物理位置无关的逻辑组。 这些网段具有某些共同的需求。 虚拟局域网协议允许在以太网的帧格式中插入一个4字节的标识符,称为VLAN标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。
第四章
4-01 网络层向上提供的服务有哪两种?试比较其优缺点。
答:网络层向运输层提供”面向连接”虚电路(Virtual Circuit)服务或”无连接”数据报服务 前者预约了双方通信所需的一切网络资源。优点是能提供服务质量的承诺。即所传送的分组不出错、丢失、重复和失序(不按序列到达终点),也保证分组传送的时限,缺点是路由器复杂,网络成本高; 后者无网络资源障碍,尽力而为,优缺点与前者互易
4-02 网络互连有何实际意义?进行网络互连时,有哪些共同的问题需要解决?
答:网络互联可扩大用户共享资源范围和更大的通信区域 进行网络互连时,需要解决共同的问题有: 不同的寻址方案 不同的最大分组长度 不同的网络接入机制 不同的超时控制 不同的差错恢复方法 不同的状态报告方法 不同的路由选择技术 不同的用户接入控制 不同的服务(面向连接服务和无连接服务) 不同的管理与控制方式
4-03 作为中间设备,转发器、网桥、路由器和网关有何区别?
答:中间设备又称为中间系统或中继(relay)系统。 物理层中继系统:转发器(repeater)。 数据链路层中继系统:网桥或桥接器(bridge)。 网络层中继系统:路由器(router)。 网桥和路由器的混合物:桥路器(brouter)。 网络层以上的中继系统:网关(gateway)。
4-04 试简单说明下列协议的作用:IP,ARP和 ICMP。
答:IP协议:实现网络互连。使参与互连的性能各异的网络从用户看起来好像是一个统一的网络。网际协议IP是TCP/IP体系中两个最主要的协议之一,与IP协议配套使用的还有四个协议。 ARP协议:是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。 ICMP:提供差错报告和询问报文,以提高IP数据交付成功的机会
4-07 试说明IP地址与MAC地址的区别。为什么要使用这两种不同的地址?
答:IP地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的32位的标识符。从而把整个因特网看成为一个单一的、抽象的网络 在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。 MAC地址在一定程度上与硬件一致,基于物理、能够标识具体的链路通信对象、IP地址给予逻辑域的划分、不受硬件限制。
4-10 当某个路由器发现一IP数据报的检验和有差错时,为什么采取丢弃的办法而不是要求源站重传此数据报?计算首部检验和为什么不采用CRC检验码?
答:纠错控制由上层(传输层)执行 IP首部中的源站地址也可能出错请错误的源地址重传数据报是没有意义的 不采用CRC简化解码计算量,提高路由器的吞吐量
4-19 某单位分配到一个地址块129.250/16。该单位有4000台机器,平均分布在16个不同的地点。试给每一个地点分配一个地址块,并算出每个地址块中IP地址的最小值和最大值。
4000/16=250,平均每个地点250台机器。如选255.255.255.0为掩码,则每个网络所连主机数=2^8-2=254>250,共有子网数=2^8-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-20 一个数据报长度为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-22 有如下的4个/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-23 有两个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-25
4-27 以下地址中的哪一个和86.32/12匹配?请说明理由。 (1) 86.33.224.123; (2)86.79.65.216; (3) 86.58.119.74; (4) 86.68.206.154。
答:86.32/12→86.00100000下划线上为12位前缀说明第二字节的前4位在前缀中。 给出的四个地址的第二字节的前4位分别为:0010,0100,0011和0100。因此只有(1)是匹配的。
4-28 以下的地址前缀中的哪一个地址与2.52.90.140匹配?请说明理由。 (1) 0/4; (2) 32/4; (3) 4/6; (4) 80/4。
答:前缀(1)和地址2.52.90.140匹配 2.52.90.140→0000 0010.52.90.140 0/4→0000 0000 32/4→0010 0000 4/6→0000 0100 80/4→0101 0000
4-31 已知地址块中的一个地址是140.120.84.24/20。试求这个地址块中的最小地址和最大地址。地址掩码是什么?地址块中共有多少个地址?相当于多少个C类地址?
140.120.84.24→140.120.(0101 0100).24 最小地址是140.120.(0101 0000).0/20(80) 最大地址是140.120.(0101 1111).255/20(95) 地址数是4096.相当于16个C类地址。
4-32 已知地址块中的一个地址是190.87.140.202/29。重新计算上题。
190.87.140.202/29→190.87.140.(1100 1010)/29 最小地址是190.87.140.(1100 1000)/29 200 最大地址是190.87.140.(1100 1111)/29 207 地址数是8.相当于1/32个C类地址。
4-37 假定网络中的路由器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-41 什么是VPN?VPN有什么特点和优缺点?VPN有几种类别?
VPN(Virtual Private Network,虚拟专用网络)是在公共网络上建立专用网络的技术。它通过加密和隧道技术在公共网络上为用户建立安全的连接通道。
特点:
- 利用公共网络基础设施
- 提供类似专用网络的安全性和私密性
- 成本相对较低
- 灵活性好,可远程访问
优点:
- 节省专线租用成本
- 支持远程访问和移动办公
- 提供数据加密和安全传输
- 网络扩展性好
缺点:
- 依赖公共网络的稳定性
- 性能可能受公共网络影响
- 配置相对复杂
- 安全性依赖于加密技术强度
类别:
- 远程访问VPN(Access VPN)
- 站点到站点VPN(Site-to-Site VPN)
- 内联网VPN(Intranet VPN)
- 外联网VPN(Extranet VPN)
4-44 假设一段地址的首地址为146.102.29.0,末地址为146.102.32.255,求这个地址段的地址数。
答:从146.102.29.0到146.102.32.255,共4个C类网络 地址数 = 4 × 256 = 1024个地址
4-45 已知一/27网络中有一个地址是167.199.170.82,问这个网络的网络掩码、网络前缀长度和网络后缀长度是多少?
答:/27网络表示前缀长度为27位 网络掩码:255.255.255.224 网络前缀长度:27位 网络后缀长度:5位(32-27=5)
4-53 在IPv4首部中有一个”协议”字段,但在IPv6的固定首部中却没有。这是为什么?
答:在IPv4中,”协议”字段用于标识上层协议类型(如TCP、UDP、ICMP等),因为IPv4首部需要知道如何处理承载的数据。
在IPv6中,这个功能被移到了”下一个首部”字段中。IPv6采用了扩展首部的概念,固定首部中的”下一个首部”字段指向第一个扩展首部或上层协议首部。如果存在扩展首部,每个扩展首部都有自己的”下一个首部”字段指向下一个首部;如果没有扩展首部,则直接指向上层协议。
这种设计使得IPv6更加模块化和灵活,便于添加新的功能而无需修改固定首部结构。
第五章
5-01 试说明运输层在协议栈中的地位和作用。运输层的通信和网络层的通信有什么重要的区别?为什么运输层是必不可少的?
答:运输层处于面向通信部分的最高层,同时也是用户功能中的最低层,向它上面的应用层提供服务 运输层为应用进程之间提供端到端的逻辑通信,但网络层是为主机之间提供逻辑通信(面向主机,承担路由功能,即主机寻址及有效的分组交换)。 各种应用进程之间通信需要”可靠或尽力而为”的两类服务质量,必须由运输层以复用和分用的形式加载到网络层。
5-08 为什么说UDP是面向报文的,而TCP是面向字节流的?
答:发送方UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。 接收方UDP对IP层交上来的UDP用户数据报,在去除首部后就原封不动地交付上层的应用进程,一次交付一个完整的报文。 发送方TCP对应用程序交下来的报文数据块,视为无结构的字节流(无边界约束,可分拆/合并),但维持各字节
5-09 端口的作用是什么?为什么端口号要划分为三种?
答:端口的作用是对TCP/IP体系的应用进程进行统一的标志,使运行不同操作系统的计算机的应用进程能够互相通信。 熟知端口,数值一般为0~1023.标记常规的服务进程; 登记端口号,数值为1024~49151,标记没有熟知端口号的非常规的服务进程;
5-11 某个应用进程使用运输层的用户数据报UDP,然后继续向下交给IP层后,又封装成IP数据报。既然都是数据报,是否可以跳过UDP而直接交给IP层?哪些功能UDP提供了但IP没有提供?
答:不可跳过UDP而直接交给IP层 IP数据报IP报承担主机寻址,提供报头检错;只能找到目的主机而无法找到目的进程。 UDP提供对应用进程的复用和分用功能,以及提供对数据差分的差错检验。
5-13 一个UDP用户数据报的数据字段为8192字节。在链路层要使用以太网来传送。试问应当划分为几个IP数据报片?说明每一个IP数据报片的数据字段长度和片偏移字段的值。
答:6个 数据字段的长度:前5个是1480字节,最后一个是800字节。 片偏移字段的值分别是:0,1480,2960,4440,5920和7400.
5-16 在停止等待协议中如果不使用编号是否可行?为什么?
答:分组和确认分组都必须进行编号,才能明确哪个分组得到了确认。
5-23 主机A向主机B连续发送了两个TCP报文段,其序号分别是70和100。试问: (1) 第一个报文段携带了多少字节的数据? (2) 主机B收到第一个报文段后发回的确认中的确认号应当是多少? (3) 如果B收到第二个报文段后发回的确认中的确认号是180,试问A发送的第二个报文段中的数据有多少字节? (4) 如果A发送的第一个报文段丢失了,但第二个报文段到达了B。B在第二个报文段到达后向A发送确认。试问这个确认号应为多少?
解:(1)第一个报文段的数据序号是70到99,共30字节的数据。 (2)确认号应为100. (3)80字节。 (4)70
5-31 通信信道带宽为1Gbit/s,端到端传播时延为10ms。TCP的发送窗口为65535字节。试问:可能达到的最大吞吐量是多少?信道的利用率是多少?
答: L=65536×8+40×8=524600 C=10^9b/s L/C=0.0005246s Td=10×10^-3s 0.02104864 Throughput=L/(L/C+2×Td)=524600/0.0205246=25.5Mb/s Efficiency=(L/C)/(L/C+2×D)=0.0255 最大吞吐量为25.5Mb/s。信道利用率为25.5/1000=2.55%
5-37 在TCP的拥塞控制中,什么是慢开始、拥塞避免、快重传和快恢复算法?这里每一种算法各起什么作用?”乘法减小”和”加法增大”各用在什么情况下?
答:慢开始: 在主机刚刚开始发送报文段时可先将拥塞窗口cwnd设置为一个最大报文段MSS的数值。在每收到一个对新的报文段的确认后,将拥塞窗口增加至多一个MSS的数值。用这样的方法逐步增大发送端的拥塞窗口cwnd,可以分组注入到网络的速率更加合理。
拥塞避免: 当拥塞窗口值大于慢开始门限时,停止使用慢开始算法而改用拥塞避免算法。拥塞避免算法使发送的拥塞窗口每经过一个往返时延RTT就增加一个MSS的大小。
快重传算法规定: 发送端只要一连收到三个重复的ACK即可断定有分组丢失了,就应该立即重传丢手的报文段而不必继续等待为该报文段设置的重传计时器的超时。
快恢复算法: 当发送端收到连续三个重复的ACK时,就重新设置慢开始门限ssthresh 与慢开始不同之处是拥塞窗口cwnd不是设置为1,而是设置为ssthresh 若收到的重复的ACK为n个(n>3),则将cwnd设置为ssthresh 若发送窗口值还容许发送报文段,就按拥塞避免算法继续发送报文段。 若收到了确认新的报文段的ACK,就将cwnd缩小到ssthresh
乘法减小: 是指不论在慢开始阶段还是拥塞避免阶段,只要出现一次超时(即出现一次网络拥塞),就把慢开始门限值ssthresh设置为当前的拥塞窗口值乘以0.5。 当网络频繁出现拥塞时,ssthresh值就下降得很快,以大大减少注入到网络中的分组数。
加法增大: 是指执行拥塞避免算法后,在收到对所有报文段的确认后(即经过一个往返时间),就把拥塞窗口cwnd增加一个MSS大小,使拥塞窗口缓慢增大,以防止网络过早出现拥塞。
5-39 TCP的拥塞窗口cwnd大小与RTT的关系如下所示:
| cwnd | 1 | 2 | 4 | 8 | 16 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RTT | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| cwnd | 40 | 41 | 42 | 21 | 22 | 23 | 24 | 25 | 26 | 1 | 2 | 4 | 8 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RTT | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |
(1) 试画出如图5-25所示的拥塞窗口与RTT的关系曲线。
(2) 指明TCP工作在慢开始阶段的时间间隔。
(3) 指明TCP工作在拥塞避免阶段的时间间隔。
(4) 在RTT=16和RTT=22之后发送方是通过收到三个重复的确认还是通过超时检测到丢失了报文段?
(5) 在RTT=1、RTT=18和RTT=24时,门限ssthresh分别被设置为多大?
(6) 在RTT等于多少时发送出第70个报文段?
(7) 假定在RTT=26之后收到了三个重复的确认,因而检测出了报文段的丢失,那么拥塞窗口cwnd和门限ssthresh应设置为多大?
答:(1)拥塞窗口与传输轮次的关系曲线如图所示(课本后答案): (2)慢开始时间间隔:【1,6】和【23,26】 (3)拥塞避免时间间隔:【6,16】和【17,22】 (4)在第16轮次之后发送方通过收到三个重复的确认检测到丢失的报文段。在第22轮次之后发送方是通过超时检测到丢失的报文段。 (5)在第1轮次发送时,门限ssthresh被设置为32 在第18轮次发送时,门限ssthresh被设置为发生拥塞时的一半,即21。 在第24轮次发送时,门限ssthresh是第18轮次发送时设置的21 (6)第70报文段在第7轮次发送出。 (7)拥塞窗口cwnd和门限ssthresh应设置为8的一半,即4.
5-40 TCP在进行流量控制时,以分组的丢失作为产生拥塞的标志。有没有不是因拥塞而引起分组丢失的情况?如有,请举出三种情况。
答: 当IP数据报在传输过程中需要分片,但其中的一个数据报未能及时到达终点,而终点组装IP数据报已超时,因而只能丢失该数据报;IP数据报已经到达终点,但终点的缓存没有足够的空间存放此数据报;数据报在转发过程中经过一个局域网的网桥,但网桥在转发该数据报的帧没有足够的差错空间而只好丢弃。
5-42 在图5-29中所示的连接释放过程中,在ESTABLISHED状态下,服务器进程能否先不发送ack=u+1的确认?(因为后面要发送的连接释放报文段中仍有ack=u+1这一信息。)
答: 如果B不再发送数据了,是可以把两个报文段合并成为一个,即只发送FIN+ACK报文段。但如果B还有数据报要发送,而且要发送一段时间,那就不行,因为A迟迟收不到确认,就会以为刚才发送的FIN报文段丢失了,就超时重传这个FIN报文段,浪费网络资源。
5-45 解释为什么突然释放运输连接就可能会丢失用户数据,而使用TCP的连接释放方法就可保证不丢失数据。
答: 当主机1和主机2之间连接建立后,主机1发送了一个TCP数据段并正确抵达主机2,接着主机1发送另一个TCP数据段,这次很不幸,主机2在收到第二个TCP数据段之前发出了释放连接请求,如果就这样突然释放连接,显然主机1发送的第二个TCP报文段会丢失。 而使用TCP的连接释放方法,主机2发出了释放连接的请求,那么即使收到主机1的确认后,只会释放主机2到主机1方向的连接,即主机2不再向主机1发送数据,而仍然可接受主机1发来的数据,所以可保证不丢失数据。
5-46 试用具体例子说明为什么在运输连接建立时要使用三报文握手。说明如不这样做可能会出现什么情况。
答: 3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。
假定B给A发送一个连接请求分组,A收到了这个分组,并发送了确认应答分组。按照两次握手的协定,A认为连接已经成功地建立了,可以开始发送数据分组。可是,B在A的应答分组在传输中被丢失的情况下,将不知道A是否已准备好,不知道A建议什么样的序列号,B甚至怀疑A是否收到自己的连接请求分组,在这种情况下,B认为连接还未建立成功,将忽略A发来的任何数据分组,只等待连接确认应答分组。 而A发出的分组超时后,重复发送同样的分组。这样就形成了死锁。
第六章
6-01 互联网的域名结构是怎样的?它与目前的电话网的号码结构有何异同之处?
答: (1)域名的结构由标号序列组成,各标号之间用点隔开: … . 三级域名 . 二级域名 . 顶级域名 各标号分别代表不同级别的域名。
(2)电话号码分为国家号结构分为(中国 +86)、区号、本机号。
6-02 域名系统的主要功能是什么?域名系统中的本地域名服务器、根域名服务器、顶级域名服务器以及权限域名服务器有何区别?
答: 域名系统的主要功能:将域名解析为主机能识别的IP地址。
因特网上的域名服务器系统也是按照域名的层次来安排的。每一个域名服务器都只对域名体系中的一部分进行管辖。共有三种不同类型的域名服务器。即本地域名服务器、根域名服务器、授权域名服务器。当一个本地域名服务器不能立即回答某个主机的查询时,该本地域名服务器就以DNS客户的身份向某一个根域名服务器查询。若根域名服务器有被查询主机的信息,就发送DNS回答报文给本地域名服务器,然后本地域名服务器再回答发起查询的主机。但当根域名服务器没有被查询的主机的信息时,它一定知道某个保存有被查询的主机名字映射的授权域名服务器的IP地址。通常根域名服务器用来管辖顶级域。根域名服务器并不直接对顶级域下面所属的所有的域名进行转换,但它一定能够找到下面的所有二级域名的域名服务器。每一个主机都必须在授权域名服务器处注册登记。通常,一个主机的授权域名服务器就是它的主机ISP的一个域名服务器。授权域名服务器总是能够将其管辖的主机名转换为该主机的IP地址。
6-03 举例说明域名转换的过程。域名服务器中的高速缓存的作用是什么?
答: (1)把不方便记忆的IP地址转换为方便记忆的域名地址。 (2)作用:可大大减轻根域名服务器的负荷,使因特网上的DNS查询请求和回答报文的数量大为减少。
6-04 设想有一天整个互联网的DNS系统都瘫痪了(这种情况不大会出现),试问还有可能给朋友发送电子邮件吗?
答:不能;
6-05 文件传送协议FTP的主要工作过程是怎样的?为什么说FTP是带外传送控制信息?主进程和从属进程各起什么作用?
答: (1)FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。 FTP的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
主进程的工作步骤: 1、打开熟知端口(端口号为21),使客户进程能够连接上。 2、等待客户进程发出连接请求。 3、启动从属进程来处理客户进程发来的请求。从属进程对客户进程的请求处理完毕后即终止,但从属进程在运行期间根据需要还可能创建其他一些子进程。 4、回到等待状态,继续接受其他客户进程发来的请求。主进程与从属进程的处理是并发地进行。
FTP使用两个TCP连接。 控制连接在整个会话期间一直保持打开,FTP客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。 实际用于传输文件的是”数据连接”。服务器端的控制进程在接收到FTP客户发送来的文件传输请求后就创建”数据传送进程”和”数据连接”,用来连接客户端和服务器端的数据传送进程。 数据传送进程实际完成文件的传送,在传送完毕后关闭”数据传送连接”并结束运行。
6-08 解释以下名词。各英文缩写词的原文是什么? WWW, URL, HTTP, HTML, CGI, 浏览器,超文本,超媒体,超链,页面,活动文档,搜索引擎。
答: WWW:万维网WWW(World Wide Web)并非某种特殊的计算机网络。万维网是一个大规模的、联机式的信息储藏所,英文简称为Web.万维网用链接的方法能非常方便地从因特网上的一个站点访问另一个站点(也就是所谓的”链接到另一个站点”),从而主动地按需获取丰富的信息。
URL:为了使用户清楚地知道能够很方便地找到所需的信息,万维网使用统一资源定位符URL(Uniform Resource Locator)来标志万维网上的各种文档,并使每一个文档在整个因特网的范围内具有唯一的标识符URL.
HTTP:为了实现万维网上各种链接,就要使万维网客户程序与万维网服务器程序之间的交互遵守严格的协议,这就是超文本传送协议HTTP.HTTP是一个应用层协议,它使用TCP连接进行可靠的传送。
CGI:通用网关接口CGI是一种标准,它定义了动态文档应该如何创建,输入数据应如何提供给应用程序,以及输出结果意如何使用。CGI程序的正式名字是CGI脚本。按照计算机科学的一般概念。
浏览器:一个浏览器包括一组客户程序、一组解释程序,以及一个控制程序。
超文本:超文本的基本特征就是可以超链接文档;你可以指向其他位置,该位置可以在当前的文档中、局域网中的其他文档,也可以在因特网上的任何位置的文档中。这些文档组成了一个杂乱的信息网。目标文档通常与其来源有某些关联,并且丰富了来源;来源中的链接元素则将这种关系传递给浏览者。
超媒体:超级媒体的简称,是超文本(hypertext)和多媒体在信息浏览环境下的结合。
超链:超链接可以用于各种效果。超链接可以用在目录和主题列表中。浏览者可以在浏览器屏幕上单击鼠标或在键盘上按下按键,从而选择并自动跳转到文档中自己感兴趣的那个主题,或跳转到世界上某处完全不同的集合中的某个文档。超链接(hypertext),或者按照标准叫法称为锚(anchor),是使用标签标记的,可以用两种方式表示。锚的一种类型是在文档中创建一个热点,当用户激活或选中(通常是使用鼠标)这个热点时,会导致浏览器进行链接。
页面:页面,类似于单篇文章页面,但是和单篇文章不同的是:1.每个页面都可以自定义样式,而单篇文章则共用一个样式。2.页面默认情况一般不允许评论,而单篇文章默认情况允许评论。3.页面会出现在水平导航栏上,不会出现在分类和存档里,而单篇文章会出现在分类和存档里,不会出现在水平导航栏上。
活动文档:即正在处理的文档。在Microsoft Word中键入的文本或插入的图形将出现在活动文档中。活动文档的标题栏是突出显示的。一个基于Windows的、嵌入到浏览器中的非HTML应用程序,提供了从浏览器界面访问这些应用程序的功能的方法。
搜索引擎:搜索引擎指能够自动从互联网上搜集信息,经过整理以后,提供给用户进行查阅的系统。
6-10 假定要从已知的URL获得一个万维网文档。若该万维网服务器的IP地址开始时并不知道。试问:除HTTP外,还需要什么应用层协议和运输层协议?
答: 应用层协议需要的是DNS。 运输层协议需要的是UDP(DNS)使用和TCP(HTTP使用)。
6-12 什么是动态文档?试举出万维网使用动态文档的一些例子。
答: Dynamic document动态文档:与www文档有关的计算机程序,它能生成所需的文档。当浏览器需要动态文档时,服务器就运行该程序并发送输出到浏览器。动态文档程序对每个需求可生成不同的输出。
6-20 试述电子邮件的最主要的组成部件。用户代理UA的作用是什么?没有UA行不行?
答:电子邮件系统的最主要组成部件:用户代理、邮件服务器、以及电子邮件使用的协议。 UA就是用户与电子邮件系统的接口。用户代理使用户能够通过一个很友好的接口来发送和接收邮件。 没有UA不行。因为并非所有的计算机都能运行邮件服务器程序。有些计算机可能没有足够的存储器来运行允许程序在后台运行的操作系统,或是可能没有足够的CPU能力来运行邮件服务器程序。更重要的是,邮件服务器程序必须不间断地运行,每天24小时都必须不间断地连接在因特网上,否则就可能使很多外面发来的邮件丢失。这样看来,让用户的PC机运行邮件服务器程序显然是很不现实的。
6-23 试简述SMTP通信的三个阶段的过程。
答:1. 连接建立:连接是在发送主机的SMTP客户和接收主机的SMTP服务器之间建立的。SMTP不使用中间的邮件服务器。
- 邮件传送。
- 连接释放:邮件发送完毕后,SMTP应释放TCP连接。
6-24 试述邮局协议POP的工作过程。在电子邮件中,为什么需要使用POP和SMTP这两个协议?IMAP与POP有何区别?
答:POP使用客户机服务器的工作方式。在接收邮件的用户的PC机中必须运行POP客户机程序,而在其ISP的邮件服务器中则运行POP服务器程序。POP服务器只有在用户输入鉴别信息(用户名和口令)后才允许对邮箱进行读取。 POP是一个脱机协议,所有对邮件的处理都在用户的PC机上进行;IMAP是一个联机协议,用户可以操纵ISP的邮件服务器的邮箱。
6-25 MIME与SMTP的关系是怎样的?什么是quoted-printable编码和base64编码?
答: MIME全称是通用因特网邮件扩充MIME。它并没有改动或取代SMTP。MIME的意图是继续使用目前的RFC822格式,但增加了邮件主体的结构,并定义了传送非ASCII码的编码规则。也就是说,MIME邮件可以在现有的电子邮件程序和协议下传送。
quoted-printable编码:对于所有可打印的ASCII码,除特殊字符等号外,都不改变。等号和不可打印的ASCII码以及非ASCII码的数据的编码方法是:先将每个字节的二进制代码用两个十六进制数字表示,然后在前面再加上一个等号。
base64编码是先把二进制代码划分为一个24位长的单元,然后把每个24位单元划分为4个6位组。每一个6位组按以下方法替换成ASCII码。6位的二进制代码共有64种不同的值,从1到63。用A表示0,用B表示1,等等。26个大写字母排列完毕后,接下去再排26个小写字母,再后面是10个数字,最后用+表示62,而用/表示63。再用两个连在一起的等号==和一个等号=分别表示最后一组的代码只有8位或16位。回车和换行都忽略,它们可在任何地方插入。
6-31 基于万维网的电子邮件系统有什么特点?在传送邮件时使用什么协议?
答: 特点:不管在什么地方,只要能上网,在打开万维网浏览器后,就可以收发电子邮件。这时,邮件系统中的用户代理就是普通的万维网。
A→网易邮件服务器:HTTP 邮件服务器间:SMTP 新浪邮件服务器→B:HTTP
6-32 DHCP协议用在什么情况下?当一台计算机第一次运行引导程序时,其ROM中有没有该主机的IP地址、子网掩码或某个域名服务器的IP地址?
答: 动态主机配置协议DHCP提供了即插即用连网的机制。 这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与。
[young] 本文档共包含70道题目及其标准答案(3-33与4-25以图片形式展现)