z/OS Communications Server: SNA Diagnosis Vol 1, Techniques and Procedures
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


PABSCAN

z/OS Communications Server: SNA Diagnosis Vol 1, Techniques and Procedures
GC27-3667-00

A request/response unit processing element (RUPE) represents the unit of work VTAM® must perform for a given request or response received from the network. VTAM queues RUPEs to a process anchor block (PAB). Knowing what type of work is queued to a PAB may be important in resolving storage and performance problems. Use PABSCAN to scan a chain of RUPEs queued to a PAB and obtain a summary of the RUPEs by RU type.

You may scan all work elements on the PAB, or limit the search to RUPEs containing a specific value in one or more of the following fields:
  • Destination address field (DAF)
  • Origin address field (OAF)
  • Request/Response unit (RUPERQD,RUPERSD)
  • A user-specified location within the RUPE

For each work element that is selected, the RU is extracted and counted. After all of the selected work elements have been counted, a summary showing the number of work elements containing each RU type is displayed.

Operands

You must specify one address or one symbol to represent the first RUPE in the chain of RUPEs to be analyzed.
Address
Enter 1–8 hexadecimal digits in the form X'x…' for the address of the chain of RUPEs to be analyzed. If the address is fewer than 8 digits, it is padded on the left with zeros.
IPCS symbol
Enter an IPCS symbol name that is 1–31 alphanumeric characters. The symbol name represents the beginning of a chain of RUPEs. Do not include a period.

Under IPCS, the symbol X represents the address currently being displayed. If the current address is pointing to a chain of RUPEs, this symbol may be used.

If you specify no other selection operands, the first 100 RUPEs are analyzed and a summary of the RUPEs by RU type is displayed.

If you use more than one of the following operands, all of the selection criteria must be met for a RUPE to be selected.
Destination address field
Only RUPEs containing this destination address field (RUPEDAF) are eligible for selection. Specify 1–12 hexadecimal digits in the form X'x…'. If the address is fewer than 12 digits, the rightmost digits are compared.
Origin address field
Only RUPEs containing this origin address field (RUPEOAF) are eligible for selection. Specify 1–12 hexadecimal digits in the form X'x…'. If the address is fewer than 12 digits, the rightmost digits are compared.
Control op code
Only RUPEs containing this CPCB op code are eligible for selection. The control op code must be 1–8 hexadecimal digits in the form X'x…'. If the op code is fewer than 8 digits, it is left-aligned and compared with the leftmost digits in the dump.
Request/response unit
Only RUPEs that contain this RU are eligible for selection. The leftmost digits of field RUPERSD are compared (if RUPERSP is nonzero) to the value entered; otherwise, the leftmost digits of RUPERQD (if RUPERQP is nonzero) are compared to the value entered. The length used for the comparison is the length of the value entered.
Detail
The default is N. Specify Y to have the following fields extracted and displayed for each RUPE meeting the selection criteria:
  • Position of RUPE on the PAB
  • RUPE address
  • Origin address field (RUPEOAF)
  • Destination address field (RUPEDAF)
  • First 4 bytes of request/response unit (if present)
  • User-data at a specified displacement (if Displacement and Value are specified)
One line of output per RUPE is produced.
Max
Specify the maximum number of RUPEs to be processed. The default for MAX is 100. If MAX is not specified, only the first 100 RUPEs on the PAB are analyzed. The maximum value for MAX is 99999. If the maximum number of RUPEs are processed and more remain on the PAB, PABSCAN will report the number of unprocessed elements remaining on the PAB.
Displacement
Enter the displacement into the RUPE where Value is to be found. The maximum decimal displacement is 4095 and the maximum hexadecimal displacement is X'FFF'.
Length
Enter a value of 1–8 for the number of bytes you want displayed, starting at the displacement specified in Displacement.

Length must be used with the Displacement operand. Together, they display any portion of a RUPE. The Length operand cannot be used with the Value and Value Type operands.

Note: The following two operands, Value and Value Type, must be used together with the Displacement operand. They allow any field in a RUPE to be checked for a user-specified value. The Value and Value Type operands cannot be used with the Length operand.
Value
Only RUPEs containing this data at the displacement specified in Displacement are eligible for selection.

Value may contain character or hexadecimal data of 1–8 bytes in length. Character data should consist of alphanumeric characters. Hexadecimal data should contain an even number of up to 16 hexadecimal digits in the form X'xx…'; otherwise, the high-order half-byte is assumed to be 0.

Binary data can be used to look at a particular bit within a byte. You may specify 1 byte of binary data in the form X'xx'. Only 1 bit within the byte may be selected. Therefore, you can specify only the following hexadecimal values: 01, 02, 04, 08, 10, 20, 40, and 80. A value with more than 1 bit set (for example, 82) will not be processed.

Value type
Enter B for binary, C for character, or X for hexadecimal to indicate the type of data entered for Value.

Syntax

Read syntax diagramSkip visual syntax diagram
>>-PABSCAN--+- --ADDR--(--address--)--+------------------------->
            '- --SYMBOL--(--symbol--)-'   

>--+-----------------------------------+------------------------>
   '- --DAF--(--destination_address--)-'   

>--+------------------------------+----------------------------->
   '- --OAF--(--origin_address--)-'   

>--+----------------------------+------------------------------->
   '- --CPK--(--cpcb_op_code--)-'   

                                           .- --NODETAIL-.   
>--+------------------------------------+--+-------------+------>
   '- --RU--(--request/response_unit--)-'  '- --DETAIL---'   

   .- --MAX--(--100--)-----.                 
>--+-----------------------+--+----------+---------------------><
   '- --MAX--(--maximum--)-'  '-| DISP |-'   

DISP

|-- --DISP--(--displacement--)--+-| VAL |--| TYPE |-+-----------|
                                '-| LEN |-----------'   

VAL

|-- --VAL--(--data_value--)-------------------------------------|

TYPE

|-- --TYPE--(--data_type--)-------------------------------------|

LEN

|-- --LEN--(--length--)-----------------------------------------|

Additional information

To determine whether an RU is a request or a response, PABSCAN first checks field RUPERSP.

If RUPERSP is nonzero, the RU is considered to be a response. The designation RSP, along with the contents of field RUPERSD, are used to represent the response.

If RUPERSP is 0, field RUPERQP is then checked.

If RUPERQP is nonzero, the RU is considered to be a request. The designation REQ, along with the first 4 bytes of the RU from field RUPERQD, are used to represent the request (using 4 bytes allows for the largest of the RU headers and also picks up the format byte for RU headers which are 3 bytes long).

If both RUPERQP and RUPERSP are 0, the designation NORU, along with the contents of field CPCBOPC, are used to represent the RU. The designation NORU notes the fact that no RU (neither request nor response) pointer existed in the RUPE or the length of the RU was 0.

Use the following syntax as an alternative to the panel interface.

Sample output

PABSCAN SYMBOL(X)
 
                             PABSCAN Analysis
ELEM# RUPEADDR CPCBOPC    RUPEOAF      RUPEDAF       RU        USERDATA
----- -------- -------- ------------ ------------ -------- ----------------
    1 062E3028 00000000 000000010003 000000010003 **NORU**
00000000 REQ  occurred         1
RUPEs left on the chain        0
Elements processed             1

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014