与HTTP相关的各种协议

本文涉及的产品
.cn 域名,1个 12个月
简介: 与HTTP相关的各种协议

说明

《透视HTTP协议》罗剑锋 (奇虎360技术专家)在极客时间开的一门专栏课,笔者记录一下学习笔记,仅供参考。


思维导图

aHR0cHM6Ly91c2VyLWdvbGQtY2RuLnhpdHUuaW8vMjAxOS8xMS8xNC8xNmU2OGM4M2ZkNmFmNjM0.png



TCP/IP

TCP/IP 协议是一系列网络通信协议的统称,核心: TCP 和 IP,其他: UDP、ICMP、ARP 等等。


IP

IP 协议是Internet Protocol的缩写,主要目的是解决寻址和路由问题,以及如何在两点间传送数据包。


TCP

TCP 协议是Transmission Control Protocol的缩写,即传输控制协议,它位于 IP 协议之上,基于 IP 协议提供可靠的、字节流形式的通信。


DNS

域名系统(Domain Name System),用有意义的名字来作为 IP 地址的等价替代。



  • 1、在 DNS 中,域名(Domain Name)又称为主机名(Host)
  • 2、域名用.分隔成多个单词,级别从左到右逐级升高,最右边的被称为顶级域名
  • 3、表示商业公司的com,表示教育机构的edu,表示国家的cn,uk
  • 4、把域名做一个转换,映射到它的真实 IP,这就是所谓的域名解析



URI/URL

DNS 和 IP 地址只是标记了互联网上的主机,要访问网络上的资源就需要用到 URI。


URI(Uniform Resource Identifier),即统一资源标识符,使用它就能够唯一地标记互联网上资源。

URL(Uniform Resource Locator), 即统一资源定位符,也就是俗称的网址,它实际上是 URI 的一个子集,两者几乎是相同的,差异不大,通常不会做严格的区分。


用Nginx网站为例了解一下 URI

http://nginx.org/en/download.html


URI 主要有三个基本的部分构成:

  • 协议名:即访问该资源应当使用的协议,在这里是http
  • 主机名:即互联网上主机的标记,可以是域名或 IP 地址,在这里是nginx.org
  • 路径:即资源在主机上的位置,使用/分隔多级目录,在这里是/en/download.html




HTTPS

HTTP over SSL/TLS,也就是运行在 SSL/TLS 协议上的 HTTP。


SSL:全称是Secure Socket Layer,由网景公司发明,当发展到 3.0 时被标准化,改名为 TLS,即Transport Layer Security,但由于历史的原因还是有很多人称之为 SSL/TLS,或者直接简称为 SSL。

SSL使用了许多密码学最先进的研究成果


   对称加密

   非对称加密

   摘要算法

   数字签名

   数字证书…



代理

代理(Proxy)是 HTTP 协议中请求方和应答方中间的一个环节,作为中转站,既可以转发客户端的请求,也可以转发服务器的应答。


代理的种类

  • 匿名代理:完全“隐匿”了被代理的机器,外界看到的只是代理服务器
  • 透明代理:顾名思义,它在传输过程中是“透明开放”的,外界既知道代理,也知道客户端
  • 正向代理:靠近客户端,代表客户端向服务器发送请求
  • 反向代理:靠近服务器端,代表服务器响应客户端的请求



CDN,实际上就是一种代理,它代替源站服务器响应客户端的请求,通常扮演着透明代理和反向代理的角色。


代理是 HTTP 传输过程中的中转站,可以实现:


   负载均衡:把访问请求均匀分散到多台机器,实现访问集群化

   内容缓存:暂存上下行的数据,减轻后端的压力

   安全防护:隐匿 IP, 使用 WAF 等工具抵御网络攻击,保护被代理的机器

   数据处理:提供压缩、加密等额外的功能




目录
相关文章
|
2月前
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
130 7
|
15天前
|
域名解析 缓存 网络协议
Web基础与HTTP协议
通过掌握这些基础知识和技术,开发者可以更加高效地构建和优化Web应用,提供更好的用户体验和系统性能。
64 15
|
10天前
|
前端开发 网络协议 安全
【网络原理】——HTTP协议、fiddler抓包
HTTP超文本传输,HTML,fiddler抓包,URL,urlencode,HTTP首行方法,GET方法,POST方法
|
13天前
|
缓存 网络协议 算法
从零开始掌握HTTP协议
本文介绍HTTP协议的演变,从HTTP1.0到HTTP2.0。HTTP1.0为无状态连接,每次请求独立;HTTP1.1引入持久连接、管道化请求和更多状态码;HTTP2.0采用二进制分帧、多路复用、头部压缩及服务器主动推送,大幅提升性能与用户体验。了解这些区别有助于开发者优化应用和服务。
|
13天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
60 1
|
2月前
|
开发者
HTTP 协议请求方法的发展历程
【10月更文挑战第21天】
|
2月前
|
Dubbo 安全 应用服务中间件
Apache Dubbo 正式发布 HTTP/3 版本 RPC 协议,弱网效率提升 6 倍
在 Apache Dubbo 3.3.0 版本之后,官方推出了全新升级的 Triple X 协议,全面支持 HTTP/1、HTTP/2 和 HTTP/3 协议。本文将围绕 Triple 协议对 HTTP/3 的支持进行详细阐述,包括其设计目标、实际应用案例、性能测试结果以及源码架构分析等内容。
|
2月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
74 11
|
2月前
|
缓存 安全 网络协议
HTTPS协议的历史发展
HTTPS协议的历史发展
48 8
|
2月前
|
安全 应用服务中间件 Linux
判断一个网站是否使用HTTPS协议
判断一个网站是否使用HTTPS协议
90 4