计算机网络基础面试题下
大约 5 分钟
计算机网络基础面试题下
1. TCP与UDP的区别(重要)
- TCP(传输控制协议)是一种面向连接的协议。它保证数据的可靠性,通过确认应答、重传机制、顺序控制来确保数据正确无误地到达。TCP连接需要在通信前建立(即三次握手)并且在数据传输后关闭(即四次挥手)。
- UDP(用户数据报协议)是无连接的协议。它不保证数据的可靠性,不进行数据排序,也不进行重传,适用于实时传输、广播和多播等场景。UDP的传输速度比TCP更快,因为它没有这些控制机制。
何时选择TCP或UDP?
- 选择TCP:当数据可靠性非常重要,尤其是需要保证顺序并且无法丢失数据时,例如文件传输、网页浏览等。
- 选择UDP:当对延迟要求高且可以容忍部分数据丢失时,例如视频会议、实时游戏、音频流等。
2. HTTP基于TCP还是UDP?
- HTTP是基于TCP的协议。因为HTTP需要保证请求和响应的顺序,以及数据的完整性,尤其是在传输网页内容、图片和文件时,TCP提供了必要的可靠性保障。
3. 使用TCP的协议有哪些?使用UDP的协议有哪些?
- 使用TCP的协议:HTTP、HTTPS、FTP、SMTP、Telnet等。
- 使用UDP的协议:DNS、SNMP、DHCP、TFTP、VoIP等。
4. TCP三次握手和四次挥手(非常重要)
三次握手:
- 客户端发送SYN包:客户端向服务器发送SYN请求,表明想要建立连接。
- 服务器响应SYN-ACK包:服务器收到客户端的SYN包后,向客户端发送SYN-ACK包,确认连接请求。
- 客户端发送ACK包:客户端收到SYN-ACK包后,发送ACK包确认,连接建立。
四次挥手:
- 客户端发送FIN包:客户端告诉服务器,它的数据已经发送完毕,希望关闭连接。
- 服务器响应ACK包:服务器确认收到FIN包,并回复ACK,表示客户端可以关闭连接。
- 服务器发送FIN包:服务器确认关闭,向客户端发送FIN包。
- 客户端发送ACK包:客户端确认收到服务器的FIN包,连接关闭。
5. TCP如何保证传输的可靠性?
- TCP通过确认应答、重传机制、流量控制和拥塞控制来保证数据可靠性。每个数据包都必须得到接收方的确认,若没有收到确认,数据会被重新传输。此外,TCP使用滑动窗口技术来进行流量控制,防止接收方超负荷。
6. IP协议的作用是什么?
- IP协议(Internet Protocol)负责在网络中寻址和路由数据包。它确保数据包能够从源主机传输到目标主机。IP协议本身不保证数据的可靠性或顺序,仅负责数据包的传输和寻址。
7. 什么是IP地址?IP寻址如何工作?
- IP地址是用于标识网络上每个主机的唯一地址,分为IPv4和IPv6。IPv4使用32位地址,IPv6使用128位地址。
- IP寻址通过将目标IP地址与路由器中的路由表进行匹配,确定数据包的转发路径。每个路由器根据目标IP地址将数据包转发到下一个路由器,直到数据包到达目的地。
8. 什么是IP地址过滤?
- IP地址过滤是通过设定规则,阻止或允许某些IP地址访问网络资源。它常用于防火墙和路由器中,用于增强网络安全性。
9. IPv4和IPv6有什么区别?
- IPv4使用32位地址空间,最多支持约43亿个地址,而IPv6使用128位地址,支持更多的地址,足以满足全球设备的需求。
- IPv6还引入了简化的报头结构和更高效的路由机制,使得数据包转发更加高效。
10. 如何获取客户端真实IP?
- 可以通过X-Forwarded-For头部获取客户端的真实IP。如果客户端通过代理服务器访问,这个头部会包含原始客户端的IP地址。
11. NAT的作用是什么?
- NAT(Network Address Translation)用于将私有IP地址转换为公共IP地址,它使得多个设备能够共享一个公共IP地址。NAT常用于路由器中,特别是在家庭和小型办公室中。
12. ARP的作用是什么?
- ARP(Address Resolution Protocol)用于将IP地址映射到MAC地址。它解决了网络层的IP地址和链路层的物理地址之间的映射问题。
13. 什么是MAC地址?
- MAC地址(Media Access Control Address)是网络接口卡(NIC)上的硬件地址。每个NIC都有一个唯一的MAC地址,用于局域网内的设备识别。
14. ARP协议解决了什么问题?
- ARP协议解决了网络层地址(IP地址)和数据链路层地址(MAC地址)之间的映射问题。通过ARP协议,设备可以查询到目标设备的MAC地址,从而完成数据链路层的通信。
15. ARP协议的工作原理?
- ARP工作原理:当一个设备想要发送数据到某个IP地址,但不知道该IP的MAC地址时,设备会广播ARP请求包,询问网络中的其他设备“谁拥有这个IP地址”。拥有该IP的设备会通过ARP响应包,告知自己的MAC地址。
