课程目录

未分组

  1. 01 _ 课程介绍
  2. 02 _ 内容综述
  3. 03 _ 浏览器发起HTTP请求的典型场景
  4. 04 _ 基于ABNF语义定义的HTTP消息格式
  5. 05 _ 网络为什么要分层:OSI模型与TCP_IP模型
  6. 06 _ HTTP解决了什么问题?
  7. 07 _ 评估Web架构的七大关键属性
  8. 08 _ 从五种架构风格推导出HTTP的REST架构
  9. 09 _ 如何用Chrome的Network面板分析HTTP报文
  10. 10 _ URI的基本格式以及与URL的区别
  11. 11 _ 为什么要对URI进行编码?
  12. 12 _ 详解HTTP的请求行
  13. 13 _ HTTP的正确响应码
  14. 14 _ HTTP的错误响应码
  15. 15 _ 如何管理跨代理服务器的长短连接?
  16. 16 _ HTTP消息在服务器端的路由
  17. 17 _ 代理服务器转发消息时的相关头部
  18. 18 _ 请求与响应的上下文
  19. 19 _ 内容协商与资源表述
  20. 20 _ HTTP包体的传输方式(1):定长包体
  21. 21 _ HTTP包体的传输方式(2):不定长包体
  22. 22 _ HTML form表单提交时的协议格式
  23. 23 _ 断点续传与多线程下载是如何做到的?
  24. 24 _ Cookie的格式与约束
  25. 25 _ Session及第三方Cookie的工作原理
  26. 26 _ 浏览器为什么要有同源策略?
  27. 27 _ 如何“合法”地跨域访问?
  28. 28 _ 条件请求的作用
  29. 29 _ 缓存的工作原理
  30. 30 _ 缓存新鲜度的四种计算方式
  31. 31 _ 复杂的Cache-Control头部
  32. 32 _ 什么样的响应才会被缓存
  33. 33 _ 多种重定向跳转方式的差异
  34. 34 _ 如何通过HTTP隧道访问被限制的网络
  35. 35 _ 网络爬虫的工作原理与应对方式
  36. 36 _ HTTP协议的基本认证
  37. 37 _ Wireshark的基本用法
  38. 38 _ 如何通过DNS协议解析域名?
  39. 39 _ Wireshark的捕获过滤器
  40. 40 _ Wireshark的显示过滤器
  41. 41 _ Websocket解决什么问题
  42. 42 _ Websocket的约束
  43. 43 _ WebSocket协议格式
  44. 44 _ 如何从HTTP升级到WebSocket
  45. 45 _ 传递消息时的编码格式
  46. 46 _ 掩码及其所针对的代理污染攻击
  47. 47 _ 如何保持会话心跳
  48. 48 _ 如何关闭会话
  49. 49 _ HTTP_1.1发展中遇到的问题
  50. 50 _ HTTP_2特性概述
  51. 51 _ 如何使用Wireshark解密TLS_SSL报文?
  52. 52 _ h2c:在TCP上从HTTP_1升级到HTTP_2
  53. 53 _ h2:在TLS上从HTTP_1升级到HTTP_2
  54. 54 _ 帧、消息、流的关系
  55. 55 _ 帧格式:Stream流ID的作用
  56. 56 _ 帧格式:帧类型及设置帧的子类型
  57. 57 _ HPACK如何减少HTTP头部的大小?
  58. 58 _ HPACK中如何使用Huffman树编码?
  59. 59 _ HPACK中整型数字的编码
  60. 60 _ HPACK中头部名称与值的编码格式
  61. 61 _ 服务器端的主动消息推送
  62. 62 _ Stream的状态变迁
  63. 63 _ RST_STREAM帧及常见错误码
  64. 64 _ 我们需要Stream优先级
  65. 65 _ 不同于TCP的流量控制
  66. 66 _ HTTP_2与gRPC框架
  67. 67 _ HTTP_2的问题及HTTP_3的意义
  68. 68 _ HTTP_3_ QUIC协议格式
  69. 69 _ 七层负载均衡做了些什么?
  70. 70 _ TLS协议的工作原理
  71. 71 _ 对称加密的工作原理(1):XOR与填充
  72. 72 _ 对称加密的工作原理(2):工作模式
  73. 73 _ 详解AES对称加密算法
  74. 74 _ 非对称密码与RSA算法
  75. 75 _ 基于openssl实战验证RSA
  76. 76 _ 非对称密码应用:PKI证书体系
  77. 77 _ 非对称密码应用:DH密钥交换协议
  78. 78 _ ECC椭圆曲线的特性
  79. 79 _ DH协议升级:基于椭圆曲线的ECDH协议
  80. 80 _ TLS1.2与TLS1.3 中的ECDH协议
  81. 81 _ 握手的优化:session缓存、ticket票据及TLS1.3的0-RTT
  82. 82 _ TLS与量子通讯的原理
  83. 83 _ 量子通讯BB84协议的执行流程
  84. 84 _ TCP历史及其设计哲学
  85. 85 _ TCP解决了哪些问题
  86. 86 _ TCP报文格式
  87. 87 _ 如何使用tcpdump分析网络报文
  88. 88 _ 三次握手建立连接
  89. 89 _ 三次握手过程中的状态变迁
  90. 90 _ 三次握手中的性能优化与安全问题
  91. 91 _ 数据传输与MSS分段
  92. 92 _ 重传与确认
  93. 93 _ RTO重传定时器的计算
  94. 94 _ 滑动窗口:发送窗口与接收窗口
  95. 95 _ 窗口的滑动与流量控制
  96. 96 _ 操作系统缓冲区与滑动窗口的关系
  97. 97 _ 如何减少小报文提高网络效率
  98. 98 _ 拥塞控制(1):慢启动
  99. 99 _ 拥塞控制(2):拥塞避免
  100. 100 _ 拥塞控制(3):快速重传与快速恢复
  101. 101 _ SACK与选择性重传算法
  102. 102 _ 从丢包到测量驱动的拥塞控制算法
  103. 103 _ Google BBR拥塞控制算法原理
  104. 104 _ 关闭连接过程优化
  105. 105 _ 优化关闭连接时的TIME-WAIT状态
  106. 106 _ keepalive 、校验和及带外数据
  107. 107 _ 面向字节流的TCP连接如何多路复用
  108. 108 _ 四层负载均衡可以做什么
  109. 109 _ 网络层与链路层的功能
  110. 110 _ IPv4分类地址
  111. 111 _ CIDR无分类地址
  112. 112 _ IP地址与链路地址的转换:ARP与RARP协议
  113. 113 _ NAT地址转换与LVS负载均衡
  114. 114 _ IP选路协议
  115. 115 _ MTU与IP报文分片
  116. 116 _ IP协议的助手:ICMP协议
  117. 117 _ 多播与IGMP协议
  118. 118 _ 支持万物互联的IPv6地址
  119. 119 _ IPv6报文及分片
  120. 120 _ 从wireshark报文统计中找规律
  121. 121 _ 结课测试&结束语