IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 2022年蓝旭前端第三次暑期培训课(上) -> 正文阅读

[网络协议]2022年蓝旭前端第三次暑期培训课(上)

一、HTTP协议

1.1 认识http

HTTP协议(HyperText Transfer Protocol) 全称超文本传输协议,是因特网上最广泛的一种网络传输协议,基于TCP/IP协议传输数据。

超文本
早期,输入的信息只能保存在本地,无法和其他电脑进行交互。保存的信息通常都以文本这样能够被计算机解析的有意义的二进制数据包的形式存在。后来随着互联网的高速发展,实现两台电脑之间进行数据的传输后,人们已经不满足于只能传输文字,还想要传输图片、音频、视频,甚至点击文字或图片能够进行超链接的跳转,这种语义扩大后的文本就被称为超文本(Hypertext)。
传输
两台计算机之间会形成互联关系进行通信,存储的超文本会被解析成为二进制数据包,由传输载体(例如同轴电缆,电话线,光缆)负责把二进制数据包由计算机终端传输到另一个终端的过程称为传输(transfer)
协议
网络协议就是网络中(包括互联网)传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。

HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范

1.2 网络模型介绍

五层网络模型为例介绍网络协议发分层
在这里插入图片描述应用层是网络应用程序网络协议存放的分层,因特网的应用层包括许多协议,为软件提供很多的服务。应用层构建于tcp之上,一个端系统应用程序与另外一个端系统应用程序交换信息分组,我们把位于应用层的信息分组称为 报文(message)。

运输层在应用程序断点之间传送应用程序报文,在这一层主要有两种传输协议 TCP和 UDP,利用这两者中的任何一个都能够传输报文。
TCP 向它的应用程序提供了面向连接的服务,它能够控制并确认报文是否到达,并提供了拥塞机制来控制网络传输,因此当网络拥塞时,会抑制其传输速率。
UDP 协议向它的应用程序提供了无连接服务。它不具备可靠性的特征,没有流量控制,也没有拥塞控制。我们把运输层的分组称为 报文段(segment)

网络层 网络层负责将称为 数据报(datagram) 的网络分层从一台主机移动到另一台主机。网络层一个非常重要的协议是 IP 协议,所有具有网络层的因特网组件都必须运行 IP 协议,由此网络层为数据在结点之间的传输创建逻辑链路。

链路层 为了将分组从一个节点(主机或路由器)运输到另一个节点,网络层必须依靠链路层提供服务,利用数据链路层为实体之间建立数据链路联系。链路层的例子包括以太网、WiFi 和电缆接入的 DOCSIS 协议。

物理层 定义是物理设备如何传输数据

1.3.http协议的发展历史

http/0.9 只有get 没有header等信息,服务器发送完毕,就关闭tcp连接
http/1.0 增加命令,增加status code、header,多字符集支持等
http/1.1 持久连接,pipeline,host和其他一些命令
http2 所有数据以二进制传输、同一个连接里面发送多个请求不在需要按照顺序来、头信息压缩以及推送等提高效率的功能

1.4 http 三次握手

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的syn(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

在这里插入图片描述
你与淘宝客服的交流为例解释

1.5 与http相关的协议

TCP/IP

TCP/IP 协议簇其是一系列网络通信协议的统称,其中不止含TCP 协议和 IP 协议,最核心的两个协议就是 TCP / IP 协议,其他的还有 UDP、ICMP、ARP 等等,共同构成了一个复杂但有层次的协议栈。

TCP 协议的全称是 Transmission Control Protocol 的缩写,意思是传输控制协议,HTTP 使用 TCP 作为通信协议,这是因为 TCP 是一种可靠的协议,而可靠能保证数据不丢失。

IP 协议的全称是 Internet Protocol 的缩写,其主要解决的是通信双方寻址的问题。IP 协议使用 IP 地址 来标识互联网上的每一台计算机

DNS

计算机网络中的每个端系统都有一个 IP 地址存在,而把 IP 地址转换为便于记忆的协议就是 DNS 协议

DNS协议 的全称是域名系统(Domain Name System,缩写:DNS),它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网

URI URL URN

URI的全称是(Uniform Resource Identifier),中文名称是统一资源标识符,使用它就能够唯一地标记互联网上资源。其中包含了URL以及URN。
http://bitpoetry.io/posts/hello.html#intro

URL的全称是(Uniform Resource Locator),中文名称是统一资源定位符,也就是我们俗称的网址,它实际上是 URI 的一个子集。其仅标识了Web 资源,还指定了操作或者获取方式,同时指出了主要访问机制和网络位置
http://bitpoetry.io/posts/hello.html

URN(统一资源名称),表示的含义是资源移动后还能访问
bitpoetry.io/posts/hello.html#intro包括名字,但是不包括访问方式

https

HTTP 一般是明文传输,很容易被攻击者窃取重要信息,鉴于此,HTTPS (Hyper Text Transfer Protocol over SecureSocket Layer)。HTTPS 和 HTTP 有很大的不同在于 HTTPS 是以安全为目标的 HTTP 通道,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在 HTTP 的基础上增加了 SSL 层,也就是说 HTTPS = HTTP + SSL。

1.6 http请求响应过程

  • DNS服务器会首先进行域名的映射,找到访问www.baidu.com所在的地址,然后HTTP 客户端进程在 80 端口发起一个到服务器 www.baidu.com 的 TCP 连接(80 端口是 HTTP 的默认端口)。在客户和服务器进程中都会有一个套接字与其相连。
  • HTTP 客户端通过它的套接字向服务器发送一个 HTTP 请求报文。HTTP 服务器通过它的套接字接受该报文,进行请求的解析工作,并从其存储器(RAM 或磁盘)中检索出对象,然后把检索出来的对象进行封装,封装到 HTTP 响应报文中,并通过套接字向客户进行发送。
  • HTTP 服务器随即通知 TCP 断开 TCP 连接,实际上是需要等到客户接受完响应报文后才会断开 TCP 连接。
    HTTP 客户端接受完响应报文后,TCP 连接会关闭。HTTP
    户端从响应中提取出报文中是一个 HTML 响应文件,并检查该 HTML 文件,然后循环检查报文中其他内部对象。
    检查完成后,HTTP 客户端会把对应的资源通过显示器呈现给用户。

1.7 http报文

http请求中各参数详解
响应头
在这里插入图片描述
常见状态码:

  • 200 OK:表示客户端请求成功
  • 400 Bad Request:表示客户端请求有语法错误,不能被服务端解析
  • 403 Forbidden:服务器接收到请求,但拒绝提供服务
  • 404 Not Found:请求资源不存在
  • 500 Internet Server Error:服务端发生错误,无法处理请求
  • 503 Service Unavailable:服务器暂时无法处理请求

cache-control

Cache-Control 是一个通用标头,他可以出现在请求标头和响应标头中,Cache-Control 的种类比较多,虽然说这是一个通用标头,但是又一些特性是请求标头具有的,有一些是响应标头才有的。
在请求体中在这里插入图片描述
在响应体中
在这里插入图片描述

connetion

Connection 决定当前事务完成后,是否会关闭网络连接。同一个connection id 就是同一个tcp连接。Connection 有两种,一种是持久性连接,即一次事务完成后不关闭网络连接

Connection: keep-alive

另一种是非持久性连接,即一次事务完成后关闭网络连接

Connection: close

e30d55d7114d1f9a2a8ad148ada904.png)

请求头
在这里插入图片描述

内容协商

内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源。内容协商会以响应资源的语言、字符集、编码方式等作为判断的标准
内容协商的分类有很多种,主要的几种类型是 Accept、Accept-Charset、Accept-Encoding、Accept-Language、Content-Language

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:57:20  更:2022-07-17 16:58:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 13:18:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码