Search

User Manual

Getting Started


Modules and Platform


Appendix


Tutorials & Helpful Tricks


Glossary


Strategic Partner Links

Sepasoft - MES Modules
Cirrus Link - MQTT Modules

Resources

Inductive University
Ignition Demo Project
Knowledge Base Articles
Forum
IA Support
SDK Documentation
SDK Examples

All Manual Versions

Ignition 8
Ignition 7.9
Ignition 7.8

Deprecated Pages

Skip to end of metadata
Go to start of metadata




Overview

The Gateway Network allows you to connect multiple Gateways together over a wide area network, and opens up many distributed features between Gateways. The Gateway Network provides the following features:

  • A dedicated HTTP data channel that can handle multiple streams of message data.

  • The ability to set up a node to act as a proxy for another node.

  • Security settings that restrict incoming connections based on a white list or on manual approval of the connection. Incoming connections can also be disabled entirely.

  • An available SSL mode. When enabled, connections must send SSL certificates to prove their identity. A connection will not be accepted until its SSL certificate is approved.

Gateway Network Features

The Gateway Network opens up certain services for use that make managing multiple Gateways and having them effectively communicate with each other a snap. It also has special security that can restrict certain services from happening in certain zones of the Gateway Network.

Enterprise Administration

The Enterprise Administration Module (EAM) uses the Gateway Network for message and file transfer, and can monitor network connections for availability. The EAM reports whenever a comm link is lost via alarm events and system Tags.

Distributed Services

  • Remote Providers: Remote Realtime and Historical Tag Providers make remotely controlling and storing Tag data even easier.

  • Remote Alarming: Remote Alarming makes notifying all Gateways in the network possible, to quickly and effortlessly track down issues.

Security Zones and Service Security

Security Zones can be setup to lock down or prevent access to certain parts of Gateways within the Gateway Network.

Outgoing vs. Incoming Connections

When using the Gateway Network, you will be working with two type of connections. To establish communications, create an outgoing connection on the local machine. The outgoing connection always begins the connection process to a remote machine. After the outgoing connection is created, the local machine will attempt to use the connection to establish communications with the remote machine.

On the remote machine, an incoming connection will automatically be created when the new connection attempt is detected. For connections where security settings require manual approval, you will need to approve the incoming connection before it can be used. If no security controls have been set, the incoming connection will automatically accept the connection from the local machine and begin sharing data.

Connections and Servers

Every machine on the Gateway Network is known as a Server. When you establish a connection to a remote machine, the remote Server sends data about itself and also sends data about any other Servers known to that machine. For example, assume your local machine is GatewayA. The remote machine is known as GatewayB. GatewayB also knows about another remote machine named GatewayC. As soon as your local GatewayA establishes a connection with GatewayB, GatewayB also sends information about the existence of GatewayC.

Modules such as the Enterprise Administration Module (EAM) are aware of this relationship and allow communication between GatewayA and GatewayC, even though there is no direct connection from the local machine to GatewayC.

Which Server Should I Configure the Outgoing Connection On?

In regards to connecting multiple Gateways over the Gateway Network, there is little difference between an Outgoing and Incoming connection: these terms simply note which server the connection was configured on, and are mostly ignored by the rest of Ignition. Thus, assuming GatewayA and GatewayB, configuring an outgoing connection from A to B is equivalent to configuring an outgoing connection from B to A.

On this page ...


IULocgo


Gateway Network Overview


General Settings

Main

The Gateway Network General Settings set the basic rules for the system. By default, these settings are lenient to allow for easy setup, but can be set for security.

SettingDescription
Enabled Uncheck this checkbox to disable using the Gateway Network on this Ignition.
Require SSLIf true, only connections that use SSL to encrypt traffic will be allowed. This setting only applies to incoming connections. Default is true.
Require Two Way Auth

Enforces two-way SSL authentication. If true, you will need to install the remote machine's certificate on this machine, in addition to manual approval of this machine's certificate on the remote machine.

If you check this setting, you will need to provide the remote machine's certificate. To do this, manually export a certificate from the remote machine's metro keystore, located in <installdir>/webserver/metro-keystore. Default keystore password is metro, and the alias is metro-key. Then place the certificate on the local machine, in data/certificates/gateway_network.

Send Buffer LimitThe number of outstanding messages that can be waiting for acknowledgement at a time. Default is 5.
Receive Queue LimitIf there is too much traffic on the Gateway Network, then it can tell Agents to stop sending messages for a specified amount of time. This setting is the number of received messages that can be held until they are processed by the local system. When this capacity is exceeded, the calling side will wait until capacity is available. Default is 100.
Receive ThreadsThe maximum number of threads that can be used to process incoming messages. Default is 5.

Security

By default, the security level for incoming connections is set to “Unrestricted”, meaning that every remote machine that attempts to connect to the local machine will be accepted without question. You have several options to control security from the Gateway Network settings. Note that these settings are independent of SSL mode, which is detailed below. To change security settings, go to the Gateway Webpage and navigate to Config -> Networking -> Gateway Network and select the General Settings tab.

SettingDescription
Allow Incoming ConnectionsUncheck this checkbox to disable all remote machines from being able to establish an incoming connection. To establish any connections with remote machines, you will need to create outgoing connections from this machine. Default is true.
Connection Policy

Dictates what connections are allowed. Options as follows:

  • Unrestricted - Default mode, allows all incoming connections unless the Allow Incoming Connections checkbox is unchecked.
  • ApprovedOnly - Incoming connections are created, but cannot be used to send or receive data until you approve the connection under Gateway Network -> Incoming Connections tab. To approve an incoming connection, click the Approve link on the right side of the connection. You can also deny a previously approved connection by clicking the deny link. Note that the approve and deny links will appear next to a connection only if you have enabled the ApproveOnly setting.

  • SpecifiedList - An incoming connection will only be allowed if its server name is on this list. Separate server names with a comma.
Specified ListConnections with an ID in this list are automatically allowed if the security mode is set to SpecifiedList. Separate Gateway names with a comma.
Allow ProxyingIf enabled, this Gateway will be allowed to act as a proxy, and forward requests between Gateways that do not have direct connections.


Setting Up a Gateway Network Connection

When you create a new outgoing Gateway Network connection, you need to specify the address for the remote server. There are also settings for ping rates and timeouts. The defaults can be used for these fields. The following are all the available settings for setting up an outgoing Gateway Network.


Main


SettingDescription
HostThe address of the remote server, not including the port. For example, http://10.10.123.4.
PortThe port of the remote server. Default is 8060.
EnabledWhether this connection is enabled. Default is true.
Use SSLUse SSL to connect to the remote machine. Default is true.



Ping


SettingDescription
Ping RateHow often, in milliseconds, to send a ping to a remote machine. Default is 1,000.
Ping TimeoutThe maximum time, in milliseconds, allowed for a ping response. Pings that time out are counted as missed pings. Default is 300.
Missing PingsThe amount of missed pings that will force the connection to be considered faulted. Default is 30.



Timeouts


SettingDescription
Websocket Connect Timeout

The maximum time, in milliseconds, allowed for a new web socket to connect to a remote machine. Default is 10,000.

HTTP Connect Timeout

The maximum time, in milliseconds, allowed to establish an HTTP connection to a remote machine. Default is 10,000.

HTTP Read Timeout

The maximum time, in milliseconds, allowed to read or send HTTP data to a remote machine. Default is 60,000.




IULocgo


Setting up a Gateway Network Connection

Gateway Network Connection Example

To establish a basic communication link between two Gateways, first log into the Gateway where you want to establish the outgoing connection.

For this example, we're going to use an SSL connection.  

  1. On the Gateway Webpage, navigate to Config -> Networking -> Gateway Network.
  2. Click on the Outgoing Connections tab. Click the Create new Outgoing Gateway Connection link.



  3. In the Host field, enter the network address of the remote server. 

  4. In the Port field, enter the SSL port used by the remote server. By default, this is set to 8060 (which is defined /data/gateway.xml). 

    This port is different from the default SSL port an Ignition Gateway would use when communicating to a client (default port 8043).

  5. Check the Use SSL checkbox. 




  6. Use the default settings in the Ping section and Timeouts section of the page.
  7. Click the Create New Outgoing Gateway Connection button at the bottom of the page.

  8. You'll see a confirmation message that the connection was created.



  9. At this point, your Gateway transmitted its certificate to the connected Gateway, but the incoming connection is not yet allowed. The Gateway’s connection will not show up under the Incoming Connections tab until after the certificate has been approved. 

  10. Log into the other Gateway.  

  11. Click on the Incoming Connections tab. The first Gateway’s certificate should be present. The certificate Common Name field holds the network address of the machine that transmitted the certificate. The Serial field holds a numeric string that is automatically generated when the certificate is created, and is unique to every certificate. 



  12. Click the approve button to accept the certificate. You'll see a confirmation message. Click the Confirm button.


Deleting Connections

Outgoing and incoming connections can be deleted for cases when the connection no longer exists on the other side.

  1. To delete a connection, navigate to Config -> Networking -> Gateway Network.
  2. Click on either the Outgoing Connections tab or the Incoming Connections tab. 
  3. Click More, and then select Delete next to the connection. Note that for incoming connections, if a remote machine is still connected to the local machine with an outgoing connection, a new incoming connection will be created after deletion. For these cases, you must log into the remote Gateway and delete the outgoing connection. Then you can delete the local incoming connection.


Certificates and SSL

When a remote machine establishes an incoming connection, its Gateway server name is transmitted and appears in the Server Name field under Gateway Network -> Incoming Connections. However, there no identity authentication is performed when the connection is created. The local system accepts the remote system id without question. To perform identity authentication on a connection, you must use Secure Socket Layer (SSL) and certificates. By default, SSL is enabled. 

Requiring a Certificate

  1. To require all incoming Gateways to use SSL, navigate to Config -> Networking -> Gateway Network.

  2. Select the General Settings tab, and check the Require SSL checkbox. 

  3. Click the Save Changes button.




Denying a Certificate

You can deny a certificate under the Certificates tab by clicking the deny link to the right of the certificate. The connection that has been using that certificate will not longer be allowed to connect. You can delete certificates that are no longer in use. Keep in mind that if you delete a certificate, and a remote machine is still using that certificate, it will reappear on the Certificates page. In this case, you must navigate to the remote Gateway and delete its outgoing connection. Then you can permanently delete the certificate from the Certificates page.


Gateway Network Diagnostics

The Diagnostics tab on the Gateway Network Settings page gives you insight to the Gateway and and remote server response times.

  1. To test the response time of a remote server, select the server name from the Server dropdown list.
  2. Click the Submit button.



  3. The results will be displayed indicating if the call to the remote server was successful, what the response time was, and if there were any errors. 




 


  • No labels