The GlinkProxy Session Persistence Server

GlinkProxy runs on a Windows server, can be located close to the host computer, and is designed to extend the life of sessions between Glink terminal emulation clients and hosts. A device running Glink might go idle, enter power-saving mode or move out of WiFi range and prematurely terminate the session between Glink and the host. The GlinkProxy software maintains the session with the host, even if the device goes to sleep or the connection is temporarily lost. This enables Glink to seamlessly resume the session without loss of productivity when it reconnects to GlinkProxy.

How it works

GlinkProxy is a server application that acts as a link between a Glink terminal emulation client and a host, maintaining an established session with the host even though the client device might go idle or lose WiFi connection. This is how it works:
  1. Glink connects to the GlinkProxy application server.
  2. GlinkProxy connects to the host application and establishes a session with the host on behalf of Glink and keeps track of the session information.
  3. GlinkProxy maintains the host connection, even if the connection between Glink and GlinkProxy goes idle or dead. You can configure how long GlinkProxy should maintain the host connection after the connection between Glink and GlinkProxy has been terminated. GlinkProxy can also differentiate between normal user initiated disconnects and unexpected disconnects with an error.
  4. When a Glink client reconnects after having been idle or lost the connection, the GlinkProxy server sends the session information to Glink and Glink continues the session.
The following image provides a conceptual overview of GlinkProxy.

GlinkProxy overview

The GlinkProxy application runs on a Windows server that can be located near the host computer. It will allow the traffic from the mobile computers, tablets or PCs with Glink to be routed through the GlinkProxy server to the host. The GlinkProxy server will keep the connection to the host application even if the connection to the client computers with Glink is lost. When Glink reconnects, the session with the host application will resume as if the connection was not lost.

Delivery

The GlinkProxy application is delivered as a zip-file containing the GlinkProxy executable file and the product documentation.

Install and setup

  1. Copy the file to the Windows server on which you want to run the GlinkProxy software.
  2. Create a folder for GlinkProxy, for example C:\GlinkProxy, and unzip the GlinkProxy package here.
  3. Start glinkproxy.exe without parameters by double-clicking the icon or typing in glinkproxy.exe at a command prompt. You will now be requested to enter your license information. Either type it in or copy-and-paste it into the text box. Click "OK" twice and "Allow access" to the network for GlinkProxy when Windows Defender Firewall or other firewall prompts for it.
  4. You now have a running instance of GlinkProxy with default parameters.
  5. With default parameters, GlinkProxy will
  6. Open the Settings menu if you want to change some of these values and Save the changes.

Below you can read more about the Settings menu, its parameters and how you can set them from the command prompt. You will also find a description of the proxy server parameters that can be set in Glink for iOS and Glink for Android.

Startup

If GlinkProxy is started without command line parameters, it will use default parameters the first time it is started and saved parameters on all following executions. If started with command line parameters (listed below), the command line parameters will override the previously saved parameters. For simplicity, it is recommended that you click Settings inside GlinkProxy to modify and save parameters and that you start GlinkProxy without any command line parameters.

Settings

Click "Settings" on the menu bar to open the settings menu.

GlinkProxy Settings

In this menu you can configure:

Command line parameters

The GlinkProxy application is provided as a standalone program glinkproxy.exe. Its behavior is controlled by parameters set and saved in the Settings menu inside the application, but you can also use the following command line parameters to override the saved parameters.

Parameter Description Comment
/ACR Allow Client Redefine This parameter allows redefinition of the /ND and /ED timeouts by the Glink client. This is the default, but you may use this parameter to override /NCR that might have been saved in Settings/Save.
/DLT nn Disconnect List Timeout This specifies how long the server will retain host disconnect status (in seconds). The default value is 3600.
/DEBUG Debug If this is specified then a separate window will open to display debug information for server activity.
/ED nn Error Disconnect timeout The server will preserve sessions to the host when the connection is terminated abnormally or when the /ND parameter has kept the session in hold. The /ED parameter may be used to specify a timeout (in seconds) after which the host connection will be closed. Note that the Glink client may redefine this timeout if this has not been disabled by the /NCR command line parameter.
/EK Enter Key When this option is specified, the licensing form will be displayed to let you inspect or modify the licensing data. The server will terminate immediately after exiting the dialog
/KT nn Telnet KeepAlive This parameter enables sending of Telnet keepalive packets every nn seconds from GlinkProxy to the host. The default is not to send Telnet keepalive packets, but it can be very useful if the session is idle for long periods and you want to avoid being disconnected by the host due to inactivity.
/KA TCP KeepAlive This enables use of TCP keepalives between GlinkProxy and the host. The default is not to use TCP keepalives. The actual keepalive interval is a Windows system parameter.
/NCR No Client Redefine This parameter prevents redefinition of the /ND and /ED timeouts by the Glink client.
/ND nn Normal Disconnect timeout This specifies how a normal disconnect from the client should be processed. The default is zero, i.e., simply terminate the host connection immediately. Otherwise, the parameter tells the server to keep the connection active for that number of seconds, allowing the client to reconnect until the timer expires. Note that the Glink client may redefine this timeout if this has not been blocked by the /NCR command line parameter.
/PORT nn Port number The server listens by default on port number 30855 (0x7887). This parameter may be used to override this with a port number of your choice.
/VERBOSE Verbose debug Supplied as well as the /DEBUG parameter this tells the server to display all data sent and received (default is to display only the first 16 bytes of each block).

The Settings/Save option available while the server is running will save many of these settings and you will then only need to use the above to override the saved values. This applies to /ACR, /DLT, /ED, /KA, /NCR and /ND.

Glink for iOS/Android Proxy Server Settings

Glink 5250, Glink 3270, Glink VT and Glink for iOS/Android can communicate with TN5250, TN3270, Telnet, TNVIP and Ggate protocols via GlinkProxy to host systems. This is enabled in the Menu -> Settings -> Proxy server menu:

Glink Proxy server settings

Parameter Value Description
Use server on/OFF Check this option to enable communication thru a GlinkProxy server
Address ip-addr Configure the address of the server running GlinkProxy (not the application host)
Port nn Configure the port number GlinkProxy is listening to. The default is 30855
User disconnect nn Specifies the number of seconds the proxy server should keep the connection to the host application after a user initiated disconnect. The default value is 0, which means that the connection to the host is disconnected immediately. This is what happens without a proxy server. Set this parameter to a non-zero value if you want that the proxy server should keep the session to the host the configured number of seconds after a user initiated disconnect
Connection lost nn Specifies the number of seconds the proxy server should keep the connection to the host application after the connection to Glink is dropped with an error, for example if the device goes idle, enter power-saving mode, or move out of WiFi range. When the device is woken up or the network connection is reestablished, the user can reconnect and resume the session with the host application.

When Glink is configured to use a proxy server, it will send server address and keepalive settings to the proxy server. The proxy server will use these parameters to connect to the host application server and maintain the connection to it. Keepalive settings, user disconnect and connection lost settings from Glink will override settings in GlinkProxy if GlinkProxy is set up to allow Glink to change these parameters. For all communications, the proxy server is a transparent communication gateway between Glink and the host application.