URL+Tcp/IP+Http Https

                                      URL

 

1,在WWW上,每一个信息资源都有统一的且在网上唯一的地址,该地址就叫URL,(统一资源定位器),它是WWW的统一资源定位标志,就是指网络地址,用于定位网络资源,例如:视频,音频,图片,文本,网页等

 

2,学习它的作用:理解网络资源地址的组成,有助于服务器开发时对资源定位的理解,有助于更好的使用网络资源

 

3,组成:协议://域名:端口号/虚拟路径?参数列表#锚点

 

​ 示例:http://www.4399.com/flash/130396.htm

 

​ http://www.baidu.com/s?wd=xxx

 

​ 端口号不显示,比如HTTP协议默认端口号80

 

​ 协议是计算机网络中进行数据交换而建立的规则,标准

 

​ 域名是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识

 

   端口号(逻辑端口)是逻辑意义上用于区分服务的端口

 

   虚拟路径:当要访问服务器端真实路径,需要提供虚拟路径来让用户访问

 

  参数列表:通过URL定位资源时,发送给服务器的多个参数

 

  锚点:常常用于那些内容庞大繁琐的网页,通过点击锚点,快速到达锚点指示的网页位置,常用于设置“去顶部”的按钮

                               

 

                                    Tcp/IP

 

 

1.体系结构 主要协议

应用层(应用程序层)    ping    telnet  OSPF  DNS                                    用户空间

传输层                               TCP       UDP

网络层                               ICMP        IP                                                         内核空间

数据链路层                      ARP  Data Link   RARP                               物理传输媒介

1,数据链路层:网卡接口的网络驱动程序,处理数据在物理传输媒介上的传输

不同的物理网络具有不同的电器特性,网络驱动程序隐藏了折现细节,为上层的协议提供了一个统一的接口,因为我们的网卡不是只由一个生产商生产的,里面的内容包括它交换的数据格式也是不一样的

ARP协议(地址解析协议)和RARP协议(逆地址解析协议)   协议负责IP地址和物理地址的解析和逆解析,

网络层是通过IP地址来锁定一个主机的

数据链路层是通过物理地址来连接一个主机的

2,网络层:数据包的选择和转发      网络层对上层协议也隐藏了这些网络的拓扑连接的细节,使得传输层和网络的应用程序看来,这两个又是直连的

最核心的协议是IP协议,根据数据包的目的IP地址决定如何进行投递这个信息,如果数据没法直接发送给目标的主机,那么IP协议就为它寻找合适的下一个路由器,它是通过逐跳的方式来确定通讯的路径然后将数据包交给路由器进行转发,多次的重复这一个过程,最终到达目标的主机或者由于发送失败而被丢弃

IMCP协议用于检测网络的连接,它是IP协议非常重要的补充,用于检查网络连接

8位类型(区分报文类型,有差错报文,即回应网络错误和查询报文,即查询网络信息),8位代码(进一步细分不同条件),16位校验和(对整个报文进行循环的冗余校验也就是CRC,以检验报文在传输中是否损坏)

报文内容(不同的ICMP的报文有不同的正文内容)

3.传输层:为两台主机上的应用程序提供端到端的通讯,不在乎中转过程,只关心起始端和目的端

TCP(传输控制协议,为应用层提供可靠,面向连接,基于流的服务) UDP(不可靠,无连接,基于数据报的服务) SCIP(为在因特网上传输电话信息而设计的服务)

4.应用层:处理应用程序的逻辑

Ping应用程序,利用ICMP报文检测网络连接

Telnet远程登陆协议,在本地完成远程任务

OSPF(开发最短路径优先),动态路由更新协议,用于路由器之间的通信

DNS协议,提供机器域名到IP地址的转换功能

注意:应用层的协议可能会跳过传输层直接使用网络层的服务

​           应用层的协议通常可以使用TCP服务,也可以使用UDP服务

​                                                                                       二,封装

通过封装使上层的协议使用下层协议所提供的服务

传递信息时每一层协议都在上层数据的基础上加上自己的头部信息,实现该层功能

TCP报文段:经过TCP封装后的数据        UDP数据报:经过UDP封装后的数据             帧:经过数据链路层封装的数据(传输媒介不同,帧的类型不同

​                                                                                       

​                                                                                   三,分用

通过分用使在帧到达目的主机沿着自底向上依次传递时,各层协议依次处理帧中本层负责头部数据,以获得所需的信息,并最终将处理后的帧交给目标应用程序

​                                                                                  四,ARP

实现任意网络层地址到任意物理层地址的转换

主机向自己所在网络广播一个ARP请求,包含目标机器网络地址,所有机器都会收到请求,只有目标主机会应答,

​ 五,DNS

 

域名服务,将机器域名转换成IP地址,

 

标志字段:协商具体的通信方式和反馈通信状态

 

​ 六,IP服务的特点

 

IP协议是TCP/IP协议族的动力,它为上层协议提供无状态,无连接,不可靠的服务

 

1.无状态指IP通信双方不同步传输数据的状态信息,因此所有IP数据报的发送,传输和接受都是相互独立,没有上下文关系的,最大的缺点是无法处理乱序和重复的IP数据报, 比如第N个数据包可能比第N+1更慢到达接收端,一个数据报也可能多次到达接收端,这两种情况下IP模块就无法检测到乱序和重复,因为没有任何的上下文关系,接收端只要接到了完整的数据报,就会交给上层协议,那上层协议看来是乱序的,重复的,面向连接的协议, 如TCP协议,就能自己处理,然后递交给上层协议内容绝对是有序的,正确的

 

但无状态也有优点,简单,高效

 

2.无连接指IP通信的双方都不长久的维持双方的任何信息,因此上层协议每次发送数据的时候都必须要指定每个对方的这个IP地址

 

3.不可靠是指IP协议不能保证IP数据报准确的到达接收端,只是尽最大的努力

 

因为很多情况都能导致这个发送失败,比如中转路由发现IP数据报存活时间太长,也就是TTL字段太长,那么就会丢弃并返回一个ICMP的错误信息,也就是超时错误给发送端

                         

 

                                HTTPS http

 

一,   Http是超文本传输协议,基于Tcp/Ip协议,Https中的s为Secure,是安全的意思,所以Https相当于Http的加强版

二, 1.  目前Http常用的版本是1.1和2,2相比于1的优点是多路复用,(例如传送图片,Http/2就会更快,)多路复用指通过单一的Http/2连接请求发起多重的请求,响应消息,多个请求stream共享一个Tcp连接,实现多留并行而不是依赖建立多个Tcp连接

​         2.我们通过浏览器请求数据时,首先要给服务器发送请求报文,服务器返回叫响应报文,报文格式如下

​             请求报文                                                                               响应报文

   请求行:方法(GET)  URL  版本(HTTP)   CRLP                          版本    状态码   短语    CRLF

   首部行:首段字段名:值                                                              首段字段名

​                 CRLP                                                                                   CRLP

​                 

​                实体主体                                                                              实体主体

​         3.Http特点  :无状态(对事物的处理没有记忆能力)

​                                无连接(每次需要重新响应请求)

​                                  基于请求和响应

​                               简单快捷灵活

​                               通信使用明文,请求和响应不会对通信方进行确认,无法保护数据的完整性

​        4.Http通信传输(TCP三次握手,四次挥发)三次握手防止了误会产生

​                           浏览器向服务器发送请求命令,请求头信息,服务器向浏览器发送应答头信息,数据,最终以服务器关闭TCP连接结束

​   发送端每通过一层则增加首部 (由上至下)      接收端每通过一层则删除首部(由下至上)

加粗部分按照U形看

应用层 Http数据(向下) Http数据   (向上)

​传输层加Tcp首部(向下)减Tcp首部(向上)

​网络层加 IP首部(向下)减 IP首部    (向上)

​数据链路层加以太网首部(向下)                             (向右)               减以太网首部(向上)

三,1.  Https更安全是因为它不再明文,是密文

​        2.Https特点   :内容加密(采用混合加密技术,中间者无法直接查看明文内容)

​                                  验证身份(通过证书认证客户端访问的是自己的服务器)

​                                  保证数据完整

​         3.Https实现原理

​                       ​ A 发送请求,连接端口,发送的信息主要是随机值1和客户端支持的加密算法 

 

​ B 接收到信息后响应握手信息,包括随机值2和匹配好的协商加密算法,此加密算法一定是A加密算法的子集

 

​ B 给A发送的第二个响应报文是数字证书(证书有公钥和私钥)

 

​ A发现证书没有问题,会随机生成一个密钥,通过后,随机值1,随机值2,预主密钥三个组装为会话密钥,通过证书的公钥加密会话密钥

 

​ 传送加密信息,即会话密钥,使B得到其中的三个东西,B得到后组装会话密钥,与A会话密钥相同

 

​ A通过会话密钥加密一条消息发给B,验证其能否正常接受A的消息

 

​ B也会有同样的操作,双方验证成功后,SSL层建立完成

 

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

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

相关文章

全新子比主题7.9.2开心版 子比主题最新版源码

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 wordpress zibll子比主题7.9.2开心版 修复评论弹授权 可做付费下载站 含wordpress搭建视频教程zibll子比主题安装视频教程支付配置视频教程,视频都是语音讲解,…

AI产品经理:从入门到精通,一篇文章带你入门!(附学习资料)

一、AI产品经理工作全流程概览 AI产品经理工作全流程中与普通产品经理的区别主要是多了算法模型部分,包括模型预研、数据准备、模型构建、模型宣讲、模型验收,协作的对象相对普通产品经理也多了算法工程师。 二、需求定义 需求定义主要要定义清楚以下几…

Ubuntu系衍生版手动修改配置网卡的配置总结

一、Ubuntu系的IP地址配置文件的目录: sudo vim /etc/network/interfaces 二、以DHCP方式配置网卡: 在以上配置文件中添加以下两行: auto enp3s0 iface enp3s0 inet dhcp 三、为网卡配置静态IP地址: 在以上配置文件中添…

探索迷宫的奥秘:用 C++ 打造你的迷宫游戏之旅!

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

面试官:重量级锁的8连问,你能接住几个?

前言 接上一篇偏向锁的十连问,继续升级到重量级锁的进阶版,检验一下自己离精通重量级锁还有多远。建议在读之前了解下Java中重量级锁的实现原理。 重量级锁的ObjectMonitor和JUC中的AQS有什么异同 为什么ObjectMonitor需要cxq和entryList两个等待队列 …

THP4 SOP16 芯片 高速光耦芯片

光电耦合器输入端加电信号使发光源发光,光的强度取决于激励电流的大小,此光照射到封装在一起的受光器上后,因光电效应而产生了光电流,由受光器输出端引出,这样就实现了电一光一电的转换。 由于光耦合器输入输出间互相…

5g工业路由器最新案例:高原气象站网络升级项目

背景: 某省气象局决定在高原地区升级其气象观测网络,以提高天气预报的准确性和及时性,同时为气候变化研究提供更可靠的数据支持。该项目面临以下挑战: 需要在高原广袤且地形复杂的区域部署大量自动气象站,要求网络覆…

Java配置 Redis 连接互斥锁或队列预先加载缓存

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把手教你开发炫酷的vbs脚本制作(完善中……) 4、牛逼哄哄的 IDEA编程利器技巧(编写中……) 5、面经吐血整理的 面试技…

【HuggingFace 如何上传数据集 (2) 】国内网络-稳定上传图片、文本等各种格式的数据

【HuggingFace 下载】diffusers 中的特定模型下载,access token 使用方法总结【HuggingFace 下载中断】Git LFS 如何下载指定文件、单个文件夹?【HuggingFace 如何上传数据集】快速上传图片、文本等各种格式的数据 上文的方法因为是 https 协议&#xf…

1024-过去一年的总结

目录 前言 (10月-24.01)故事的开始 (2月-7月)漫长的学习与探索 (8月-现在)低谷期 自我审视 前言 1024在即,就借此机会讲一讲过去一年的经历,也算是全方位总结一下自己 (10月-24.01)故事的开始 那就从去年大一入学…

【C++】STL——priority_queue优先级队列

目录 前言priority_queue的使用简单使用在OJ中的使用 priority_queue的模拟实现基本功能仿函数在这里插入图片描述 前言 上一节我们说了stack和queue这两种容器适配器,而priority_queue(优先级队列)同样也是属于容器适配器,它会优…

【Fargo】9:模拟图片采集的内存泄漏std::bad_alloc

std::bad_alloc 崩溃。这样的内存分配会导致内存耗尽 is simulating an image of size 640x480 with 3 bytes per pixel, resulting in an allocation of approximately 921,600 bytes (or around 900 KB) for each image. The error you’re encountering (std::bad_alloc) ty…

Java 多线程(四)—— 线程安全 与 volatile 与 单例模式

什么是线程安全 在进行多线程编程的时候,当我们编写出来的多线程的代码运行结果不符合我们的预期的时候,这时候就是 bug,这种 bug 是由于多线程的问题而产生出来的 bug 我们称之为 线程安全问题 当我们编写出来的多线程代码运行之后的结果符…

学习文档(5)

Redis应用 目录 Redis应用 Redis 除了做缓存,还能做什么? Redis 可以做消息队列么? Redis 可以做搜索引擎么? 如何基于 Redis 实现延时任务? Redis 除了做缓存,还能做什么? 分布式锁&…

三周精通FastAPI:5 查询参数和字符串校验

FastAPI手册:https://fastapi.tiangolo.com/zh/tutorial/query-params-str-validations/ 查询参数和字符串校验 FastAPI 允许你为参数声明额外的信息和校验。让我们以下面的应用程序为例: from fastapi import FastAPIapp FastAPI()app.get("/it…

基于springboot+thymeleaf+springsecurity搭建一套web小案例

一、前言 本案例中的源代码已上传到资源库,可自行下载,传送阵 https://download.csdn.net/download/qq_36260963/89906196 Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发&#x…

git clone 鉴权失败

git clone 鉴权失败问题 1. 问题描述2. 解决方法 1. 问题描述 使用git clone自己的代码报如下错误: 正克隆到 xxx... Username for https://github.com: Password for https://xxxgithub.com: remote: Support for password authentication was removed on Augu…

RAG流程的实现与改进

一、 RAG流程图 数据入库:读取本地数据并切成小块,并把这些小块经过编码embedding后,存储在一个向量数据库中(下图1——6步);相关性检索:用户提出问题,问题经过编码,再在…

Vue项目中实现拖拽上传附件:原生JS与Element UI组件方法对比

在现代化的Web应用中,文件上传是一个基本功能。随着技术的发展,拖拽上传已经成为提升用户体验的一个重要特性。在Vue项目中,我们可以通过原生JavaScript或使用Element UI组件来实现这一功能。下面我们将分别介绍这两种方法,并对比…

吴恩达深度学习笔记(6)

正交化 为了提高算法准确率,我们想到的方法 收集更多的训练数据增强样本多样性使用梯度下降将算法使算法训练时间更长换一种优化算法更复杂或者更简单的神经网络利用dropout 或者L2正则化改变网络框架更换激活函数改变隐藏单元个数 为了使有监督机制的学习系统良…