OPC UA C/C++ SDKs

OPC UA C/C++客户端、服务器和PubSub SDK是用于简化和加速OPC UA架构中的软件开发的工具包。

技术细节- 高性能 OPC UA SDK

组件设计允许用户在单独的进程中运行网络编码器/解码器等组件。这不仅可以提高性能,还使用户受益于像Linux安全计算模式这样的沙盒机制。这允许用户禁用此进程的任何操作系统调用。对于可能导致攻击的程序漏洞,只要攻击者尝试访问被禁止的操作系统功能,操作系统就会终止该进程。主进程检测到这一点,可以重新启动被终止的进程。


异步网络API

新的软件工具包基于一个完全异步的网络API作为OS抽象层。不同的网络后端能够受益于现代操作系统特定的API,比如POSIX AIO, Linux Epoll, BSD kqueue或Windows完成端口API。这些API不会像老式的Berkeley Socket API那样出现可扩展性问题,因此能够用来开发高性能服务器应用程序。使用这些API可以减少上下文切换和复制操作的次数,从而提高扩展到数千个连接时的性能。通过这个新的API,我们还引入了非阻塞域名解析的解决方案。


异步加密和PKI 应用程序编程接口

与网络API一样,今天的加密实现也受到同步阻塞实现的影响。我们新的SDK采用完全异步设计来解决这个问题。SDK直接支持两种不同的后端:OpenSSL和mbedTLS。随着时间的推移,我们可以添加更多的后端。这个概念还允许添加硬件加速加密。异步设计现在允许将加密工作分摊到硬件芯片,同时继续OPC UA通信,然后处理硬件加密的结果,即使在单线程环境中也是如此。


提高性能

基于标准C语言的OPC UA SDK的编码器/解码器组件是最大的性能瓶颈之一。尽管它比Java和基于C#的堆栈速度快,但还没有达到全部潜力。通过对编码过程的重新设计,我们可以将编码过程的性能提高10倍。这可以使OPC UA协议的整体性能提高4倍,具体取决于所传输的数据类型。


所占资源少

模块化的概念、可配置的内存和高效的实现使该SDK适合于最小的设备和物联网(IoT)。在运行基于ARM的实时操作系统的演示设备上,我们能够集成一个代码为300K的OPC UA服务器,包括操作系统。一种新的基于列表的地址空间概念允许将巨大的地址空间以极小的内存集成在一起。该方法还支持完全保存在ROM中的只读地址空间模型。

代码版

High Performance OPC UA SDK支持以下OPC UA功能和配置文件

  • 数据访问
  • 事件访问
  • 警报与条件
  • 方法
  • 安全,身份验证
  • UA-TCP, UA-安全对话, UA-Binary

概述

  • UA Nano嵌入式设备服务器2017配置文件
  • UA Micro嵌入式设备服务器2017配置文件
  • UA嵌入式服务器2017配置文件

数据访问

  • 服务器层面数据访问
  • 服务器层面复杂类型

事件

  • 服务器层面地址空间通知
  • 服务器层面标准事件订阅

方法

  • 服务器层面方法

服务器层面方法

  • 服务器层面警报与条件基础条件
  • 服务器层面警报与条件Refresh2
  • 服务器层面警报与条件地址空间实例
  • 服务器层面警报与条件开启
  • 服务器层面警报与条件可确认的警报
  • 服务器层面警报与条件警报

历史访问

  • 正在开发

产品的不同版本-许可证架构

High Performance OPC UA SDK只有代码版。支持Windows或者Linux平台。

What is OPC?

OPC and OPC UA (Unified Architecture) are industry standards that enable software to connect devices, machines and systems from different manufacturers using same interface.

Read more about OPC »

-->