Vista Software
Apollo Relay

Description

Apollo Relay Server allows Apollo developers to connect to an Apollo Server that is running behind a firewall or that is installed is on network that uses a router.
(See: Getting Started for more details.)

The problem in these configurations is that when Apollo client applications try to establish a direct TCP/IP connection with an Apollo Server, the firewall or router actually changes the true IP address of the computer hosting the Apollo Server and therefore prevents access to the Apollo Server. The Apollo Relay Server solves this problem by providing a central access point for both Apollo client applications and the Apollo Server allowing data to flow between them.

The problem does not exist when working with a connection that does not involve a firewall and/or hardware router between Apollo client applications and the Apollo Server.

Example Usage

These days, more and more servers are behind routers. Routers can act as proxies. Say, for example, the phone company gives you a DSL line and you connect one PC directly to that DSL line. Let us call this PC the proxy PC. The proxy PC may be assigned a static IP or a dynamic address (this depends on your service provider). The IP that always gets published is the one on the proxy PC. The only visible PC from the outside world is the proxy PC, or in other words, the only addressable computer in your office is the proxy PC.

Other work stations, including the computer running Apollo Server in your office, use the proxy PC to connect out to the Internet because they are not on the DSL line directly.

The problem that arises immediately in situations like this is that the IP address of the computer running the Apollo Server is unknown to the outside world because the IP that is seen from the outside is the proxy PC's.

So how do client applications know how to connect to the Apollo Server without knowing the IP address? Here's where Apollo Relay Server comes in. Apollo Relay Server must be running on a known reachable IP address. In this case, it is true that Apollo Server is unreachable by outside computers, but Apollo Server can connect to another computer running Apollo Relay Server and act as a client to Apollo Relay Server. Apollo Server 6.1 supports new options that let it connect to an Apollo Relay Server. In effect, ADS acts as a client to ARS). To complete the connection, Apollo applications now simply connect to the Apollo Relay Server as well and the two "clients" (Apollo Server and the Apollo application) now communicate transparently via Apollo Relay Server.

Configuring Apollo Relay Server in a small network

You may be wondering where ARS gets installed to and how can you use ARS if there is no "Proxy PC", as noted above, and instead have a small network managed by a router. For example, a common configuration is to have a router connected to a broadband connection (e.g. DSL, cable, T1, T3 etc.) and the router assigns dynamic IPs to the connected PCs, allowing them to share the Internet connection. This is the basis of your network and no Apollo client applications outside of this network need access to the Apollo Server.

One of these PCs connected to the router would be running Apollo Server and the other PC connections would be running Apollo client applications. Since the router dynamically changes these IPs even within this small network, there is no way to communicate to the Apollo Server.

The question would be, where would ARS be installed using this typical configuration? The answer is the same: Install ARS on any computer that is accessible by both the Apollo Server and the Apollo client applications. Run the Apollo Relay Server anywhere on the Internet since both your Apollo Server and Apollo client applications can connect to the Internet thanks to the router! Run ARS on www.whatevercomputer.com.

System Requirements

Apollo Relay Server requires Apollo version 6.1 or later for both the Apollo local data engines and the Apollo Server.

Runtime License/Royalty Requirements

Apollo Relay Server requires that a license be purchased per deployment. This means that if you have to install the Apollo Relay Server on 5 computers, you will need to purchase 5 copies of the Apollo Relay Server.


Apollo Database Engines