夯实基础系列二:网络知识总结

💡 原文中文,约7200字,阅读约需17分钟。
📝

内容提要

文章系统梳理网络知识:DNS负责域名与IP解析;HTTP为无状态协议,涵盖请求方法、报文、状态码及1.1与1.0差异;Cookie存于客户端,Session存于服务器;HTTPS通过SSL实现加密与认证;TCP包括三次握手、四次挥手、流量控制与拥塞控制;IP负责寻址与路由;TCP/IP采用分层封装;并介绍XSS、SQL注入、CSRF等Web攻击及IGMP、ICMP、ARP协议。

🔎

延伸解读

从协议分层理解网络通信

文章将网络知识归纳为DNS、HTTP、HTTPS、TCP、IP、TCP/IP、Web攻击和其他协议八个方面,并强调TCP/IP的分层封装机制。这种结构有助于读者建立从应用层到数据链路层的整体视角,理解数据在发送端逐层添加首部、在接收端逐层剥离的过程,从而把握网络通信的基本框架。

HTTP与HTTPS的关键差异

文章指出HTTP存在明文窃听、身份伪装和报文篡改三大缺点,而HTTPS通过SSL提供加密、认证和完整性保护。同时,HTTP/1.1相比1.0支持长连接和流水线,能在一个TCP连接上传输多个请求响应,减少连接建立开销。这些对比有助于理解安全性和性能优化的基本思路。

TCP可靠性机制的实际意义

文章详细介绍了TCP的三次握手、四次挥手、流量控制、差错控制和拥塞控制。其中,发送窗口受接收窗口和拥塞窗口共同制约,拥塞控制采用慢开始、拥塞避免和拥塞检测策略。这些机制共同保障了数据可靠传输,并在网络拥堵时动态调整发送速率,避免加剧拥塞。

Web攻击的常见类型与防范方向

文章将Web攻击分为输出值转移不完全、设置或设计缺陷、会话管理疏忽和其他安全漏洞四类,具体包括XSS、SQL注入、CSRF、会话劫持等。了解这些攻击的成因有助于在开发中注意对用户输入的转义、会话管理的安全性以及错误处理的设计,从而降低安全风险。

❓

Q&A

HTTP和HTTPS的主要区别是什么?

HTTP是明文传输,存在被窃听、伪装和篡改的风险;HTTPS是身披SSL外壳的HTTP,通过加密、认证和完整性保护解决了这些问题。

TCP三次握手的具体过程是怎样的?

发送端发带SYN标志的数据包;接收端回传带SYN/ACK标志的数据包确认;发送端再回传带ACK标志的数据包,握手结束。

Cookie和Session在存储位置和安全性上有什么不同?

Cookie存储在客户端,对客户端可见,有泄露风险;Session存储在服务器端,对客户端透明,不存在敏感信息泄露风险。

常见的Web攻击有哪些类型?

包括XSS、SQL注入、OS命令注入、CSRF、会话劫持、点击劫持、DoS攻击等。

TCP的拥塞控制是如何工作的?

采用慢开始、拥塞避免和拥塞检测算法。开始窗口指数增长至门限值,然后线性增长,出现超时后门限减半,继续线性增长。

DNS协议的作用是什么?

提供域名到IP地址之间的解析服务,或逆向从IP地址反查域名。

🏷️

标签

➡️

继续阅读