【计算机网络】HTTP1.0、HTTP1.1 和 HTTP2.0的详细分析

简介: 目录前言HTTP1.0HTTP1.1HTTP2.0总结前言在1.0时代中,html从Web服务器传送到客户端。在2.0时代中,多了一些css,js等前端语言的更新。影响http的两个主要因素有:带宽以及延迟网络拨号更加影响带宽延迟的话主要通过:一个主机中浏览器对同个域名的链接限制、dns的解析时长、三次握手的连接时长等HTTP1.0主要用在简单的网页和浏览器中具体的一个模式为:建立连接发出请求信息响应信息关掉连接存在一个带宽的浪费,比如传输一部分数据,却传输了整个对象进

前言

在1.0时代中,html从Web服务器传送到客户端。
在2.0时代中,多了一些css,js等前端语言的更新。

影响http的两个主要因素有:带宽以及延迟

  • 网络拨号更加影响带宽
  • 延迟的话主要通过:一个主机中浏览器对同个域名的链接限制、dns的解析时长、三次握手的连接时长等

HTTP1.0

主要用在简单的网页和浏览器中
具体的一个模式为:

  1. 建立连接

    1. 发出请求信息
    2. 响应信息
    3. 关掉连接

具体特点:

  • 存在一个带宽的浪费,比如传输一部分数据,却传输了整个对象进来
  • 支持短连接

HTTP1.1

应用在各大浏览器的请求页面中

  • 在缓存处理中,比http1.0的head中多了几个选择来控制缓存策略
  • 在请求头中多了一个rang的区域,可以更加方便的传输部分数据,充分利用带宽
  • 多了一些错误响应码
  • 支持长连接和请求的流水线
  • 可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟

HTTP2.0

  • 支持二进制传输数据
  • 实现多路复用(同一个连接并发处理多个请求)
  • 压缩header(体积小,传输更加方便)
  • 允许服务端推送资源给浏览器(户端可以直接从本地加载这些资源,不用再通过网络)

总结

HTTP1.0和HTTP1.0的比较

区别 HTTP1.0 HTTP1.1
连接 全部 部分
带宽 全部 部分
缓存个数
错误状态码

HTTP1.1和HTTP2.0的比较

  • 多路复用(1.1中多建立几个TCP连接,但是tcp开销有限。2.0中同一个连接并发处理多个请求)
  • 数据格式(1.1是都是文本,2.0是二进制数据)
  • 多了头部的压缩
  • 支持服务端推送资源给浏览器

在这里插入图片描述

相关文章
|
7月前
|
数据采集 监控 网络安全
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
471 3
VMware Cloud Foundation Operations for Networks 9.0.1.0 发布 - 云网络监控与分析
|
7月前
|
机器学习/深度学习 大数据 关系型数据库
基于python大数据的青少年网络使用情况分析及预测系统
本研究基于Python大数据技术,构建青少年网络行为分析系统,旨在破解现有防沉迷模式下用户画像模糊、预警滞后等难题。通过整合多平台亿级数据,运用机器学习实现精准行为预测与实时干预,推动数字治理向“数据驱动”转型,为家庭、学校及政府提供科学决策支持,助力青少年健康上网。
|
8月前
|
存储 网络协议 算法
从HPACK到多路复用,揭秘HTTP/2如何终结网络拥堵
HTTP/2通过HPACK压缩头部冗余信息,提升传输效率;并利用多路复用技术,在单个TCP连接上并行处理多个请求,避免队头阻塞,显著提升性能。同时支持服务器推送和流优先级设置,优化资源加载体验。
531 7
|
11月前
|
JSON 中间件 Go
Go 网络编程:HTTP服务与客户端开发
Go 语言的 `net/http` 包功能强大,可快速构建高并发 HTTP 服务。本文从创建简单 HTTP 服务入手,逐步讲解请求与响应对象、URL 参数处理、自定义路由、JSON 接口、静态文件服务、中间件编写及 HTTPS 配置等内容。通过示例代码展示如何使用 `http.HandleFunc`、`http.ServeMux`、`http.Client` 等工具实现常见功能,帮助开发者掌握构建高效 Web 应用的核心技能。
540 61
|
9月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
493 0
|
监控 安全 Linux
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
498 2
Arista CloudVision 2025.1 - 多云和数据中心网络自动化、监控和分析
|
网络协议 API 开发者
分析http.client与requests在Python中的性能差异并优化。
合理地选择 `http.client`和 `requests`库以及在此基础上优化代码,可以帮助你的Python网络编程更加顺利,无论是在性能还是在易用性上。我们通常推荐使用 `requests`库,因为它的易用性。对于需要大量详细控制的任务,或者对性能有严格要求的情况,可以考虑使用 `http.client`库。同时,不断优化并管理员连接、设定合理超时和重试都是提高网络访问效率和稳定性的好方式。
277 19
|
11月前
|
JSON 编解码 API
Go语言网络编程:使用 net/http 构建 RESTful API
本章介绍如何使用 Go 语言的 `net/http` 标准库构建 RESTful API。内容涵盖 RESTful API 的基本概念及规范,包括 GET、POST、PUT 和 DELETE 方法的实现。通过定义用户数据结构和模拟数据库,逐步实现获取用户列表、创建用户、更新用户、删除用户的 HTTP 路由处理函数。同时提供辅助函数用于路径参数解析,并展示如何设置路由器启动服务。最后通过 curl 或 Postman 测试接口功能。章节总结了路由分发、JSON 编解码、方法区分、并发安全管理和路径参数解析等关键点,为更复杂需求推荐第三方框架如 Gin、Echo 和 Chi。
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
371 19
|
9月前
|
缓存 网络协议 API
HTTP/1.1相较于HTTP/1.0所实现的性能提升点分析。
通过以上的技术改进,HTTP/1.1显著提升了Web的性能和可靠性,同时减少了带宽的使用和服务器的负载。这些特性直到今天仍然是现代Web通信的基础。尽管如今HTTP/2和HTTP/3逐渐取代了旧的协议,以上所述的HTTP/1.1性能提升对所有后续版本仍然有着深远影响。
422 0

热门文章

最新文章