第14讲 | HTTP协议:看个新闻原来这么麻烦
该思维导图由 AI 生成,仅供参考
HTTP 请求的准备
- 深入了解
- 翻译
- 解释
- 总结
HTTP协议是互联网中最常用的协议之一,其工作原理相当复杂。本文详细介绍了HTTP请求的准备、构建和发送,以及HTTP 2.0和QUIC协议的特点。 在HTTP请求的构建过程中,包括了DNS解析、TCP连接建立以及请求行、首部字段和正文实体的构建。其中,请求行中的方法类型和首部字段中的缓存控制对系统性能至关重要。HTTP协议基于TCP协议,通过面向连接的方式发送请求,经过多层协议栈的处理最终到达目标服务器。 HTTP 2.0通过压缩头部、多路复用和二进制格式编码等机制,解决了HTTP 1.1的实时性和并发性问题,提高了并发性和传输效率。 而QUIC协议则通过自定义连接机制、自定义重传机制、无阻塞的多路复用和自定义流量控制等机制,解决了HTTP 2.0存在的问题,实现了更高效的数据传输和连接管理。 综上所述,本文通过详细的技术解释,帮助读者深入了解了HTTP协议的工作原理和相关技术细节,以及HTTP 2.0和QUIC协议的特点和优势。HTTP 2.0和QUIC协议通过各自的技术机制,提升了性能和效率,为网络通信带来了新的可能性。 通过本文的阅读,读者可以对HTTP协议及其相关技术有更深入的了解,同时也能够了解到HTTP 2.0和QUIC协议的优势和应用场景,为网络通信的优化提供了新的思路和方法。 总体而言,本文内容丰富,技术性强,对于对网络协议感兴趣的读者来说,是一篇值得深入阅读的文章。
《趣谈网络协议》,新⼈⾸单¥68
全部留言(119)
- 最新
- 精选
- 起风了001以前一直不是很确定Keep-Alive的作用, 今天结合tcp的知识, 终于是彻底搞清楚了. 其实就是浏览器访问服务端之后, 一个http请求的底层是tcp连接, tcp连接要经过三次握手之后,开始传输数据, 而且因为http设置了keep-alive,所以单次http请求完成之后这条tcp连接并不会断开, 而是可以让下一次http请求直接使用.当然keep-alive肯定也有timeout, 超时关闭.
作者回复: 赞
2019-05-21668 - UntitledQUIC说是基于UDP,无连接的,但是老师又说到是面向连接的,看的晕乎乎的。。
作者回复: 讲tcp的时候讲了,所谓的连接其实是两边的状态,状态如果不在udp层维护,就可以在应用层维护
2018-09-1730 - 墨萧每次http都要经过TCP的三次握手四次挥手吗
作者回复: keepalive就不用
2018-06-18225 - skye“一前一后,前面 stream 2 的帧没有收到,后面 stream 1 的帧也会因此阻塞。”这个和队首阻塞的区别是啥,不太明白?
作者回复: 一个是http层的,一个是tcp层的
2018-06-20417 - 花仙子UDP不用保持连接状态,不用建立更多socket,是不是就说服务端只能凭借客户端的源端口号来判定是客户端哪个应用发送的,是吗?
作者回复: 是的
2019-02-11212 - 柯察金怎么说呢,感觉听了跟看书效果一样的,比较晦涩。因为平时接触比较多的就是 tcp http ,结果听了感觉对实际开发好像帮助不大,因为都是一个个知识点的感觉,像准备考试。希望能结合实际应用场景,讲解。
作者回复: 太深入就不适合听了,所以定位还是入门
2019-01-25411 - 传说中的风一样cache control部分讲错了,max–age不是这么用的
作者回复: 这里忘了说一下客户端的cache-control机制了,一个是客户端是否本地缓存过期。这里重点强调的类似varnish缓存服务器的行为
2019-04-2328 - 意无尽哇,竟然坚持到这里了(虽然一半都还不到),虽然前面也有很多不懂。基本上从第二章开时候每一节都会花费一两个小时去理解,但是花费确实值啊,让我一个网络小白慢慢了解了网络的各个方面,感觉像是打开了另一个奇妙的世界!相当赞,后期还要刷第二遍!学完这个必须继续购买趣谈Linux操作系统!感谢刘超老师!
作者回复: 谢谢
2020-05-306 - stark有个地方不是很明白,就是里面说的流数据,比如,我在实际的应用里怎么查看下这些数据什么,比如像top这样的,怎么查看呢?
作者回复: tcpdump,其实dump出来没有所谓的流,都是感觉上的流,还不是一个个的网络包
2019-07-116 - helianghttp2.0 并行传输同一个请求不同stream的时候,如果“”前面 stream 2 的帧没有收到,后面 stream1也会阻塞",是阻塞在tcp重组上吗
作者回复: 是的
2019-04-124