目录
请简述 TCP 和 UDP 的区别?
TCP 和 UDP 分别对应的常见应用层协议有哪些?
UDP 的优缺点是什么?它适用于哪些场景?
UDP 如何实现可靠传输?
请简述 HTTP 和 HTTPS 的区别?
HTTP 协议的工作原理是什么?
HTTP 状态码有哪些常见的类型及其含义?
HTTP 哪些常用的状态码及使用场景?
HTTP 状态码 301 和 302 的区别,都有哪些用途?
解释 HTTP 的缓存机制。
什么是 HTTP 协议的长连接和短连接?
什么是 HTTP 长连接?
HTTP 长连接短连接使用场景是什么?
HTTP 常见方法有哪些?
请简述 OSI 参考模型有几层?
简单说下每一层对应的网络协议有哪些?
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
从 URL 输入到页面的展现到底发生了什么?
在浏览器中输入 URL 地址到显示主页的过程?
URL 解析与请求准备
DNS 解析
建立连接
发送请求与服务器处理
服务器响应与页面渲染
连接关闭
TCP 的三次握手过程是什么?
第一次握手
第二次握手
第三次握手
为什么要进行三次握手?
确保双方通信能力
同步序列号
防止已失效的连接请求又传送到服务器
可靠性保障
三次握手过程中可以携带数据吗?
第一次握手
第二次握手
第三次握手
TCP 的四次挥手过程是什么?
为什么 TIME - WAIT 状态必须等待 2MSL 的时间呢?
说一下 DNS 的解析过程?
为了 DNS 解析更多,你觉得可以用到哪些优化手段?
DNS 负载均衡是如何实现的?
请简述 IP 地址和 Mac 地址有啥区别?
ARP 协议的工作原理?
什么是 ICMP 协议?
ICMP 有哪些实际应用,举几个例子?
IPV4 地址不够如何解决?
保活计时器的作用?
什么是滑动窗口协议?它在 TCP 中如何工作?
什么是拥塞控制?TCP 如何实现拥塞控制?
TCP 协议是如何保证可靠传输的?
谈谈你对 ARQ 协议的理解?
什么是流量控制?
TCP 是如何实现流量控制的?
什么是 TCP 粘包和拆包?
TCP 粘包是怎么产生的?
浏览器对同一 Host 建立 TCP 连接的数量有没有限制?
如何使用 ping 命令检查网络连通性?
如何使用 traceroute 命令查看数据包的路由路径?
如何使用 tcpdump 或 Wireshark 进行网络数据包分析?
如何使用 netstat 查看网络连接的状态?
什么是带宽和吞吐量?
什么是延迟和丢包?
什么是数字证书?
HTTPS 是如何保证通信安全的?
请简述 HTTPS 大概过程流程?
什么是对称加密、非对称加密?
什么是 Cookie?
什么是 Session?
Cookie 和 Session 是怎么实现用户的登录状态的?
请简述 Cookie 和 Session 有什么区别?
什么是 SQL 注入?举个例子?
谈一谈 XSS 攻击,举个例子?
什么是 DDos 攻击?
forward 和 redirect 的区别?
请简述 TCP 和 UDP 的区别?
TCP(传输控制协议)和 UDP(用户数据报协议)是两种不同的传输层协议,它们有以下区别。
从连接方式上看,TCP 是面向连接的协议。在通信之前,需要通过三次握手来建立连接,确保通信双方都准备好进行数据传输。通信结束后,还会通过四次挥手来断开连接。而 UDP 是无连接的协议,发送数据之前不需要建立连接,它只是简单地把数据包发送出去。
在可靠性方面,TCP 提供可靠的传输服务。它通过序列号、确认应答、重传机制等来保证数据能够完整、有序地到达目的地。例如,当接收方收到数据后会发送确认应答,如果发送方在一定时间内没有收到确认应答,就会重新发送数据。UDP 则不保证数据传输的可靠性