Client
Product description
TSP is a control protocol used to establish and maintain static tunnels. The Client is used on the host computer to connect to a tunnel broker using the TSP protocol and to get the information for its tunnel. When it receives the information for the tunnel, the Client creates the static tunnel on its operating system.
The Client code is mostly identical for all client platforms. However, creating the static tunnel is operating system dependent and is done by a script called by the Client. These scripts are located under the template directory in the Client installation directory.
The script executed by the Client to configure the tunnel interface is customized for each type of supported operating system and takes care of all specifics for the target operating system. On Unix systems, it is a shell script. On Microsoft Windows, it is a batch file (.bat). This separation of the binary and script enables fast and easy additions of new operating systems, as has been shown by the community contributions for many operating systems.
Packaging
The Client is available either as part of the operating system distributions, such as Linux or FreeBSD; as downloadable software from the Web site of the tunnel broker service, such as Freenet6 (http://www.go6.net); as included in the gogoSERVER CD-ROM; or directly from gogo6 (http://www.gogo6.com).
Multi-site operation
The Client may be used to connect to a single gogoSERVER or to multiple servers across different locations. This serves two purposes: providing better quality of service by having users connect to the closest server and also provide redundancy if one site is unavailable.
The mechanism used by TSP to announce multiple sites is called a broker list or broker redirection (in the case there's only one element in the list). The client receiving a broker list will test which sites are available and their respective topological distance using echo messages. The client then connects to each broker in the list, the closest one first, until a successful connection is established.
Executing the Client
The Client is executed manually by typing the command gw6c which stands for TSP Client program. If no keepalive is negotiated, the Client program exits after setting up the tunnel. If the keepalive mechanism is negotiated, on Windows the Client program remains connected while on other operating systems it forks itself and runs in the background to carry the keepalive with the tunnel broker. Keepalives are mandatory for IPv6 in UDP IPv4 tunnels to keep the NAT mapping up, but are optional for IPv6 in IPv4 tunnels and IPv4 in IPv6 tunnels.
On Windows, a second mode of operation is available. By default, the Client is configured to run as a service by the installer. As a service, it will automatically start with the operating system. To configure the Client service, open the Control Panel, then Administrative Tools, and then Services. The graphical user interface (GUI) can be used to configure the Client and to manage the Client process. Note that the manual mode should be used to debug problems.


















