【网络安全】HTTP协议 — 基础

专栏文章索引:网络安全

有问题可私聊:QQ:3375119339

目录

学习目标​

一、万维网的诞生与发展​编辑

1.万维网的诞生与发展

2.HTTP协议诞生与发展

二、网络基础

1.TCP/IP分层传输

1)TCP/IP协议

2)封装与拆封

2.HTTP相关的协议

1)IP协议

2)TCP协议

3)DNS协议

三、URL和URI​编辑

1.URL(统一资源定位符)

2.URI(统一资源标识符)

3.URL和URI的对比

总结


学习目标

  • 了解万维网的背景
  • 熟悉与HTTP协议相关的网络基础知识
  • 掌握URL&URI
     

一、万维网的诞生与发展

1.万维网的诞生与发展

  • World Wide Web
    • 最初设想:借助多文档之间相互关联形成超文本(HyperText),连成可互相参阅的万维网(www ) 。
    • 1989年3月12日,实现了超文本传输协议(HTTP)客户端和服务器网的第一次成功通信。
    • 1990年11月,CERN(欧洲核子研究组织)成功研发了世界第一台Web服务器和Web浏览器。
      蒂姆·伯纳斯·李
  • WWW三大构建技术
    • HTML(超文本标记语言)
    • HTTP(超文本传输协议)
    • URL(统一资源定位符)
  • 浏览器
    • Mosaic
      • 1993年1月,美国国家超级计算机应用中心(NCSA)研发问世
      • 接下来应用于windows、mac电脑
    • Netscape Navigator
      • 1994年,网景通信公司研发
      • 1995年,同微软爆发浏览器大战
    • 当前主流浏览器
      • 国外:Chrome、firefox、Safari、IE(Edge)
      • 国内:QQ浏览器、UC浏览器、傲游、搜狗浏览器

2.HTTP协议诞生与发展

  • HTTP(HyperText    Transfer    Protocol)超文本传输协议
    • 1990年提出,当前版本为HTTP/1.1
    • 万维网交换信息的基础
    • 规定浏览器和服务器之间相互通信的规则
    • 允许将HTML文档从Web服务器传送到Web浏览器
    • 请求与响应对应的协议(客户机发送请求,服务器对收到的请求给出响应)
    • 使用可靠的TCP连接,默认TCP端口是80
  • HTTP协议
    • 0.9、1.0、1.1版本
    • 1.1版本
      • 1997年1月发布
      • 标准:RFC2616(至今)
    • 超出原理念
      • 最初仅用于解决文本传输
      • 多应用投入,现应用于各类场景中,视频、音乐、图片等

二、网络基础

1.TCP/IP分层传输

1)TCP/IP协议

  1. 链路层,有时也称作数据链路层或网络接口层,通常包括  操作系统中的设备驱动程序和计算机中对应的网络接口卡。 它们一起处理与电缆(或其他任何传输媒介)的物理接口  细节。
  2. 网络层,处理分组在网络中的活动,例如分组的选路。在 TCP/IP协议族中,网络层协议包括IP协议(网际协议),  ICMP协议(Internet互联网控制报文协议),以及IGMP  协议(Internet组管理协议)。
  3. 运输层,主要为两台主机上的应用程序提供端到端的通信。 在TCP/IP协议族中,有两个互不相同的传输协议:TCP (传输控制协议)和UDP(用户数据报协议)。
  4. 应用层,负责处理特定的应用程序细节。

2)封装与拆封


2.HTTP相关的协议

1)IP协议

IP协议,网际协议,是TCP/IP的核心协议,上层协议(TCP、UDP等)的数据包都是用IP  包承载传输

  • 不可靠
  • 无连接

  • IP数据报格式
    • IPV4&IPV6
    • IP寻址

2)TCP协议

TCP,传输控制协议

  • 传输层协议
  • 面向连接可靠的传输

  • 三次握手
  • 滑动窗口
    • 可靠传输
    • 超时重传
    • 流量控制
  • 四次挥手

  • 三次握手(先建连接    再传输)

  • 四次挥手(双向分别中断)

3)DNS协议

DNS,域名解析协议

  • 将域名解析为IP地址

  • 递归查询
  • 迭代查询

三、URL和URI

1.URL(统一资源定位符)

URL,用于标识资源的方向、地点 web浏览器中访问

  • web网页时输入的访问地址
  • ftp服务器资源的访问地址

  • 语法规则
    scheme://host.domain:port/path/filename
    • scheme - 定义因特网服务的类型。最常见的类型是http
    • host - 定义域主机(http 的默认主机是www)
    • domain - 定义因特网域名,比如sangfor.com
    • port - 定义主机上的端口号(http 的默认端口号是 80)
    • path - 定义服务器上的路径(如果省略,则文档必须位于网站的 根目录中)。
    • filename - 定义文档/资源的名称

2.URI(统一资源标识符)

URI,用字符串标识某一互联网资源。

  • ftp://ftp.is.co.za/rfc/rfc1808.txt
  • http://www.sangfor.com.cn/rfc/rfc1808.txt

3.URL和URI的对比

  • URL给出资源位于哪里(哪台主机、哪个路径、哪个文件夹)
  • URI给出具体某资源的定位路径(从资源自身出发,给出可达的路径)

总结

  • 万维网的诞生与发展
  • 网络基础
    • TCP/IP分层传输
    • HTTP相关的协议(IP、TCP、DNS)
  • URL和URI

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

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

相关文章

stm32 hid自定义接收发送程序开发过程记录

cubleMX配置如下 修改端点描述符一次传输的数据大小 根据cubelMX标准在这里修改 编译错误 直接修改(因为没有使用nodef )编译通过 修改报告描述符(默认的描述符无法传输数据) 参考:USB协议详解第10讲(USB描…

Xinlinx FPGA内的存储器BRAM全解

目录 一、总体概述1.7系列FPGA的BRAM特点2.资源情况 二、BRAM分类1.单端口RAM2.简单双端口RAM3.真双端口RAM 三、BRAM的读写1、Primitives Output Registers读操作注意事项2.三种写数据模式(1)Write_First(2)Read_First&#xff0…

JetBrains CLion v2023.3.4 激活版 (C/C++ 集成开发IDE)

前言 JetBrains CLion是一款跨平台的C/C集成开发环境,由JetBrains公司推出。其最新版本支持C14几乎完全,并初步支持C17,使得编写代码更加便捷。CLion还提供了Disassembly view(反汇编视图),即使没有源代码…

一、Django 初识

简介 Django 是一个用于构建 Web 应用程序的高级 Python Web 框架。 版本对应 不同版本的django框架是基于特定的不同的python版本开发的,所以不同版本的django框架要正常执行功能只能安装特定的python版本 Django安装 安装 Django # 全局安装 pip install dj…

web自动化系列-selenium的下拉框定位(十三)

在功能操作过程中 ,遇到下拉列表是很正常的事 ,比如像一些查询条件就都是使用的是下来列表 。所以 ,selenium也需要支持对下拉框的操作 。 1.下拉列表 在selenium中,也提供了一个下拉列表操作的类 :Select . 以下为该…

jdk版本冲突,java.lang.UnsupportedClassVersionError: JVMCFRE003

主要是编辑器所用的jdk版本和项目用的不一致导致的,虽然编译通过了,但是运行是会报错 选好后点击Apply点击ok,然后重新编译一遍项目就可以了

万辰集团如何破局“增收不增利”的困境?

在波澜不惊的食用菌加工行业,万辰集团(300972.SZ)曾是一名平凡的参与者。2021年战略转型的号角吹响,万辰集团挥别了传统业务,转而投身于快速增长的量贩零食市场,并迅速扩张到成为这一领域的重要玩家。万辰的…

Docker常见问题排查思路与实战

Docker作为一种流行的容器化技术,已经在众多场景中得到广泛应用。然而,在使用过程中,我们难免会遇到各种问题。本文将介绍一些常见的Docker问题及其排查思路,并通过实战案例帮助大家更好地理解和应对这些挑战。 1. Docker容器启动…

又重新搭了个个人博客

哈喽大家好,我是咸鱼。 前段时间看到一个学弟写了篇用 Hexo 搭建博客的教程,心中沉寂已久的激情重新被点燃起来。(以前搞过一个个人网站,但是因为种种原因最后不了了之) 于是花了一天时间参考教程搭了个博客网站&…

【数据结构(邓俊辉)学习笔记】向量03——无序向量

文章目录 0.概述1.元素访问2.置乱器3.判等器与比较器4.无序查找4.1 判等器4.2 顺序查找4.3 实现4.4 复杂度 5. 插入5.1 算法实现5.2 复杂度分析 6. 删除6.1 区间删除6.2 单元删除6.3 复杂度 7. 唯一化7.1 实现7.2 正确性7.3 复杂度 8. 遍历8.1 实现8.2 复杂度 9. 总结 0.概述 …

Spark 基础

/* Why Spark一、MapReduce编程模型的局限性1、繁杂:只有Map和Reduce两个操作,复杂的逻辑需要大量的样板代码2、处理效率低:2.1、Map中间结果写磁盘,Reduce写HDFS,多个Map通过HDFS交换数据2.2、任务调度与启动开销大3、…

LayuiMini使用时候初始化模板修改(下载源码)

忘记加了 下载 地址 : layui-mini: layuimini,后台admin前端模板,基于 layui 编写的最简洁、易用的后台框架模板。只需提供一个接口就直接初始化整个框架,无需复杂操作。 LayuiMini使用时候初始化模板官网给的是: layu…

Vue 组件单元测试深度探索:组件交互与状态变更 专业解析和实践

在Vue组件单元测试中,验证组件之间的交互(如父组件与子组件、兄弟组件之间的通信)以及状态变更的正确性对于保证整个应用的协调运作至关重要。本文详细介绍了父组件向子组件传递props、子组件向父组件发送事件、兄弟组件通过共享状态&#xf…

自然语言处理 (NLP) 的技术演变史

一、简述 本文的目标是了解自然语言处理 (NLP) 的历史,包括 Transformer 体系结构如何彻底改变该领域并帮助我们创建大型语言模型 (LLM)。 基础模型(如 GPT-4)是最先进的自然语言处理模型,旨在理解、生成人类语言并与之交互。 要理…

国产3D自研技术如何突围?眸瑞科技给3D建设、管理带来全新模式

眸瑞科技是全球领先的数字孪生引擎技术及服务提供商,它专注于让一切3D模型在全网多端轻量化处理与展示,为行业数字化转型升级与数字孪生应用提供成套的国产自研3D可视化技术、产品与服务。 引言 眸瑞科技是全球领先的数字孪生引擎技术及服务提供商&…

【MyBatisPlus】一、公共字段填充配置

目录 一、实体类配置 二、配置MyBatis Plus元对象处理器 三、接口字段自动填充 在使用mybatisplus项目中设置公共字段填充,可以按如下进行配置 一、实体类配置 TableField(value "create_time",fill FieldFill.INSERT)private LocalDateTime createTime…

【C++】哈希思想

目录 哈希介绍: 一,位图 1-1,位图的认识 1-2,位图的简单实现 1-3,位图的应用 二,布隆过滤器 2-1,布隆过滤器的认识 2-2,布隆过滤器的简单实现 2-3,布隆过滤器的…

Kafka 3.x.x 入门到精通(06)——Kafka进阶

Kafka 3.x.x 入门到精通(06)👉👉👉👉 Kafka进阶 3. Kafka进阶3.1 Controller选举3.2 Broker上线下线3.3 数据偏移量定位3.4 Topic删除3.5 日志清理和压缩3.7 页缓存3.8 零拷贝3.9 顺写日志3.10 Linux集群部…

Debian12使用宝塔国际aaPanel无法安装Docker

宝塔国际aaPanel自带安装Docker,安装了几次都失败,最后仔细看了安装日志,才发现其中的问题。 复制 --2023-11-28 13:42:13-- https://node.aapanel.com/install/0/docker_install_en.sh Resolving node.aapanel.com (node.aapanel.com)...…

Dockerfile镜像构建实战

一、构建Apache镜像 cd /opt/ #建立工作目录 mkdir /opt/apache cd apache/vim Dockerfile #基于的基础镜像 FROM centos:7 #维护镜像的用户信息 MAINTAINER this is apache image <cyj> #镜像操作指令安装Apache软件 RUN yum install -y httpd #开启80端口 EXPOSE 80 #…