本发明涉及一种配置用于自动化网络的隧道连接的方法。
背景技术:
工程设计,对自动化设备、例如可编程逻辑控制器(sps;英文plc,programmablelogiccontroller)或使用者接口(人机接口,也称为hmihumanmachineinterface)的配置和启动运行通常借助于基于pc的工程软件执行。在具有所安装的工程软件的计算器和自动化设备之间的通信、例如在simatics7中通常经由专有的通信协议实现。
专有的基础的、与自动化设备相互连接的通信网(自动化网络)在此在正常情况下与其它的网络、特别是外部的网络分离。这涉及独立的(所谓的“stand-alone”)网络,其借助于相应的合适的网络元件(防火墙)进行保护。
其上运行有基于pc的工程软件的计算机必须例如经由以太网、总线或usb连接到自动化网络上。在传统的情况中,当工程师利用在自有计算机上安装的工程软件执行自有计算机上的技术设计时是没有问题的。但这在借助于云计算支持数据交换的环境中是不同的。基于pc的工程软件必须与自动化设备借助于自动化协议连接,这使得工程软件的安装复杂化。
在此,云计算理解为执行未安装在本地的计算机上、而是安装在由远程调用(例如经由互联网)的其它的计算机上的程序。
it基础设施(例如计算能力、数据存储器、网络能力又或者完成的软件)经由网络提供,而不必在本地的计算器上安装。
在此,该服务的提供和使用仅经由技术接口和协议以及经由浏览器进行。在云计算的范畴中提供的服务的跨度包括信息技术的整个范围,并且此外包含基础设施(例如计算能力、存储空间)、平台和软件。
为了规避在云环境中安装的自动化软件不能够响应于与互联网和与pc连接的自动化设备的问题,例如利用网络隧道软件扩展工程软件。
在网络中称为隧道或隧道效应的是通信协议的转换和传输,该通信协议为了运输而嵌入到其它的通信协议中。因此,在隧道伙伴之前或之后“谈及”原始协议,而在隧道伙伴之间应用其它的协议,其用于其它类型的通信并且尽管如此还是运输原始协议的数据。对此在隧道的两侧都需要隧道软件。在其将原始的通信数据嵌入到其它的协议中之后,在隧道的相应其他侧的软件再次提取并且传递数据。
自动化协议经由整个互联网协议(例如tcp或http)这样隧道化。工程pc作为网桥起作用,并且将自动化软件与自动化设备连接。
相应的解决方案例如在图1中示出。远程计算机rc处于云中,例如经由https协议与工程pc,pc连接,其又经由传统的自动化通信协议,acp与自动化设备,ad通话。
用于自动化协议的网络隧道效应软件必须在其能够应用之前进行配置。对此,根据现有技术实施下述步骤,以便建立在云中安装的基于pc的工程软件和自动化设备之间的连接:
0.激活用于自动化设备(在图2中以https终点pc示出)的隧道通信的通信终点。
1.经由共同的(在远程计算机,rc和工程计算机,pc之间)远程桌面解决方案(例如微软rdp、vnc、citrix)建立到计算机,pc的连接,在该计算机上执行基于pc的工程软件。计算机rc通常在云环境中用作为虚拟机。在图2的实例中该计算机具有地址automationsoftware.example.dom。
2.在用于基于pc的软件工程的计算机rc上输入通信终点的地址。在图2的实例中该地址为https://pgpc.example.dom。
技术实现要素:
本申请的目的在于,给出一种方法,利用其能够明显简化上述计算机情况中的配置花费。
该方法用于配置在具有工程软件的第一计算机和连接在专有的自动化网络中的第二计算机之间的通信,其中,第一计算机在云环境中运行,并且其中,第一和第二计算机之间的通信借助于隧道协议实现,并且隧道连接的配置自动化地借助于启发式测定的信息进行配置。
用于隧道通信的软件能够利用自动配置功能扩展。该功能尝试启发式地确定用于自动化协议的通信的隧道的通信终点的地址。当该方法成功的时候,不必手动地输入该地址。
有利的设计方案在从属权利要求中描述。
该方法使用了以下的事实,即计算机已经经由一类计算机远程桌面软件(rdp)相互连接,该软件管理基于pc的工程软件并且每个具有网络功能的pc运行系统管理网络连接的能够被读取的内部列表。
附图说明
图1和2示出了现有技术、参与的网络元件的示例性的结构以及配置掩码,
图3示出了用于配置用于自动化协议的网络软件隧道的启发式方法,
图4示出了用于扫描过程的功能流程图,并且
图5示出了用于学习过程的功能流程图。
具体实施方式
在一个有利的设计方案中,所提出的方法包括扫描过程,每次当使用者尝试自动配置网络隧道软件时执行该扫描过程。此外,其包括学习过程,每次当软件建立用于自动化设备的手动配置的隧道连接时执行该学习过程。
图4现在示出扫描过程11:
软件建立和维护端口的列表,该列表最初预先填充有已知的端口,即wkpl-已知端口列表(wellknownportlist)wkpl。这些端口通过共有的远程桌面软件占用,例如为微软rdp应用端口号3389,为vnc应用5800、5900,为citrix应用1494和2598。
为列表中的每个端口12实施下述步骤:
当在当前的端口上存在连接,15:
-其测定连接到该端口上(例如端口3389)的计算机的ip地址,16
-其确定用于ip地址的dns名(例如pgpc.example.dom),17
-其将两个结果附加到列表中,18
当没有结果的时候,能够在可能的情况下手动地配置地址。13
图5描述了学习过程21:
当使用者如上所述手动地配置远程地址的时候,这可能意味着,使用者使用仍是未知的远程桌面软件,即非标准(non-default)端口或未知的远程桌面协议。此时对于实施基于pc的工程软件的计算机的现有的网络连接实施以下方法:
其确定连接的外部的地址
-当外区的地址等于手动配置的地址的时候,其将接口附加到已知的端口的列表wkpl中。
软件以该方式能够学习到,使用者使用其他的软件用于连接工程系统,在下次实施扫描过程。
软件使用表面上没有关系的信息(关于用于远程桌面连接的已知端口的信息),以便调整关于用于软件组成的正确的配置参数的猜测,该软件组成负责自动化协议的隧道化。该软件也能够在成功连接的持续时间中学习,识别事先未知的远程桌面软件等。
在此,启发性一般来说是通过计算测定的评估。该计算基于估算、观察、猜测或建议。启发性用于问题解决方案,例如在搜索时采取启发性,以便找到“好的”路径或“好的”解决方案。评估仅与“估算”一样好。启发性总是在最优的解决方案的精确计算不能够实现(例如过少的信息)或者不值得耗用过大的时候采用。
根据本发明的方法在大多数情况下完全自动化地实现配置。