NonStop S-Series Server Description Manual (G06.27+)

Interprocessor Communication
HP NonStop S-Series Server Description Manual520331-004
9-16
Request With Long Request Data
Request With Long Request Data
When the combination of request control and data is too big to fit in either the pre-push
buffers or the readlink cache, the message system eliminates use of both of these
elements and instead pulls the data directly to the listener’s buffer. This operation is
shown in Figure 9-8.
In the first part of this phase (upper part of Figure 9-8), only the setup information is
sent from the linker to the listener. This transfer is done as a single-packet message.
For this message, the message system creates a TIB (1), and ServerNet services
translate the TIB to BTE descriptors (2). ServerNet services transfers control to the
BTE (3), which transmits the request setup packet (4) to the AVT hardware in the
listener processor. There, the setup is linked into the interrupt queue (5).
When the interrupt is processed, the message system reads the setup information,
stores it in an MQC in the readlink cache (6), and recognizes that this request contains
request data of long length. Because the message system cannot handle this request
by itself at this level, it goes to the listener and notifies it that it needs to pull the
request data directly to the request data buffer.
In the second part of this phase (middle part of Figure 9-8), the listener successively
calls MSG_READCONTROL_ and MSG_READDATA_ to pull the request control
information and the request data to itself. For each of these calls, the listeners
message system creates a TIB (7). ServerNet services translates the TIB to BTE
descriptors (8) and transfers control to the BTE (9). The BTE in the listener then
proceeds to issue read request packets to the AVT in the linker processor (10), which,
in corresponding response packets, transmits the original request control information,
followed by the request data (11). The response packets go back to the listener BTE
(12) for storage in the client buffers of the listener process (13).