计算机网络期末复习简答题、综合题、实验题答案整理汇总详细(持续更新中)

文章目录

简答题

  • 简答题只背标黄的部分!!综合题和实验题全看!!!

一、第一章:计算机网络概述

1. TCP/IP 与 OSI 相结合的五层体系结构将计算机网络划分成哪几个层次?各层的主要功能是什么

  1. 第一层,物理层:物理层的任务就是透明地传送比特流。(注意:传递信息的物理媒体,如双绞线、同轴电缆、光缆等,是在物理层的下面,当做第 0 层。) 物理层还要确定连接电缆插头的定义及连接法。
  2. 第二层,数据链路层:数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧( frame)为单位的数据。每一帧包括数据和必要的控制信息。
  3. 第三层,网络层:网络层的任务就是要选择合适的路由,使发送站的运输层所传下来的分组能够正确无误地按照地址找到目的站,并交付给目的站的运输层。
  4. 第四层,运输层:运输层的任务是向上一层的进行通信的两个进程之间提供一个可靠的端到端服务,使它们看不见运输层以下的数据通信的细节。
  5. 第五层,应用层:应用层直接为用户的应用进程提供服务。

二、第二章:物理层

1. 交换机、路由器、网卡、网桥、集线器、中继器分别工作在哪一层

  1. 路由器工作在网络层;
  2. 交换机、网桥工作在数据链路层;
  3. 中继器、集线器工作在物理层;
  4. 网卡属于OSI的物理层与链路层,它工作在物理层和数据链路层的MAC子层。

2. 简述交换机、集线器和路由器的区别,交换机和集线器的联系。

  1. 集线器
    (1) 集线器工作在物理层
    (2) 共享带宽
    (3) 半双工
    (4) 广播发送
  2. 交换机
    (1)以太网交换机工作在数据链路层
    (2)连接局域网中的主机
    (3)相互通信的主机独占带宽
    (4)依据MAC地址转发,有目的发送
  3. 路由器
    (1)路由器工作在网络层
    (2)是一个多输入输出端口的专用计算机
    (3)连接不同的网络
    (4)共享带宽
    (5)依据IP地址转发,有目的发送

三、数据链路层

1. 以太网交换机、虚拟局域网VLAN的优点

  1. 以太网交换机优点有:
    (1)以太网交换机的每个端口都直接与主机相连,并且一般都工作在全双工方式。
    (2)交换机能同时连通许多对的端口,使每一对相互通信的主机都能像独占通信媒体那样,进行无冲突地传输数据。
    (3)用户独占传输媒体的带宽,若一个接口到主机的带宽是10Mbit每秒,那么有10个接口的交换机的总容量是100Mbit每秒。这是交换机的最大优点。
  2. 虚拟局域网VLAN的主要优点有:
    (1)限制广播域。广播域被限制在一个VLAN内,提高了网络处理能力。
    (2)增强局域网的安全性。VLAN的优势在于VLAN内部的广播和单播流量不会被转发到其它VLAN中,从而有助于控制网络流量、减少设备投资、简化网络管理、提高网络安全性。
    (3)灵活构建虚拟工作组。用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。

2. 简述CSMA/CD 协议

  1. 载波监听多址接入/碰撞检测;
  2. 适配器从网络层得到一个数据报准备一个以太网帧,并把该帧放到适配器中;
  3. 载波监听,当发现信道空闲时【信道空闲的判断标准是96bit’时间内未检测到能量信号】发送数据,若适配器传输了整个帧而没有收到其它适配器的能量信号,则完成了该帧的传输;
  4. 碰撞检测,当检测到信道忙时,不发送,继续监听;
  5. 碰撞退避,在数据发送过程中,若发生冲突,则停止传输,并发送一个48bit的阻塞信号。接着发送方将随机选择一个数字;k,n=max(n,10),n是碰撞次数,回退k*512s后继续监听信道是否空闲。

3. 简述CSMA/CA协议;为什么WIFI使用它;它是如何工作的;并比较它和CSMA/CD

  1. 载波监听多址接入/碰撞避免; 对于WiFi来说进行碰撞检测是不现实的,原因是:碰撞检测要求站点具有同时接收和发送的能力,而在802.11适配器上,接收信号的强度远远小于发射信号的强度;更重要的一点是,即使适配器可以同时发送和监听信号,适配器也会因为隐藏终端和信号衰减问题而无法检测到所有的碰撞。
  2. CSMA/CA工作原理:
    (1)若监听到某信道空闲,则在等待一个DIFS的短时间后发布该帧;
    (2)否则,随机选择一个回退值,并且在侦听到信道空闲时衰减该值,信道忙碌时,该值不变;
    (3)该值衰减为0时,发送该数据帧并等待ACK;
    (4)如果接收到了ACK帧,则被正确发送,如果没有接收到ACK,则进入上述回退阶段;
  3. 补充
    (1)CSMA/CA:载波监听多址接入/碰撞避免;
    (2)CSMA/CA协议的特点是:发送数据时先广播告知其他结点,让其他结点在某段时间内不要发送数据,以免发生碰撞;
    (3)CSMA/CD:载波监听多址接入/碰撞检测;
    (4)CSMA/CD协议的特点是:先听再发,边听边发,冲突停发,随机重发;

4. 简述 ICMP、ARP、IP协议,并说明它们和MAC地址之间的关系。

  1. IP协议:实现网络互联;使得参与互连的性能各异的网络让用户看起来是一个统一的网络;
  2. ARP协议:功能是将ip地址解析为对应的mac地址;
  3. ICMP协议:(internetcontrolmessageprotocol,网络控制消息协议),它的功能是报告无法传送的数据包的错误,并帮助对这些错误进行疑难解答;
  4. IP地址便于在网络中确认子网,MAC地址便于在子网中确定主机。MAC地址是数据链路层和物理层使用的地址,IP地址是网络层和以上各层使用的地址,是一种逻辑地址。IP地址放在IP数据报的首部,而MAC地址放在MAC帧的首部。当IP数据报放入数据链路层的MAC帧中的数据载荷部分后,整个IP数据报就成为MAC帧的数据,因而在数据链路层看不见数据报的IP地址;
  5. 当一台网络设备有数据要发送给另一台网络设备时,前提是必须要知道对方的网络层地址(即IP地址)。IP地址由网络层来提供,但是仅有IP地址是不够的,IP数据报必须封装成帧后才能通过数据链路层进行发送。而数据帧必须要包含目的MAC地址,因此发送端还必须获取到目的主机的MAC地址。通过已知的目的IP地址获取未知的MAC地址的这个过程是由ARP(Address Resolution Protocol)协议来实现的;
  6. 举例ARP解析:
    简述主机1(IP地址为192.168.25.1/24,MAC地址为E1)向主机2(IP地址为192.168.25.2/24,MAC地址为E2)发送数据时ARP协议的工作过程(主机1和主机2在同一个子网内)。
    答:
    (1)主机1给主机2发送IP包是首先查找自己的ARP表。如果没有主机2的MAC地址。就展示缓存该数据包;
    (2)然后以广播的方式发送一个包含ARP请求;
    (3)当主机2接受到ARP请求后会查看包中目标IP是否属于自己。如果属于。就发送一个源的地址是主机2 的MAC地址数据包给主机1;
    (4)主机1收到包后将MAC地址加入到自己ARP表中;
    (5)若再次向主机2发送数据的话,只需要查找主机1中的ARP缓存中的数据即可。

四、网络层

1. 简述内部网关协议RIP

  1. 只能用于不超过15个路由器的小型网络;
  2. 仅和相邻路由器交换信息;
  3. 路由器交换的所有信息是本路由器知道的全部信息;
  4. 按固定的时间间隔交换路由信息;
  5. 路由选择协议RIP( Routing Information Protocol)是基于距离矢量算法的协议;
    (1)使用跳数衡量到达目的网络的距离;
    (2)RIP 认为一个好的路由就是它通过的路由器的数目少,即“距离短”;
    (3)RIP 允许一条路径最多只能包含 15 个路由器;
    (4)RIP协议的基本思想:
    ① 仅和相邻路由器交换信息;
    ② 路由器交换的内容是自己的路由表;
    ③ 周期性更新:30s。

2. 简述外部网关协议BGP

  1. 目前互联网中唯一实际运行的自治域间的路由协议;
  2. BGP功能:
    (1)eBGP:从相邻的AS获得网络可达信息;
    (2)iBGP: 将网络可达信息传播给AS内的路由器;
    (3)基于网络可达信息和策略决定到其他网络的“最优”路由;
  3. BGP会话: 两个BGP路由器通过TCP连接交换BGP报文;
  4. 通告到不同网络前缀的路径,即路径向量协议。

3. 简述RIP, OSPF路由选择协议的主要特点。

  1. RIP协议采用距离向量算法,其特点是:
    (1) 仅和相邻路由器交换信息。如果两个路由器之间的通信不需要经过另一个路由器,那么这两个路由器就是相邻的。RIP协议规定,不相邻的路由器不交换信息。
    (2) 路由器交换的信息是当前本路由器所知道的全部信息,即自己的路由表。也就是说,交换的信息是:“我到本自治系统中所有网络的(最短)距离,以及到每个网络应经过的下一跳路由器”。
    (3) 按固定的时间间隔交换路由信息,例如,每隔30秒。然后路由器根据收到的路由信息更新路由表。当网络拓扑发生变化时,路由器也及时向相邻路由器通告拓扑变化后的路由信息。
  2. OSPF协议采用链路状态算法,其特点是:
    (1)向本自治系统中所有路由器发送信息。这里使用的方法是洪泛法(flooding),这就是路由器通过所有输出端口向所有相邻的路由器发送信息。而每一个相邻路由器又再将此信息发往其所有的相邻路由器(但不再发送给刚刚发来信息的那个路由器)。这样,最终整个区域中所有的路由器都得到了这个信息的一个副本。
    (2)发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。所谓 “链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。OSPF将这个“度量”用来表示费用、距离、时延、带宽,等等。这些都由网络管理人员来决定,因此较为灵活。为了方便就称这个度量为“代价”。
    (3)只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送此信息。而不像RIP那样,不管网络拓扑有无发生变化,路由器之间都要定期交换路由表的信息。

五、传输层

1. 简述TCP协议在数据传输过程中收发双方是如何保证数据包的可靠性的

  1. 发送方必须把已发送的数据包保留在缓冲区;
  2. 并为每个已发送的数据包启动一个超时定时器;
  3. 如在定时器超时之前收到了对方发来的应答信息(可能是对本包的应答,也可以是对本包后续包的应答),则释放该数据包占用的缓冲区;
  4. 否则,重传该数据包,直到收到应答或重传次数超过规定的最大次数为止;
  5. 接收方收到数据包后,先进行CRC校验,如果正确则把数据交给上层协议,然后给发送方发送一个累计应答包,表明该数据已收到,如果接收方正好也有数据要发给发送方,应答包也可方在数据包中捎带过去。

2. 简述TCP的三报文握手协议(简述TCP连接建立的三个阶段)

  1. 建立连接时, 客户端A向服务器B发送请求连接报文段,同步位SYN = 1,初始序列为seq = x(x值为随机),进入 SYN_SENT状态(同步发送), 等待服务器确认;
  2. 服务器B收到 syn 包后,向A发送确认。SYN和ACK都置1,确认号为ack = x + 1 ,初始序列号为seq = y(y值为随机),此时服务器进入 SYN_RCVD 状态(同步确认);
  3. 客户端A收到服务器B的确认后,向服务器B发送确认,SYN=0,ACK = 1,确认号ack = y + 1,发送完毕,客户端A进入进入 ESTABLISHED 状态(已建立连接),服务器B收到A的确认后进入 ESTABLISHED 状态。
  4. 如下图:
    在这里插入图片描述

3. 基于TCP、UDP分别有哪些协议

  1. 基于TCP:SMTP(简单邮件传送协议)、TELNET(远程终端协议)、HTTP(超文本传送协议)、FTP(文件传送协议)、IMAP;
  2. 基于UDP:基本上剩下的都是(DNS、TFTP、RIP、DHCP、SNMP、NFS、IGMP)。

4. 比较面向连接与无连接的工作方式

  1. 面向连接的工作方式:
    不管是面向物理的连接还是面向逻辑的连接,其通信过程可分为三个阶段:连接建立、传送信息、连接拆除。一旦连接建立,该通信的所有信息均沿着这个连接路径传送,且保证信息的有序性。信息传送的时延比无连接工作方式的时延小。一旦建立的连接出现故障,信 息传送就要中断,必须重新建立连接,因此对故障敏感。
  2. 无连接工作方式:
    没有连接建立过程,一边选路、一边传送信息。属于同一个通信的信息沿不同路径到达目的地,该路径事先无法预知,无法保证信息的有序性。信息传送的时延比面向连接工作方式的时延大。对网络故障不敏感。

5. UDP协议和TCP协议的对比

  1. UDP协议:
    (1)无连接;
    (2)尽最大努力交付,不可靠;
    (3)无拥塞控制,效率高,适合于IP电话,实时视频等;
    (4)首部开销小,只有四个字段(源端口,目的端口,长度,检验和);
    (5)可一对一,一对多,多对一,多对多交互;
    (6)面向报文;
  2. TCP协议:
    (1)面向连接的传输层协议;
    (2)每个TCP连接只能有两个端点,一对一;
    (3)可靠交付;
    (4)全双工通信
    (5)面向字节流,“流”指流入到进程或从进程流出的字节序列,将收到的分组组织成字节流提交给上层;
  3. 两种协议对比:
    (1)TCP 是面向连接的,UDP 是面向无连接的;
    (2)TCP结构相对来说比UDP复杂,UDP程序结构较简单;
    (3)TCP 是面向字节流的,UDP 是基于数据报的;
    (4)TCP 保证数据正确性,UDP 可能丢包;
    (5)TCP 保证数据顺序,UDP 不保证;

6. 简述TCP流量控制和拥塞控制的区别。

  1. 流量控制解决因发送方发送数据太快而导致接收方来不及接收使接收方缓存溢出的问题。流量控制的基本方法就接收方根据自己的接收能力控制发送方的发送速率。TCP采用接收方控制发送方发送窗口大小的方法来实现在TCP连接上的流量控制。
  2. 拥塞控制就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。TCP的发送方维持一个叫做拥塞窗口的状态变量。拥塞窗口的大小取决于网络的拥塞程度,当网络拥塞时减小拥塞窗口的大小,控制TCP发送方的发送速率。TCP发送方的发送窗口大小取接收窗口和拥塞窗口的最小值。

六、应用层

1. DNS有哪两种域名解析方式,简述这两种方式区别和特点

  1. 递归查询: 被请求的域名服务器负责域名的解析,当被请求者自己无法解析时,代替请求者查询,服务器负担重。
  2. 迭代查询: 被请求的服务器不能解析时仅返回另一个服务器的域名和地址,让请求者自己重新查询,即回答“我不知道这个名字, 请问这个服务器吧!”。请求者负担重。

2. 简述SMTP通信的三个阶段的过程

  1. 连接建立。发件人的邮件送到发送方邮件服务器的邮件缓存后,SMTP客户就每隔一定时间对邮件缓存扫描一次。如发现有邮件,就使用SMTP的熟知端口号码(25)与接收方邮件服务器的SMTP服务器建立TCP连接。
  2. 邮件传送。邮件的传送从MAIL命令开始。MAIL命令后面有发件人的地址。下面跟着一个或多个RCPT命令,取决于把同一个邮件发送给一个或多个收件人。RCPT命令的作用就是:先弄清接收方系统是否已做好接收邮件的准备,然后才发送邮件。再下面就是DATA命令,表示要开始传送邮件的内容了。
  3. 连接释放。邮件发送完毕后,SMTP客户应发送QUIT命令。SMTP若同意释放TCP连接,邮件传送的全部过程即结束。

3. 简述DHCP的工作过程。为什么要使用广播

  1. DHCP客户广播DHCP服务器发现报文。DHCP服务器应答DHCP提供报文。客户机发送DHCP请求报文。服务器应答DHCP确认报文。
  2. 使用广播发送DHCP服务器发现报文是因为客户不知道服务器的IP地址,但又想与之通信。

4. 给出以下英文缩写的中文名称并简述其主要功能

  1. HTML:超文本标记语言,用于描述网页文档的一种标记语言
  2. VPN:虚拟专用网,在公用网络上建立专用网络,进行加密通讯
  3. VLAN:虚拟局域网,一种将局域网设备从逻辑上划分为一个个网段,从而实现虚拟工作组的数据交换技术。
  4. FDM:频分复用
  5. DHCP:动态地址分配协议
  6. ARP:地址解析协议
  7. HTTP:超文本传送协议
  8. ICMP:网际控制报文协议,面向无连接的协议,用于传输出错报文控制信息
  9. RIP:基于距离向量的路由选择协议,一种在网关与主机之间交换路由选择信息的标准
  10. OSPF:意为开放最短路径优先,一种在网关与主机之间交换路由选择信息的标准
  11. SNMP:简单网络管理协议,该协议支持网络管理系统,用以监测连接到网络上的设备是否有引起管理上关注的情况
  12. SMTP:简单邮件传输协议,用于源地址到目的地址传送邮件的规则

综合题

一、IP地址划分(重要)

1. 均匀划分

例题:某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个一样大的子网。试问:
(1)每一个子网的网络前缀有多长?
(2)每一个子网中有多少个地址?
(3)每一个子网的地址块是多少?
(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?

答:

(1)每个子网前缀有28位。

	解析:
		已知分配到的地址块136.23.12.64/26,前缀有26位,这26位是固定不动的,
		我们将从剩下的6位中从左边开始取出X位进行子网个数划分。
		在本题中,我们需要均匀划分为4个子网,所以只需要再取出2位,便可以划分出4个一样大的子网。
		因此划分后的子网前缀是26+2=28位。

(2)每个子网都有16个地址。

	解析:
		在第(1)问中划分好子网后,剩下的未用的二进制位数即为该子网的地址数,在本题中,还剩下4位,因此子网的地址数为16个。

(3)4个子网的地址块分别是:第一个地址块136.23.12.64/28,第二个地址块136.23.12.80/28,第三个地址块136.23.12.96/28,第四个地址块136.23.12.112/28;

	解析:
		每个子网都有16个地址,子网的地址块就是其起始地址。
		第一个子网的起始地址为136.23.12.64/28,其子网地址范围为136.23.12.64/28 ~ 136.23.12.79/28;
		第二个子网的起始地址为136.23.12.80/28,同理可得第三、四个子网的起始地址。

(4)如下:

	解析:
		每一个子网中的第一个主机号和最后一个主机号都不能分配给主机使用;所以
	
		(1)第一个地址块136.23.12.64/28,可分配给主机使用的:
				最小地址:136.23.12.01000001=136.23.12.65/28
				最大地址:136.23.12.01001110=136.23.12.78/28
		(2)第二个地址块136.23.12.80/28,可分配给主机使用的:
				最小地址:136.23.12.01010001=136.23.12.81/28
				最大地址:136.23.12.01011110=136.23.12.94/28
		(3)第三个地址块136.23.12.96/28,可分配给主机使用的:
				最小地址:136.23.12.01100001=136.23.12.97/28
				最大地址:136.23.12.01101110=136.23.12.110/28
		(4)第四个地址块136.23.12.112/28,可分配给主机使用的:
				最小地址:136.23.12.01110001=136.23.12.113/28
				最大地址:136.23.12.01111110=136.23.12.126/28

2. 非均匀划分

例题:某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个子网,每个子网需要地址数分别为14,10,6,3。试问:
(1)每一个子网的网络前缀有多长?
(2)每一个子网中有多少个地址?
(3)每一个子网的地址块是多少?
(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?

答:

(1)子网前缀分别为28位,28位,29位,30位。

	解析:
		已知分配到的地址块136.23.12.64/26,前缀有26位,这26位是固定不动的。
		剩下的6位(2^6=64)用来划分子网,与均匀分布不同,我们首先要考虑的是每个子网需要的地址数量,而且要从多到少考虑。
		在本题中,我们需要不均匀划分为4个子网,
		
		* 第一个子网需要的地址数量为14个,初始分配到的地址块为136.23.12.64/26,前缀为26位。
		所以我们需要在剩下的6位中从右开始取出4位(2^4=16)分配给第一个子网,则剩下的28位(32-4=28)就是该子网的前缀。
		所以第一个子网的起始地址为136.23.12.64/28,结束地址为136.23.12.79/28,拥有16个地址。
		
		* 第二个子网需要的地址数量为10个,此时因为划分完第一个子网后,前缀已经变成了28位。
		所以我们需要在剩下的4位(32-28=4)中从右开始取出4位(2^4=16)分配给第二个子网,而剩下的28位(32-4=28)作为该子网的前缀。
		所以第一个子网的起始地址为136.23.12.80/28,结束地址为136.23.12.95/28,拥有16个地址。
		
		* 第三个子网需要的地址数量为6个,此时划分完第二个子网后,前缀还是28位。
		所以我们需要在剩下的4位中从右开始取出3位(2^3=8)分配给第三个子网,而剩下的29位(32-3=29)作为该子网的前缀。
		所以第三个子网的起始地址为136.23.12.96/28,结束地址为136.23.12.103/28,拥有8个地址。
		
		* 第四个子网需要的地址数量为3个,此时划分完第三个子网后,前缀变成了29位。
		所以我们需要在剩下的3位中从右开始取出2位(2^2=4)分配给第四个子网,而剩下的30位(32-2=30)作为该子网的前缀。
		所以第四个子网的起始地址为136.23.12.104/28,结束地址为136.23.12.107/28,拥有4个地址。

(2)每个子网拥有的地址数分别为16,16,8,4个。

	解析:
		同第(1)问解析

(3)4个子网的地址块分别是:第一个地址块136.23.12.64/28,第二个地址块136.23.12.80/28,第三个地址块136.23.12.96/29,第四个地址块136.23.12.104/30;

	解析:
		子网的地址块就是其起始地址。同第(1)问解析,
		第一个地址块起始地址为136.23.12.64/28,第二个地址块起始地址为136.23.12.80/28,
		第三个地址块起始地址为136.23.12.96/29,第四个地址块起始地址为136.23.12.104/30。

(4)如下:

	解析:
		每一个子网中的第一个主机号和最后一个主机号都不能分配给主机使用;所以
	
		(1)第一个地址块136.23.12.64/28,可分配给主机使用的:
				最小地址:136.23.12.01000001=136.23.12.65/28
				最大地址:136.23.12.01001110=136.23.12.78/28
		(2)第二个地址块136.23.12.80/28,可分配给主机使用的:
				最小地址:136.23.12.01010001=136.23.12.81/28
				最大地址:136.23.12.01011110=136.23.12.94/28
		(3)第三个地址块136.23.12.96/29,可分配给主机使用的:
				最小地址:136.23.12.01100001=136.23.12.97/29
				最大地址:136.23.12.01100110=136.23.12.102/29
		(4)第四个地址块136.23.12.104/30,可分配给主机使用的:
				最小地址:136.23.12.01111001=136.23.12.105/30
				最大地址:136.23.12.01111010=136.23.12.106/30
  • 比较,在均匀划分和不均匀划分子网中,我们可以发现,均匀划分是将初始的地址块全部分配完毕,而不均匀划分还剩下一些IP地址未进行分配,节约了IP地址数。且需要注意的是,在不均匀划分中,一定要按子网所需地址数由多到少的顺序给子网分配地址。
  • 另外,需要注意题目中给出的是子网可分配给主机的ip地址数量,还是子网拥有的ip地址数量;前者则需要考虑每个子网中的第一个和最后一个ip地址是不能分配给主机的,也不要忽略子网中路由器端口也是需要分配主机ip地址的。

二、TCP传输

例题:用TCP协议传送512字节的数据。设窗口大小固定为100字节,而TCP报文段每次也是传送100字节的数据。再设发送方和接收方的起始序号分别选为100和200,数据只从A端传输到B端,试画出类似于下图的工作示意图。从连接建立阶段到连接释放都要画上。
在这里插入图片描述

解答:
在这里插入图片描述

  • 解析:

seq 是TCP报文首部的序号字段,表示A发送数据的起始字节;
ack 是TCP报文首部的确认号字段,ack=101 表示B 正确接收了101之前的所有数据字节;
rwnd 是TCP报文首部的接收窗口大小,本题恒为100字节,不用管该字段;
ACK 是TCP报文首部的控制位,ACK=1表示该报文类型为TCP确认报文;
SYN 是TCP报文首部的控制位,SYN=1表示该报文类型为TCP连接请求报文,只出现在三报文握手连接建立阶段;
FIN是TCP报文首部的控制位,FIN=1表示该报文类型为TCP终止连接报文,只出现在四报文挥手连接释放阶段。

  • 另外,TCP标准规定,SYN=1或 FIN=1的TCP报文不能携带数据,但要消耗一个序号;普通的ACK=1 的TCP确认报文段如果携带数据,则消耗相应的序号,若不携带数据,则不消耗序号。
  • 注意:每个报文中的 seq 序号和 ack 确认号是没有关系的;每个报文的 seq 序号对应上一个返回报文的ack 确认号;每个报文的 ack 确认号对应上一个发送报文的 seq 序号;
  • 在连接建立阶段,A向B发送TCP请求连接报文,SYN=1,seq=100 为A的起始序号,该报文消耗一个seq序号;B返回一个TCP连接确认报文,SYN=1,ACK=1,ack=101 表示成功接收A的请求连接报文,seq=200 为B的起始序号,该报文消耗一个seq序号200;最后,A向B发送一个普通的TCP确认报文,SYN=0,ACK=1,ack = 201 表示A成功接收B的确认连接报文,seq=101,但是由于此报文为不携带数据的TCP确认报文,所以不消耗seq序号,此处seq=101 只是为了方便对应上一个报文的ack=101。
  • 连接建立后,进入了数据传输阶段,A向B发送了一个携带100字节数据的确认报文,ACK=1,seq =101,此处就可以看出来,上面说的seq序号没有被使用。在本题的传输阶段,A每向B发送100个字节,B都会给A返回一个不携带数据的普通确认报文,所以,B发送的报文中,seq 的值不变,恒为201,于是对应的,A发送的报文中ack 的值也不变,恒为202。但A每次发送的报文中seq的值都会改变,则B返回的确认报文中的ack的值也会对应改变。
  • 连接释放阶段,A向B发送连接释放报文,FIN=1,ACK=1,ack=202 和上面一样,seq=613,该报文不携带数据,但消耗一个seq序号613;B返回一个普通的确认报文,ack= 614,seq =201和上面一样;此时A到B的传输通道关闭。接着,B也向A发送连接释放报文,FIN=1,ACK=1,ack = 614,seq =201,此时注意,该报文会消耗一个seq序号201;A给B返回一个不携带数据的普通的确认报文,ack = 202,虽然 seq = 614,但其实614是未使用到的,此时,B到A的传输通道也关闭了。

实验题:(需要在控制台使用命令来配置)

一.交换机实验

1. 交换机自学习算法

  • 使用 Packet Tracer 软件,按下图连接交换机和主机;
  • 点击PC机,进入Desktop,进入IP Configuration, 分别配置它们的IP地址为: 192.168.1.10, 192.168.1.20, 192.168.1.30 ;

在这里插入图片描述

  • 点击交换机 0,进入CLI 界面,查看此时初始状态的交换机0的MAC 地址表。
    在这里插入图片描述
  • 初始MAC地址表是空的,接下来点击PC 0,进入其Desktop的Command窗口;使用指令 Ping 192.168.1.30 ,看到有Reply回复
  • 如下图:
    在这里插入图片描述
  • 再次点击交换机 0,进入CLI 界面,查看交换机0的MAC 地址表;会发现MAC地址表已更新;
  • 如下图:
    在这里插入图片描述
  • 交换机通过 ping包知道了PC 0的MAC地址和 它与交换机相连的端口f 0/1 ,通过reply包知道了PC 2的MAC地址和 它与交换机相连的端口f0/2;这就是交换机MAC 表的自学习算法。
  • 注意:此时两个端口都属于vlan 1。

2. 虚拟局域网配置

  • 在上面,我们连接并配置了交换机和PC机,但此时PC机连接的交换机端口都是属于默认的同一个虚拟局域网 VLAN 1下的;
  • 接着,我们将把交换机的不同端口分配到不同的虚拟局域网VLAN 下;
  • 进入交换机 0 的CLI界面,使用如下命令:
Switch>
Switch>enable  //进入特权模式
Switch#show vlan  //查看VLAN表,此时f 0/1接口默认属于虚拟局域网VLAN 1
Switch#configure terminal  //进入配置模式

Switch(config)#vlan 2   //增设一个虚拟局域网VLAN 2
Switch(config-vlan)#name tset  //给VLAN 2命名为test,可以省略此步 
Switch(config-vlan)#exit  //返回配置模式

Switch(config)#interface f 0/1   //进入交换机某接口
Switch(config-if)#switchport mode access //设定接口模式为 access类型
Switch(config-if)#switchport access vlan 2 //设置接口属于VLAN 2
Switch(config-if)#exit  //返回配置模式

Switch(config)#show vlan  //再次查看VLAN表,发现交换机的 f 0/1接口属于虚拟局域网VLAN 2
  • 将交换机接口f 0/1 配置到虚拟局域网VLAN 2后,再次点击PC 0,进入其Desktop的Command窗口;使用指令 Ping 192.168.1.30 ,会失败 ,原因是此时PC 0 和PC 3已经属于不同的虚拟局域网下了,所以不能直接通信,详细的通信步骤就不在此处贴出来了。

3. 基于ping命令的网络故障排查(补充)

  • Ping 127.0.0.1:检查TCP/IP协议是否正常工作;
  • Ping 本机ip:检查主机网卡;
  • Ping 同一局域网内其他主机的ip:测试局域网内部的连通性;
  • Ping 默认网关ip:测试路由器是否连通;
  • Ping 可达的远程主机ip:测试出口路由器的路由转发功能是否可用;

二.路由器实验

1. 配置路由器接口ip

  • 点击路由器,进入CLI界面
  • 命令如下:

Router> enable  //进入特权模式

Router# config terminal  //进入配置模式

Router(config)# interface f 0/0  //选中路由器的f 0/0端口

Router(config-if)# clock rate 128000  //配置时钟,在配置广域网 s 0/0/0 接口时需要配置时钟,此处可以省略时钟配置

Router(config-if)# ip address 192.168.16.193 255.255.255.252  //配置IP和子网掩码

Router(config-if)# no shutdown  //启动该端口

Router(config-if)# end  //返回配置模式

2. 配置路由器静态路由

  • 同样是在CLI界面下进行配置;
  • 命令如下:

Router> enable  //进入特权模式
Router# show ip route  //查看路由表,此时路由表中只有路由器自己的ip地址和对应的下一跳
Router# config terminal  //进入配置模式

//                         目的网络       子网掩码        下一跳IP
Router(config)# ip route 192.168.2.0  255.255.255.0  192.168.16.194   //配置静态路由条目

Router(config)# exit  //返回配置模式

Router# show ip route  //再次查看路由表,发现多了刚刚配置的路由条目和对应的下一跳ip

Router# config terminal  //进入配置模式

Router(config)# no ip route 192.168.2.0  255.255.255.0  192.168.16.194   //删除静态路由条目

3. 配置动态路由RIP协议

  • 在配置RIP动态路由时,路由器只需要添加与自身直连的子网即可,无需子网掩码。假设与路由器直连的子网只有 192.168.1.0 和 192.168.16.0 ;在CLI界面下进行配置:
  • 命令如下:

Router>enable  //进入特权模式

Router#configure terminal  //进入配置模式

Router(config)#router rip  //配置RIP路由

Router(conf-router)#version 2  //指定RIP协议的版本为2(默认为1

Router(config-router)#network 192.168.1.0  //添加直连网络1

Router(config-router)#network 192.168.16.0  //添加直连网络2

Router(config-router)#exit  //返回配置模式

Router#show ip route  //查看路由表

Router#debug ip rip  //在控制台显示RIP的工作状态

  • 注意:在刚配置完RIP动态路由后,查看路由器的路由表是还未更新的,只有当网络中开始通信,发送RIP协议数据包后,路由器的路由表才会更新。

猜你喜欢

转载自blog.csdn.net/weixin_45395059/article/details/125383511
今日推荐