热门系列:

  • 【IT互联网系列】网络协议这样写,你喜欢吗

  • 【IT互联网系列】互联网术语、简称、缩写,持续输出中...

  • 程序人生,精彩抢先看


目录

1.前言

2.网关

2.1 什么是网关?

2.2 网关的作用是什么?

2.3 网关的工作流程

2.4 软件系统网关


1.前言

对于网关,从专业角度,一般运维和网络管理员会比较了解一下。但作为一个软件开发人员,我觉得也是有必要了解一下。尤其是在某次面试过程当中,被面试官问起后,感觉回答的不是很好,导致面试扣分。所以今天,带着学习和分享的想法,一起扒一扒网关的秘密。


2.网关

2.1 什么是网关?

网关英文名称为Gateway,又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。

网关既可以用于广域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。使用在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器,与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。

通俗点形容,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。顾名思义,网关(Gateway)就是一个网络连接到另一个网络的“关口”。也就是网络关卡

2.2 网关的作用是什么?

简单来说,网关是设备与路由器之间的桥梁,由它将不同的网络间进行访问的控制,转换,交接等等。

比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络B向网络A转发数据包的过程。

2.3 网关的工作流程

通俗解释:

  假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。

  但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里也有一个看门的王大爷(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的DNS服务器。于是你在家里拨通了门口李大爷的电话,有了下面的对话:

  小不点:李大爷,我想找班主任查一下小明的电话号码行吗?

  李大爷:好,你等着。(接着李大爷给你的班主任挂了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99

  小不点:太好了!李大爷,我想找小明,你再帮我联系一下小明吧。

  李大爷:没问题。(接着李大爷向电话局发出了请求接通小明家电话的请求,最后一关当然是被转接到了小明家那个院子的王大爷那里,然后王大爷把电话给转到小明家)

  就这样你和小明取得了联系

2.4 软件系统网关

系统与系统之间,服务的请求与返回也有网关,我们可以理解为“系统网关”。与广义上的网关,所指含义可能不同,但所要发挥的作用,却如出一辙。

软件系统网关作用:

  • 内外网隔离,外网所有请求都只能通过网关访问内网数据;防止网关单点,最好在不同大区配置多台网关服务器。
  • 验证+鉴权,外网所有请求,通过网关指定过滤器对用户访问权限进行控制。可以整合OAuth2,token,jwt等提高架构安全性。
  • 服务降级+限流+日志+监控。限流算法如令牌桶、漏桶等,Spring Cloud Gateway使用Redis+Lua技术实现高并发和高性能的限流方案。

本博客皆为学习、分享、探讨为本,欢迎各位朋友评论、点赞、收藏、关注,一起加油!

【IT互联网系列】什么是网关?网关的作用是什么?看完不懂,你捶我相关推荐

  1. 【javase系列基础包装类及日历类详细总结,看完不会来找我~】

    包装类及其日期类详细总结,希望大家能给小姐姐三联支持,感谢大家 1. 基本类型包装类 1.1 概述 1.2 Integer类的概述与使用 1.3 int和String的相互转换 1.4 案例-字符串中 ...

  2. 【IT互联网系列】互联网术语、简称、缩写,持续输出中...

    热门系列: [IT互联网系列]什么是网关?网关的作用是什么?看完不懂,你捶我 [IT互联网系列]网络协议这样写,你喜欢吗 程序人生,精彩抢先看 目录 1.序言 2.专业术语简称与说明 2.1 职称 2 ...

  3. SpringCloud学习系列之七 ----- Zuul路由网关的过滤器和异常处理

    前言 在上篇中介绍了SpringCloud Zuul路由网关的基本使用版本,本篇则介绍基于SpringCloud(基于SpringBoot2.x,.SpringCloud Finchley版)中的路由 ...

  4. PLC数据采集网关有哪些作用,PLC数据采集网关如何正确进行使用

    PLC数据采集网关是一款安全.可靠.稳定的物联网终端产品,网关最为主要的作用是用来采集各类工业设备的实时数据,PLC数据采集网关能够直接和工业设备之中的PLC控制器相连接,将工业设备实际运行情况上传到 ...

  5. 工业互联网系列白皮书(合集)

    <工业互联网系列白皮书(合集)>https://t.zsxq.com/05IeMR7eQ 1."工业互联网平台+工业设备上云"白皮书.pdf"  2.&quo ...

  6. PLC数据采集网关有哪些作用,PLC数据采集网关如何正确进行使用?

    PLC数据采集网关是一款安全.可靠.稳定的物联网终端产品,网关最为主要的作用是用来采集各类工业设备的实时数据,PLC数据采集网关能够直接和工业设备之中的PLC控制器相连接,将工业设备实际运行情况上传到 ...

  7. 一个计算机专业学生几年的编程经验汇总 (该系列一共 11 篇,看完之后,java 基础绝对有不小的提升!)

    Java 杂谈(一) 想来学习 Java 也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给 软件学院的同仁们,帮助大家在技术的道路上少一点弯路.说得伟大一点是希望大家为软件 学院争气,其 ...

  8. JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版下载

    JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版下载 JDK(Java Development Kit,Java开发包,Java开发工具)是一个写Java的applet ...

  9. 机器学习系列(8)_读《Nature》论文,看AlphaGo养成

    机器学习系列(8)_读<Nature>论文,看AlphaGo养成  标签: 机器学习算法深度学习神经网络蒙特卡罗树搜索 2016-03-16 11:23 17843人阅读 评论(8) 收藏 ...

  10. HTML5 高级系列:web Storage 学前端开发要先看这个

    HTML5 高级系列:web Storage 学前端开发要先看这个 前言 HTML5 的 web Storage 存储方式有两种:localStorage 和 sessionStorage. 这两种方 ...

最新文章

  1. 团队软件开发第一次冲刺(四)
  2. BP神经网络-- C语言实现
  3. Java String 字符串
  4. python用turtle库绘制树图形_使用Python中的Turtle库绘制简单的图形
  5. 为什么安装Android SDK后无法安装flatform?
  6. Matlab计算速度优化(矩阵,bsxfun,repmat)
  7. Android系统服务-WindowManager
  8. 在深度学习顶会ICLR 2020上,Transformer模型有什么新进展?
  9. 关于未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值的解决方法...
  10. 17日直播预告丨Oracle 19c避雷经验分享
  11. 下载文件根据浏览器判断文件名,解决兼容性问题
  12. 【转】 谈谈C++中的swap函数
  13. 计算机网络交换机组网及虚拟局域网实验报告,计算机网络实验报告材料(虚拟局域网).doc...
  14. 50 个 jQuery 插件可将你的网站带到另外一个高度 【已翻译100%】
  15. 谈谈以前那位研发总监的工作
  16. 前端vue生成二维码
  17. 石器时代linux架设教程,CentOS 6.5架设石器时代教程(客户端篇)
  18. 一行代码教你七夕情人节如何告白❤—动漫3D相册(音乐+文字)HTML+CSS+JavaScript
  19. SolidWorks六角螺母添加倒角2种方法
  20. java的action_JavaWeb(action层)

热门文章

  1. 【10.24】一个只属于程序员的节日
  2. 用matlab绘制P三曲线,科学网—水文频率曲线及MATLAB绘制 - 张凌的博文
  3. matlab零阶保持器的作用,MATLAB保持器的simulink仿真.ppt
  4. 【考研数学】五. 二重积分
  5. 前程无忧网站大数据职位信息分析可视化(源码)
  6. 解决regedit taskmgr不能启动
  7. JAVA打印十年母亲节,母亲节 一封推迟了十年的信
  8. springboot基于微信小程序的校园体育运动场地及器材租凭系统设计与实现毕业设计源码131052
  9. 关于Word的累加符号上下标变右标的解决办法
  10. java正整数分解因数_java如何将一个正整数分解质因数