HTTP小记2

目录

HTTP/1.1优化

QUIC协议

路由器

RTT(Round-Trip Time)

计算机网络体系结构

体系结构各层在整个过程中的作用


HTTP/1.1优化

1.通过缓存技术来避免/减少发送HTTP请求

2.减少HTTP请求的次数

  • 将原本由客户端处理的重定向请求,交给代理服务器处理,这样可以减少重定向请求的次数
  • 将多个小资源合并成一个大资源再传输,减少HTTP请求次数以及头部的重复传输,进而减少TCP连接数量,进而省区TCP握手和慢启动造成的网络消耗
  • 按需访问资源,不获取全部的资源,只获取当前用户所看到的页面资源,当用户向下滑动页面的时候,再向服务器获取接下来的资源,达到延迟发送请求的效果

3.压缩相应资源,降低传输资源大小,提高传输效率,选择更为优秀的压缩算法

QUIC协议

一种基于UDP的传输层协议。

QUIC=HTTP/2+TLS+UDP

QUIC允许在单个连接上并行传输多个数据流,并且每个流都可以独立的处理,也就是某个流发生丢包时,只会阻塞这个流,其他流不会受到影响,所以不存在队头阻塞问题。

QUIC内部包含TLS。

QUIC是新协议,对于很多网络设备,根本不知道什么是QUIC,只会当做是UDP,这样就会出现新的问题,因为有的网络设备是会丢掉UDP包的,QUIC是基于UDP实现的,网络设备无法识别是QUIC包,会当做UDP包丢弃。

路由器

是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。

计算机通常采用的是分组交换。

在路由器中的输入和输出端口之间没有直接连线。

路由器处理分组的过程是:

  1. 把收到的分组先放入缓存(暂时存储)
  2. 查找转发表,找出到某个目的地址应从哪个端口转发;
  3. 把分组送到适当的端口转发出去。

RTT(Round-Trip Time)

RTT是数据流往返的网络耗时,我们一般的http请求与服务端的交互时间。

往返时间RTT也是一个重要的性能指标。

计算机网络体系结构

常见的计算机网络体系结构

  • 如今用的最多的是TCP/IP体系结构,现今规模最大的、覆盖全球的、基于TCP/IP的互联网并未使用OSI标准。
  • TCP/IP体系结构相当于将OSI体系结构的物理层数据链路层合并为了网络接口层,并去掉了会话层表示层
  • TCP/IP在网络层使用的协议是IP协议,IP协议的意思是网际协议,因此TCP/IP体系结构的网络层称为网际层

网络接口层:并没有规定具体内容,这样做的目的是可以互连全世界各种不同的网络接口,例如:有线的以太网接口,无线局域网的WIFI接口等。

网际层:它的核心协议是IP协议。

运输层:TCP和UDP是这层的两个重要协议。

应用层:这层包含了大量的应用层协议,如 HTTP , DNS 等。

体系结构各层在整个过程中的作用

应用层

  • 按照HTTP协议的规定构建一个HTTP请求报文。
  • 应用层将HTTP请求报文交付给运输层处理

运输层

  • 给HTTP请求报文添加一个TCP首部,使之成为TCP报文段
  • 运输层将TCP报文交付给网络层处理

网络层

  • 给TCP报文段添加一个IP首部,使之成为IP数据报
  • 网络层将IP数据报交付给数据链路层处理

数据链路层

  • 给IP数据报添加一个首部和一个尾部,使之成为帧
  • 数据链路层将帧交付给物理层

物理层

  • 先讲帧看作比特流,假设这里的网络N1是以太网,物理层还会给该比特流前面加上前导码
  • 物理层将装有前导码的比特流变换成相应的信号发送给传输媒体

信号再通过传输媒体到达路由器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/272667.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

alertmanage调用企业微信告警(k8s内部署)

一、前言 alertmanage调用企业微信应用告警会比直接使用钉钉告警更麻烦一点,调用企业微信应用告警需要在应用内配置企业可信ip,不然调用企业微信接口就会报错,提示ip地址有风险 二、部署 先自行创建企业微信,再使用管理后台创建应…

机器视觉实战应用:手势、人脸、动作以及手势鼠标构建(一)

CV实战应用手势、人脸、动作以及手势鼠标构建(一)总起 核心思想 手势识别是一种常见的计算机视觉应用,它可以通过摄像头或者预先录制的视频图像来追踪和识别人类手势。手势识别的应用非常广泛,例如在游戏、虚拟现实、人机交互等…

RuoYi-Cloud集成DataRoom大屏设计器

基于RuoYi-Cloud 3.6.3 版本集成 先贴一下开源地址: https://gitee.com/wxjstudy/jove-fast DataRoom开源地址: https://gitee.com/gcpaas/DataRoom 后端 新建modules 启动类 增加注解扫描,以及配置分页插件 import com.baomidou.mybatisplus.extension.plugins.MybatisPlu…

Leetcode—54.螺旋矩阵【中等】

2023每日刷题&#xff08;七十&#xff09; Leetcode—54.螺旋矩阵 实现代码 class Solution { public:vector<int> spiralOrder(vector<vector<int>>& matrix) {vector<int> ans;int m matrix.size();int n matrix[0].size();int row 0, col…

虚拟环境和Pycharm中均有transforms仍报ModuleNotFoundError:No module named ‘transformers‘

问题&#xff1a;运行新模型&#xff0c;配置了新环境&#xff0c;下载了包后&#xff0c;仍然报ModuleNotFoundError&#xff1a;No module named transformers 错误。 查看Pycharm解释器&#xff1a; 没问题&#xff01;&#xff01;&#xff01;&#xff1f; 命令行查看虚…

阿赵UE学习笔记——5、创建关卡元素

阿赵UE学习笔记目录 大家好&#xff0c;我是阿赵。   之前介绍了从空白模板创建关卡&#xff0c;接下来尝试着在这个空白的世界里面&#xff0c;创建一些内容。 一、创建地面 1、创建面片作为地面 创建——形状——平面&#xff0c;可以创建一个面片 在细节面板设置合适的…

【广州华锐互动】VR科技科普展厅平台:快速、便捷地创建出属于自己的虚拟展馆

随着科技的不断进步&#xff0c;虚拟现实(VR)技术已经在许多领域取得了显著的成果。尤其是在展馆设计领域&#xff0c;VR科技科普展厅平台已经实现了许多令人瞩目的新突破。 VR科技科普展厅平台是广州华锐互动专门为企业和机构提供虚拟展馆设计和制作的在线平台。通过这个平台&…

【微服务核心】Spring Boot

Spring Boot 文章目录 Spring Boot1. 简介2. 开发步骤3. 配置文件4. 整合 Spring MVC 功能5. 整合 Druid 和 Mybatis6. 使用声明式事务7. AOP整合配置8. SpringBoot项目打包和运行 1. 简介 SpringBoot&#xff0c;开箱即用&#xff0c;设置合理的默认值&#xff0c;同时也可以…

设计模式-单例模式(结合JVM基础知识)

1.定义介绍 所谓单例模式&#xff0c;是指在程序运行时&#xff0c;整个JVM中只有一个该类的实例对象 2. 单例模式的优点 复用性高&#xff0c;节省内存资源。类的加载、连接、初始化、使用都要占用虚拟机内存空间&#xff0c;因此&#xff0c;频繁创建对象会造成资源浪费&a…

文件夹共享(普通共享和高级共享的区别)防火墙设置(包括了jdk安装和Tomcat)

文章目录 一、共享文件1.1为什么需要配置文件夹共享功能&#xff1f;1.2配置文件共享功能1.3高级共享和普通共享的区别&#xff1a; 二、防火墙设置2.1先要在虚拟机上安装JDK和Tomcat供外部访问。2.2设置防火墙&#xff1a; 一、共享文件 1.1为什么需要配置文件夹共享功能&…

IDEA使用之打包Jar,指定main方法

前言 在某些场景&#xff0c;可能会遇到将非Spring项目打包的情况&#xff0c;我们不需要Tomcat服务器部署&#xff0c;只需要执行指定的main方法即可&#xff0c;这种情况打包成jar就比较方便了。 操作步骤 打包结果默认在项目的out目录下 使用 java -jar xxx.jar

企业微信自建应用获取用户信息

一.前言 开发企业微信自建应用的时候难免会有获取企微个人信息的业务需求,这篇博客将详细说明企微自建应用获取userId的具体流程. 二.基本概念介绍 2.1 corpid 每个企业都拥有唯一的corpid&#xff0c;获取此信息可在管理后台“我的企业”&#xff0d;“企业信息”下查看“企业…

(1)llvm学习词法分析器

首先是Token取值 下面两个值记录当前识别出来的token单元的字面量 首先是空字符&#xff0c;然后如果是空字符&#xff0c;就读下一个字符&#xff0c;知道这个字符不是空为止&#xff0c;也就是LastChar出循环的时候是下一个不为空的字符,下面两个值是记录实际值用于后续处理 …

VR渲染器怎么用之自适应图像采样器,可解决渲染黑图问题

大家好&#xff0c;相信刚接触到vr渲染器时&#xff0c;会vr的图像采样器感到迷茫&#xff0c;如何使用图像采样器&#xff1f;图像采样器有何用呢&#xff1f; 今天便为大家讲解vr中的自适应DMC图像采样器的运用。 说明&#xff1a;高版本渲染器中的渲染块整合了原有的“固定…

PYTHON入门级游戏开发:宇宙飞船游戏两万字详析

手讲解超详细python入门游戏项目‘打外星飞船’手把&#xff08;一&#xff09; 由于内容比较多&#xff0c;这里会分为五篇文章来讲解&#xff0c;从页面的创建、飞船控制、射击、外星人创建、射杀外星人五片来展开。 做一个窗口和设置响应用户 import sysimport pygame&qu…

STM32逆变器方案

输入电压&#xff1a; 额定输入电压&#xff1a;DC110V 输入电压范围&#xff1a;DC77-137.5V 额定输出参数 电压&#xff1a;200V5%&#xff08;200VAC~240VAC 可调&#xff09; 频率&#xff1a; 42Hz0.5Hz&#xff08;35-50 可调&#xff09; 额定输出容量&#xff1a;1…

CentOS7搭建Elasticsearch与Kibana服务

1.部署单点es 1.1.创建网络 因为我们还需要部署kibana容器&#xff0c;因此需要让es和kibana容器互联。这里先创建一个网络&#xff1a; docker network create es-net 1.2拉取elasticsearch镜像 docker pull elasticsearch:7.11.1 1.3.运行 运行docker命令&#xff0c;部…

致远互联FE协作办公平台 editflow_manager.jsp SQL注入漏洞

漏洞描述 致远互联FE协作办公平台是一款为企业提供全方位协同办公解决方案的产品。它集成了多个功能模块&#xff0c;旨在帮助企业实现高效的团队协作、信息共享和文档管理。致远互联FE协作办公平台editflow_manager存在sql注入漏洞&#xff0c;攻击者可以获得敏感信息。 资产…

Vue框架引入Element-Ui

首先已经创建好了 Vue 框架&#xff0c;安装好了 node.js。 没有完成的可按照此博客搭建&#xff1a;搭建Vue项目 之后打开终端&#xff0c;使用命令。 1、命令引入 npm i element-ui -S2、package.json 查看版本 在 package.json 文件里可查看下载好的依赖版本。 3、在 ma…

Selenium自动化测试-设置元素等待

selenium中有三种时间等待&#xff1a; 强制等待&#xff1a;sleep 隐式等待&#xff1a;implicitly_wait 显示等待&#xff1a;WebDriverWait 1.sleep 让程序暂停运行一定时间&#xff0c;等待时间到达后继续运行。 使用sleep&#xff0c;需先导入time模块&#xff0c;im…