书接上文

3)、满足工业环境稳定性要求

从满足工业环境稳定性要求的角度,工业防火墙的需要从硬件和软件层次去考虑本身的稳定性对工业网络的影响。从这个角度说,工业防火墙需要同时具备软硬件Bypass功能。一旦设备异常或者重启,会启动Bypass功能,而无须担心因为工业防火墙本身出现问题而导致工业网络断网。Bypass顾名思义,就是旁路保护系统,也就是说可以通过特定的触发状态(断电或死机)让两个网络不通过工业防火墙的系统,而直接物理上导通。而这个时候工业防火墙也就不会再对网络中的数据包做处理了。基于这样的设计,Bypass从安全***的角度,也本身是一个漏洞,只要***找到方法能够使得工业防火墙触发Bypass功能的状态,那么在其触发了Bypass功能的工业防火墙上安全隔离和控制功能就失去了作用,***就可以直接访问内部受保护的资源。那么这种想法到底可不可行?Bypass功能是否存在这样的被***的漏洞呢?下面让我们来看看Bypass功能是如何设计实现的。

在这里我以最简单的模型来说明Bypass的架构以及工作原理,在工业防火墙中,如果是基于工业以太网环境的Bypass功能的设计,那么就跟工业主板以及网卡有关,这个Bypass功能就随着主板以及网卡的设计架构不同而有所差异了。

从最简单的Bypass模型来看,这个模型包含了“Bypass控制器”和“执行电路子板”两个部分。Bypass控制器是整个系统的控制调度核心,而执行电路子板就是具体的执行者,这个执行者作用于不同的网络传输介质上(比如电口、光口、串口等)。如下图所示:

这个执行者是如何作用于不同的网络传输介质上的?这就需要我们明白底层的网络传输介质之间的组件以及他们的关系,这个传输介质我们以网卡的架构作为说明。

这是一张网卡的实物图,里面包含了网卡的所有组件:

①RJ-45接口

②Transformer(隔离变压器)

③PHY芯片

④MAC芯片

⑤EEPROM

⑥BOOTROM插槽

⑦WOL接头

⑧晶振

⑨电压转换芯片

⑩LED指示灯

可以看到很多我们以前都不太知道的组件和设备。下面简要介绍下各个组件的作用。

RJ-45是一个插口模块,简单来说它是一个发送器或接收器。RJ-45有8根针脚,网卡一般用RJ-45插口时,10M网卡的RJ-45插口只用了1,2,3,6四根针,而100M或1000M网卡的则是八根针都是全部使用的。它的每个针脚指承担数据的收发工作,不用于其他目的。其主要存在于网线的两端以及各个网络以太网设备上。它只是一个插口,没有任何逻辑控制的智能在里面,因此其向后连接的就是PHY芯片。

PHY是物理接口收发器,是网卡用于实现物理层的组件。IEEE-802.3标准定义了以太网PHY,包括MII/GMII(介质独立接口)子层,PCS(物理编码子层),PMA(物理介质附加)子层,PMD(物理介质相关)子层,MDI子层。其内部也是一个构造十分复杂的精密的部件。PHY在发送数据的时候,收到MAC过来的数据(对PHY来说,没有帧的概念。对它来说,都是数据而不管什么地址,数据还是CRC。对于100BaseTX因为使用4B/5B编码,每4bit就增加1bit的检错码),然后把并行数据转化为串行流数据,再按照物理层的编码规则把数据编码,再变为模拟信号把数据送出去,收数据时的流程反之。PHY还有个重要的功能就是实现CSMA/CD的部分功能。它可以检测到网络上是否有数据在传送,如果有数据在传送中就等待,一旦检测到网络空闲,再等待一个随机时间后将送数据出去。如果两个碰巧同时送出了数据,那样必将造成冲突,这时候,冲突检测机制就可以检测到冲突,然后各等待一个随机的时间重新发送数据。这个随机时间很有讲究的,并不是一个常数,在不同的时刻计算出来的随机时间都是不同的,而且有多重算法来应付出现概率很低的同两台主机之间的第二次冲突。

比较关键的是,RJ45和PHY之间并不在一起。也就是说,我们通常看到的网线,其头部的RJ45都不包括PHY芯片。因此,在主板的设计上,RJ45PHY之间是有一段传输距离的。就是设计Bypass的关键。

隔离变压器的作用是把PHY送出来的差分信号用差模耦合的线圈耦合滤波以增强信号,并且通过电磁场的转换耦合到连接网线的另外一端。这样不但使网线和PHY之间没有物理上的连接而换传递了信号,隔断了信号中的直流分量,还可以在不同0V电平的设备中传送数据。隔离变压器本身就是设计为2KV~3KV的电压,也起到了防雷感应保护的作用。有些朋友的网络设备在雷雨天气时容易被烧坏,大都是PCB设计不合理造成的,而且大都烧毁了设备的接口,很少有芯片被烧毁的,就是隔离变压器起到了保护芯片作用。

而MAC芯片称为媒体接入控制器,用于实现MAC即Media Access Control,媒体访问控制子层协议的芯片控制器。该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。该层协议是以太网MAC由IEEE-802.3以太网标准定义。以太网数据链路层其实包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。一块以太网卡MAC芯片的作用不但要实现MAC子层和LLC子层的功能,还要提供符合规范的PCI或PCIE界面以实现和主机的数据交换。如下图所示:

而PHY和MAC芯片之间通过MII总线连起来实现通信。后面的网卡组件就跟我们实现Bypass功能没任何关系了。现在的网卡已经实现了将PHY芯片和MAC芯片在同一块芯片上实现。也就是说,在主板上,和以太网接口连接的芯片,有可能就是同时具有PHY芯片和MAC芯片功能的网络控制器。有了以上概念之后,我们就来看看,Bypass是如何利用PHY和以太网接口之间的传输路径做文章的。

如下图,中间设置一个以太网口电路子板,以太网口电路子板再和Bypass控制器连接,接收开关的控制指令。

以太网口电路子板内部包含两个组件:继电器(电子开关)和变压器。

因此更细节一点的架构就是下图所示的结构:

我们可以看到,在每个PHY芯片和以太网接口之间,都存在一个变压器和一个继电器,这两个设备就是Bypass的具体执行者。其中,继电器可以只是简单的电子电路开关控制器,比如电子开关。Bypass控制器向继电器提供控制信号,两个继电器经由控制电路受控制信号的控制。当我们的工业防火墙工作正常时,软件使控制信号有效,两个继电器的开关处于处于正常状态,即开关的阀门是向上闭合的,即实现了变压器与RJ45(以太网接口)的导通。

当我们的工业防火墙出现故障 时或掉电时,两个继电器的开关均跳拨到连个继电器互联的那个开关上,使RJ45与工业防火墙断开,但是两个继电器之间连通,以使得两个RJ45之间连通。这样就使得工业防火墙上的内外网接口在物理上直连。

以上就是Bypass的工作原理。有时候为了节省成本和嵌入式主板的空间,还可以只是有一个继电器,然后另一个继电器或其他继电器使用电子开关来实现,电子开关就是一个简单电子电路开关闭合的阀门,受控制电路的操作而进行开关闭合操作。

明白了下层的操作方式之后,我们再来看Bypass如何来进行触发,现目前的Bypass触发方式,都是通过Bypass控制器下发控制指令而实现Bypass功能。Bypass控制器收到以下3种情况而下发控制指令:

(1)通过电源触发。这种方式下,一般是在设备没有通电的情况下,Bypass功能打开,设备一旦通电,Bypass立即调整为正常工作状态。

(2)由GPIO (通用输入/输出端口)来控制。在进入操作系统后,可以通过GPIO对特定的端口操作,从而实现对Bypass开关的控制。

(3)由Watchdog  (看门狗)来控制。这种情况实际是对方式2的一种延伸应用,可以通过Watchdog来控制GPIOBypass程序的启用与关闭,从而实现对Bypass状态的控制。使用这种方式,当系统宕机时可以由Watchdog来打开Bypass。

现目前,Bypass功能的实现一般同时在设备上实现第一种和第二种,有时候三种也同时在同一设备上实现。第一种情况下,在设备没有通电的情况下,Bypass功能要实现打开,网卡就必须有电,继电器也必须要有电。因此还需要继续做供电上做文章!

基于此,在启用Bypass的以太网、现场总线及485总线(如果有的话)都需要有与主电源隔离的额外电源。

转载于:https://blog.51cto.com/tasnrh/1919005

工业防火墙架构与技术【第二节:硬件架构③】相关推荐

  1. 亿级商品详情页架构演进技术解密 | 高可用架构系列

    亿级商品详情页架构演进技术解密 | 高可用架构系列 --http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=210272034&i ...

  2. 亿级商品详情页架构演进技术解密 | 高可用架构系列 二

    转载:http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=210272034&idx=1&sn=3be9d2b53c7fe ...

  3. 架构之美第二章-美丽架构的含义

     古人形容美女之美:"⋯⋯增之一分则太长,减之一分则太短⋯⋯",深刻地揭示了"恰到好处"的美丽含义.当我拿到<架构之美>书稿时,我发现美丽的含义如此 ...

  4. 我的出版书籍之《系统架构设计:程序员向架构师转型之路》

    软件行业技术开发从业人员众多,但具备若干年开发经验的普通的开发人员往往面临个人发展的瓶颈,即如何从普通开发人员转型成高层次的系统架构师和技术管理人员.想成为一名架构师,应当具备全面的知识体系,需要进行 ...

  5. 工业防火墙架构与技术【第二节:硬件架构④】

    下图展示了主板的主电源供电电路设计图: 下图展示了基于主供电电源的以太网.现场总线.以及485总线需要的电源隔离电路设计图. 除此之外,既然断电也是一种可能存在的单点故障,那么在硬件架构设计的时候,本 ...

  6. 工业防火墙架构与技术【第二节:硬件架构②】

    2).满足对数据包的处理性能的高速度要求 任何防火墙的基本技术功能都是过滤报文.防火墙检查其接收的每个数据包,以确定数据包是否对应于流量模式的所需模板.防火墙然后过滤(丢弃)或转发与这些模板匹配的数据 ...

  7. 工业防火墙架构与技术【第二节:硬件架构①】

    1.3.   工控防火墙的体系架构 那么工控防火墙是如何设计来支撑其部署到工业生产环境中的?这就需要我们了解工控防火墙的架构,这包括两个方面:软件和硬件两部分.也就是防火墙运行在什么软件系统上以及防火 ...

  8. 工业防火墙架构与技术【第一节:概述】

    1.1.   工控防火墙概述 我们将应用于工业控制网络环境中的防火墙称为工业控制防火墙(ICF,Industrial Control Firewall).工业防火墙(IFW,IndustrialFir ...

  9. 认识工业防火墙硬件架构

    现如今,在网上很少能找到关于一款产品的硬件设计描述类的文章了,大部分是关于软件功能实现的描述,阅读软件功能实现总让我们这些搞嵌入式出身的人不过瘾,总觉得隔着点什么.看到一个铁盒子,总想把它拆开看看里面 ...

最新文章

  1. UI设计培训怎么选择就业方向
  2. 每一个开发人员都应该懂的 UML 规范
  3. Python设计模式-解释器模式
  4. Linux下kvm宿主机死机,看到一些朋友苦虚拟机久矣,分享下我使用KVM的一些经验和技巧...
  5. 语音预处理:服务器平台“部署”
  6. 【数据结构与算法】之深入解析“括号生成”的求解思路与算法示例
  7. 第23讲:利用资源,学会用打码平台处理验证码
  8. laravel数据库相关操作
  9. 【Java】计算二进制数中1的个数
  10. 机器学习笔记(九)---- 集成学习(ensemble learning)【华为云技术分享】
  11. 共享单车变身“行走的弹幕”,清华大学等17所高校均有投放
  12. 如何对大数据进行分析
  13. 【码云】git简单使用总结
  14. scrapy 快速入门
  15. 火星人学习第二周——虚幻引擎蓝图应用与开发
  16. 金融信创云:从遥不可及到价值担当
  17. excel身份证号计算年龄
  18. 千叶加密php,哪位大侠可以透漏一下千叶素是什么?
  19. 90后薪资5年翻10倍,靠的不是钢琴手,而是真家伙!
  20. 博弈论--耶鲁大学公开课

热门文章

  1. 解读一行写圣经之Program
  2. 实践数据湖iceberg 第五课 hive catalog特点
  3. python3爬虫,通过cookies来跳过验证码直接爬取友盟数据
  4. 帮助你整理碎片信息的App——《卡片夹》
  5. [喵咪开源软件推荐(5)]开源DNS服务-bind
  6. important jetbrains decompiler对话框弹出时怎么办
  7. MySQL中如何设置 auto_increment 重新计数 主键id从1开始
  8. 从键盘任意输入一个实数,不使用计算绝对值函数编程计算并输出该实数的绝对值。
  9. B站拿什么保护我方up主,知识区?
  10. 【论文阅读】 AdaptivePose: Human Parts as Adaptive Points