Transcoding Active Gateway (TAG)

Introduction

TAG is a development of the original UCL Transcoding Gate (UTG) that allows relaying and transcoding of multicast media streams over a unicast connection. The TAG software comprises of many components, written as Java proxylets that run on Active Servers (AS). The TAG Client Proxylet starts and controls the other Proxylets in order to provide different configurations. The instructions here describe how to first start the TAG Client Proxylet and then how to configure the different modes.

Installation

The TAG client proxylet needs no installation; it is simply launched onto an AS running on the local host. The following software should be installed and running before attempting to launch the TAG client:
  • Sun Java Runtine Environment (JRE) or Development Kit (JDK) v1.2 (v1.4 for IPv6 addressing)
  • FunnelWeb Active Server (EEP) - see FunnelWeb Active Server documentation for downloading and installation.
    (Android project partners can also download the software from the Android FTP site)

    Extra permissions are required to run the TAG client proxylet. The following line should be added to the grant section in the java.policy file:

    Permission java.security.AllPermission;
    

    Launching

    The recommended method of launching the TAG client proxylet is by using the UCL Secure Conference Store (SCS). In order to launch the proxylet using the SCS, the CLASSPATH environment variable needs to be set to the location of the FunnelWeb code, eg:
    setenv CLASSPATH ~/eep/alan-2.0.3.jar
    
    Use the follow instructions to configure TAG with an existing conference:
    1. Start a SSL & Java compatible browser.
    2. Go to the website: https://www-secure.cs.ucl.ac.uk
    3. If this is the first visit to this website then accept the site certificate.
    4. Select a private or public session to join.
    5. Accept the browsers security warning dialog bog.
    6. A new window will be launched containing the SPAR applet.
    7. From the applet, select using the listbox of tools the 'TAG' tool. All the media types that TAG supports will be selected automatically.
      note: if TAG does not support the media types for the session then TAG cannot be used for the session.
    8. Click on the join conference session using selected media and tools button to start the TAG client proxylet on the local Active Server.
    9. If the TAG client fails to load debug information can be viewed via the browsers Java Console.
    10. More information regarding the SCS and SPAR applet can be found in the 'Releated Projects' section below.

    Command Line options

    Alternatively the TAG client can be launched manually onto an AS. See the FunnelWeb documentation for more information about launching Proxylets on an AS. The syntax for launching TAG is:

    java -classpath [classpath] AU.edu.uts.sdyn.Launcher -h [localhost:rmi_port] -p http://llygoden.cs.ucl.ac.uk/tag/proxylets/clientProxylet.jar -c client.tagClient [-tag_options]

    where tag_options include:
    -portport number used for EEP RMI communication
    -proxylocation of proxylets. ie. llygoden.cs.ucl.ac.uk/tag/proxylets (note no 'http://' and no trailing backward slash)
    -rataddress port ttl for the audio tool, RAT. ie "224.2.2.2 4444 16" (quotes required)
    -vicaddress port ttl for the video tool, VIC.
    -wbaddress port ttl for the shared whiteboard tool, WB.
    -nteaddress port ttl for the shared text editor tool, NTE.

    Configuring TAG

    TAG can operate in one of two reflection modes. The "point to point" mode relays multicast between a local and remote Active Server (AS). The "multi point" mode relays multicast between a local AS and multiple remote AS. The two modes are configured differently and are described below separately.

    point to point (client/server) mode

    Select the point to point mode from the main client interface. Note, this will stop any previously started proxylets and disconnect TAG from any connections made to an AS.

    TAG needs to be configured with the location for the local and remote Reflectors - the multicast stream will then be relayed between these two Reflectors. To select a location for the local Reflector, click on the configure button next to the Local Reflector Proxylet label. A new window will be displayed, titled Local Reflector configuration. There may be a small delay before this window is displayed, whilst TAG attempts to locate the closest AS. If an AS is found then it is displayed next to the Closest AS label. Using the drop down listbox next to the Select/Enter AS/MID Location label, select an AS for running the Reflector Proxylet. The choice of location for the local AS can be at any point within a local network where the multicast needs to be received. Click on the update button to connect to the AS. The main interface will be updated with the name of the selected AS and if a connection is successful then the status light will change from red to green.

    To select a location for the remote Reflector, click on the configure button next to the Remote Reflector Proxylet label. A new window will be displayed, titled Remote Reflector configuration. Using the drop down listbox next to the Select/Enter AS/MID Location label, select an AS for running the Reflector Proxylet. The choice of location for the remote AS should be at a point where there is connectivity for the required multicast streams. Click on the update button to connect to the AS. The main interface will be updated with the name of the selected AS.

    Once the above configuration has been made, TAG will monitor for any activity for the chosen conference. If local multicast is detected then the appropriate Reflectors will be loaded and started on the local and remote AS. Each stream starts a seperate instance of a Reflector Proxylet. If no activity is detected after 60 seconds then the reflectors are stopped and unloaded from both AS.

    multi point (VPN) mode

    Select the point to point mode from the main client interface. Note, this will stop any previously started proxylets and disconnect TAG from any connections made to an AS.

    TAG needs to be configured with the location for the local Reflector and a Reflection Manager. The local Reflector will register with the Reflection Manager and relay multicast between other registered reflectors. To select a location for the local reflector, click on the configure button next to the Local Reflector Proxylet label. A new window will be displayed, titled Local Reflector configuration. There may be a small delay before this window is displayed, whilst TAG attempts to locate the closest AS. If an AS is found then it is displayed next to the Closest AS label. Using the drop down listbox next to the Select/Enter AS/MID Location label, select an AS for running the reflector proxylet. The choice of location for the local AS can be at any point within a local network where the multicast needs to be received. Click on the update button to connect to the AS. The main interface will be updated with the name of the selected AS and if a connection is successful then the status light will change from red to green.

    To select a location for the Reflector Manager, click on the configure button next to the Reflector Manager Proxylet label. A new window will be displayed, titled Reflector Manager configuration. Using the drop down listbox next to the Select/Enter AS/MID Location label, select an AS where the Reflector Manager proxylet is running. Click on the update button to connect to the AS. The main interface will be updated with the name of the selected AS.

    Once the above configuration has been made, TAG will monitor for any activity for the chosen conference. If local multicast is detected then a reflector will be loaded and started on the local AS. Each stream starts a seperate instance of a Reflector proxylet. If no activity is detected after 60 seconds then the reflector is stopped and unloaded from the AS.

    Configuration file

    The TAG configuration file is loaded from $HOME/.taginit (UNIX) or $HOME\tag.ini (Windows).
    The following settings can be made:
    localActiveServer
    remoteActiveServer
    tagModepointtopoint | multipoint
    proxyletControlMethodrmi | event
    multicastTimeoutn minutes
    startMMCRProxylettrue | false
    signEventstrue | false
    vpnUsername
    vpnPassword

    MID Server, VPN Manager configuration

    TAG has been developed to work with other componenets developed as part of the Android project. Further information is available for Android partners on the Android site.

    Contact

    If you have comments or require further information please contact Kristian Hasler.

    Documentation

    Presentations are available from the following project websites (requires password)
    Android website: ftp://android@cs.ucl.ac.uk/android/ftp/incoming/meetings/UCL/presentations/Android-TAG-01.ppt
    6WINIT website: ftp://6winit@cs.ucl.ac.uk/6winit/ftp/incoming/wp6/6WINIT-TAG-01.ppt

    Related Projects