New IRAF Messaging Applications


Francisco Valdes, Michael Fitzpatrick, Robert Seaman
NOAO/SDSG(IRAF)

Abstact

New examples of IRAF applications interacting using a low-volume, socket-based text messaging scheme are described and demonstrated. The tasks may be distributed across multiple CPUs or locations, using a many-to-one or one-to-many client-server architecture.  Server applications respond to messages without blocking so other activities such as data processing, user interaction through a GUI, or responding to another client application, may take place.

Messaging is based on a simple text-based scheme consisting of either commands begining with a colon or data in keyword/value pairs.  This also allows any non-IRAF application which understands the protocol to participate as either a new client or server application.  The commands have the same form as IRAF GUI commands so that applications may easily interact with GUI tasks.

One such server application demonstrated is a GUI IRAF processing monitor.  IRAF (or non-IRAF) data reduction tasks send status and processing information to GUI server tasks which provide graphical displays and interaction with the received information.  One motivation for this is the powerful and easily customizable nature of IRAF GUIs by means of the GUI description files (which are currently TCL interpreted modules), and the need for such a component in the NOAO Mosaic Data Product Pipeline.  This pipeline uses multiple IRAF data reduction tasks and data parallel processing distributed across a network, requiring a central monitoring facility to ensure proper operation of the pipeline. Other applications of this messaging scheme are also discussed.

IRAF Server GUIs

The server GUIs are under development and the ones demonstrated here are prototypes.  The basic structure of the servers is:

Figure 1: Messaging Architecture

New IRAF Monitor Servers


Keyword Monitor (see figure 2a and figure 2b)

Figure 2a: Keyword monitor with small stripcharts

Figure 2b: Keyword monitor with expanded graph


Status Monitor (see figure 3)

Figure 3: Status monitor mock-up

Technical Details

This paper discusses specific conventions and architectures for the servers presented here.  Other messaging conventions are possible as well as two-way communications.  So what  is described does not imply restrictions in the IRAF system or in the use of other messaging architectures for other purposes.

  • The message protocol consists of commands and keywords.   Examples of messages used with the Keyword Monitor are shown below.  The grouping is defined by the BEGIN/END cards.