![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: Hello, I am creating a permanent mailbox on one host in a cluster. I need to obtain the particulars of the device from other hosts in the same cluster. Sure, this information could be written out to a file by the creating host, but I would much prefer getting th e information interactively from the system tables. How can I do this from the DCL context? Thank-you. The Answer is : Mailboxes can be an inappropriate solution for distributed cluster communucations, please use a network transport such as ICC (part of OpenVMS), DECnet, TCP/IP, or UDP/IP. While remote access to a mailbox is possible using RMS, DECnet, and FAL, there are definite limitations with this approach and there are some interesting requirements around message I/O -- due to file-oriented assumptions within RMS -- and for this and for other, the OpenVMS Wizard simply cannot recommend the use of mailboxes for anything but forever-local and datagram-oriented communications. The approach of writing information such as a mailbox unit number or other information into logical names or other static storage tends to lead to stale information -- if you must maintain one and only one copy of data, then a lock value block can be an appropriate solution. (Approaches such as DNS/Bind or other name services, or the use of network transports and servers based on DECnet task-to-task or TCP/IP avoid these limitations.) If you really want to use a logical name (and you don't mind the potential for stale information), then the use of the cluster-wide logical name table is probably the easiest approach for this application. The OpenVMS Wizard also tends to prefer to avoid permanent mailboxes, since every mailbox should always have at least one associated server process reading from the mailbox -- thus a temporary mailbox works as well as a permanent mailbox, and a temporary mailbox cleans up itself. Also in general, there should be exactly one reader of any particular mailbox -- and zero or more writers -- as protocol bugs are common with most bidirectional mailbox communications schemes. (The turn-around and the correct routing of the communications traffic is a particularly interesting area when using bi-directional mailbox traffic and multiple readers.) Examples of servers are in TCP/IP Services area TCPIP$EXAMPLES: and in SYS$EXAMPLES:DB*.*, and in available product documentation. If you insist on using mailboxes and logical names for this, you can obtain the logical name translation on a remote node using DCL and DECnet task-to-task communications. Please see topic (159) for details of DCL DECnet task-to-task. Please see topics such as (1910) and (6357) for some more general network communications (application) discussions.
|