系统设计 - 我们如何通俗的理解那些技术的运行原理 - 第一部分:通信协议(3)

news2024/11/17 16:45:30

本心、输入输出、结果

文章目录

  • 系统设计 - 我们如何通俗的理解那些技术的运行原理 - 第一部分:通信协议(3)
    • 前言
      • TCP/IP 封装
        • 步骤说明
      • 为什么Nginx被称为“反向”代理?
        • 转发代理通常用于:
        • 反向代理适用于:
      • 常见的负载均衡算法有哪些?
        • 静态算法
        • 动态算法
      • URL, URI, URN - 你知道区别吗?
        • URI
        • URL
        • URN
      • 弘扬爱国精神

系统设计 - 我们如何通俗的理解那些技术的运行原理 - 第一部分:通信协议(3)


编辑:简简单单 Online zuozuo
地址:https://blog.csdn.net/qq_15071263

在这里插入图片描述

前言

我们使用视觉效果和简单术语来解释复杂的系统是如何运转的,帮助我们理解技术细节

我们使用视觉效果和简单术语来解释复杂的系统是如何运转的,帮助我们理解技术细节

在这里插入图片描述

TCP/IP 封装

数据如何通过网络发送?为什么我们在 OSI 模型中需要这么多层?

下图显示了通过网络传输时如何封装和解封装数据。

在这里插入图片描述

步骤说明

步骤1:当设备A通过HTTP协议通过网络向设备B发送数据时,首先在应用层添加HTTP标头。

步骤2:然后将TCP或UDP标头添加到数据中。它被封装在传输层的 TCP 段中。标头包含源端口、目标端口和序列号。

第 3 步:然后在网络层用 IP 报头封装网段。IP 标头包含源/目标 IP 地址。

第 4 步:IP 数据报在数据链路层添加 MAC 标头,其中包含源/目标 MAC 地址。

第 5 步:将封装的帧发送到物理层,并以二进制位通过网络发送。

步骤 6-10:当设备 B 从网络接收到位时,它会执行解封装过程,这是封装过程的反向处理。标头将逐层删除,最终,设备 B 可以读取数据。

我们需要网络模型中的层,因为每个层都专注于自己的职责。每一层都可以依靠标头来处理指令,不需要知道最后一层数据的含义。

在这里插入图片描述

为什么Nginx被称为“反向”代理?

下图显示了正向代理和反向代理之间的差异

在这里插入图片描述

转发代理是位于用户设备和互联网之间的服务器。

转发代理通常用于:
  • 保护客户端
  • 避免浏览限制
  • 阻止对某些内容的访问
  • 反向代理是接受来自客户端的请求,将请求转发到 Web 服务器,并将结果返回到客户端的服务器,就像代理服务器已处理请求一样。
反向代理适用于:
  • 保护服务器
  • 负载平衡
  • 缓存静态内容
  • 加密和解密 SSL 通信

在这里插入图片描述

常见的负载均衡算法有哪些?

常见的负载均衡算法有哪些? 下图显示了 6 种常用算法

在这里插入图片描述

静态算法

1、循环

客户端请求按顺序发送到不同的服务实例。这些服务通常需要是无状态的。

2、粘性循环

这是对循环算法的改进。如果 Alice 的第一个请求转到服务 A,则以下请求也会转到服务 A。

3、加权循环

管理员可以指定每个服务的权重。权重较高的请求比其他请求处理的请求更多。

4、散列

此算法对传入请求的 IP 或 URL 应用哈希函数。请求根据哈希函数结果路由到相关实例。

动态算法

1、最少连接

新请求将发送到并发连接最少的服务实例。

2、最短响应时间

新请求将以最快的响应时间发送到服务实例

在这里插入图片描述

URL, URI, URN - 你知道区别吗?

URL, URI, URN - 你知道区别吗?下图显示了 URL、URI 和 URN 的比较

在这里插入图片描述

URI

URI 代表 统一资源标识符。它标识 Web 上的逻辑或物理资源。URL 和 URN 是 URI 的子类型。URL 定位资源,而 URN 命名资源。

URI 由以下部分组成: scheme:[//authority]path[?query][#fragment]

URL

URL代表统一资源定位器,HTTP的关键概念。它是网络上唯一资源的地址。它可以与其他协议一起使用,如FTP和JDBC。

URN

URN 代表 统一资源名称。它使用骨灰盒方案。URN 不能用于查找资源。图中给出的简单示例由命名空间和特定于命名空间的字符串组成。

弘扬爱国精神

在这里插入图片描述

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

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

相关文章

【C++】: auto关键字(C++11)+基于范围的for循环(C++11)+指针空值nullptr(C++11)

auto关键字&#xff08;C11&#xff09; 随着程序越来越复杂&#xff0c;程序中用到的类型也越来越复杂&#xff0c;经常体现在&#xff1a; 类型难于拼写含义不明确导致容易出错 #include <string> #include <map> int main() {std::map<std::string, std::…

vue3入门级笔记

一.vue3的优势 二.使用create-create-vue搭建vue3项目 三.项目目录和关键文件 四.组合式API 1&#xff0c;setup的写法和执行时机 执行时机比beforeCreate还要早 setup函数中&#xff0c;获取不到this(this 是undefined) 数据 和 函数 &#xff0c;需要在 setup 最后 return&a…

基础Python教程之pandas使用总结

Pandas 简介 Pandas 库是机器学习四个基础库之一&#xff0c; 它有着强大的数据分析能力和处理工具。它支持数据增、删、改、查&#xff1b;支持时间序列分析功能&#xff1b;支持灵活处理缺失数据&#xff1b;具有丰富的数据处理函数&#xff1b;具有快速、灵活、富有表现力的…

上新啦!请查收云原生虚拟数仓 PieCloudDB 十月动态

PieCloudDB Database 最新动态 PieCloudDB 压缩效率得到提升 为了节省存储空间&#xff0c;降低用户存储费用&#xff0c;PieCloudDB 在压缩率上不断优化&#xff0c;包括&#xff1a; 对 HLL&#xff08;HyperLogLog&#xff09;支持游程编码&#xff08;Run Length Encodi…

Oracle数据库----第七周实验____循环与游标

目录 Oracle数据库----第七周实验 循环与游标 Oracle数据库----第七周实验 循环与游标 循环与游标  循环  首先设置显示输出结果Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 Connected as systemORCL SQL> set serveroutput on; 1.简单…

Redis在分布式场景下的应用

分布式缓存 缓存的基本作用是在高并发场景下对应服务的保护缓冲 – 基于Redis集群解决单机Redis存在的问题 单机的Redis存在四大问题&#xff1a; redis由于高强度性能采用内存 但是意味着丢失的风险单结点redis并发能力有限分布式服务中数据过多 依赖内存的redis 明显单机不…

【C语言进阶(14)】程序的编译与链接

文章目录 前言Ⅰ 程序的翻译环境1. 编译的过程2. 链接的过程 Ⅱ 程序的执行环境Ⅲ 预定义符号Ⅳ 预处理指令 #define1. #define 定义标识符2. #define 定义宏3. #define 替换规则 Ⅴ 预处理操作符 # 和1. # 操作符2. ## 操作符 Ⅵ 宏和函数的对比Ⅶ 预处理指令 #undefⅧ 条件编…

1.5状态压缩DP

1.小国王 在 n n nn nn的棋盘上放 k k k个国王&#xff0c;国王可攻击相邻的 8 8 8个格子&#xff0c;求使它们无法互相攻击的方案总数。 输入格式 共一行&#xff0c;包含两个整数 n n n和 k k k。 输出格式 共一行&#xff0c;表示方案总数&#xff0c;若不能够放置则输出…

RHEL 8.6 Kubespray 1.23.0 install kubernetes v1.27.5

文章目录 1. 预备条件2. download01 节点 安装 dockerdownload01 节点 介质下载下载 bastion01节点配置 yum 源bastion01 节点安装 docker5. 安装 docker insecure registrybastion01 部署 nginx 与 镜像入库13.1 配置 config.sh13.2 配置 setup-docker.sh13.3 配置 start-ngin…

18-spring 事务

文章目录 1. xml和注解配置方式的对象2.spring事务传播特性3. 注解事务的初始化流程4. 创建事务信息流程图5. 事务回滚流程图1. xml和注解配置方式的对象 2.spring事务传播特性 事务传播行为类型说明PROPAGATION_REQUIRED如果当前没有事务,就新建一个事务,如果已经存在一个事…

控制器连接Profinet转Modbus RTU网关与精密数显温控仪通讯配置案例

Profinet是一种用于工业自动化领域的通信协议&#xff0c;而Modbus RTU则是一种常见的串行通信协议。由于生产现场中的控制器与精密数显温控仪通常采用不同的通信协议&#xff0c;因此需要借助Profinet转Modbus RTU网关&#xff08;XD-MDPN100&#xff09;完成通信的桥接与转换…

SystemVerilog学习(1)——验证导论

写在最前 选课不慎&#xff0c;选修课选了个SystemVerilog&#xff0c;事情比必修还多&#xff0c;上课老师讲的一点用没有&#xff0c;但是学分还得修&#xff0c;只能自学了&#xff0c;既来之则安之。 一、什么是SystemVerilog SystemVerilog简称为SV语言&#xff0c;是一种…

攻防世界web篇-get_post

打开给出的地址 将浏览器上的地址http://61.147.171.105:58937/改为http://61.147.171.105:58937/?a1 输入?a1是完成了第一步&#xff0c;get请求&#xff0c;接下来要完成post的请求 这里&#xff0c;我使用的backbar quantum插件 得出flag值

【剑指Offer】32.从上往下打印二叉树

题目 不分行从上往下打印出二叉树的每个节点&#xff0c;同层节点从左至右打印。例如输入{8,6,10,#,#,2,1}&#xff0c;如以下图中的示例二叉树&#xff0c;则依次打印8,6,10,2,1(空节点不打印&#xff0c;跳过)&#xff0c;请你将打印的结果存放到一个数组里面&#xff0c;返…

深度强化学习 第 4 章 DQN 与 Q 学习

4.1 DQN 最优动作价值函数的用途 假如我们知道 Q ⋆ Q_⋆ Q⋆​&#xff0c;我们就能用它做控制。 我们希望知道 Q ⋆ Q_⋆ Q⋆​&#xff0c;因为它就像是先知一般&#xff0c;可以预见未来&#xff0c;在 t 时刻就预见 t 到 n时刻之间的累计奖励的期望。假如我们有 Q ⋆ Q…

【关于FPGA内部die到pin的延时数据,即pin delay获取方法】

首先&#xff0c;本文只介绍Xilinx的&#xff0c;Alteral的以后。。 第一&#xff0c;生成平台 Xilinx目前在用的是ISE,和Vivado&#xff1b;二者之间并不是可以互相替代的&#xff0c;或者说这两者不完全是迭代的关系。 第二&#xff0c;先介绍常用的–VIVADO 这里又有几种…

Linux系统之passwd命令的基本使用

Linux系统之passwd命令的基本使用 一、passwd命令介绍1.1 passwd命令简介1.2 passwd命令起源 二、passwd命令的使用帮助2.1 passwd命令的help帮助信息2.2 passwd命令的语法解释 三、查看passwd相关文件3.1 查看用户相关文件3.2 查看组相关文件 四、passwd命令的基本使用4.1 设置…

mysql MVC jsp实现表分页

mysql是轻量级数据库 在三层架构中实现简单的分页 在数据库sql编程中需要编写sql语句 SELECT * FROM sys.student limit 5,5; limit x,y x是开始节点&#xff0c;y是开始节点后的需要显示的长度。 在jdbc编程中需要给出x和y 一般是页数*页码&#xff0c;显示的长度。 代…

谷歌云:下一代开发者和企业解决方案的强力竞争者

自从2018年Oracle前研发总裁Thomas Kurian加入谷歌云&#xff08;Google Cloud&#xff09;并出任谷歌云CEO以来&#xff0c;业界对于谷歌云的发展就十分好奇。而谷歌云的前任CEO Diane Greene曾是VMware的创始人之一&#xff0c;那么两任企业级技术和解决方案出身的CEO&#x…

windows上下载github上的linux内核项目遇到的问题

问题一&#xff1a;clone的时候报错 Cloning into G:\github\linux... POST git-upload-pack (gzip 27925 to 14032 bytes) remote: Counting objects: 6012062, done. remote: Compressing objects: 100% (1031/1031), done. remote: Total 6012062 (delta 893), reused 342 (…