不少工程师在工作中多多少少都会遇到下面的困惑,比如:
AJAX 跨域访问时总被浏览器的同源策略阻止,其背后的原理及符合其设计思想的解决方案是什么?
当我们维护 HTTPS 连接时,如果要优化 TLS/SSL 的卸载性能,应该从哪里入手?
定位问题时,发现本地的 TCP 连接状态中出现了 FIN_WAIT、CLOSE_WAIT 或者 TIME_WAIT,都是什么原因引起的?应该怎样解决?
想要提升 TCP 连接的传输速度,可服务器上相关的系统参数多达数十个,究竟该怎么调整?
你会发现,这些问题其实都和 Web 协议密切相关。无论你是前后端工程师,还是运维测试,如果想面试更高的职位,或者要站在更高的角度去理解技术业务架构,并能在问题出现时快速、高效地解决问题,Web 协议一定是你绕不过去的一道坎。
覆盖全面:内容包含 HTTP/1.1、HTTP/2、WebSocket、TLS/SSL 以及 TCP/IP 等工作中常用的 Web 协议,将各个零散的知识点组织成体系化的内容。
抓包实战:不光有理论讲解,关键知识点会配合相应的抓包工具进行演示,帮你更轻松地搞懂各种协议的抽象细节,从而在工作中快速定位和解决各种网络疑难杂症。
自顶向下:先从应用层协议讲起 (HTTP),让你带着具体问题去进行有针对性的学习,最后会逐步过渡到底层的 IP 协议,这样你就能从更高的层面理解 Web 协议的体系架构。
适用广泛:无论是前后端工程师、运维测试工程师还是架构师,只要是工作中经常要和网络打交道的技术人员,都可以学习这门课程。
〖资源目录〗:
├──01-课程介绍.ts 74.41M
├──02-内容综述.ts 12.70M
├──03-浏览器发起HTTP请求的典型场景.ts 17.95M
├──04-基于ABNF语义定义的HTTP消息格式.ts 48.71M
├──05-网络为什么要分层:OSI模型与TCP-IP模型.ts 35.70M
├──06-HTTP解决了什么问题?.ts 32.74M
├──07-评估Web架构的七大关键属性.ts 30.86M
├──08-从五种架构风格推导出HTTP的REST架构.ts 66.45M
├──09-如何用Chrome的Network面板分析HTTP报文.ts 64.16M
├──10-URI的基本格式以及与URL的区别.ts 26.27M
├──100-拥塞控制(3):快速重传与快速恢复.ts 29.80M
├──101-SACK与选择性重传算法.ts 33.51M
├──102-从丢包到测量驱动的拥塞控制算法.ts 21.49M
├──103-GoogleBBR拥塞控制算法原理.ts 31.80M
├──104-关闭连接过程优化.ts 25.10M
├──105-优化关闭连接时的TIME-WAIT状态.ts 22.10M
├──106-keepalive、校验和及带外数据.ts 14.68M
├──107-面向字节流的TCP连接如何多路复用.ts 19.76M
├──108-四层负载均衡可以做什么.ts 34.20M
├──109-网络层与链路层的功能.ts 33.41M
├──11-为什么要对URI进行编码?.ts 22.53M
├──110-IPv4分类地址.ts 25.78M
├──111-CIDR无分类地址.ts 20.90M
├──112-IP地址与链路地址的转换:ARP与RARP协议.ts 28.74M
├──113-NAT地址转换与LVS负载均衡.ts 32.82M
├──114-IP选路协议.ts 36.64M
├──115-MTU与IP报文分片.ts 30.21M
├──116-IP协议的助手:ICMP协议.ts 31.65M
├──117-多播与IGMP协议.ts 29.11M
├──118-支持万物互联的IPv6地址.ts 29.32M
├──119-IPv6报文及分片.ts 31.43M
├──12-详解HTTP的请求行.ts 37.72M
├──120-从wireshark报文统计中找规律.ts 74.34M
├──121-结课测试&结束语.ts 26.80M
├──13-HTTP的正确响应码.ts 34.85M
├──14-HTTP的错误响应码.ts 43.42M
├──15-如何管理跨代理服务器的长短连接?.ts 33.41M
├──16-HTTP消息在服务器端的路由.ts 16.43M
├──17-代理服务器转发消息时的相关头部.ts 20.24M
├──18-请求与响应的上下文.ts 31.90M
├──19-内容协商与资源表述.ts 41.40M
├──20-HTTP包体的传输方式(1):定长包体.ts 24.29M
├──21-HTTP包体的传输方式(2):不定长包体.ts 38.37M
├──22-HTMLform表单提交时的协议格式.ts 73.54M
├──23-断点续传与多线程下载是如何做到的?.ts 39.93M
├──24-Cookie的格式与约束.ts 27.11M
├──25-Session及第三方Cookie的工作原理.ts 32.21M
├──26-浏览器为什么要有同源策略?.ts 29.15M
├──27-如何“合法”地跨域访问?.ts 48.10M
├──28-条件请求的作用.ts 35.09M
├──29-缓存的工作原理.ts 34.78M
├──30-缓存新鲜度的四种计算方式.ts 28.98M
├──31-复杂的Cache-Control头部.ts 26.47M
├──32-什么样的响应才会被缓存.ts 29.10M
├──33-多种重定向跳转方式的差异.ts 32.52M
├──34-如何通过HTTP隧道访问被限制的网络.ts 17.41M
├──35-网络爬虫的工作原理与应对方式.ts 37.18M
├──36-HTTP协议的基本认证.ts 20.77M
├──37-Wireshark的基本用法.ts 58.11M
├──38-如何通过DNS协议解析域名?.ts 49.06M
├──39-Wireshark的捕获过滤器.ts 27.23M
├──40-Wireshark的显示过滤器.ts 35.41M
├──41-Websocket解决什么问题.ts 21.88M
├──42-Websocket的约束.ts 15.67M
├──43-WebSocket协议格式.ts 19.49M
├──44-如何从HTTP升级到WebSocket.ts 20.37M
├──45-传递消息时的编码格式.ts 26.02M
├──46-掩码及其所针对的代理污染攻击.ts 23.51M
├──47-如何保持会话心跳.ts 12.61M
├──48-如何关闭会话.ts 23.43M
├──49-HTTP-1.1发展中遇到的问题.ts 30.37M
├──50-HTTP-2特性概述.ts 25.30M
├──51-如何使用Wireshark解密TLS-SSL报文?.ts 37.93M
├──52-h2c:在TCP上从HTTP-1升级到HTTP-2.ts 32.06M
├──53-h2:在TLS上从HTTP-1升级到HTTP-2.ts 23.45M
├──54-帧、消息、流的关系.ts 28.74M
├──55-帧格式:Stream流ID的作用.ts 38.33M
├──56-帧格式:帧类型及设置帧的子类型.ts 30.41M
├──57-HPACK如何减少HTTP头部的大小?.ts 24.28M
├──58-HPACK中如何使用Huffman树编码?.ts 32.07M
├──59-HPACK中整型数字的编码.ts 25.21M
├──60-HPACK中头部名称与值的编码格式.ts 60.30M
├──61-服务器端的主动消息推送.ts 41.16M
├──62-Stream的状态变迁.ts 19.84M
├──63-RST_STREAM帧及常见错误码.ts 19.81M
├──64-我们需要Stream优先级.ts 29.50M
├──65-不同于TCP的流量控制.ts 36.06M
├──66-HTTP-2与gRPC框架.ts 49.04M
├──67-HTTP-2的问题及HTTP-3的意义.ts 35.69M
├──68-HTTP-3-QUIC协议格式.ts 30.03M
├──69-七层负载均衡做了些什么?.ts 54.20M
├──70-TLS协议的工作原理.ts 17.10M
├──71-对称加密的工作原理(1):XOR与填充.ts 24.35M
├──72-对称加密的工作原理(2):工作模式.ts 22.16M
├──73-详解AES对称加密算法.ts 24.91M
├──74-非对称密码与RSA算法.ts 23.15M
├──75-基于openssl实战验证RSA.ts 60.08M
├──76-非对称密码应用:PKI证书体系.ts 35.45M
├──77-非对称密码应用:DH密钥交换协议.ts 28.89M
├──78-ECC椭圆曲线的特性.ts 21.04M
├──79-DH协议升级:基于椭圆曲线的ECDH协议.ts 34.45M
├──80-TLS1.2与TLS1.3中的ECDH协议.ts 34.19M
├──81-握手的优化:session缓存、ticket票据及TLS1.3的0-RTT.ts 34.16M
├──82-TLS与量子通讯的原理.ts 24.30M
├──83-量子通讯BB84协议的执行流程.ts 38.39M
├──84-TCP历史及其设计哲学.ts 31.68M
├──85-TCP解决了哪些问题.ts 30.79M
├──86-TCP报文格式.ts 39.28M
├──87-如何使用tcpdump分析网络报文.ts 74.56M
├──88-三次握手建立连接.ts 27.25M
├──89-三次握手过程中的状态变迁.ts 23.90M
├──90-三次握手中的性能优化与安全问题.ts 25.98M
├──91-数据传输与MSS分段.ts 25.74M
├──92-重传与确认.ts 36.78M
├──93-RTO重传定时器的计算.ts 23.86M
├──94-滑动窗口:发送窗口与接收窗口.ts 19.84M
├──95-窗口的滑动与流量控制.ts 32.53M
├──96-操作系统缓冲区与滑动窗口的关系.ts 32.31M
├──97-如何减少小报文提高网络效率.ts 33.41M
├──98-拥塞控制(1):慢启动.ts 15.63M
└──99-拥塞控制(2):拥塞避免.ts 18.24M