im电竞竞猜注册网址:工业物联网参考体系架构设计
发布时间:2022-10-02 08:57:24 来源:im电竞平台iOS 作者:im电竞盘口

im电竞竞猜注册网址

  以及支持在各种各样设备。当架构师创建物联网解决方案的时候,这些需求是有用和有价值的,它提供了一个基础起点。

  产生和收集数据的设备数量、种类难以置信的快速增长。一项由Cisco的调查估计,在2010年网络设备的数量超过了人口,2020年将有500亿联网设备。物联网有三个关键层面:

  a.最小的嵌入式8位SOC控制器设备。一个很好的例子是开源硬件平台Arduino:Arduino Uno平台和其他8位Arduino。这些通常没有操作系统。

  b.系统基于非常有限的32位的Atheros和ARM芯片架构。这些设备通常包括家里的路由器及其衍生品。通常,这些运行一个精简版或嵌入式Linux平台,如OpenWRT或专用的嵌入式操作系统。在某些情况下他们可能不使用一个操作系统,如ArduinoZero,或ArduinoYUN。

  c.最能干的物联网平台是32位或64位的计算平台。如Raspberry Pi和BeagleBone,这些系统可以运行一个完整的Linux操作系统或其他合适的操作系统。

  物联网设备本质上是连接,我们需要一种方式与他们相联系,但是经常遇到的障碍是防火墙、网络地址转换(NAT)和其他障碍。

  有数十亿的这些设备已经和数量增长迅速,我们需要一个可伸缩性架构。此外,这些设备通常是24 x7互动,所以我们需要高可用性(HA)的方法,支持跨数据中心部署,可灾难恢复(DR)。

  设备可能没有ui使用,所以我们需要支持自动更新和管理,以及能够远程管理这些设备。

  物联网设备用以收集和分析数据。管理物联网设备的身份和访问控制以及数据的发布和消费是关键要求。

  现有的协议,比如HTTP在许多设备中占有非常重要的地位。甚至一个8位控制器可以创建简单的HTTP GET和POST请求。然而,http和其他一些传统的网络协议会产生很大的“开销”问题。

  然而,更大的问题是电力需求,为了满足这些需求,我们需要一个简单的二进制协议。

  直接连接或通过网关连接设备,通过网关连接的设备可能需要两个协议:一个连接到网关,然后另一个是从网关到云。

  架构支持传输和协议的桥接,例如我们可能希望提供一个二进制协议的设备,但允许一个基于http的API来控制设备,以便我们向第三方公开。

  一些物联网设备有某种形式的UI,但总的来说物联网设备的重点是有一个或多个传感器,一个或多个驱动器,或以上两者的结合。系统的需求是我们可以从大量设备收集数据,存储它,分析它,然后采取行动。

  参考体系结构是用来管理非常大量的设备。如果这些设备创建恒流的数据,那么这就产生了大量的数据。要求高度可伸缩的存储系统用以处理不同和大量的数据。

  近乎实时的动作可能发生,所以有很强的实时分析要求。此外,该设备必须能够分析和操作数据。在某些情况下,这将是简单的嵌入式逻辑,譬如边缘计算。更强大的设备上我们也可以利用更强大的引擎来处理事件和采取行动,譬如雾计算和云计算。

  任何服务器端具有可伸缩性将是理想的架构,并且能够用于支持数以百万计的设备不断发送、接收数据。然而,许多“高扩展性的架构”有一个同样高价格无论是在硬件,软件,和复杂性。这种架构的一个重要需求是支持从一个小型部署到扩展大量的设备。弹性可伸缩性和部署在云基础设施的能力是至关重要的。

  物联网的安全是最重要的一个方面。物联网设备经常收集高度私有化数据,从本质上把现实世界带到互联网上(反之亦然)。这有三个类别的风险:

  第一类简单,比如锁定设备上的开放端口(比如Internet-attached有一个无担保SMTP服务器,被用于发送垃圾邮件)。第二类包括物联网硬件相关的问题,如设备可能有其信息阅读安全。例如,许多物联网设备太小,不足以支持适当的非对称加密。另一个具体的例子是硬件理解别人攻击的能力。有两个非常重要的具体问题:担忧物联网安全的身份和访问管理。身份这个问题,例如设备的用户id /密码和机器对机器(M2M)使用清晰文本/ Base64编码是一种常见的错误。在理想情况下,这些应该替换为可管理的令牌如OAuth /OAuth24。另一个常见的问题是到客户端或服务器端访问管理规则代码的硬编码。一个更加灵活和强大的方法是利用模型如“基于属性的访问控制”和“基于策略的访问控制”。其中最广为人知的方法是XACML standard5。这样的方法逻辑访问控制决策时去除硬编码,具体标准如下:

  以上总结是我们已确定的参考体系结构。当然,任何给定的架构可能会进一步有其他要求。其中的一些可能已经见过,一些可能需要进一步添加组件。然而,我们的设计是一个模块化的体系结构,支持扩展,应对这一需求。

  参考体系结构由一组组件构成。“层级”可以通过特定的技术实现,我们将讨论为每个组件实现的选项。也有一些横向/垂直层如访问/身份管理。

  架构的底层是设备层。设备可以是各种类型,作为物联网设备,他们必定有一些交流,间接或直接连接到互联网。

  写入设备的一个惟一的标识符(UUID)(通常是芯片系统的一部分,或第二个芯片提供)

  我们推荐的参考体系结构,每个设备都有一个UUID(最好是一个不变的核心硬件提供的ID)以及存储在EEPROM中的OAuth2更新和无记名令牌。

  为了支持MQTT我们需要MQTT代理的体系结构以及设备库。我们将围绕着安全性和可伸缩性讨论。物联网设备的一个重要方面是不仅对设备发送数据到云/服务器,反之亦然。这是mqtt规范的好处之一:因为它是一个代理模式,客户机连接到代理、设备是否作为一个出版商或用户。这通常可以避免防火墙问题,因为这个方法可以在防火墙或通过nat工作。

  一般的情况下传递的主要信息是基于HTTP,发送数据到设备的传统方法是使用HTTP轮询。这是非常低效和昂贵的,无论是网络流量以及电力需求。现代替代这个WebSocket协议,允许HTTP连接被升级成一个完整的双向连接。这作为一个套接字通道(类似于一个纯粹的TCP通道)在服务器和客户端之间。一旦建立,由系统在连接隧道选择一个正在进行的协议。我们再次推荐用WebSockets的MQTT协议的参考体系结构。在某些情况下,MQTT WebSockets将是唯一协议。这是因为它是比基础mqtt规范有更好的防火墙友好性以及支持纯浏览器/ JavaScript客户端使用相同的协议。

  聚合/总线层提供了这些功能,以及适应遗留协议。总线层也可能提供一些简单的相关性和从不同的相关性模型的映射(如设备ID映射成一个所有者的ID或者相反)。最后聚合/总线层需要执行两个关键的安全角色。它必须能够充当OAuth2资源服务器(不记名令牌验证和相关资源访问范围)。它还必须能够充当策略执行点(PEP),基于策略的访问。在这个模型中,总线请求身份和访问管理层,验证访问请求。在这个过程中身份和访问管理层充当策略决策点(PDP)。然后总线层实现这些调用PDP的结果,要么允许或不允许资源访问。

  这一层需要事件总线和提供这些事件过程和行动的能力。核心能力是需要将数据存储到一个数据库中。这可能发生在三种形式。

  1、这里的传统模式是编写服务端应用程序,例如,这可能是一个支持数据库的jax - rs应用程序。然而,有很多更多的敏捷方法我们可以支持。

  2、使用大数据分析平台。这个需要cloud-scalable平台支持技术,例如Apache Hadoop提供来自于设备上高度可伸缩的mapreduce分析数据。

  最后,我们需要能够与系统外的网络通信(api)。在API管理系统中,这些API可以被管理和控制。

  构建的web前端推荐的方法是利用模块化的前端架构,如门户,它允许简单的快速合成有用的ui。当然架构还支持现有的Web服务器端技术,比如Java servlet / JSP、PHP、Python、Ruby,等等。我们推荐的方法是基于Java的框架和最流行的基于Java的Web服务器,Apache Tomcat。

  首先,谈到面向开发者它提供了一个云门户,开发人员可以从系统和订阅api发现,探索。也支持出版商创建版本、管理提供和发布api;

  第二个是管理访问api,执行访问控制检查(外部请求)以及基于政策的节流式使用。它还执行路由和负载平衡;

  服务器端系统(设备管理)与通过各种协议通信提供了单个和批量设备控制。它还远程将软件和应用程序部署在设备上。它可以锁和/或必要时擦拭设备。设备管理器与设备管理代理一同工作。不同的平台和设备类型有多个不同的代理。

  设备管理器还需要维护设备的标识列表和映射这些设备的主人即所有者。它还必须联合身份和访问管理层来管理控制设备访问(如设备除了老板谁还可以管理,怎么做所有者和管理员的控制权,等等)。

  非受管设备没有代理DM,可以与其他网络通信。这些可能包括8位设备的空间太小不足以支持代理程序。设备管理器可能仍然保持设备的可用性和位置信息。

  当然对于一个给定的实例化的参考体系结构,身份层可能有其他需求。在本节中,我们列出了参考体系结构的主要组件以及我们在技术上的具体决定。这些决策的动机是构建灵活、可发展的、可伸缩的网络架构要求以及最佳实践。

  参考体系结构是非常有用的。然而,如果有一个真正的实例化它将更加有效。在本节中,我们提供了一个映射到AI-CPS平台来展示可以实现的产品和功能的参考体系结构。

  AI-CPS平台是一个完全模块化的企业平台,提供所需的所有功能的服务器端架构。此外,我们还提供一些设备层参考组件提供组件的所有可能的设备这是一个棘手的问题,但是我们对于某些流行的设备类型提供的示例代码和/或支持代码。

  AI-CPS平台的一个重要方面是它本身是多租户的。这意味着它可以在一个部署就支持多个互相隔离的组织(租户)。这是一个关键的功能部署以实现参考体系结构的软件即服务(SaaS)。也被一些组织内部用来支持一组内不同部门。

  AI-CPS平台是基于称为Carbon技术,进而基于OSGi。每个产品在平台基于相同的Carbon内核。此外,每个产品提供所需的功能、所需的特性可以加减。所有产品一起使用标准的互操作协议,比如HTTP、MQTT AMQP。下图显示了物联网的AI-CPS产品功能与相应的参考体系结构分层。

  我们支持任何设备。我们有一个在任何基于Linux或基于android系统的设备的设备管理能力参考,可以移植到其他32位平台。AI-CPS还可以帮助提供许多从Arduino到Android设备平台的MQTT客户机代码,。

  通过AI-CPS数据分析服务器( AI-CPS das)提供了一个完整的分析平台,首先在一个行业分析静态和动态的数据做预测分析。无论是运行本地还是在云端,AI-CPS的分析平台提供了灵活地扩展,到每秒数以百万计的事件处理。

  AI-CPS是提供所有这些功能(以及更多)的模块化平台。因此它是创建和部署物联网的理想的参考体系基础结构。

  另外一个非常值得考虑的方面是使用平台即服务(PaaS)。AI-CPS提供私有PaaS产品。提供了弹性可伸缩的管理和部署上述产品,譬如租赁管理,自助服务订阅和许多其他方面。它还支持许多其他有用的服务器端管理功能。

  工业物联网(互联网)市场空间正迅速发展,而我们希望本文和相关技术发展保持同步。尽管这是个新兴市场,本文参考体系结构是基于我们与客户部署支持物联网功能的实际项目。因此,我们有很大的信心,这是一个有用的,可部署,有效的参考体系结构。

上一篇:一种基于物联网技术的能源物联网数据服务平台 下一篇:天诚5G NB智能门锁与IOT物联网结合让信息更安全

im电竞竞猜注册网址