当前位置: 首页 > news >正文

计算机网络常见面试题及解答

以下是计算机网络中常见的面试题及解答,按主题分类:

---

## **一、基础概念**

### **1. OSI 七层模型和 TCP/IP 模型的区别是什么?**
**答:**
- **OSI 七层模型:** 
  - 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。
- **TCP/IP 模型:**
  - 应用层、传输层、网络层、网络接口层。
- 区别:
  - OSI 模型更具理论性,分为七层。
  - TCP/IP 模型基于实际协议实现,简化为四层。

---

### **2. TCP 和 UDP 的区别?**
**答:**
- **TCP:**
  - 面向连接,提供可靠数据传输(确认机制、重传机制)。
  - 应用:HTTP、HTTPS、FTP。
- **UDP:**
  - 无连接,数据传输速度快,无确认机制。
  - 应用:DNS、视频流、实时通信。

---

### **3. 三次握手和四次挥手的过程是什么?**
**答:**
- **三次握手:**
  1. 客户端发送 SYN 报文(SYN=1, seq=x)。
  2. 服务端回复 SYN+ACK 报文(SYN=1, ACK=1, seq=y, ack=x+1)。
  3. 客户端发送 ACK 报文(ACK=1, seq=x+1, ack=y+1)。
- **四次挥手:**
  1. 客户端发送 FIN 报文,进入 FIN-WAIT-1 状态。
  2. 服务端回复 ACK 报文,进入 CLOSE-WAIT 状态。
  3. 服务端发送 FIN 报文,进入 LAST-ACK 状态。
  4. 客户端回复 ACK 报文,进入 TIME-WAIT 状态,最后关闭。

---

### **4. HTTP 和 HTTPS 的区别?**
**答:**
- HTTP 是明文传输,HTTPS 使用 SSL/TLS 加密。
- HTTPS 默认端口为 443,HTTP 为 80。
- HTTPS 提供数据完整性、机密性和身份认证。

---

### **5. 什么是 IP 地址?**
**答:**
- IP 地址是网络设备的唯一标识,由 **IPv4** 和 **IPv6** 两种形式。
  - **IPv4**:32 位,分为 A/B/C/D/E 类地址。
  - **IPv6**:128 位,更大地址空间,支持更多设备。

---

## **二、协议相关**

### **6. ARP 和 RARP 的作用是什么?**
**答:**
- **ARP (Address Resolution Protocol)**:
  - 根据 IP 地址获取对应的 MAC 地址。
- **RARP (Reverse Address Resolution Protocol)**:
  - 根据 MAC 地址获取对应的 IP 地址(现已被 DHCP 替代)。

---

### **7. 什么是子网掩码?如何划分子网?**
**答:**
- **子网掩码:**
  - 用于区分网络部分和主机部分,例如 255.255.255.0 表示前 24 位为网络地址。
- **划分子网:**
  - 通过调整子网掩码的网络位数(CIDR)来划分多个小子网。

---

### **8. DNS 解析的流程是什么?**
**答:**
1. 浏览器检查缓存。
2. 操作系统查询本地缓存(如 hosts 文件)。
3. 查询本地 DNS 服务器。
4. 本地 DNS 服务器递归查询根域名服务器。
5. 根服务器指向顶级域名服务器(TLD)。
6. TLD 指向权威域名服务器,返回 IP。

---

### **9. HTTP 状态码的含义?**
**答:**
- **1xx:信息性响应**,如 101 Switching Protocols。
- **2xx:成功**,如 200 OK。
- **3xx:重定向**,如 301 Moved Permanently, 302 Found。
- **4xx:客户端错误**,如 404 Not Found, 403 Forbidden。
- **5xx:服务器错误**,如 500 Internal Server Error, 502 Bad Gateway。

---

## **三、性能优化**

### **10. 什么是 CDN?有什么作用?**
**答:**
- **CDN (Content Delivery Network)** 是一组分布在不同地理位置的服务器网络。
- **作用:**
  - 缓存静态资源,降低服务器负载。
  - 加速内容分发,减少延迟。
  - 提高用户访问的可靠性。

---

### **11. 什么是负载均衡?有几种实现方式?**
**答:**
- **负载均衡:** 分发网络流量到多个服务器以提高可用性。
- **实现方式:**
  - **DNS 负载均衡**:通过解析不同 IP。
  - **反向代理**:Nginx/HAProxy。
  - **硬件负载均衡**:F5。
  - **应用层负载均衡**:通过应用逻辑分发。

---

## **四、网络安全**

### **12. 什么是 CSRF 和 XSS?如何防御?**
**答:**
- **CSRF(跨站请求伪造):** 利用用户身份发送恶意请求。
  - **防御:** 使用 CSRF Token,验证 Referer。
- **XSS(跨站脚本攻击):** 向网站注入恶意脚本。
  - **防御:** 输入过滤和输出转义。

---

### **13. 什么是对称加密和非对称加密?**
**答:**
- **对称加密:**
  - 使用相同密钥加解密,速度快。
  - 如:AES、DES。
- **非对称加密:**
  - 使用公钥和私钥,加密和解密用不同密钥。
  - 如:RSA、ECC。

---

### **14. 什么是防火墙?有几种类型?**
**答:**
- **防火墙:** 保护网络免受未经授权的访问。
- **类型:**
  - 包过滤防火墙。
  - 应用层防火墙。
  - 状态检测防火墙。
  - 下一代防火墙(NGFW)。

---

如果需要针对某个具体方向深入学习,可以进一步扩展相关内容!

相关文章:

计算机网络常见面试题及解答

以下是计算机网络中常见的面试题及解答,按主题分类: --- ## **一、基础概念** ### **1. OSI 七层模型和 TCP/IP 模型的区别是什么?** **答:** - **OSI 七层模型:** - 应用层、表示层、会话层、传输层、网络层、数…...

举例说明AI模型怎么聚类,最后神经网络怎么保存

举例说明怎么聚类,最后神经网络怎么保存 目录 举例说明怎么聚类,最后神经网络怎么保存K - Means聚类算法实现神经元特征聚类划分成不同专家的原理和过程 特征提取: 首先,需要从神经元中提取有代表性的特征。例如,对于一个多层感知机(MLP)中的神经元,其权重向量可以作为特…...

HarmonyOS NEXT应用开发实战(一):边学边玩,从零开发一款影视APP

引言 学习一项技能,最好也最快的办法就是动手实战。通过自己给自己找项目练习,不仅能够激发兴趣,还能从开发实战中不断总结经验。这种学习方法是最为高效的。今天,我们将通过开发一款名为“爱影家”的影视APP,来学习H…...

STM32G0B1 can Error_Handler 解决方法

问题现象 MCU上电,发送0x13帧数据固定进入 Error_Handler 硬件介绍 MCU :STM32G0B1 can:NSI1042 tx 接TX RX 接RX 折腾了一下午,无解,问题依旧; 对比测试 STM32G431 手头有块G431 官方评估版CAN 模块; 同样的…...

使用 `llama_index` 构建智能问答系统:多种文档切片方法的评估

使用 llama_index 构建智能问答系统:多种文档切片方法的评估 代码优化与解析1. **代码结构优化**2. **日志管理**3. **环境变量管理**4. **模型初始化**5. **提示模板更新**6. **问答函数优化**7. **索引构建与查询引擎**8. **节点解析器测试** 总结 在现代自然语言…...

【大模型】7 天 AI 大模型学习

7 天 AI 大模型学习 Day 2 今天是 7 天AI 大模型学习的第二天 😄,今天我将会学习 Transformer 、Encoder-based and Decoder-Based LLMs 等 。如果有感兴趣的,就和我一起开始吧 ~ 课程链接 :2025年快速吃透AI大模型&am…...

软件工程大复习之(四)——面向对象与UML

4.1 面向对象概述 面向对象(OO)是一种编程范式,它将数据和处理数据的方法封装在对象中。面向对象的主要概念包括: 对象:实例化的数据和方法的集合。类:对象的蓝图或模板。封装:隐藏对象的内部…...

【Linux】shell命令

目录 shell的基本命令 shell - 贝壳 外在保护工具 用户、shell、内核、硬件之间的关系 解析器的分类: shell命令格式 history -历史记录查询 修改环境变量的值: shell中的特殊字符 通配符 管道 | 输入输出重定向 命令置换符 shell的基本命…...

ValuesRAG:以检索增强情境学习强化文化对齐

随着大型语言模型(LLMs)的迅猛发展,其在各个领域展现出强大的能力。然而,训练数据中西方中心主义的倾向,使得 LLMs 在文化价值观一致性方面面临严峻挑战,这一问题在跨文化场景中尤为突出,可能导…...

【机器学习篇】交通革命:机器学习如何引领未来的道路创新

嘿,你知道吗?机器学习正在交通领域掀起一场革命啦!它将如何引领未来道路创新呢 本文有精彩的 C 代码演示、实用的图片解释,还有超多干货,保证让你大开眼界,点赞收藏关注, 开启一场奇妙的探索之…...

DeepSeek-V3 通俗详解:从诞生到优势,以及与 GPT-4o 的对比

1. DeepSeek 的前世今生 1.1 什么是 DeepSeek? DeepSeek 是一家专注于人工智能技术研发的公司,致力于打造高性能、低成本的 AI 模型。它的目标是让 AI 技术更加普惠,让更多人能够用上强大的 AI 工具。 1.2 DeepSeek-V3 的诞生 DeepSeek-V…...

把vue项目或者vue组件发布成npm包或者打包成lib库文件本地使用

将vue项目发布成npm库文件,第三方通过npm依赖安装使用;使用最近公司接了一个项目,这个项目需要集成到第三方页面,在第三方页面点击项目名称,页面变成我们的项目页面;要求以npm库文件提供给他们;…...

【STC库函数】Compare比较器的使用

如果我们需要比较两个点的电压,当A点高于B点的时候我们做一个操作,当B点高于A点的时候做另一个操作。 我们除了加一个运放或者比较器,还可以直接使用STC内部的一个比较器。 正极输入端可以是P37、P50、P51,或者从ADC的十六个通道…...

单片机-独立按键矩阵按键实验

1、按键介绍 按键管脚两端距离长的表示默认是导通状态,距离短的默认是断开状态, 如果按键按下,初始导通状态变为断开,初始断开状态变为导通 我们开发板是采用软件消抖,一般来说一个简单的按键消抖就是先读取按键的状…...

若要把普通表转成分区表,就需要先新建分区表,然后把普通表中的数据导入新建分区表。 具体怎么导入?

将普通表转换为分区表并导入数据是一个常见的数据库管理任务。以下是详细的步骤和示例,帮助你在 GaussDB 中完成这一过程: 1. 创建分区表 首先,你需要创建一个新的分区表,定义好分区键和分区策略。假设你有一个普通表 orders&am…...

XXX公司面试真题

一、一面问题 1.线程池的主要参数 核心线程数最大线程数空闲线程存活时间存活时间单位任务队列线程工厂拒绝策略允许核心线程超时 2. 线程的状态 新建状态就绪状态运行状态阻塞状态死亡状态 补充:线程阻塞的原因 线程调用sleep()方法进入睡眠状态 线程得到一个…...

第一节:电路连接【51单片机+A4988+步进电机教程】

摘要:本节介绍如何搭建一个51单片机A4988步进电机控制电路,所用材料均为常见的模块,简单高效的方式搭建起硬件环境 一、硬件清单 ①51单片机最小控制模块 ②开关电源 ③A4988模块转接座 ④二相四线步进电机 ⑤电线若干 二、接线 三、A49…...

机器学习算法深度解析:以支持向量机(SVM)为例的实践应用

机器学习算法深度解析:以支持向量机(SVM)为例的实践应用 在当今的数据驱动时代,机器学习作为人工智能的核心分支,正以前所未有的速度改变着我们的生活与工作方式。从图像识别到自然语言处理,从金融预测到医…...

解决Postman一直在转圈加载无法打开问题的方法

在使用Postman这款强大的API测试工具时,有时可能会遇到程序长时间加载而无法正常使用的情况。面对这样的问题,可以尝试以下几种解决办法: 方法一:直接运行Postman可执行文件 定位到Postman的安装目录 如果您不确定Postman的具体安…...

利用 LangChain 构建对话式 AI 应用

随着人工智能技术的快速发展,对话式 AI 已成为现代应用的核心部分。在构建智能客服、虚拟助手以及交互式学习平台时,一个强大且灵活的框架显得尤为重要。本文将深度解析 LangChain 这一框架的功能及实际使用,帮助开发者快速上手。 什么是 La…...

centos 7 部署awstats 网站访问检测

一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...

深度学习习题2

1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...

深入理解Optional:处理空指针异常

1. 使用Optional处理可能为空的集合 在Java开发中,集合判空是一个常见但容易出错的场景。传统方式虽然可行,但存在一些潜在问题: // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...