Figure
TZLU
APPLICATION
ZCOM Message Handling
Multiplexing
The inbound multiplexing program has the task of receiving all messages from the physical terminal. It determines the origin of the logical terminal from which the messages were sent. Then it processes any of the control messages and forwards the data portion of any data messages to the application receiver.
Inbound Multiplexing
|
|
|
|
|
|
|
|
|
| PTZLU | Physical | |
|
| Logical |
|
|
|
|
| Terminal | ||||
|
|
|
|
|
|
|
| |||||
|
|
|
|
|
|
|
| |||||
|
| Terminal |
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| LTZRVR |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| PTZRVR=PZLU |
| ||
|
|
|
|
|
|
|
|
|
| |||
|
|
|
|
|
|
|
|
|
|
| ||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| PZLU |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Thus, to process an inbound message with multiplexing:
•zread (the message type will be type 1, ZCOM_MSTYPE_MSLT - a message from a terminal ZLU).
•The source ZLU is obtained from PTZLU. PTZLU gives the ZLU of one of the ZLUs in a multiplexed group.
•Decode the protocol header to extract the logical terminal address. Use the ltfind routine to scan the multiplexed group to find a match of the logical terminal address with LTADDR.
•Build a ZCOM message header where the source ZLU is the ZLU found by ltfind, and the destination ZLU is taken from LTZRVR of the logical terminal able.
•Use zsend (with bit ZCOM_ZSEND_MHD set) to send the message and the ZCOM header to LTZRVR.
Chapter 2 | 33 |