计算机网络常考面试题-私密

1. OSI,TCP/IP,五层协议的体系结构,以及各层协议

OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。(物链网输会示用)

TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。(接网输用)

五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。(物链网输用)

每一层的协议如下:

物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)

IEEE 802.3是工作组和工作组制定的电气和电子工程师协会 (IEEE)标准的集合,该工作组定义了有线以太网的物理层和数据链路层的介质访问控制 (MAC)。 这通常是具有一些广域网 (WAN)应用的局域网(LAN)技术。 通过各种类型的铜缆或光缆在节点和/或基础设施设备( 集线器 , 交换机 , 路由器 )之间建立物理连接。

数据链路:PPP、FR、HDLC、VLAN、MAC (网桥,交换机)

PPP协议(点对点协议)。
PPP协议作用:PPP协议可应用于连接认证,传输封装和压缩。目前应用于很多类型的物理网络,比如串行电缆,电话线等。

HDLC:高级数据链路控制,是一个在同步网上传输数据、面向比特的数据链路层协议,其最大特点是不需要数据必须是规定字符集,对任何一种比特流,均可以实现透明的传输。

VLAN:虚拟局域网,是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样,由此得名虚拟局域网。

MAC地址:也叫物理地址,每张网卡在生产时厂家就是固化一个48位的地址(6个字节,通常表 示为12个16进制数,如:00-16-EA-AE-3C-40),此地址全世界唯一,交换机路由 器以此来确认网络设备位置的位址,缺点是不方便记忆,不够灵活。

网络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、 (路由器)

IP 地址:IP 地址是基于逻辑的,比较灵活,不受硬件的限制,也容易记忆,方便划分子网, 因此在计算机网络中表面上使用IP进行通信,目前由4个不超过255的整数组成,一般用点分十进制表示(192.168.2.180)

ICMP:网际控制报文协议,ICMP封装在IP数据报的数据部分,分两种:ICMP差错报告,ICMP询问报告。
差错报告报文的五种:

  1. 终点不可达:不能交付
  2. 源点抑制:用塞丢弃,速率放慢
  3. 时间超过: 生存时间到时,数据报片未全部收到。
  4. 参数问题:字段值出错
  5. 改变路由:路由器改变

ICMP询问报文:

  1. 回送请求和回答
    测试目的站是否可答
  2. 时间戳请求和回答
    时钟同步,测量时间

ARP:地址解析协议。
以目标IP地址为线索,用来定位下一个应该接收数据分包的网络设备对应的MAC地址。
如果目标主机不在同一个链路上时,可以通过ARP查找下一跳路由器的MAC地址。
ARP只适用于IPv4, 不能用于IPv6。IPv6 中可以用ICMPv6替代ARP发送邻居探索消息。

传输层:TCP、UDP、SPX

会话层:NFS、SQL、NETBIOS、RPC

表示层:JPEG、MPEG、ASII

应用层:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS

每一层的作用如下:

  • 物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)
  • 数据链路层:将比特组装成帧和点到点的传递(帧Frame)
  • 网络层:负责数据包从源到宿的传递和网际互连(包PackeT)
  • 传输层:提供端到端的可靠报文传递和错误恢复(段Segment)
  • 会话层:建立、管理和终止会话(会话协议数据单元SPDU)
  • 表示层:对数据进行翻译、加密和压缩(表示协议数据单元PPDU)
  • 应用层:允许访问OSI环境的手段(应用协议数据单元APDU)

在这里插入图片描述

2. IP地址的分类

A类地址:以0开头, 第一个字节范围:1~126(1.0.0.0 - 126.255.255.255);

B类地址:以10开头, 第一个字节范围:128~191(128.0.0.0 - 191.255.255.255);

C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 - 223.255.255.255);

D类地址:以1110开头,第一个字节范围:224~239(224.0.0.0 - 239.255.255.255);(作为多播使用)

E类地址:保留

其中A、B、C是基本类,D、E类作为多播和保留使用。

以下是留用的内部私有地址:

A类 10.0.0.0–10.255.255.255

B类 172.16.0.0–172.31.255.255

C类 192.168.0.0–192.168.255.255

IP地址与子网掩码相与得到网络号:

ip : 192.168.2.110

&

Submask : 255.255.255.0


网络号 :192.168.2 .0

注:主机号,全为0的是网络号(例如:192.168.2.0),主机号全为1的为广播地址(192.168.2.255)

在这里插入图片描述
在这里插入图片描述

3. ARP是地址解析协议,简单语言解释一下工作原理

1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。

2:当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机 IP地址,源主机MAC地址,目的主机的IP 地址。

3:当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。

4:源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

广播发送ARP请求,单播发送ARP响应。

4. 各种协议的介绍

TCP/IP 互联网层协议 :

ICMP协议: 因特网控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。(分两种:ICMP差错报告,ICMP询问报告)

NAT协议:网络地址转换属于广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术。让一个合法的地址给多个内部主机共享,通过端口号对不同主机进程加以区分,用来解决 IP 地址不足的问题。

TCP/IP 应用层协议:

TFTP协议: 是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。

HTTP协议: 超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。

DHCP协议:动态主机配置协议,是一种让系统得以连接到网络上,并获取所需要的配置参数手段,使用UDP协议工作。具体用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。(总结:自动设置 IP 地址,统一管理 IP 地址分配)

5. 描述RARP协议

RARP是逆地址解析协议,作用是完成硬件地址到IP地址的映射,主要用于无盘工作站,因为给无盘工作站配置的IP地址不能保存。

RARP的工作过程如下:
1、网络上的每台设备都会有一个独一无二的硬件地址,通常是由设备厂商分配的MAC地址。PC1从网卡上读取MAC地址,然后在网络上发送一个RARP请求的广播数据包,请求RARP服务器回复该PC的IP地址。
2、RARP服务器收到了RARP请求数据包,为其分配IP地址,并将RARP回应发送给PC1。
3、PC1收到RARP回应后,就使用得到的IP地址进行通讯

因为需要广播请求报文,因此RARP只能用于具有广播能力的网络。

6. TCP三次握手和四次挥手的全过程

三次握手:

第一次握手:客户端发送syn包(syn=1,seq=x)到服务器,并进入SYN_SENT状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。

四次挥手:

与建立连接的“三次握手”类似,断开一个TCP连接则需要“四次挥手”。

第一次挥手:主动关闭方发送一个FIN,用来关闭主动方到被动关闭方的数据传送,也就是主动关闭方告诉被动关闭方:我已经不 会再给你发数据了(当然,在fin包之前发送出去的数据,如果没有收到对应的ack确认报文,主动关闭方依然会重发这些数据),但是,此时主动关闭方还可 以接受数据。

第二次挥手:被动关闭方收到FIN包后,发送一个ACK给对方,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号)。

第三次挥手:被动关闭方发送一个FIN,用来关闭被动关闭方到主动关闭方的数据传送,也就是告诉主动关闭方,我的数据也发送完了,不会再给你发数据了。

第四次挥手:主动关闭方收到FIN后,发送一个ACK给被动关闭方,确认序号为收到序号+1,至此,完成四次挥手。

在这里插入图片描述
在这里插入图片描述

seq是序号,ack是确认号。
ACK 即是确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。
SYN:同步序列编号。是TCP/IP建立连接时使用的握手信号。
SYN表示建立连接,
FIN表示关闭连接,
ACK表示响应

7. 在浏览器中输入www.baidu.com后执行的全部过程

事件顺序:

(1) 浏览器获取输入的域名www.baidu.com

(2) 浏览器向DNS请求解析www.baidu.com的IP地址

(3) 域名系统DNS解析出百度服务器的IP地址

(4) 浏览器与该服务器建立TCP连接(默认端口号80)

(5) 浏览器发出HTTP请求,请求百度首页

(6) 服务器通过HTTP响应把首页文件发送给浏览器

(7) TCP连接释放

(8) 浏览器将首页文件进行解析,并将Web页显示给用户。

涉及到的协议

(1) 应用层:HTTP(WWW访问协议),DNS(域名解析服务)

(2) 传输层:TCP(为HTTP提供可靠的数据传输),UDP(DNS使用UDP传输)

(3) 网络层:IP(IP数据数据包传输和路由选择),ICMP(提供网络传输过程中的差错检测),ARP(将本机的默认网关IP地址映射成物理MAC地址)

8. TCP和UDP的区别

  1. TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输
  2. TCP是可靠交付,UDP是尽最大努力交付
  3. TCP面向字节流,UDP面向报文
  4. TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报。
  5. TCP是点对点连接的,UDP一对一,一对多,多对多都可以
  6. TCP适合用于网页,邮件等,UDP适合用于视频,语音广播等
  7. TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。

9. DNS域名系统,简单描述其工作原理

当一个应用进程需要把某个域名解析为IP地址时,该应用进程就会调用解析程序,并成为一个DNS用户,把待解析的域名放在DNS请求报文中,以UDP数据报的形式发送给本地域名服务器,本地域名服务器查找到相应域名的IP地址后,就将该域名的IP地址信息放入应答报文中返回给客户进程,如果本地域名服务器没有直接查找到对应的IP地址,则向根域名服务器发出迭代查询,再将查询到的IP地址信息回传给客户程序。

10. TCP的三次握手过程?为什么会采用三次握手,若采用二次握手可以吗

建立连接的过程是利用客户服务器模式,假设主机A为客户端,主机B为服务器端。

(1)TCP的三次握手过程:主机A向B发送连接请求;主机B对收到的主机A的报文段进行确认;主机A再次对主机B的确认进行确认。

(2)采用三次握手是为了防止失效的连接请求报文段突然又传送到主机B,因而产生错误。失效的连接请求报文段是指:主机A发出的连接请求没有收到主机B的确认,于是经过一段时间后,主机A又重新向主机B发送连接请求,且建立成功,顺序完成数据传输。考虑这样一种特殊情况,主机A第一次发送的连接请求并没有丢失,而是因为网络节点导致延迟达到主机B,主机B以为是主机A又发起的新连接,于是主机B同意连接,并向主机A发回确认,但是此时主机A根本不会理会,主机B就一直在等待主机A发送数据,导致主机B的资源浪费。

(3)采用两次握手不行,原因就是上面说的失效的连接请求的特殊情况。

11. 了解中继器、集线器、网桥、交换机、路由器、网关的概念,并知道各自的用途

网页链接

11.1 路由器和交换机的区别

网页链接

11.2 为什么有时候还要在路由器的后面先接1台交换机再接计算机

网页链接

计算机网络是计算机科学中的重要分支,它研究计算机之间的通信和数据传输。在面试中,常见的计算机网络面试题包括以下几个方面: 1. OSI七层模型和TCP/IP四层模型的区别和联系是什么? 答:OSI七层模型和TCP/IP四层模型都是网络协议栈的模型,用于描述计算机网络中各个层次的功能和协议。OSI七层模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP四层模型包括网络接口层、网络层、传输层和应用层。两者的联系在于它们都是分层的思想,而区别在于OSI七层模型比TCP/IP四层模型多了三个层次,而且TCP/IP四层模型将会话层、表示层和应用层合并为一个应用层。 2. TCP和UDP的区别是什么? 答:TCP和UDP都是传输层协议,用于在计算机之间传输数据。TCP是面向连接的协议,提供可靠的数据传输,保证数据的完整性和顺序性,但是传输效率相对较低。UDP是无连接的协议,不保证数据的可靠性和顺序性,但是传输效率相对较高。 3. HTTP和HTTPS的区别是什么? :HTTP是超文本传输协议,用于在Web浏览器和Web服务器之间传输数据。HTTP是明文传输的,不安全,容易被窃听和篡改。HTTPS是在HTTP基础上加入了SSL/TLS协议,通过加密和认证技术保证数据的安全性,可以防止数据被窃听和篡改。 4. DNS的作用是什么? 答:DNS是域名系统,用于将域名转换为IP地址。在互联网中,每个计算机都有一个唯一的IP地址,但是IP地址不方便记忆,所以使用域名来代替IP地址。当用户输入一个域名时,DNS服务器会将域名解析为对应的IP地址,然后将请求发送到该IP地址对应的计算机上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值