《计算机网络》面试常见问题总结

本文详细阐述了网络层的主要任务,包括提供服务(可靠/不可靠)、MAC地址和IP地址的作用,以及ARP协议、路由选择(如RIP、OSPF、BGP)和DHCP、ICMP协议的工作原理。介绍了路由器的功能和动态路由选择的优劣。
摘要由CSDN通过智能技术生成

第四章:网络层

1、网络层主要任务?

答:网络层主要任务是实现网络互联,进而实现数据包在各网络之间的传输。

要实现网络层任务:需要解决以下主要问题:

(1)网络层向运输层提供怎样的服务(可靠/不可靠)

(2)网络层寻址问题

(3)路由选择问题

2、网络层提供的两种服务。

答:(1)面向连接的虚电路服务

        (2)无连接的数据报服务

 3、MAC地址(48bit)和IP地址(32bit)?

答:(1)当多个主机连接在同一个广播信道上,要想实现两个主机之间的通信,每个主机必须有一个唯一的标识,即一个数据链路层地址。在每一个主机发送的帧中必须携带标识发送主机和接受主机的地址,由于这类地址时用于媒体接入控制的,因此这类地址被称为MAC地址。

  • MAC地址一般被固化在网卡的电可擦可编程只读存储器EEPROM,因此MAC地址也被称为硬件地址。有时也称为物理地址。
  • 严格来说,MAC地址是对网络上各接口的唯一标识,而不是对网络上各设备的唯一标识

        (2)IP地址是因特网上的主机和路由器所使用的地址,用于标识两部分信息:网络编号和主机编号。

  • MAC地址不具备区分不同网络的功能。如果只是一个单独的网络,不接入因特网,可以只是用MAC地址,如果主机需要接入因特网,则IP地址和MAC地址都需要使用。
  • IP地址属于网络体系结构中网络层的范畴,因此在网络层首部中应该封装有源IP地址和目的IP地址;MAC地址属于网络体系结构中数据链路层的范畴,因此在数据链路层首部中应该封装有源MAC地址和目的MAC地址。

4、ARP协议。

答:无论网络层使用什么协议,在实际网络的链路上传送数据帧时,最终必须使用硬件地址。所以需要一种方式完成IP 地址到MAC 地址的映射,这就是地址解析协议(Address Resolution Protocol)。每台主机都设有一个ARP 高速缓存,用来存放本局域网上各主机和路由器的IP地址到MAC 地址的映射表,称ARP 表,使用ARP 协议来动态维护此ARP 表。

ARP 工作在网络层,其工作原理如下:

(1)主机A 欲向本局域网上的某台主机B 发送IP 数据报时,先在其ARP 高速缓存中查看有无主机B 的IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入MAC 帧,然后通过局域网将该MAC 帧发往此硬件地址。

(2)如果没有,ARP进程在本局域网上广播发送一个ARP 请求分组,使同一个局域网里的所有主机收到ARP 请求。主机B 收到该ARP 请求后,向主机A 发出响应ARP 分组,分组中包含主机B 的IP 与MAC 地址的映射关系,主机A 在收到后将此映射写入ARP 缓存,然后按查询到的硬件地址发送 MAC 帧。

注意: ARP 用于解决同一个局域网上的主机或路由器的IP 地址和硬件地址的映射问题。如果所要 找的主机和源主机不在同一个局域网上,那么就要通过ARP 找到一个位于本局域网上的某个路由 器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的 工作就由下一个网络来做,尽管ARP 请求分组是广播发送的,但ARP 响应分组是普通的单播,即 从一个源地址发送到一个目的地址。

既然在网络链路上传送的帧最终是按照 MAC 地址找到目的主机的,那么为什么我们还要使用两种地址(IP地址和 MAC地址),而不直接使用MAC地址进行通信?
由于全世界存在着各式各样的网络,它们使用不同的MAC地址,要使这些异构网络能够互相通信就必须进行非常复杂的 MAC地址转换上作,因此由用户或用户主机来完成这项工作几乎是不可能的事。即使是对分布在全世界的以太 网MAC地址进行寻址,也是极其困难的。然而IP编址把这个复杂问题解决了。连接到互联网的主机只需要各自拥有一个IP地址,它们之间的通信就像连接在同一个网络上那样简单方便,即使必须多次调用ARP来找到 MAC地址,但这个过程都是由计算机软件自动进行的,对用户来说是看不见的。因此,在虚拟的IP网络上用IP地址进行通信给广大的计算机用户带来了很大的方便。

5、路由器的主要功能?

答:路由器主要完成两个功能:路由选择、分组转发。

(1)路由选择:根据路由选择协议构建和更新路由表,动态地选择最佳路径;

(2)分组转发:根据转发表将数据包从合适的端口转发出去。

6、路由选择协议。

答:(1)静态路由选择:由人工配置的网络路由、默认路由、特定主机路由等都属于静态路由;
这种人工配置方式简单、开销小,但不能及时适应网络状态(流量、拓扑等)的变化,一般只在小规模网络中采用。

        (2)动态路由选择:路由器通过路由选择协议自动获取路由信息,比较复杂、开销比较大,能较好地适应网络状态的变化,适用于大规模网络。

因特网所采用的路由选择协议的主要特点:

(1)自适应:动态路由选择,能较好适应网络状态的变化;

(2)分布式:路由器之间交换路由信息;

(3)分层次:整个因特网划分为许多较小的自治系统AS。

7、动态路由选择协议。/动态路由算法? 

答:(1)RIP协议:RIP协议是分布式的基于距离向量的路由选择协议,只适用于小型互联网。RIP协议按照固定的时间间隔与相邻路由器交换信息,交换的信息是自己当前的路由表,即到达本自治系统中所有网络的距离,以及到达每一个网络应经过的下一跳路由器。

RIP((Routing Information Protocol, RIP)协议将“距离”定义为:从一路由器到直连的网络的距离定义为1;从一主机到非直连的网络距离定义为所经过的路由器数加1。RIP协议也将“距离”成为"跳数hot count ",并且每经过一个网络,跳数就加1,RIP协议认为好的路由就是它通过的网络数目少,即“距离短”,RIP协议允许一条路径最多只能包含15个网络,因此“距离”为16相当于不可达。

距离向量算法:

对于每一个相邻路由器发送过来的RIP协议报文,执行以下步骤:

1、对于地址为X的相邻路由器发送过来的RIP报文,先修改此报文中的所有项目:把“下一跳”字段中的地址都改为X,并把所有的“距离”字段值加1。(每一个项目都有三个关键数据,即到达目的网络Net,距离是d,下一跳路由器是X)。

2、对修改后的RIP报文中的每一个项目进行以下操作:
若原来的路由表中没有目的网络Net,则把该项目添加到路由表中;否则

若下一条路由器地址为X,则把收到的项目替换原路由表中的项目;否则

若收到的项目中的距离d小于路由表中的距离,则进行更行,否则什么也不做。

3、若3min还没有收到相邻路由器的更新路由表,则把此路由器记为不可达的路由器,即把距离设为16。

4、返回。

优缺点:RIP协议最大的优点就是实现简单、开销小,但是RIP协议的缺点也比较多,首先RIP限制了网络的规模,它能使用的最大距离为15;其次路由器之间交换的信息是完整的路由表,随着网络规模的增大,开销也就增大;最后“坏消息传播的慢”使得更新过程的收敛时间过长。

        (2)OSPF协议:OSPF协议是分布式的链路状态协议,适用于大型互连网,OSPF只在链路状态发生变化或每隔一段时间才向本自治系统中的所有路由器,用洪泛法发送与本路由器相邻的所有路由器的链路状态信息。“链路状态”指明本路由器都和那些路由器相邻,以及该链路的“度量”。“度量”可以表示费用、距离、时延、带宽等可统称为“代价”。最终所有的路由器都能建立一个全网的拓扑结构图(链路状态数据库)。

基本工作过程:

1、相邻路由器之间周期性发送问候分组,以便建立和维护邻居关系;(40s)

2、建立邻居关系后,给邻居路由器发送数据库描述分组,也就是将自己链路状态数据库中的所有链路状态项目的摘要信息(指出有哪些路由器的链路状态信息以及序号已经写入数据库)发送给邻居路由器;

3、例如R1收到R2的数据库描述分组后,发现自己缺少其中某些链路状态项目,于是给R2发送链路状态请求分组;R2收到后,将所缺少的链路状态项目的详细信息封装在链路状态更新分组中发送给R1,R1收到后,将这些所缺少的链路状态项目的详细信息添加到自己的链路状态数据库中,并给R2发送链路状态确认分组,R2也可以向R1请求自己所缺少的链路状态项目的详细信息,最终R1和R2的链路状态数据库将达成一致(链路状态数据库同步)。

4、每30min或链路状态发生变化时,路由器都会发送链路状态更新分组,收到该分组的其他路由器将洪泛法转发该分组,并给该路由器发回链路状态确认分组,这又成为新情况下的链路状态数据库同步。

 为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分为若干个更小的范围,叫做区域(Area),划分区域的好外就是把利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个自治系统,这就减少整个网络上的通信。

优缺点:

  •  OSPF是基于链路状态的,而不像RIP那样是基于距离向量的
  • OSPF不限制网络规模,更新效率高,收敛速度快。
  • OSPF采用SPF算法计算路由,从算法上保证了不会产生路由环路。

        (3)外部网关协议BGP(Border Gateway Protocol):BGP协议是一种路径向量路由选择,用于在不同自治系统之间的路由选择,BGP力求在AS之间,找出一条能够到达目的网络前缀且比较好的路由(不是最佳路由,但是不能兜圈子),各种BGP报文是在AS之间的BGP连接(即eBGP)和AS内部的BGP连接(即iBGP)上传送,BGP路由指出,从哪个路由器,经过那些AS就可以到达哪个网络前缀。

工作原理:

每个自治系统的管理员要选择至少一个路由器(可以有多个)作为该自治 系统的"BGP 发言人“。一个BGP 发言人与其他自治系统中的BGP 发言人要交换路由信息,就要先建立TCP 连接(可见BGP 报文是通过TCP 传送的,也就是说BGP 报文是TCP 报文的数据部分), 然后在此连接上交换BGP 报文以建立BGP 会话再利用BGP 会话交换路由信息。BGP发言人除了运行BGP协议外,还必须运行自己所在自治系统所使用的内部网关协议IGP,例如OSPF或RIP。当所有BGP 发言人都相互交换网络可达性的信息后,各BGP 发言人就可找出到达各个自治系统的较好路由(构造树形结构,不存在回路的自治系统系统图)。

如果到前缀为X有两条或者多条路由可供选择,那么应该根据以下原则,按照先后顺序,选择一条较好的BGP路由:
(1)本地偏好值最高的路由要首先选择;从本AS开始的、到同一个前缀的不同BGP路由中,挑选一个较好的(即偏好值最高的)路由。这可由路由器管理员或网络管理员根据政治上或经济上的策略来设置;

(2)选择具有AS跳数最少的路由;

(3)使用热土豆路由选择算法:要让分组经过最少的转发次数离开本自治系统AS;

(4)选择路由器BGP标识符的数值最小的路由。

8、网络层转发分组的流程?

答:(1)从数据报的首部提取目的主机的IP 地址D, 得出目的网络地址N。

       (2)若网络N 与此路由器直接相连,则把数据报直接交付给目的主机D, 这称为路由器的直接交付; 否则是间接交付,执行步骤(3) 。

        (3) 若路由表中有目的地址为D 的特定主机路由(对特定的目的主机指明一个特定的路由,通常是为了控制或测试网络,或出于安全考虑才采用的),则把数据报传送给路由表中所指明的下一跳 路由器;否则执行步骤(4)

       (4) 若路由表中有到达网络N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行 步骤(5)。

        (5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行步骤(6)。

        (6)报告转发分组出错。

注意:得到下一跳路由器的IP 地址后并不是直接将该地址填入待发送的数据报,而是将该IP 地址 转换成MAC 地址(通过ARP),将其放到MAC 帧首部中,然后根据这个MAC 地址找到下一跳路 由器。

9、DHCP动态主机配置协议?

答: 动态主机配置协议(Dynamic Host Configuration Protocol, DHCP) 常用于给主机动态地分配IP 地址,它提供了即插即用联网的机制,这种机制允许一台计算机加入新的网络和获取IP 地址而不用手工参与。DHCP 是应用层协议,它是基于UDP 的。

DHCP 的工作原理如下:使用客户/服务器方式,需要IP 地址的主机在启动时就向DHCP 服务器 广播发送报文,这时该主机就成为DHCP 客户,本地网络上所有主机都能收到此广播报文, 但只有DHCP 服务器才回答此广播报文。DHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的IP 地址池中取一个地址分配给该计算机。DHCP 服务器的回答报文称为提供报文。

以下是DHCP服务器与DHCP客户端之间的交互过程:

  1. 寻找DHCP服务器:当DHCP客户端启动时,它会广播一个DHCP发现消息到局域网中的所有设备。该消息表示DHCP客户端正在寻找可用的DHCP服务器。(之所以采用广播,是因为因为主机现在并不知道网络中有哪几个DHCP服务器,它们的IP地址各是多少)

  2. DHCP服务器响应:收到DHCP发现消息后,DHCP服务器会发送一个DHCP提供消息给客户端。该消息包含了服务器提供的IP地址、子网掩码、网关和其他配置参数。这些参数将在客户端上自动配置网络连接。(主机目前还没有配置IP地址,为了使主机可以收到采用广播)

  3. DHCP客户端请求:接收到DHCP提供消息后,DHCP客户端会选择其中一个DHCP服务器,并向其发送DHCP请求消息,请求特定的IP地址和配置参数。(仍采用广播,是因为这样不用向网络中的每一个DHCP服务器单播发送DHCP请求报文来告知它们是否请求它们作为自己的DHCP服务器。)

  4. DHCP服务器确认:选中的DHCP服务器接收到DHCP请求消息后,会发送一个DHCP确认消息给客户端。该消息确认了客户端被分配的IP地址和其他网络配置参数。(广播)

  5. 完成配置:DHCP客户端收到DHCP确认消息后,将使用其中的IP地址和配置参数来配置自身的网络连接。客户端与DHCP服务器建立起租约,指定了该IP地址的有效期限。

10.ICMP网际控制报文协议?

答:为了提高IP数据报交付成功的机会,在网络层使用了网际控制报文协议(Internet Control Message Protocol, ICMP) 来让主机或路由器报告差错和异常情况。ICMP 是IP 层协议,ICMP 报文作为IP 层数据报的数据,加上数据报的首部,组成IP 数据报发送出去。I

ICMP 报文的种类有两种,即ICMP 差错报告报文和ICMP 询问报文。

ICMP常见五种差错报告报文:

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值