打破代码与底层之间的认知壁垒 在软件开发领域,网络通信是支撑所有在线服务的骨架。然而,许多开发者即便拥有多年的业务编码经验,对网络的理解仍停留在“调用接口”的表层。一旦遇到连接重置、TLS 握手超时或 DNS 解析延迟等深层问题,往往缺乏系统的排查思路。本课程正是为了解决这一“知其然不知其所以然”的困境而生。它不局限于单一的编程语言,而是深入 TCP/IP…
在软件开发领域,网络通信是支撑所有在线服务的骨架。然而,许多开发者即便拥有多年的业务编码经验,对网络的理解仍停留在“调用接口”的表层。一旦遇到连接重置、TLS 握手超时或 DNS 解析延迟等深层问题,往往缺乏系统的排查思路。本课程正是为了解决这一“知其然不知其所以然”的困境而生。它不局限于单一的编程语言,而是深入 TCP/IP 协议栈内部,从比特流的传输讲起,逐步拆解到应用层的业务逻辑。通过动画演示、网络抓包和仿真模拟三种维度的结合,将晦涩抽象的协议状态机转化为可视化的交互过程,帮助学员建立完整且扎实的网络知识体系。
本课程适合具备一定编程基础的开发者,无需精通网络协议即可入门,但建议学习者已掌握至少一门主流语言(如 Python、Java 或 Go)的基本语法,并能理解基本的操作系统概念。学习顺序上,建议分为三个阶段:第一阶段聚焦基础协议,重点攻克 OSI 七层模型与 TCP/IP 四层模型的区别,深入理解 IP 寻址、子网掩码及路由原理;第二阶段为核心传输层,务必动手实现一个简单的 Socket 通信程序,透彻理解三次握手、四次挥手、滑动窗口及拥塞控制机制;第三阶段为应用层与跨端分析,涵盖 HTTP/1.1 至 HTTP/2 的演进、HTTPS 加密原理及 QUIC 协议,并针对前端浏览器网络面板、移动端弱网环境及后端 Nginx 配置进行针对性剖析,确保各端工程师都能找到与其工作强相关的内容。
本课程的资料包包含详细的讲解视频、配套的抓包文件示例以及关键协议的代码实现参考。学员在观看视频时,切勿被动接受,而应同步开启抓包工具,对比视频中的理论波形与实际网络流量,验证所学知识点。建议在学完 TCP 章节后,尝试使用代码模拟丢包或延迟场景,观察重传机制的实际触发情况。完成全部课程后,你将能够独立分析复杂的网络故障,优化高并发场景下的网络性能,并在技术面试中从容应对底层原理相关问题。这种从理论到实践再到反思的闭环学习模式,是提升工程师底层竞争力的有效途径。
程序员基石必修课,计算机网络底层原理,。网络底层知识是编程的基石,是高手突破的重要指标之一,系统掌握网络底层知识势在必行。本课程采用动画、抓包、仿真模拟等方式,再结合编码实现,将晦涩的知识变得简单有趣不枯燥。同时还对前端、移动端、服务器端各端针对性分析,让前、后端同学都可以从本课程中学到面试和工作中需要的网络知识。
├── 1-课程介绍/ │ ├── [ 30M] 1-1 本课程学什么 │ └── [ 12M] 1-2 为什么学以及怎么学 ├── 2-初识计算机网络/ │ ├── [ 21M] 2-1 协议的本质 │ ├── [ 23M] 2-2 分层思想 │ ├── [ 29M] 2-3 计算机网络分层体系结构 │ └── [ 46M] 2-4 抓包:加深对网络底层原理的理解 ├── 3-物理层和数据链路层/ │ ├── [ 11M] 3-1 分层体系结构的最底层 – 物理层 │ ├── [ 11M] 3-2 什么是链路 │ ├── [ 20M] 3-3 链路层的重中之重 – MAC 地址 │ ├── [ 21M] 3-4 链路层的帧格式 │ ├── [ 27M] 3-5 链路层常用的协议 │ ├── [ 19M] 3-6 使用交叉线连接两台主机 │ ├── [9.7M] 3-7 使用集线器连接多台主机 │ ├── [ 38M] 3-8 仿真演示:集线器的工作原理 │ ├── [ 12M] 3-9 使用交换机链接多台主机 │ └── [ 32M] 3-10 仿真演示:交换机的工作原理 ├── 4-网络层/ │ ├── [ 18M] 4-1 认识 IP 地址 │ ├── [ 26M] 4-2 IP地址的分类 │ ├── [ 28M] 4-3 划分子网、CIDR 和同一网络的判断 │ ├── [ 15M] 4-4 公网和私网 IP │ ├── [ 21M] 4-5 IP地址的总结 │ ├── [9.0M] 4-6 认识网络层 │ ├── [ 30M] 4-7 网络层最重要的协议 — IP 协议 │ ├── [ 16M] 4-8 抓包:加深对IP协议的理解 │ ├── [ 13M] 4-9 ARP 协议 │ ├── [ 30M] 4-10 ICMP 协议 │ ├── [ 22M] 4-11 使用路由器链接多个网络 │ └── [ 37M] 4-12 仿真演示:路由器的工作原理 ├── 5-运输层/ │ ├── [ 23M] 5-1 端口号 │ ├── [ 22M] 5-2 UDP 协议- │ ├── [ 26M] 5-3 TCP 协议的可靠传输 │ ├── [ 21M] 5-4 TCP 协议的首部格式 │ ├── [ 14M] 5-5 TCP 协议的流量控制和拥塞控制 │ ├── [ 18M] 5-6 TCP 连接的建立 │ ├── [ 19M] 5-7 TCP 连接的释放 │ ├── [ 72M] 5-8 抓包:TCP 协议总结 │ ├── [ 38M] 5-9 编码:基于 TCP 协议的通信-1 │ ├── [ 77M] 5-10 编码:基于 TCP 协议的通信-2 │ ├── [ 32M] 5-11 基于 TCP 协议的聊天室 – 协议 │ ├── [ 48M] 5-12 编码:基于 TCP 协议的聊天室-1 │ └── [ 73M] 5-13 编码:基于 TCP 协议的聊天室-2 ├── 6-应用层/ │ ├── [ 26M] 6-1 FTP 和邮件协议 │ ├── [ 22M] 6-2 DHCP 协议 │ └── [ 22M] 6-3 DNS 协议 ├── 第7章 HTTP 协议/ │ ├── 7-1认识HTTP │ ├── @更多it资源 www. │ ├── 7-2HTTP报文格式-1 │ ├── 7-3HTTP报文格式-2 │ ├── 7-4字符集与编码-1 │ ├── 7-5字符集与编码-2 │ ├── 7-6基于HTTP协议的通信-1 │ ├── 7-7基于HTTP协议的通信-2 │ ├── 7-8HTTP请求方法 │ ├── 7-9RESTful风格的API │ ├── 7-10URL │ ├── 7-11HTTP响应状态码-1xx │ ├── 7-12HTTP响应状态码-2xx │ ├── 7-13HTTP响应状态码-3xx │ ├── 7-14HTTP响应状态码-4xx │ ├── 7-15HTTP响应状态码-5xx │ ├── 7-16代理服务器和VPN │ ├── 7-17HTTP首部字段-1 │ ├── 7-18HTTP首部字段-2 │ ├── 7-19HTTP首部字段-3 │ ├── 7-20HTTP首部字段-4 │ ├── 7-21文件上传 │ ├── 7-22断点续传 │ ├── 7-23视频播放 │ ├── 7-24单向散列函数 │ ├── 7-25HTTP缓存-1 │ ├── 7-26HTTP缓存-2 │ ├── 7-27CDN │ ├── 7-28静态资源和动态资源 │ ├── 7-29前后端分离 │ ├── 7-30跨域-CORS │ └── 7-31跨域-代理服务器 ├── 第8章 HTTPS 协议/ │ ├── 8-1认识HTTPS │ ├── 8-2对称加密和非对称加密 │ ├── 8-3数字签名 │ ├── 8-4证书 │ └── 8-5Wireshark中解密HTTPS ├── 第9章 WebSocket 协议/ │ ├── 9-1认识WebSocket │ └── 9-2基于WebSocket协议的通信 ├── 第10章 HTTP&2 和 HTTP&3 协议/ │ ├── 10-1HTTP1.1的不足与优化 │ ├── 10-2HTTP2协议-传输机制、多路复用和优先级 │ ├── 10-3HTTP2协议-首部压缩和服务器推送 │ └── 10-4HTTP3协议 └── 第11章 课程回顾与总结/ └── 11-1课程总结 └── 资料代码/