计算机网络课程总复习例题讲解
目录
5.理解CSMA/CD的工作原理,能正确描述CSMA/CD的工作过程,会解决相关的计算问题;
6.了解集线器的工作原理,理解网桥(交换机)的工作机制,能准确描述其数据转发过程,理解MAC地址表的形成过程,能根据目标MAC地址判断数据帧转发到的端口。
7.掌握子网的概念,能根据某应用需求,确定子网划分方案、计算子网掩码、计算子网个数、计算机子网地址、子网广播地址、可用地址范围;能够进行路由汇聚的相关计算。
8.掌握IP数据报格式,理解IP数据报首部中的标识、生存时间、协议的作用,知道首部长度的单位,理解数据包分片原理,会计算段偏移,会计算校验和;
9.掌握ICMP协议的类型和作用,掌握ICMP协议的具体应用实例(ping 和tracert)
10.掌握TCP报文段首部格式,能描述序列号、确认号、窗口大小字段的作用,以及SYN、ACK、FIN标志位的作用和表达方式;会根据一个报文段的序号和数据长度来计算后继报文段的序号以及确认号的值;
12. 掌握TCP拥塞控制中的慢开始、拥塞避免、快重传和快恢复四种算法的工作机制,能看懂对应的示意图。
1.客户和服务器通信方式
(1)客户和服务器是指通信中涉及到的应用程序进程,描述的是服务与被服务的关系,其中客户是服务请求方,服务器是服务提供方。
(2)注意客户机(客户端)、服务器(服务器端)有说法。
(3)计算机上运行的进程是通过端口识别的,通常情况下,客户端使用的是动态端口(大于等于1024),服务器端使用的是熟知端口(小于1024)。
(4)教材253页5-14题:一UDP用户数据报的首部十六进制表示是:06 32 00 45 00 1C E2 17。试求源端口、目的端口、用户数据报的总长度、数据部分长度。这个用户数据报是从客户发送给服务器发送给客户?使用UDP的这个服务器程序是什么? 重要程度:★★★★★
解:源端口1586(十六进制为06 32),目的端口69(十六进制为00 45),UDP用户数据报总长度28(十六进制为00 1C)字节,数据部分长度20字节。此UDP用户数据报是从客户发给服务器(因为目的端口号<1023,是熟知端口),服务器程序是TFTP。
如果将UDP首部十六进制换成:00 44 00 43 01 30 E2 17,结果如何?
00 44=68 00 43=67 DHCP
(5)5—28 主机A向主机B发送TCP报文段,首部中的源端口是m而目的端口是n。当B向A发送回信时,其TCP报文段的首部中源端口和目的端口分别是什么?
解:源端口n 目的端口m
2. 网络带宽、时延、信道利用率的计算问题:
(1)计算发送时延首先得知道传输的数据量和发送速率2个值。其中网络带宽就是发送速率,传输的数据量需要根据实际应用环境来确定。需要将题中给出的要传输的数据再加上从上层向下层封装过程中的各层的头部信息和数据链路层的尾部信息。
(2)往返时延:数据从开始发送算起从一端传输到别一端,再到收到对端传回的确认信息,所经历的总时间。
(3)信道利用率:数据的发送时延除以总时延。
(4)应用举例1:1-19 长度为100字节的应用层数据交给传输层TCP协议传送,再交给网络层IP传送,最后交给数据链路层的以太网传送,试求数据的传输效率。数据的传输效率是指发送的应用层数据除以所发送的总数据(即应用数据加上各种首部和尾部的额外开销)。若应用层数据长度为1000字节,数据的传输效率是多少?
解:(1)长度为100字节的应用层数据交给传输层传送,需加上20字节的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传送,加上首部14字节和尾部4字节。传输的数据总量是100+20+20+18=158字节,而有效数据是100字节,传输效率为:100/(100+20+20+18)=63.3%
(2)1000/(1000+20+20+18)=94.5%
(5)应用举例2:1-28 假定要在网络上传送1.5MB的文件。设分组长度为1KB,往返时间RTT=80ms。传送数据之前还需要有建立TCP连接的时间,这需要2xRTT=160ms。试计算在以下几种情况下接收方收到该文件的最后一个比特所需的时间。
(1)数据发送速率为10Mbit/s,数据分组可以连续发送。说明:这是连续ARQ,发送窗口无限大
(2)数据发送速率为10Mbit/s,但每发送完一个分组后要等待一个RTT时间才能再发送下一个分组。说明:这是停止等待协议
(3)数据发送速率极快,可以不考虑发送数据所需的时间。但规定在每一个RTT往返时间内只能发送20个分组。说明:这是连续ARQ,发送窗口WT=20
(4)数据发送速率极快,可以不考虑发送数据所需的时间。但在第一个RTT往返时间内只能发送一个分组,在第二个RTT内可发送两个分组,在第三个RTT内可发送四个分组(即23-1=22=4个分组)。说明:这是TCP拥塞控制中的慢开始
答:题目的已知条件中的M=220=1048576,K=210=1024。
1KB=1024B=1024*8bit
1MB=1024KB
1kbit=1000bit
1Mbit=1000*1000bit
(1)1.5MB=1.5×1048576B=1.5×1048576×8bit=12582912 bit。
发送这些比特所需时间=12582912/107=1.258s。
最后一个分组的传播时间还需要0.5×RTT=40ms。
总共需要的时间=2×RTT+1.258+0.5×RTT=0.16+1.258+0.04=1.458s。
(2)需要划分的分组数=1.5MB/1KB=1536。
①从发送第一个分组到发送最后一个分组总共需要等待的时间1535×RTT=1535×0.08=122.8s。
②发送全部分组的时间和最给一个分组传播时延是1.458s(第一问的计算结果)
所以总共需要的时间=1.458+122.8=124.258s。
(3)在每一个RTT往返时间内只能发送20个分组。1.5MB 的数据共1536KB,共分为1536个分组,需要76个RTT,76个RTT可以发送76×20=1520个分组,最后剩下16个分组,一次发送完。但最后一次发送的分组到达接收方也需要0.5×RTT。
因此,总共需要的时间=76.5×RTT+2×RTT=6.12+0.16=6.28s。
(4)在两个RTT后就开始传送数据。
经过n个RTT后就发送了1+2+4+..+2n=2n+1-1个分组。
若n=9,那么只发送了210-1=1023个分组。可见9个RTT不够。
若n=10,那么可以发送211-1=2047个分组。可见10个RTT足够了。这样,考虑到建立TCP连接的时间和最后的分组传送到终点需要的时间,现在总共需要的时间=(2+10+0.5)×RTT=12.5×0.08=1s。
(6)将题1-28 进行简化并变换说法后:设分组长度为1KB,单程时延40ms,数据发送速率为10Mbit/s,计算下列情况下的信道利用率:
①使用停止-等待协议
②使用连续ARQ协议,发送窗口WT =20
重要程度:★★★★★
答:1个分组长度为1KB=1024B=1024*8bit,数据的发送速率为10Mbit/s=10*1000*1000bit/s,1个分组的发送时间为(1024*8)/ (10*1000*1000)=0.0008192s=0.8192ms。
①使用停止-等待协议时,传送1个分组需要的总时间为:发送时间+往返RTT=0.8192+2*40,所以信道利用率=0.8192/(0.8192+2*40)=0.010=1%
②使用连续ARQ协议,发送窗口WT =20时,在没有收到确认前可以连续发送20个分组,发送这20个分组所需时间是20*0.8192ms,同时由于采用累积式确认,传送20个分组需要的总时间为:发送20个分组总时间+1个往返RTT=20*0.8192ms+2*40,所以信道利用率=20*0.8192/(20*0.8192+2*40)=0.17=17%
再如:某信道的数据发送速率为2Mb/s,数据往返时间为50ms。假设每个分组的长度都是一样的,均为1000bit,假定忽略误码率、确认帧长、处理时间以及帧首部长度对信道利用率的影响。 重要程度★★★★★
(1)如果信道使用停止-等待协议,信道利用率是多少?
(2)如果信道使用连续自动重传请求ARQ协议,且发送窗口WT = 10,信道利用率是多少?
答:
信道利用率U=TD /(RTT + TA + TD),其中,TD是数据发送时间,TA是确认帧发送时间,RTT是往返时间。根据题意TA忽略,所以求出TD和RTT即可。依据题意,TD=数据帧长/数据率=1000bit/2Mbps=0.5ms,据题意RTT是50 ms。
(1)因为停止等待协议的发送窗口大小为1,所以采用停止等待协议时的信道利用率U= TD /(RTT + TD)=0.5ms/(0.5ms+50ms)=0.99%;
(2)采用连续ARQ协议时,发送窗口为10,即在没有收到确认前可以连续发送10个数据帧,所以采用ARQ协议时的信道利用率U= 10×TD /(RTT +10×TD)=9.09%。
(7)应用举例4:如图所示,A在t=0时刻开始向C发送一个4Mbit的文件;B在t=0.2+e秒(e为无限趋近于0的小正实数)向D发送一个2Mbit的文件。忽略传播延迟和结点处理延迟,如果图中网络采用存储—转发的分组交换方式,分组长度为等长的2kbit,且忽略分组头部开销以及报文的拆装开销,则A将4Mbit的文件交付给C大约需要多长时间?B将2Mbit的文件交付给D大约需要多长时间? 重要程度:★★★★★
答:
因分组长度为等长的2kbit,故4Mbit的文件需要分为2000个分组进行传送;
A发送一个分组的时间是:2000/10000000=0.0002s,故从t=0时刻到t=0.2s,A能够发送1000个分组;
从t=0.2s时刻起与B共享连接路由器的链路,平均各共享到带宽10Mbps,A大约再用时:0.2+2×2000/10000000=0.2004s交付剩余的1000个分组,故A向C交付4Mbit文件大约需要(0.2+0.2004)s=0.4004s;
B向D交付2Mbits文件需要时间大约为:0.2+2×2000/10000000=0.2004s 。
3. 会运用奈奎斯特定律和香农公式进行相关的计算
(1)若某通信链路的带宽为4kHz,采用4个相位,每个相位具有4种振幅的QAM调制技术,则在无噪声情况下该通信链路的最大数据传输速率是多少?奈氏准则与香农定理的区别是什么?但实际上该信道的信噪比为10dB,则该信道的最大数据传输速率是多少? 重要程度:★★★★★
答:
①奈奎斯特公式----无噪声信道信息传输速率公式:C=2*H*log2N(bps)
H为信道的带宽,本题中H=4KHz;N为码元所取得离散值个数,本题中N=16(4个相位,每个相位4种振幅)。
则C=2*H*log2N=2*4kHz*log216=2*4k*4=32kbps;
②教材45-46页 奈氏准则与香农定理的区别是什么
奈氏准则给出了在假定的无噪声理想信道中,为了避免码间串扰,码元传输速率的上限值;而香农定理则是定义了在有噪声的实际信道中信道的极限信息传输速率,它与信道的带宽和信道的信噪比成正比。
③香农公式是考虑信道噪声情况下,信道极限速率的计算公式为:C=H*log2(1+S/N)(bps)
其中,S为信号功率,N为噪声功率,S/N为信噪比;
根据题意,信噪比为10dB,即10=10log10(S/N),即S/N=10
因此,C=4K* log2(11)(bps)=4*3.46Kb/s=13.84Kb/s
(2)一个信道的带宽是10KHz,数字信号的电平取值存在8种可能。
①请问理想状态下该信道的最大数据传输速率是多少?
②若考虑到信道噪声,信噪比为30dB,则该信道的最大数据传输速率是多少?
重要程度★★★★★
答:
①根据奈奎斯特准则,信号在无噪声信道上的传输速率为2Wlog2N,根据题意,信道带宽W为10KHz,信号的可能状态数N为8,则可以求得信号在信道上的传输速率为2*10*log28=60Kb/s。
②香农公式是考虑信道噪声情况下,信道极限速率的计算公式为:
C=H*log2(1+S/N)(bps),其中,S为信号功率,N为噪声功率,S/N为信噪比;
根据题意,信噪比为30dB,即30=10log10(S/N),即S/N=1000
因此,C=10K* log2(1001)(bps)=99.7Kb/s
4. 理解数据封装成帧的过程
例题1:以太网是目前应用最广泛的局域网,数据链路层的以太网标准对于MAC帧的长度进行了限制,请运用MAC帧格式和IP数据报的分片原理求解以下问题:
(1)通过以太网发送ASCII码数据“StayStrong!!!!!”(引号内为待发送的数据),若封装成一个MAC帧,请问该帧的数据字段有效字节是多少?需要填充多少个字节?(5分) 重要程度:★★★★★
(2)一个UDP用户数据报的数据字段为4000字节,在数据链路层要使用以太网来传送,以太网的MTU为1500字节。试问应当划分为几个IP数据报片(固定首部长度)?说明每一个IP数据报片偏移字段的值。 重要程度:★★★★★
答案:
(1)因为MAC帧最小帧长是 64 字节,MAC帧头占18字节,因此数据部分长度不能小于46字节。如果小于则进行字节填充。本题中数据帧的数据字段有效字节长度是15字节(由字符个数决定)(2分),故还需要填充31字节(3分)。
(2)由于UDP数据报数据字段4000字节,再加上头部8字节,则UDP数据报总长度4008字节。
以太网链路层数据帧的数据部分最长1500字节,再减去20字节的IP头部,因此它封装的IP数据报的数据部分有1500-20=1480字节。4008/1480即为3个IP分片。(2分)
3个分片的片偏移字段值分别为:0,185,370(3分)
5.理解CSMA/CD的工作原理,能正确描述CSMA/CD的工作过程,会解决相关的计算问题;
例题1:某局域网采用CSMA/CD协议实现介质访问控制,数据传输率为20Mbit/s,主机甲和主机乙之间的距离为1km,信号传播速度是200000km/s。请回答下列问题,要求说明理由或写出计算过程。
(1)若主机甲和主机乙发送数据时发生冲突,则从开始发送数据时刻起,再到两台主机均检测到冲突时刻为止,最短需经过多长时间?最长经过多长时间(假设主机甲和主机乙发送数据过程中,其他主机不发送数据)?
(2)若网络不存在任何冲突与差错,主机甲总是以标准的最长以太网数据帧(1518字节)向主机乙发送数据,主机乙每成功收到一个数据帧后立即向主机甲发送一个64字节的确认帧,主机甲收到确认帧后方可发送下一个数据帧。此时主机甲的有效数据传输速率是多少(不考虑以太网的前导码)?
(3)假设该局域网使用集线器构建网络,链路带宽为10Mbps,请问在某结点连续第4次冲突后,按二进制指数退避算法,选择r=4的概率是多少?
(4)假设主机甲和乙是该网关上相距最远的主机,也就是该网段的长度是1km,试求能够使该网络正常运行的最小帧长。
答案:
(1)当主机甲和主机乙同时向对方发送数据时,信号在信道中发生冲突后,冲突信号继续向两个方向传播。这种情况下,两台主机均检测到冲突需要经过的时间最短,等于单程的传播时延,其值如下:τ短 = 1km÷200000km/s = 0.005ms;
主机甲(或乙)先发送一个数据帧,当该数据帧即将到达主机乙(或甲)时,主机乙(或甲)也开始发送一个数据帧。这时主机乙(或甲)将立刻检测到冲突,而主机甲(或乙)要等到冲突信号从主机乙(或甲)传播到主机甲(或乙)才能检测到冲突。这种情况下,两台主机均检测到冲突所需要经过的时间最长,等于往返的传播时延,其值如下:τ长 = 2τ短 = 0.01ms
(2)
设a为数据帧的发送时延;
b为数据帧最后一比特的传播时延;
c为确认帧的发送时延;
d为确认帧最后一比特的传播时延
则b与d相等,b+d为主机间信号传播的往返时延
主机甲成功发送一个最长以太网数据帧所耗费的总时长为 a + b + c + d = a + 2b + c
= ((1518 × 8b) ÷ 20Mb/s) + ((1km ÷ 200 000km/s) × 2) + ((64 × 8b) ÷ 20Mb/s) = 0.6428ms;
经过0.6428ms,主机甲发送的有效数据载荷为1500字节,也就是不包括以太网帧的首部18字节(6字节源地址字段 + 6字节目的地址字段 + 2字节类型字段 + 4字节帧检验序列),也不包括以太网的前导码(题目要求)。
综上所述,主机甲的有效数据传输速率为 (1500 × 8b) ÷ 0.6428ms ≈ 18.67Mb/s。
(3)集线器从逻辑上来说,构建的局域网仍然是总线型网络,仍然使用CSMA/CD协议解决端口所连设备共享逻辑总线带来的冲突问题,链路带宽对于解决此问题是干扰因素,没有意义。
“某结点连续第4次冲突后”,意味着第一次传输发生了冲突,又重传了3次依然发生了冲突,下一次将要进行第4次重传;
按照二进制指数退避算法,则在下一次也就是第4次重传时,K=4,站点将在(0,24-1)集合中随机选取一个数r来设置重传推后时间(即r倍的争用期),那么选择r=4的概率是1/16,即0.0625。
(4)对于1km的电缆,单程传播时间为1/200000=5μs,则数据往返时间为10μs;
为了让网络正常运行,最短的发送时间不能少于10μs。
以20Mbit/s的速率发送数据,10μs的时间内可以发送的比特数为10μs×20Mbit/s =200bit。因此,最小帧长为200比特。
6.了解集线器的工作原理,理解网桥(交换机)的工作机制,能准确描述其数据转发过程,理解MAC地址表的形成过程,能根据目标MAC地址判断数据帧转发到的端口。
例题1:某学院下辖三个系,学院局域网的组网方案如图,设备A的三个接口分别和三个系的网络设备B、C、D相连,另外三个接口分别与E-mail服务器、WWW服务器以及一个连接Internet的路由器R相连,如下图所示。
重要程度:★★★★★
(1)若A、B、C和D都是100Mbit/s的集线器,假设所有链路速率都是100Mbit/s,并且图中6台主机中的任何一台都能跟任何一台服务器或主机通信。请计算这6台主机和服务器产生的总吞吐量的最大值。
(2)若A是100Mbit/s的Ethernet交换机,B、C和D都是100Mbit/s的集线器,假设所有链路速率都是100Mbit/s,并且图中6台主机中的任何一台都能跟任何一台服务器或主机通信。请计算这6台主机和服务器产生的总吞吐量的最大值。
(3)若A、B、C和D都是100Mbit/s的Ethernet交换机,假设所有链路速率都是100Mbit/s,并且图中6台主机中的任何一台都能跟任何一台服务器或主机通信。请计算这6台主机和服务器产生的总吞吐量的最大值。
(4)分析集线器、交换机的特点,评价其在网络互联应用中的局限性。
答:
(1)由假设可知整个系统就是一个冲突/碰撞域,所以系统最大吞吐量为:100 Mbit/s。
(2)由假设可知每个系就是一个冲突/碰撞域,系统最大吞吐量=∑每个系的最大吞吐量+∑服务器的吞吐量=3×100 Mbit/s+2×100Mbis=500 Mbit/s。
(3)由于交换机可以隔离接口的广播通信量,所以由假设可知系统最大吞吐量=∑每台主机的最大吞吐量+∑服务器的吞吐量=6×100 Mbit/s+2×100 Mbit/s=800 Mbit/s
(4)集线器所有的端口工作在同一个冲突域和广播域内,交换机每一个端口是一个独立的冲突域,所有的端口处于同一个广播域,因此,集线器的局限性是不会增加网络的吞吐量,而交换机的局限性是无法隔离广播包。
例2:某公司需要建设一个企业网络,如下图所示,要求:
(1)销售部通过设备1接入网络,实现全双工数据转发;各部门在不同的网段中,通过设备2交互数据;所有部门通过设备3访问Internet;
(2)由于距离较近(小于100米),主机通过线缆1接入网络。由于各部门与设备2在不同的建筑物中,距离较远,所以使用线缆2互连各设备;
(3)服务器群为企业提供典型的网络应用。
请回答以下问题:
(1)从集线器、交换机、路由器和防火墙四种设备中,为设备1-3选择相应的设备,并说明各设备的基本功能;
(2)写出线缆1、2应使用的线缆种类;
(3)请列举至少五种服务器群中配置的典型应用层协议,并分别说明其作用。
重要程度:★★★★★
答:
(1)设备1选择交换机。在数据链路层通过帧的目的MAC地址转发帧,实现全双工、高速的数据转发。为企业网用户(PC)提供接入途径。
设备2选择路由器或具有路由功能的三层交换机。基本功能包括路径选择和数据转发,互连企业网中各子网。
设备3选择防火墙或路由器。基本功能是数据过滤,根据控制策略阻止或允许进入防火墙的数据,提供基本的网络安全保障。
(2)线缆1选择双绞线或直通线;
线缆2选择光纤或单模光纤或多模光纤;
(3)HTTP、FTP、TFTP、DNS、SMTP、SNMP、Telnet、IMAP、POP3及其他应用层协议。
HTTP:超文本传送协议,负责浏览器与Web服务器间的数据传送。
FTP:文件传送协议,使用TCP协议,提供交互式文件传输,允许用户指明文件类型和格式,并允许文件具有存取权限。
TFTP:简单文件传送协议,使用UDP协议进行简单文件传输,TFTP没有庞大的命令集,没有列目录的功能,也不能对用户进行身份鉴别。
DNS:域名系统,负责域名与IP地址转换。
SMTP:简单邮件传送协议
SNMP:简单网络管理协议;
Telnet:远程终端协议;
IMAP:网际报文存取协议邮件读取协议之一。
POP3:邮局协议,邮件读取协议之一。
例3:某网络拓扑如下图所示:
请回答下列问题:
(1)请从以太网交换机和路由器两类网络互联设备中为设备1、设备2和设备3选择合适类型的网络设备。
(2)设备1、设备2和设备3中,哪几个设备的接口需要配置IP地址?请为对应的接口配置正确的IP地址。
(3)为确保主机PC1~PC4能够访问Internet,R需要提供什么服务?
(4)若主机PC3发送一个目的地址为172.16.10.127的IP数据报,网络中哪几个主机会接收到该数据报?
重要程度:★★★★★
答:
(1)设备1是路由器,设备2和3是以太网交换机。
(2)设备1是路由器,接口1、2和3的IP地址分别是172.16.10.254/30、172.16.10.1/26、172.16.10.65/26。设备2和3的接口不需要配置IP地址。
(3)主机PC1~PC4的IP地址都是私有地址,要访问Internet需要路由器具有网络地址转换NAT功能,也就是将来自主机PC1~PC4的IP数据报首部中的源IP地址修改为路由器R的连接Internet的接口的公有IP地址200.5.3.7,然后将其转发到Internet。
(4)题目给定的IP数据报的目的IP地址是主机PC3所在子网的广播地址,因此主机PC3所在的网络中的设备都可以收到这个数据报,具体来说,主机PC4会接收到数据报。
例4:网络A和网络B通过Router1、Router2两台路由器实现互联,中间为网络C,网络管理员在该网络中启用静态路由实现互通。网络拓扑如下图所示,各设备所连接的网络接口、接口MAC地址(分别用代号M1,M2,M3……表示)及IP地址分配如表4所示。 重要程度:★★★★★
(4)分析交换机和路由器的特点与应用场景。
(5)PC1与PC2通信时,在封装IP分组前,PC1要判断与PC2是否在同一个网络中,这个判断是如何完成的?若PC1的ARP表为空,则该主机发出的第一个以太网帧的目的MAC地址是什么?发往PC2的IP分组在从PC1发出时,以太网帧的目的MAC地址是什么?
答:
(4)交换机是数据链路层设备,它能够根据帧的目的地址与自己的MAC地址表进行比较,然后将帧转发至合适的接口,交换机主要应用在局域网中主机之间的互联;路由器是网络层设备,它的主要功能是根据数据报的目的IP地址与自己的路由表进行比较,然后将数据报转发至合适的端口,路由器主要应用于不同网络之间的互联。
(5)PC1与PC2通信时,在封装IP分组前,将PC2的IP地址192.168.2.11与自己的子网掩码255.255.255.0做与运算,然后得到网络地址192.168.2.0,因此可以判断出PC2与PC1不在同一个网络中;
若PC1的ARP表为空,则该主机发出的第一个以太网帧是ARP请求,它将以广播方式发送,因此目的MAC地址是FF-FF-FF-FF-FF-FF;
因为PC2和PC1不在同一个网络中,因此发往PC2的IP分组在从PC1发出后,将首先交给PC1的网关也就是Router1的Fa0/0接口,因此目的MAC地址是M3。
7.掌握子网的概念,能根据某应用需求,确定子网划分方案、计算子网掩码、计算子网个数、计算机子网地址、子网广播地址、可用地址范围;能够进行路由汇聚的相关计算。
例题1:某园区网拓扑结构如图所示,请回答下列问题。
(1)该园区网使用192.168.16.0/25划分四个子网,每个子网主机数量均不超过25台,请写出各子网的网络地址及子网掩码。
(2)如果该园区网络使用上述地址,那么路由器应该具有什么功能?这时,内网经由该路由器转发至Internet的数据包,哪些字段会被修改?
(3)为了保证外网能够访问园区网络内的服务器,那么在路由器上应该对服务器的地址进行什么样的处理?
(4)采用什么设备能够对园区网络提供如下保护措施:数据包进入园区网络时将被进行过滤检测,并确定此包是否威胁园区网络安全;如果检测到一个恶意的数据包时,系统不但发出警报,还将采取相应措施(如丢弃含有攻击性的数据包或阻断连接、阻断攻击等)?
(5)上述设备应该部署在位置1、位置2还是位置3?
答:
(1)由题意可知,该园区网需要划分四个子网,每个子网主机数量均不超过25台,因此划分后的每个子网中主机位数不能少于5位,而该园区网已分配到的地址块192.168.16.0/25中,网络号部分为25位,故从原剩余7位主机号中拿出2位划分4个子网,即划分子网后网络号均为27位,各子网的网络地址及子网掩码分别为:
192.168.16.0 255.255.255.224
192.168.16.32 255.255.255.224
192.168.16.64 255.255.255.224
192.168.16.96 255.255.255.224
评分标准:每写出一个子网的网络地址和子网掩码给2分,共8分。
(2)由于192.168.16.0/25是只能在园区网内部使用的专用地址,因此应在路由器上配置NAT功能,将专用地址转换成可以在Internet上使用的公用IP地址(2分)内网经由该路由器转发至Internet的数据包,源IP字段会被修改,从私有地址改为NAT路由器上连接Internet接口的公有IP地址,TTL字段会减1,校验和字段会被重新计算。
(3)当外网访问园区网内部的服务器时,NAT路由器不知道该把请求送给内网的哪一台主机,因此要在路由器上对服务器的地址进行一对一静态地址转换处理(1分)
(4)防火墙(2分)
(5)放置在位置1或位置2均可(2分)
例题2:如下图所示,某中小型企业包含4个部门,每个部门不超过60台计算机。该企业申请到的地址块为211.69.66.0/24,为了更好地管理公司及部门的网络,避免部门之间的广播流量,各个部门网络通过1台三层交换机实现互联互通。
(1)请给出IP地址划分方案,并写出每个部门对应的子网地址、子网掩码。(10分)
(2)当三层交换机收到一个目的IP地址为211.69.66.100的数据报时,是如何进行转发的?(5分)
正确答案:
(1)确定借位数:公司有4个部门,因此至少要借2位,而每各机房主机数量不超过60台,剩余6位,去掉子网地址和广播地址刚好是62个IP,因此确定从主机号借2位做子网号;子网掩码为:255.255.255.192;(2分)
部门1网络地址:211.69.66.0;(2分)
部门2网络地址:211.69.66.64;(2分)
部门3网络地址:211.69.66.128;(2分)
部门4网络地址:211.69.66.192;(2分)
(部门的网络地址可以任意指派)
(2)用目的地址211.69.66.100和子网掩码255.255.255.192做逻辑与运算,得到网络地址211.69.66.64;(3分)
然后用该网络地址和路由表中的目的网络地址逐个比较是否相同,然后找到相应转发接口。(2分)
例3:假设Internet的两个自治系统构成的网络如下图所示。自制系统AS1由路由器R1连接两个子网构成;自制系统AS2由路由器R2、R3互联并连接三个子网构成。各子网地址、R2的接口名,R1与R3的部分接口IP地址如下图所示。
请回答下列问题:
(1)假设路由表包含三列内容:目的网络地址、下一跳地址、本路由器的出接口。请利用路由聚合技术,给出R2的路由表,要求包括到达上图中所有子网的路由,且路由表中的路由项尽可能少。
(2)若R2收到一个目的IP地址为194.17.20.200的IP分组,R2会通过哪个接口转发该IP分组?
(3)R1与R2之间利用哪个路由选择协议交换路由信息?该路由协议的报文被封装到哪个协议的分组中进行传输?
重要程度:★★★★★
答:
(1)
路由器R2的路由表 | ||
目的网络地址 | 下一跳地址 | 本路由器的出接口 |
211.69.11.0/24 | 直连网络,无下一跳 | E1 |
211.69.13.0/24 | 直连网络,无下一跳 | S0 |
130.16.15.0/24 | 130.16.16.1 | S1 |
211.69.12.0/23 | 211.69.13.2 | S0 |
(2)R2收到目的IP地址为211.69.11.200的IP分组时,查找路由表有1条匹配的路由记录, R2通过接口E1转发该分组。
(3)R1和R2分属于两个不同的自治系统,自治系统之间典型的协议为边界网关协议BGP,目前使用最多的版本是BGP-4,其报文封装在TCP报文段中。
8.掌握IP数据报格式,理解IP数据报首部中的标识、生存时间、协议的作用,知道首部长度的单位,理解数据包分片原理,会计算段偏移,会计算校验和;
例题:路由器是目前网络中最常用的网络互联设备,下图为某网络的拓扑结构,请阅读和分析图中信息,回答下列问题。
(1)用户主机需要访问互联网,在配置IP地址时,其正确的子网掩码和默认网关分别是多少?(4分)
(2)当路由器R向互联网转发一个由主机192.168.1.5发送的总长度为500B、DF=1的IP分组时,该IP分组首部的哪些字段会被修改?(6分)
(3)若主机192.168.1.10向互联网发送一个标识符为6789、总长度为1500B、DF=0的IP分组时,路由器需要将该IP分组分为几片(每片尽可能封装为最大片,假定IP分组使用固定长度首部)?请写出每个分片的片偏移的取值。(5分)
答:
(1)子网掩码:255.255.255.240,默认网关:192.168.1.1。(4分)
(2)该IP分组首部的源IP地址、TTL和Checksum字段会被修改;源IP地址192.168.1.5会被替换为130.11.22.3,TTL减1,Checksum会重新计算。(6分)
(3) (512-20)/8×8」=488;n=「(1500-20)/488=4 因为 (1500-20)= 3×(512-20)+4 故初步判断可以分为4片; 又因(512-20) =61×8+4,故每片最大61×8=488字节, (1500-20)=3×488+16 故路由器需要将该IP分组分为4片。(1分)
第1片:offset=0;(1分)
第2片:offset=61;(1分)
第3片:offset=122;(1分)
第4片:offset=183。(1分)
9.掌握ICMP协议的类型和作用,掌握ICMP协议的具体应用实例(ping 和tracert)
下图是使用tracert命令跟踪路由的输出结果,仔细阅读下图,回答下面问题。
(1)tracert命令的功能是什么,使用了什么协议?
(2)执行该命令的主机到www.sohu.com需要途径多少个路由器?
(3)主机www.sohu.com的IP地址是什么?执行该命令的主机的网关IP地址是什么?
重要程度:★★★★★
正确答案:
(1)tracert命令是路由跟踪实用程序,用来跟踪分组从源点到指定终点的路径,它将分组到达目的主机途经的所有路由器的IP地址一一列出;使用ICMP协议。
(2)执行该命令的主机到www.sohu.com需要途径8个路由器。
(3)www.sohu.com的IP地址是220.181.90.8 ,执行该命令的主机的网关IP地址是192.168.0.1。
10.掌握TCP报文段首部格式,能描述序列号、确认号、窗口大小字段的作用,以及SYN、ACK、FIN标志位的作用和表达方式;会根据一个报文段的序号和数据长度来计算后继报文段的序号以及确认号的值;
例题1:一个TCP首部的数据信息(以十六进制表示)为:0D 28 00 15 50 5F A9 06 00 00 00 00 70 02 40 00 C0 29 00 00,TCP首部的格式如下图所示,请回答:
(1)源端口号和目的端口号各是多少?
(2)发送的序列号是多少?确认号是多少?
(3)TCP首部的长度是多少?
(4)这是一个使用什么协议的TCP连接?该TCP连接的状态是什么?
答:
(1)源端口号:0D 28,即十进制数3368,目的端口号:00 15,即十进制数21
(2)发送的序列号是:50 5F A9 06,即TCP报文段的序号SEQ=1348446470,确认号是 00 00 00 00,即0
(3)TCP首部的长度是:7*4=28字节
(4)因为目的端口号是21,所以这是一个使用FTP协议的TCP连接;
02:00000010
因为只有SYN=1而ACK=0,因此该TCP连接是一个建立请求的报文段,即三次握手中的第一个报文。
例题2:依据TCP协议的工作原理,分析回答以下问题:
①主机A向主机B连续发送了两个TCP报文段,其序号分别为90和320。
第一个报文段的数据部分有多少个字节,主机B收到第一个报文段后发回的确认中的确认号应当是多少?
②TCP连接使用1200字节的窗口值,而上一次的确认号是24501,现收到了一个报文段,确认号是25501,窗口字段变为1300字节,则收到该报文段前后发送方的发送窗口(即允许发送的序号)具体是什么?
重要程度:★★★★★
答:
①第一个报文段的序号为90,第二个报文段的序号为320,由于TCP报文段传输的数据的序号连续的,所以第一个报文段数据部分的长度是320-90=230个字节;主机B收到第一个报文段后发回的确认中的确认号是期望收到的下一个报文段的序号,即第二个报文段的序号320。
②收到确认号是24501报文段后,未收到确认号是25501该报文段前,TCP窗口大小为1200字节,发送窗口内允许发送的字节序号是24501至24501+1200-1,即24501-25700;收到确认号是25501该报文段后,窗口字段变为1300字节,发送窗口内允许发送的字节序号是是25501至25501+1300-1即25501-26800。
11.能准确描述TCP可靠传输的实现技术,理解确认重传机制
例题:可靠传输是TCP协议的重要特性,请使用TCP协议的相关原理求解以下数据传输问题:
设信道的数据发送速率为4kb/s,发送一帧数据所需的时间是信道单向传播时延的3倍。通信采用停等协议,开始发送一帧数据至接收到确认帧所需时间为100ms。请求出数据帧的长度(帧的控制信息、确认帧长及帧处理时间忽略不计)。
答: 设信道单向传播时延为X,则发送一帧数据所需时间为3X,根据题意可知确认帧长忽略不计,因此开始发送一帧数据至接收到确认帧所需时间为X+3X+X=100ms,故X=20ms
因此,数据帧的长度=4kb/s×60ms =4×1000bit/s×60/1000s= 240bits
12. 掌握TCP拥塞控制中的慢开始、拥塞避免、快重传和快恢复四种算法的工作机制,能看懂对应的示意图。
例题1:拥塞控制是TCP协议的重要特性,请使用TCP协议的相关原理求解以下数据传输问题:
假定某个时刻TCP的拥塞窗口为18KB,并且发生了超时事件。如果接下来4个轮次的传输都是成功的,那么4轮次后该拥塞窗口将是多大?假定最大报文段长度是2KB。
答:当发生超时事件时,门限值将设为当前拥塞窗口的一半,即9KB,然后将拥塞窗口设为一个最大报文段长,即2KB;(3分)
接着开始执行慢开始算法,发送1个报文段,然后在第2、3、4轮次分别发送2个、4个和8个报文段,拥塞窗口应该分别为4KB、8KB、9KB;(4分)
但是由于门限值设为9KB,因此在4轮次后,拥塞窗口改为9KB,然后开始执行拥塞避免算法。(3分)
例题2:根据下图回答问题:
①指明TCP工作在慢开始阶段的时间间隔。
②在第13个传输轮次和第22个传输轮次之后,报文段的丢失是根据3个重复确认还是根据超时检测出来的?
③在哪个传输轮次发送出第30个报文段?
④TCP发送窗口同时涉及流量控制和拥塞控制机制,请从其局限性角度分析二者的区别,以及发送方发送窗口的取值原则。
重要程度:★★★★★
答:
①TCP工作在慢开始阶段的时间间隔分别是[1,5]和[14,18]。
②在第13个传输轮次之后,通过超时检测到分组丢失;在第22个传输轮次之后,通过三个重复确认识别出分组丢失。
③第30个报文段在第5个传输轮次中被发送。
④流量控制考虑的是接收方的接收能力,通过接收窗口值设定发送方的发送窗口;而拥塞控制是从整个网络能够承受的负荷考虑的,通过拥塞窗口进行控制;两者配合使用才能更好的控制发送方的发送速度,避免过载造成的数据丢失,发送窗口应取接收窗口与拥塞窗口中较小的值。
13.掌握HTTP协议的作用和工作过程;能描述出当用户在浏览器中输入某一URL地址后,数据传输的过程和用到的所有协议;
例1 :在浏览器中输入https://www.zhaopin.com并按回车,直到智联招聘的网站首页显示在浏览器的过程中,按照TCP/IP参考模型,问:
(1)从应用层到网络接口层都用到了哪些协议?请简要说明协议的名称和作用。
(2)客户端的浏览器需要经过哪些步骤才能将该主页显示在客户端的屏幕上,简要描述从输入网址到页面显示的整个流程。
重要程度:★★★★★
答:
(1)从应用层到网络接口层用到的协议:
①应用层用到的协议主要有HTTP和DNS协议,HTTP规定了WEB服务器和浏览器之间传输WEB网页时需要遵循的规则和格式,DNS协议用于域名解析;
②传输层用到的协议主要有TCP和UDP协议,TCP协议为HTTP提供可靠的数据传输,而DNS一般使用传输层的UDP协议;
③网络层用到的主要协议有IP、ARP协议,IP协议用于数据包的传输,ARP协议用于将本机的默认网关IP地址映射为物理MAC地址。
④网络接口层:不同的局域网将会使用不同的标准,目前常用的以太网标准是802.3,无线局域网标准是802.11。
(2)过程描述如下:
①浏览器分析超链接指向页面的URL,然后向域名服务器发出对域名www.zhaopin.com的解析请求,查询出该Web服务器对应的IP地址;
②浏览器与www.zhaopin.com的Web服务器利用TCP协议建立连接;
③浏览器利用HTTP的GET方法向www.zhaopin.com的Web服务器发送获取首页资源的请求;
④Web服务器在接收到浏览器的HTTP请求后,将构建所请求Web页面的各种信息,并将信息(由HTML描述)通过Internet传送给客户端的浏览器;
⑤浏览器对收到的信息进行解释,然后将Web页面显示在屏幕上。
例2 :假设当浏览器发送一个HTTP GET报文时,通过浏览器捕获到下列ASCII字符串(这是HTTP GET报文的实际内容,回车和换行符已经将文本按照换行显示,符号本身没有显示,最左边一列数字是HTTP报文内容按行输出的行编号)。根据下图,回答下列问题。
(1)由浏览器请求的文档的URL是什么?(2分)
(2)该浏览器运行的是HTTP的何种版本?(2分)
(3)该浏览器请求的是一条非持续连接还是一条持续连接?(2分)
(4)发起该请求报文的浏览器的类型是什么?
在一个HTTP请求报文中,为什么需要浏览器类型?(4分)
答:(1)浏览器请求的文档的URL是:http://www.hit.edu.cn/xxgk/xxji.htm。
(2)浏览器正在运行HTTP/-1.1版本。
(3)浏览器请求的是一个持续连接。
(4)发起该报文的浏览器的类型是Mozilla/5.0;在一个HTTP请求报文中,服务器需要浏览器类型信息,以将同一对象的不同版本发送到不同类型的浏览器。
14.掌握DHCP协议的作用和工作原理,能描述DHCP协议的工作过程
某网络拓扑如下图所示,其中路由器内网接口、DHCP服务器、DNS服务器与主机1均采用静态IP地址配置,相关地址信息见图中标注;主机2~主机N通过DHCP服务器动态获取IP地址等配置信息。
请回答以下问题:
(1)DHCP服务器可为主机2~主机N动态分配IP地址的最大范围是什么?主机2使用DHCP协议获取IP地址的过程中,发送的封装DHCP Discover报文的IP分组的源IP地址和目的IP地址分别是什么?(5分)
(2)若主机2的ARP表为空,则该主机访问Internet时,发出的第一个以太网帧的目的MAC地址是什么?封装主机2发往Internet的IP分组的以太网帧的目的MAC地址是什么?(5分)
(3)若主机1的子网掩码和默认网关分别配置为255.255.255.0和100.110.15.2,则该主机是否能访问DNS服务器?是否能访问Internet?请说明理由。(5分)
(4)若主机1的ARP表和以太网交换机的MAC地址表均为空,主机1在此刻利用浏览器输入域名请求访问Internet中的某台Web服务器,直到该web页面在浏览器显示出来,假设期间网络未发生任何与此次Web访问无关的网络通信,问:
①主机2至少会接收到几个与此次Web访问相关的帧?接收到的是什么帧?帧的目的MAC地址是什么?
②写出此时以太网交换机的MAC地址表的内容(MAC地址表只有MAC地址和端口两项内容)
重要程度:★★★★★
正确答案:
(1)DHCP服务器可为主机2~主机N动态分配IP地址的最大范围是100.110.15.5~100.110.15.254;主机2发送的封装DHCP Discover报文的IP分组的源IP地址和目的IP地址分别是0.0.0.0和255.255.255.255。(5分)
(2)主机2发出的第一个以太网帧是ARP请求帧,其的目的MAC地址是FF-FF-FF-FF-FF-FF;封装主机2发往Internet的IP分组的以太网帧的目的MAC地址是00-r1-r1-r1-r1-r1。
(3)主机1能访问DNS服务器,但不能访问Internet。由于主机1的子网掩码配置正确,所以能访问同一个子网内的DNS服务器,但是默认网关配置错误,应该配置为路由器位于内网的接口地址100.110.15.1,所以无法访问Internet。
(4)
①主机2至少接收到2个与此次Web访问相关的帧,接收到的均是封装ARP查询请求报文的以太网广播帧,这些帧的目的MAC地址均是:FF-FF-FF-FF-FF-FF。
②以太网交换机的MAC地址表如下:
MAC地址 | 端口 |
00-r1-r1-r1-r1-r1 | 4 |
00-a1-a1-a1-a1-a1 | 4 |
00-h1-h1-h1-h1-h1 | 3 |