课程目录
开篇词 (1讲)
- 开篇词 _ 学好网络编程,需要掌握哪些核心问题?
期中复习周 (2讲)
- 期中大作业丨动手编写一个自己的程序吧!
- 期中大作业丨题目以及解答剖析
期末测试 (1讲)
- 期末测试题丨有关网络编程的知识,你掌握了多少呢?
第一模块:基础篇 (9讲)
- 01 _ 追古溯源:TCP_IP和Linux是如何改变世界的?
- 02 _ 网络编程模型:认识客户端-服务器网络模型的基本概念
- 03丨套接字和地址:像电话和电话号码一样理解它们
- 04 _ TCP三次握手:怎么使用套接字格式建立连接?
- 05 _ 使用套接字进行读写:开始交流吧
- 06 _ 嗨,别忘了UDP这个小兄弟
- 07 _ What_ 还有本地套接字?
- 08 _ 工欲善其事必先利其器:学会使用各种工具
- 09丨答疑篇:学习网络编程前,需要准备哪些东西?
第二模块:提高篇 (10讲)
- 10 _ TIME_WAIT:隐藏在细节下的魔鬼
- 11 _ 优雅地关闭还是粗暴地关闭 _
- 12 _ 连接无效:使用Keep-Alive还是应用心跳来检测?
- 13 _ 小数据包应对之策:理解TCP协议中的动态数据传输
- 14丨UDP也可以是“已连接”?
- 15 _ 怎么老是出现“地址已经被使用”?
- 16 _ 如何理解TCP的“流”?
- 17 _ TCP并不总是“可靠”的?
- 18 _ 防人之心不可无:检查数据的有效性
- 19丨提高篇答疑:如何理解TCP四次挥手?
第三模块:性能篇 (12讲)
- 20 _ 大名⿍⿍的select:看我如何同时感知多个I_O事件
- 21 _ poll:另一种I_O多路复用
- 22 _ 非阻塞I_O:提升性能的加速器
- 23 _ Linux利器:epoll的前世今生
- 24 _ C10K问题:高并发模型设计
- 25 _ 使用阻塞I_O和进程模型:最传统的方式
- 26 _ 使用阻塞I_O和线程模型:换一种轻量的方式
- 27 _ I_O多路复用遇上线程:使用poll单线程处理所有I_O事件
- 28 _ I_O多路复用进阶:子线程使用poll处理连接I_O事件
- 29 _ 渐入佳境:使用epoll和多线程模型
- 30 _ 真正的大杀器:异步I_O探索
- 31丨性能篇答疑:epoll源码深度剖析
第四模块:实战篇 (4讲)
- 32 _ 自己动手写高性能HTTP服务器(一):设计和思路
- 33 _ 自己动手写高性能HTTP服务器(二):I_O模型和多线程模型实现
- 34 _ 自己动手写高性能HTTP服务器(三):TCP字节流处理和HTTP协议实现
- 35 _ 答疑:编写高性能网络编程框架时,都需要注意哪些问题?
结束语 (1讲)
- 结束语丨我相信这不是结束,让我们江湖再见




