在计算机网络领域的面试中,经常会被问及以下一些常见问题:
1. TCP 和 UDP 的区别是什么?
TCP传输控制协议提供可靠的,面向连接的通信,确保数据按顺序到达。
UDP用户数据报协议 是一种无连接的,不可靠的通信。
2. OSI 模型和 TCP/IP 模型的区别和联系是什么?
OSI模型为七层抽象,TCP/IP为四层。两者都是网络通信过程的分层模型。
3. 什么是 IP 地址?IPv4 和 IPv6 有什么区别?
用于标识网络设备的唯一地址,4使用32为地址,6使用128位地址。
4. 什么是子网掩码?它的作用是什么?
划分IP地址中的网络部分和主机部分,用于确定本地网络和其他网络之间的边界。
5. 解释一下 HTTP 和 HTTPS 的区别。
前者是超文本传输协议,不安全;后者加入SSL/TLS加密层。
6. 什么是 DNS?它的作用是什么?
域名系统用于将域名转换成IP地址的分布式数据库系统,将域名映射到IP地址。
7. 解释一下 ARP 协议的作用。
地址解析协议将IP地址解析为MAC地址,以便实现区域网上的设备连通。
8. 什么是路由器?它是如何工作的?
网络设备,用于在不同的网络之间转发数据包。根据目的IP地址查找路由表并将数据包转发到合适的下一条路由器或目的地。
9. 什么是防火墙?它的作用是什么?
用于保护网络安全的设备,监控过滤和控制进出数据流。
10. 什么是 DHCP?它的作用是什么?
自动分配IP和其他网络配置信息给网络上的设备。
11. 解释一下什么是 OSI 模型的每一层,以及它们的作用。
物理层:负责传输原始比特流,定义物理设备和传输介质之际的接口标准。
数据链路层:负责在相邻节点之间传输数据,提供错误监测,并控制物理介质访问。
网络层:负责在网络上寻址、路由和转发数据包,以及定义网络设备之间的逻辑连接。
传输层:负责端到端的数据传输。
会话层:负责建立,管理和终止会话连接。
表示层:负责数据的格式化、加密和压缩。
应用层:负责用户接口和网络服务。
12. 什么是 HTTP 请求和 HTTP 响应?
请求是客户端向服务器请求特定资源的消息,包含请求方法、URL、HTTP版本,请求体和响应体等信息;响应式服务器对客户端的请求回复,包含状态码,响应头和响应体等信息。
13. 什么是网络拓扑?常见的网络拓扑有哪些?
网络设备之间的物理或逻辑连接方式。常见有星型、总线、环形等等。
14. 什么是 CRC(循环冗余校验)?
检错技术,用来验证数据的完整性。
15. 什么是 VLAN?它的作用是什么?
虚拟网:可以将物理局域网划分成多个逻辑上独立的虚拟局域网,提高网络的安全性、管理性和性能。
16. 解释一下 TCP 的三次握手和四次挥手过程。
TCP 的三次握手用于建立连接,包括客户端发送 SYN 报文段、服务器发送 SYN-ACK 报文段和客户端发送 ACK 报文段。
TCP 的四次挥手用于关闭连接,包括客户端发送 FIN 报文段、服务器发送 ACK 报文段、服务器发送 FIN 报文段和客户端发送 ACK 报文段。
17. 什么是多路复用和多路分解?
前者指多个信号通过一个信号传输的过程;后者指一个信道中的多个信号被分成不同的信号流。