【网络安全】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.rhkb.cn/news/316806.html

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

相关文章

[二叉树] 二叉树的前中后三序遍历#知二求一

标题:[二叉树] 二叉树的前中后三序遍历#知二求一 水墨不写bug (图片来源于网络) 正文开始: 其实这一类题就是考察对二叉树的结构理解,此类题目的二叉树一般通过数组传入,我们只需根据二叉树的就够特点对数…

用例整体执行及pytest.ini文件

在我们写代码的过程中,一般都是右键或者命令行去执行一个用例 但是当我们写完后,需要整体执行一遍。那应该怎么搞呢? 我们可以在根目录下新建一个main.py或者run.py之类的文件,文件内容如下: if __name__ "__ma…

设计模式 基本认识

文章目录 设计模式的作用设计模式三原则设计模式与类图设计模式的分类 设计模式的作用 设计模式是在软件设计过程中针对常见问题的解决方案的一种通用、可重用的解决方案。设计模式提供了一种经过验证的方法,可以帮助开发人员解决特定类型的问题,并在软…

社区新零售:重构邻里生活圈,赋能美好未来

新时代的邻里脉动 在城市的肌理中,社区作为生活的基本单元,正经历一场由新零售引领的深刻变革。社区新零售,以其独特的商业模式、创新的技术手段和以人为本的服务理念,重新定义了社区商业的边界,重构了邻里生活的形态…

CANoe中周期事件报文的配置方法

方法记录,最近在配置测试环境时遇到了如下的问题: Q:在通信矩阵中该报文应该为CE型报文。但是在DBC中设置模式为CE型时就无法发送,trace中不会出现此报文,将它设置为周期型报文,就能正常在trace中出现。 A:DBC中不能…

安装ROS

前提必须是20.04版本。。。 一、首先,先设置安装源,我们选择国内中科大的安装源 sudo sh -c . /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ lsb_release -cs main" > /etc/apt/sources.list.d/ros-lat…

便携式iv检测仪解析

TH-PV31光伏电站便携式IV功率测试仪是一种专门用于光伏电站运维和故障排查的设备。它具备高精度、快速测试以及便携性等特点,成为光伏电站日常运维中不可或缺的工具。 首先,从工作原理来看,光伏电站便携式IV功率测试仪通过模拟太阳光照射光伏…

.NET C# ORM 瀚高数据库

SqlSugar ORM SqlSugar 是一款 老牌 .NET开源ORM框架,由果糖大数据科技团队维护和更新 ,开箱即用最易上手的ORM 优点 :【生态丰富】【高性能】【超简单】 【功能全面】 【多库兼容】【适合产品】 【SqlSugar视频教程】 支持 &#xff1a…

go版本1.16.5 运行项目出现undefined: math.MaxInt报错

问题描述 go版本 go1.16.5 项目引用了 包go-sqlite3 v1.14.17 github.com/mattn/go-sqlite3 v1.14.17运行报错 # github.com/mattn/go-sqlite3 D:\GoPATH\pkg\mod\github.com\mattn\go-sqlite3v1.14.17\sqlite3_opt_serialize.go:41:26: undefined: math.MaxInt原因分析&…

行为型设计模式

一、责任链设计模式 (一)概念 使多个对象都有机会处理同一个请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 (二&#xf…

医院手术室麻醉信息管理系统源码 自动生成麻醉的各种医疗文书(手术风险评估表、手术安全核查表)

目录 手术风险评估表 一、患者基本信息 二、既往病史 三、手术相关信息 四、风险评估因素 五、风险评估结果 手术安全核查表 一、患者身份与手术信息核对 二、术前准备核查 三、手术团队与职责确认 四、手术物品与设备核查 五、术中关键步骤核查 六、术后核查 七…

亚马逊的Listing是否会导致店铺关联?

亚马逊账号关联是否有可能因为listing产品引起的呢?也会存在关联,但如果其中一个站点出了问题,另一账号跟着出事的情况不多见(因为亚马逊本来就支持卖家到各个站点开店把产品销售的各个区域)。很多客户有过相关的经验都…

11.JAVAEE之网络原理1

1.应用层(和程序员接触最密切) 应用程序 在应用层这里,很多时候, 都是程序员"自定义"应用层协议的,(当然,也是有一些现成的应用层协议)(这里的自定义协议,其实是非常简单的~~协议 >约定,程序员在代码中规定好,数据如何进行传输) 1.根据需求, 明确要传…

Netty: NIO网络编程

文章目录 一、NIO介绍二、NIO原理三、Buffer1、Buffer原理介绍2、Buffer实现类3、示例4、NIO和BIO的比较 四、Channel1、介绍2、FileChannel介绍3、Buffer和Channel的注意事项 五、Selector六、Selector、Channel和Buffer关系 一、NIO介绍 NIO介绍 二、NIO原理 NIO有三大核心…

使用 IPAM 解决方案简化分布式网络管理

随着组织在数字领域的全球扩张,分布式网络是不可避免的,这意味着,随着 IT 基础设施的发展,组织需要适应,这包括在不断增长的系统需求、应用程序堆栈、各种协议和安全防御中监控、现代化和简化流程和资源。在有效管理现…

Python新手入门基础英文笔记

1、字符串的操作 user:用户 name:名称/姓名 attibute:字段/属性 Value:值 2、重复/转换/替换/原始字符号 upper:上面 lower:下面 capitalize:用大写字母写或印刷 title:标题…

Leetcode—2739. 总行驶距离【简单】

2024每日刷题(121) Leetcode—2739. 总行驶距离 实现代码 class Solution { public:int distanceTraveled(int mainTank, int additionalTank) {int consume 0;int ans 0;while(mainTank ! 0) {mainTank--;consume;if(consume 5 && additio…

(5)步态识别论文研读——GaitDAN:基于对抗域适应的跨视角步态识别

GaitDAN: Cross-view Gait Recognition via Adversarial Domain Adaptation | IEEE Journals & Magazine | IEEE Xplore GaitDAN: Cross-view Gait Recognition via Adversarial Domain Adaptation 基于对抗与适应 摘要:视角变化导致步态外观存在显着差异。因…

刷代码随想录有感(50):路径总和

题干: 代码; class Solution { public:bool traversal(TreeNode* node, int count){if(node NULL)return false;if(!node -> left && !node -> right && count 0)return true;if(!node -> left && !node -> right &&…

一个类实现Mybatis的SQL热更新

引言 平时用SpringBootMybatis开发项目,如果项目比较大启动时间很长的话,每次修改Mybatis在Xml中的SQL就需要重启一次。假设项目重启一次需要5分钟,那修改10次SQL就过去了一个小时,成本有点太高了。关键是每次修改完代码之后再重…