一分钟了解四层/七层反向代理 | 架构师之路

简介: 一分钟了解四层/七层反向代理

上一篇文章《session一致性架构设计实践》,对于其中的第三种“反向代理hash法”,不少同学留言问:

什么是四层反向代理hash

什么是七层反向代理hash

中间还有三层那里去了

...

今天花几分钟简单和大家解释一下。

场景:访问用户通过proxy请求被访问的真实服务器

路径:用户 -> proxy -> real-server

什么是代理?

回答:[proxy]代表[访问用户],此时proxy是代理。

例如:

在家访问xxoo网站,不希望xxoo网站trace到我们的真实ip,于是就找一个proxy,通过proxy来访问,此时proxy代表用户,网站以为proxy的ip就是用户的ip。

什么是反向代理?

回答:[proxy]代表[被访问的服务器],此时proxy是反向代理。

例如:

web-server希望对用户屏蔽高可用、屏蔽web-server扩展、web-server内网ip等细节,于是就找了一个proxy隔在中间,此时proxy代表web-server集群,用户以为proxy的ip就是被访问web-server的ip(web-server是集群,具体访问了哪个web-server,用户不知道),由于web-server集群有多台,此时反向代理服务器要具备负载均衡的功能。

一般怎么做反向代理,负载均衡?

回答:nginx/apache,lvs,F5

什么是四层(转发/交换),什么是七层(转发/交换)?

回答:这个是来源于OSI七层模型

大学“计算机网络”课程,之前都是用这个七层模型,新版教程用TCP/IP五层模型,这两个模型之间有一个对应关系如下:

可以看到,四层是指传输层,七层是指应用层。

更具体的,对应到nginx反向代理hash:

四层:根据用户ip+port来做hash

七层:根据http协议中的某些属性来做hash

为什么中间少了几层?

回答:OSI应用层、表示层、会话层合并到TCP/IP的应用层啦。

image.png

上面有四层,七层,那有没有二层,三层呢?

回答:有

二层:根据数据链路层MAC地址完成数据交换

三层:根据网络层IP地址完成数据交换

希望解答了大伙之前的一些疑问,希望这一分钟没有浪费,如果有描述不准确的地方,欢迎指正。

==【完】==

目录
相关文章
|
Shell
Shell 脚本输出命令结果保持原格式,保留换行
Shell 脚本输出命令结果保持原格式,保留换行
508 0
|
存储 人工智能 安全
阿里云无影云电脑入口及全面测评:技术特性、场景适配与综合体验解析
在终端云计算快速发展的当下,阿里云无影云电脑凭借自主技术架构与多场景适配能力,成为企业数字化办公与个人高效计算的重要选择。本文基于 今年最新产品动态与权威认证信息,从官方入口与版本差异、核心技术特性、性能表现、场景适配、安全能力等维度展开测评,为用户提供客观参考。
|
5月前
|
人工智能 自然语言处理 算法
AI辅助软件测试:几个关键路径
本文探讨大模型在软件测试中的实践应用:通过提示工程提升AI理解力,辅助需求分析、测试设计(用例生成/覆盖优化)、自动化脚本编写及环境构建,并分享单元/系统/回归等场景案例。强调AI是增效工具,需人工审核,不可替代测试工程师的领域判断与质量决策。(239字)
1041 3
|
SQL 弹性计算 数据库
达梦(DM)1、安装达梦数据库(Windows篇)
DM8是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新、简洁实用的理念,历经五年匠心打磨,推出的新一代自研数据库。
2423 0
达梦(DM)1、安装达梦数据库(Windows篇)
|
JavaScript
jquery图片和pdf文件预览插件
EZView.js是一款jquery图片和pdf文件预览插件。EZView.js可以为图片和pdf格式文件生成在线预览效果。支持的文件格式有pdf、jpg、 png、jpeg、gif。
541 16
|
机器学习/深度学习 传感器 算法
深度学习之环境感知系统
基于深度学习的环境感知系统是一类能够理解、感知和解读周围环境的智能系统。通过使用深度学习算法,这些系统可以分析多模态数据(如图像、音频、激光雷达数据等),实时感知环境的动态变化,为自动驾驶、机器人、智能家居等领域提供关键支持。
785 3
|
Java Maven
使用 maven 自动将源码打包并发布
使用 maven 自动将源码打包并发布
876 0
mybatis复习04高级查询 一对多,多对一的映射处理,collection和association标签的使用
文章介绍了MyBatis中高级查询的一对多和多对一映射处理,包括创建数据库表、抽象对应的实体类、使用resultMap中的association和collection标签进行映射处理,以及如何实现级联查询和分步查询。此外,还补充了延迟加载的设置和用法。
mybatis复习04高级查询 一对多,多对一的映射处理,collection和association标签的使用
|
机器学习/深度学习 人工智能 自然语言处理
LLM-AI大模型介绍
大语言模型(LLM)是深度学习的产物,包含数十亿至数万亿参数,通过大规模数据训练,能处理多种自然语言任务。LLM基于Transformer架构,利用多头注意力机制处理长距离依赖,经过预训练和微调,擅长文本生成、问答等。发展经历了从概率模型到神经网络,再到预训练和大模型的演变。虽然强大,但存在生成不当内容、偏见等问题,需要研究者解决。评估指标包括BLEU、ROUGE和困惑度PPL。
|
缓存 网络架构
计算机网络——数据链路层-可靠传输的实现机制:停止-等待协议SW(确认与否认、超时重传等,信道利用率及相关练习题)
计算机网络——数据链路层-可靠传输的实现机制:停止-等待协议SW(确认与否认、超时重传等,信道利用率及相关练习题)
1206 0