【计算机网络】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是二进制数据)
  • 多了头部的压缩
  • 支持服务端推送资源给浏览器

在这里插入图片描述

相关文章
|
1天前
|
域名解析 存储 安全
HTTP【网络】
HTTP协议格式、HTTP的方法 、HTTP的状态码、HTTP常见的Header
15 6
HTTP【网络】
|
14天前
|
数据采集 JSON API
🎓Python网络请求新手指南:requests库带你轻松玩转HTTP协议
本文介绍Python网络编程中不可或缺的HTTP协议基础,并以requests库为例,详细讲解如何执行GET与POST请求、处理响应及自定义请求头等操作。通过简洁易懂的代码示例,帮助初学者快速掌握网络爬虫与API开发所需的关键技能。无论是安装配置还是会话管理,requests库均提供了强大而直观的接口,助力读者轻松应对各类网络编程任务。
59 3
|
15天前
|
机器学习/深度学习 JSON API
HTTP协议实战演练场:Python requests库助你成为网络数据抓取大师
在数据驱动的时代,网络数据抓取对于数据分析、机器学习等至关重要。HTTP协议作为互联网通信的基石,其重要性不言而喻。Python的`requests`库凭借简洁的API和强大的功能,成为网络数据抓取的利器。本文将通过实战演练展示如何使用`requests`库进行数据抓取,包括发送GET/POST请求、处理JSON响应及添加自定义请求头等。首先,请确保已安装`requests`库,可通过`pip install requests`进行安装。接下来,我们将逐一介绍如何利用`requests`库探索网络世界,助你成为数据抓取大师。在实践过程中,务必遵守相关法律法规和网站使用条款,做到技术与道德并重。
30 2
|
17天前
|
数据采集 存储 JSON
从零到一构建网络爬虫帝国:HTTP协议+Python requests库深度解析
在网络数据的海洋中,网络爬虫遵循HTTP协议,穿梭于互联网各处,收集宝贵信息。本文将从零开始,使用Python的requests库,深入解析HTTP协议,助你构建自己的网络爬虫帝国。首先介绍HTTP协议基础,包括请求与响应结构;然后详细介绍requests库的安装与使用,演示如何发送GET和POST请求并处理响应;最后概述爬虫构建流程及挑战,帮助你逐步掌握核心技术,畅游数据海洋。
48 3
|
22天前
|
数据采集 网络协议 API
HTTP协议大揭秘!Python requests库实战,让网络请求变得简单高效
【9月更文挑战第13天】在数字化时代,互联网成为信息传输的核心平台,HTTP协议作为基石,定义了客户端与服务器间的数据传输规则。直接处理HTTP请求复杂繁琐,但Python的`requests`库提供了一个简洁强大的接口,简化了这一过程。HTTP协议采用请求与响应模式,无状态且结构化设计,使其能灵活处理各种数据交换。
48 8
|
26天前
|
JSON API 开发者
Python网络编程新纪元:urllib与requests库,让你的HTTP请求无所不能
【9月更文挑战第9天】随着互联网的发展,网络编程成为现代软件开发的关键部分。Python凭借简洁、易读及强大的特性,在该领域展现出独特魅力。本文介绍了Python标准库中的`urllib`和第三方库`requests`在处理HTTP请求方面的优势。`urllib`虽API底层但功能全面,适用于深入控制HTTP请求;而`requests`则以简洁的API和人性化设计著称,使HTTP请求变得简单高效。两者互补共存,共同推动Python网络编程进入全新纪元,无论初学者还是资深开发者都能从中受益。
39 7
|
16天前
|
Python
HTTP协议不再是迷!Python网络请求实战,带你走进网络世界的奥秘
本文介绍了HTTP协议,它是互联网信息传递的核心。作为客户端与服务器通信的基础,HTTP请求包括请求行、头和体三部分。通过Python的`requests`库,我们可以轻松实现HTTP请求。本文将指导你安装`requests`库,并通过实战示例演示如何发送GET和POST请求。无论你是想获取网页内容还是提交表单数据,都能通过简单的代码实现。希望本文能帮助你在Python网络请求的道路上迈出坚实的一步。
33 0
|
28天前
|
网络协议
网络协议概览:HTTP、UDP、TCP与IP
理解这些基本的网络协议对于任何网络专业人员都是至关重要的,它们不仅是网络通信的基础,也是构建更复杂网络服务和应用的基石。网络技术的不断发展可能会带来新的协议和标准,但这些基本协议的核心概念和原理将继续是理解和创新网络技术的关键。
65 0
|
2月前
|
前端开发 C# 开发者
WPF开发者必读:MVVM模式实战,轻松构建可维护的应用程序,让你的代码更上一层楼!
【8月更文挑战第31天】在WPF应用程序开发中,MVVM(Model-View-ViewModel)模式通过分离关注点,提高了代码的可维护性和可扩展性。本文详细介绍了MVVM模式的三个核心组件:Model(数据模型)、View(用户界面)和ViewModel(处理数据绑定与逻辑),并通过示例代码展示了如何在WPF项目中实现MVVM模式。通过这种模式,开发者可以更高效地构建桌面应用程序。希望本文能帮助你在WPF开发中更好地应用MVVM模式。
69 0
|
2月前
|
测试技术 持续交付 开发者
Xamarin 高效移动应用测试最佳实践大揭秘,从框架选择到持续集成,让你的应用质量无敌!
【8月更文挑战第31天】竞争激烈的移动应用市场,Xamarin 作为一款优秀的跨平台开发工具,提供了包括单元测试、集成测试及 UI 测试在内的全面测试方案。借助 Xamarin.UITest 框架,开发者能便捷地用 C# 编写测试案例,如登录功能测试;通过 Xamarin 模拟框架,则可在无需真实设备的情况下模拟各种环境测试应用表现;Xamarin.TestCloud 则支持在真实设备上执行自动化测试,确保应用兼容性。结合持续集成与部署策略,进一步提升测试效率与应用质量。掌握 Xamarin 的测试最佳实践,对确保应用稳定性和优化用户体验至关重要。
46 0

热门文章

最新文章

下一篇
无影云桌面