前端百题斩【033-034】——网络七层模型及HTTP进化史

简介: 前端百题斩【033-034】——网络七层模型及HTTP进化史

1. 网络体系结构



网络体系结构有多种划分标准:OSI体系结构、TCP/IP的体系结构、五层协议的体系结构,其中OSI体系结构是划分的最细的一种体系结构,另外的TCP/IP体系结构和五层协议的体系结构都是将OSI体系结构的某些层做了一些聚合获取得到的。上述三种结构的划分如下所示:

640.pngTCP/IP体系结构和五层协议的体系结构都是在OSI体系结构的基础上进行某些层级的聚合得到,那么下面我们重点看一下OSI体系结构中各层的功能。


  1. 物理层


物理层是第一层,其主要功能时利用传输介质为数据链路层提供物理连接,实现比特流的透明传输,这样帧中的一个个比特就能从从一个节点移动到下一个节点。(机械、电子、定时接口通信信道上的原始比特流传输)


  1. 数据链路层


数据链路层主要负责建立和管理节点间的链路,该层任务是将整个帧从一个网络元素移动到邻近的网络元素。(物理寻址,并将原始比特流转变为逻辑传输线路)


  1. 网络层


网络层负责将称为数据报的网络层分组从一台主机移动到另一台主机,该层包括著名的网际协议IP,该协议定义了在数据报中的各个字段以及端系统和路由器如何作用于这些字段。(控制子网的运行,如逻辑编址、分组传输、路由选择)


  1. 传输层


传输层主要任务是负责向两台主机进程之间的通信提供通用的数据传输服务,主要使用TCP和UDP两种协议。(接收会话层的数据,在必要时吧数据进行分割,并将这些数据交给网络层,且保证这些数据段有效到达对端)


  1. 会话层


会话层是用户应用程序和网络之间的接口,主要任务是向两个实体的表示层提供建立和使用连接的方法。(不同机器上的用户之间建立及管理会话)


  1. 表示层


表示层对来自应用层的命令和数据进行解释,对各种袯赋予相应的含义,并按照一定的格式传动给会话层,其主要功能是处理用户信息的表示问题,如编码、数据格式转换和加密解密等。(信息的语法语义以及它们的关联,如加密解密、转换翻译、压缩解压缩)

  1. 应用层


应用层是各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作,常见协议有HTTP、HTTPS、FTP、SSH等。(各种应用程序协议,如HTTP、FTP、SMTP、POP3)


注:可查看科来公司出版的网络协议图(http://www.colasoft.com.cn/download/network-protocol-map-2020.pdf


2.HTTP0.9——HTTP3.0进化史



HTTP协议不断发展,大体可分为五个版本,分别是HTTP/0.9、HTTP/1.0、HTTP/1.1、HTTP/2.0、HTTP3.0,下面一起来看看这些版本。


2.1 HTTP/0.9

640.jpg

2.2 HTTP/1.0


640.jpg

2.3 HTTP/1.1

640.jpg

2.4 HTTP/2.0

640.jpg


2.5 HTTP/3.0


640.jpg

相关文章
|
20小时前
|
JSON 前端开发 JavaScript
第三章 前端发起HTTP请求
第三章 前端发起HTTP请求
|
21小时前
|
前端开发 JavaScript 安全
第十篇 Axios最佳实战:前端HTTP通信的王者之选
第十篇 Axios最佳实战:前端HTTP通信的王者之选
|
2天前
状态码对于理解HTTP请求和响应的流程,以及调试网络问题非常重要
【5月更文挑战第15天】HTTP状态码由三位数字表示,分为1xx-5xx五类。1xx为信息响应,2xx表示成功,如200(请求成功)、201(创建成功)。3xx是重定向,如301(永久移动)、302(临时重定向)。4xx表示客户端错误,如400(坏请求)、404(未找到)。5xx是服务器错误,包括500(内部服务器错误)和503(服务不可用)。这些状态码用于理解请求响应流程和调试网络问题。
9 1
|
2天前
|
前端开发 JavaScript 安全
【网络安全】WebPack源码(前端源码)泄露 + jsmap文件还原
【网络安全】WebPack源码(前端源码)泄露 + jsmap文件还原
16 0
|
2天前
|
移动开发 网络协议 网络安全
【网络安全 | 网络协议】一文讲清HTTP协议
【网络安全 | 网络协议】一文讲清HTTP协议
17 0
|
2天前
|
缓存 安全 算法
网络原理 HTTP _ HTTPS
网络原理 HTTP _ HTTPS
14 0
|
2天前
|
JSON 前端开发 搜索推荐
BoostCompass( http_server 模块 | 项目前端代码 )
BoostCompass( http_server 模块 | 项目前端代码 )
26 4
|
2天前
|
存储 缓存 网络协议
[计算机网络]---Http协议
[计算机网络]---Http协议
|
2天前
|
存储 XML 前端开发
【Flutter前端技术开发专栏】Flutter中的网络请求与数据处理
【4月更文挑战第30天】本文介绍了Flutter开发中的网络请求和数据处理。 Flutter开发者可选择http(官方库)或dio(功能更强大)进行网络请求。http库简单易用,dio支持更多功能如拦截器。数据处理涉及JSON和XML解析,数据存储可选SharedPreferences或Hive,数据传递推荐使用InheritedWidget或Provider状态管理库。了解这些知识点能提升Flutter开发效率。
【Flutter前端技术开发专栏】Flutter中的网络请求与数据处理
|
2天前
|
XML JSON 前端开发
【Flutter前端技术开发专栏】Flutter中的图片、视频与网络资源加载
【4月更文挑战第30天】Flutter是谷歌的开源前端框架,因其高性能、流畅UI和多端运行能力受开发者喜爱。本文聚焦于Flutter中的资源加载:使用`Image`组件加载静态、网络和本地图片;通过`video_player`库加载和播放视频;利用`http`包进行网络资源请求。掌握这些技巧将有助于提升Flutter应用的开发效率和质量。
【Flutter前端技术开发专栏】Flutter中的图片、视频与网络资源加载