《图解HTTP》 学习日记

1.了解WEB以及网络基础

1.1使用HTTP协议访问WEB

web页面显示:根据web浏览器地址栏中输入指定的URL,web浏览器从web服务端获取文件资源(resource)等信息,从而显示出web页面

 1.2网络基础TCP/IP

通常使用的网络(包括 互联网)是在tcp/ip协议族的基础上运作的,而http属于它内部的一个子集

1.2.1TCP/IP协议族

计算机与网络设备相互通信,双方就需要使用同样的方法,比如,你和别人约定在某个地方见面,见面前,约定好在什么地方见面,见面时双方的特征,以及见面以后做什么等规则都要事先确定,不同硬件、操作系统之间的通信,都需要一种规则,这种规则称为协议(protocol)

协议包含各种内容:从电缆的规格到IP地址的选定方法,寻找异地用户的方法,双方建立通讯的顺序,以及WEB页面现实的需要处理的步骤等等,

TCP/IP一种解释是,互联网所关联的协议集合。另一种是特指TCP/IP这两种协议。还有一种是IP通信过程中,使用到的协议族的统称

1.2.2TCP/TP分层管理

TCP/IP协议族按层次分成以下4层:应用层,传输层,网络层,数据链路层 

分层作用类似模块化,每一层只有处理当前层的问题即可,让每一层更专注处理每一层该处理的问题 

1.2.2.1应用层

应用层决定了向用户提供应用服务时的通信活动

 应用服务比如:

  • FTP(File Transfer Protocol,文件传输协议)
  • DNS(Domain Name System,域名系统)等

HTTP协议处于应用层

1.2.2.2传输层

传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输

传输层有两个性质不同的协议:

  • TCP(Transmission Control Protocol,传输控制协议)
  • UDP(User Data Protocol,用户数据报协议)
 1.2.2.3网络层(又名网络互连层)

网络层用于处理在网络上流动的数据包,数据包是网络上传输最小的数据单位,该层还规定了发送给对方数据包的传输路线。

与对方计算之间或则通过对台计算机或则网络设备进行传输时,网络层就是在众多路线中选择一条路线

 1.2.2.4链路层

用来处理链接网络的硬件部分,包括控制操作系统,硬件的设备驱动,NIC(Network interface Card,网络适配器,即网卡),光纤,等一切物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均属于链路层的作用范围

1.2.3 TCP/IP通信传输流

  • 利用TCP/IP协议族进行网络通信时,发送端从客户端从上往下走,接收端服务端从下往上走

 HTTP举例说明:

  1. 发送端客户端在应用层(http协议)发送一个web页面的http请求
  2. 到了传输层(TCP协议)把从应用层处收到的数据(HTTP请求报文)进行分割,并在各个报文上打上标记序号及端口号后转发给网络层
  3. 到了网络层(IP协议),增加作为通信目的地的MAC地址后转发给链路层
  4. 到了接收端的服务器在链路层接收到数据,按顺序往上层发送,当传输到应用层,才能算真正的接收到由客户端发送过来的HTTP请求

 发送端在层与层之间传输数据时候,每经过一层时候必定会被打上一个该层的所属的首部信息,反之接收端在层与层传输数据时候,没经过一层会把对应的首部消去,这种数据信息包装起来的做法称为封装

 1.3 与HTTP关系密切的协议:IP、TCP、DNS

1.3.1 负责传输的IP协议

IP(internet Protocol)网络协议处于网络层,作用是把各种数据包发送给对方,其中最重要的条件IP地址和MAC(Media Access Control Adress)地址,

  • IP :节点分配的地址,可变,可以和mac进行配比
  • MAC:网卡所属的固定地址,基本上不会更改,可以和ip进行配比
1.3.1.1 使用ARP协议进行MAC地址通信

        ARP(Adress Resolution protocol)协议,是一种解析地址的协议,根据通信方的IP地址可以反查出对应的MAC地址

  •   IP之间通信会依赖于MAC地址,正常情况非统一局域网(lan)下的通信是通过多台计算机和网络设备的中转才可以连接到对方,在中转的时候,会利用下一站中转设备的MAC地址搜索下一个中转目标。这个过程使用到的协议就是ARP

1.3.2 确保可靠性的TCP协议

处于传输层的TCP,可以确定数据最终是否送达,发送过程把大块数据分割成报文为单位的数据包进行传输。

 1.3.2.1 可靠的三次握手

TCP协议采用三次握手策略来确定数据是否传输成功,TCP协议处理好数据发送后,会向对方确定是否发送成功,握手过程使用了TCP标志SYN(synchronize)和ACK(acknowledgement)

 

握手过程如有中断,会进行相同的顺序再次发送 

 1.4 负责域名解析的DNS服务

 DNS(Domain name System)服务和HTTP一样处于应用层,它提供了域名到IP之间的解析服务

 计算机既可以被赋予IP地址也可以被赋予主机名和域名例如www.hackr.jp

正常情况下访问另一台计算机是通过域名或则主机名,但是计算机商场处于数字,所以就需要DNS来解析

DNS可以通过域名查找IP,也可以通过IP逆向查找对方域名

 

 1.5 各种协议之间的关系

 

 1.5 URI和URL

URI(Uniform Resource Identifier) 统一资源标识符,URL(uniform Resource locator)统一资源定位符

URI:表示由某个协议方案表示的定位符,如(https ftp) 等,表示指定的URI必须涵盖全部必要的信息

URL:例如www.baidu.com,可见URL是URI的子集

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Docker】docker compose 安装 Redis Stack

注:整理不易,请不要吝啬你的赞和收藏。 前文 Redis Stack 什么是? 简单来说,Redis Stack 是增强版的 Redis ,它在传统的 Redis 数据库基础上增加了一些高级功能和模块,以支持更多的使用场景和需求。Redis…

kubesphere前端源码运行

一、下载源码 源码是react,下载地址是 GitHub - kubesphere/console at v3.3.2 然后直接用git下拉就可以了 下拉完成后差不多是这样一个目录结构,记得切分支到3.3.2 二、下载依赖 1、node & yurn 想要运行源码首先需要node,使用刚才…

蓝桥杯历届真题 #分布式队列 (Java,C++)

文章目录 题目解读[蓝桥杯 2024 省 Java B] 分布式队列题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示 思路完整代码 题目解读 题目链接 [蓝桥杯 2024 省 Java B] 分布式队列 题目描述 小蓝最近学习了一种神奇的队列:分布式队列。简单来说&#x…

PySide6 Qt for Python Qt Quick参考网址

Qt QML BOOK: 《Qt for Python》 -Building an Application https://www.qt.io/product/qt6/qml-book/ch19-python-build-app#signals-and-slots Qt for Python:与C版本的差异即BUG处理(常见的DLL文件确实的问题等) Qt for Pyt…

如何选择 Dockerfile 的放置方式

是否将 Dockerfile 放在项目根目录下还是为每个应用服务单独创建 Dockerfile,取决于项目架构和使用场景。以下是针对不同项目类型的最佳实践和推荐方式: 一、单体应用项目 项目特点 项目是一个单体应用,只有一个运行环境,例如&a…

如何稳定使用 O1 / O1 Pro,让“降智”现象不再困扰?

近期,不少朋友在使用 O1 或 O1 Pro 模型时,都会碰到“降智”或“忽高忽低”的智力波动,比如无法识图、无法生成图片、甚至回答准确度也不稳定。面对这些问题,你是不是也感到头疼呢? 为了找到更可靠的解决办法&#xf…

用户界面的UML建模11

然而,在用户界面方面,重要的是要了解《boundary》类是如何与这个异常分层结构进行关联的。 《exception》类的对象可以作为《control》类的对象。因此,《exception》类能够聚合《boundary》类。 参见图12,《exception》Database…

稀疏编码 (Sparse Coding) 算法详解与PyTorch实现

稀疏编码 (Sparse Coding) 算法详解与PyTorch实现 目录 稀疏编码 (Sparse Coding) 算法详解与PyTorch实现1. 稀疏编码 (Sparse Coding) 算法概述1.1 稀疏表示1.2 稀疏编码的优势2. 稀疏编码的核心技术2.1 稀疏编码的目标2.2 稀疏编码的优化2.3 基向量的学习3. PyTorch实现稀疏编…

记录一次面试中被问到的问题 (HR面)

文章目录 一、你对公司的了解多少二、为什么对这个岗位感兴趣三、不能说的离职原因四、离职原因高情商回复五、你的核心优势是什么六、你认为你比其他面试候选人的优势是什么七、不要提及情感 一、你对公司的了解多少 准备要点: 在面试前,对公司进行充分…

uniapp获取安卓与ios的唯一标识

uniapp获取安卓与ios的唯一标识 代码如下: const info uni.getSystemInfoSync(); const platform info.platform; // 手机安卓还是苹果if (info.platform ios) {// iosconsole.log(iOS 设备唯一标识:, info.deviceId);} else{//安卓console.log(系统信息:, use…

前端 图片上鼠标画矩形框,标注文字,任意删除

效果: 页面描述: 对给定的几张图片,每张能用鼠标在图上画框,标注相关文字,框的颜色和文字内容能自定义改变,能删除任意画过的框。 实现思路: 1、对给定的这几张图片,用分页器绑定…

前端学习汇总

一、打包工具 1.1、vite vite:vite -- 开发环境 热更新_vite 热更新-CSDN博客 1.2、webpack 常用loader:webpack基础---常用loader_webpack 常用loader-CSDN博客 loader:webpack4和webpack5区别1---loader_webpack4与webpack5处理图片的…

ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现

ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现 目录 ARIMA模型 (AutoRegressive Integrated Moving Average) 算法详解与PyTorch实现1. ARIMA模型概述1.1 时间序列预测1.2 ARIMA的优势2. ARIMA的核心技术2.1 自回归 (AR)2.2 差分 (I)2.3 移动平…

如果商品信息更新,爬虫会失效吗?

当商品信息更新时,爬虫是否失效取决于更新的具体内容。以下是一些可能影响爬虫的因素: 可能导致爬虫失效的情况 HTML结构变化:如果 yiwugo 平台更新了商品详情页面的 HTML 结构,比如改变了元素的标签、类名或 ID,那么…

Java调用外部接口有哪些方式

1.有哪些? 1.HttpURLConnection 1.介绍 1.这是Java标准库提供的一个类,用于发送HTTP请求和接收响应 2.它不需要额外的依赖,但是API相对底层,编写代码时需要处理很多细节,如设置请求头、处理连接和流等 2.代码示例…

pandas系列----DataFrame简介

DataFrame是Pandas库中最常用的数据结构之一,它是一个类似于二维数组或表格的数据结构。DataFrame由多个列组成,每个列可以是不同的数据类型(如整数、浮点数、字符串等)。每列都有一个列标签(column label)…

安装完docker后,如何拉取ubuntu镜像并创建容器?

1. 先docker拉取ubuntu镜像 docker search ubuntu #搜索ubuntu 镜像 docker pull ubuntu:22.04 #拉取ubuntu 镜像 docker images #下载完成后,查看已经下载的镜像 docker run --name ubuntu_container -dit ubuntu:22.04 /bin/bash # docker container -l 2.…

Qt监控系统远程网络登录/请求设备列表/服务器查看实时流/回放视频/验证码请求

一、前言说明 这几个功能是近期定制的功能,也非常具有代表性,核心就是之前登录和设备信息都是在本地,存放在数据库中,数据库可以是本地或者远程的,现在需要改成通过网络API请求的方式,现在很多的服务器很强…

详细解释 Vue 中的 h 函数和 render 函数:

Vue中的h函数和render函数是Vue中非常重要的函数,对Vue有着不可以或缺的作用,接下来让我们了解一下! // 1. h 函数的基本使用 /*** h 函数是 createVNode 的别名,用于创建虚拟 DOM 节点(VNode)* h 函数参数…

结构型模式3.组合模式

结构型模式 适配器模式(Adapter Pattern)桥接模式(Bridge Pattern)组合模式(Composite Pattern)装饰器模式(Decorator Pattern)外观模式(Facade Pattern)享元…