SG24-4895-00
- V3R6/V3R7
December 1997
IBML |
International Technical Support Organization |
SG24-4895-00 |
|
- V3R6/V3R7
December 1997
Take Note!
Before using this information and the product it supports, be sure to read the general information in Appendix J, ªSpecial Noticesº on page389.
First Edition (December 1997)
This edition applies to Version 3, Release 7, Modification 0 of the AS/400 Operating System and to all subsequent releases until otherwise indicated in new editions or technical bulletins.
Comments may be addressed to:
IBM Corporation, International Technical Support Organization Dept. JLU Building 107-2
3605 Highway 52N
Rochester, Minnesota 55901-7829
When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you.
Copyright International Business Machines Corporation 1997. All rights reserved.
Note to U.S. Government Users Ð Documentation related to restricted rights Ð Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp.
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
xi |
|
The Team That Wrote This Redbook . . . . . . . . . . . . . . . . . . . . . . . . . |
xi |
|
Comments Welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
xii |
|
Chapter 1. Tools Used for Finding Performance Problems . . . . . . . . . . . |
1 |
|
1.1 |
Usual Symptoms of Degraded Performance . . . . . . . . . . . . . . . . . . |
2 |
1.2 |
Collecting Communications Performance Data . . . . . . . . . . . . . . . . |
2 |
1.2.1Why Collect Performance Data . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2How to Collect Performance Data . . . . . . . . . . . . . . . . . . . . . 3
1.2.3Automatic Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.4Performance Management/400 . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Using CL Commands Interactively . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4Using Performance Tools/400 . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.1WRKSYSACT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.2PRTACTRPT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.3DSPPFRDTA Command . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.4The Advisor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.5Produce Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5What to Look For . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Chapter 2. Using CL Commands to Find Performance Problems . . . . . . . . 11
2.1WRKSYSVAL Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1QTOTJOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.2QACTJOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.3QMAXACTLVL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.4QMCHPOOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.5QCMNRCYLMT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2PRTERRLOG Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3PTF Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.1DSPPTF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3.2SNDPTFORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4WRKSYSSTS Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4.1WRKSYSSTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.4.2 |
Information |
About |
Activity Level Guidelines |
. . . . . . . . . . . . . . . |
19 |
2.4.3 |
Information |
About |
Transition Guidelines . |
. . . . . . . . . . . . . . . . |
19 |
2.4.4Interactive Tuning Roadmap . . . . . . . . . . . . . . . . . . . . . . . . 20
2.5WRKACTJOB Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.6Using WRKDSKSTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7WRKSYSACT Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Chapter 3. Using Performance Tools/400 . . . . . . . . . . . . . . . . . . . . . . 27
3.1System-Wide Problem Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.1Advisor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.1.2Performance Graphics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.1.3Print Activity Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.4Performance Tools Reports . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.5 |
Memory Performance Displays and Reports . . . . . . . . . . . |
. . . . |
33 |
3.1.6 |
CPU Performance Reports and Displays . . . . . . . . . . . . . |
. . . . |
34 |
3.1.7 |
A Brief Discussion About Program Exceptions Consuming CPU |
. . . |
34 |
3.1.8 |
Disk Performance Reports and Displays . . . . . . . . . . . . . |
. . . . |
37 |
3.1.9 |
Communications Performance Data . . . . . . . . . . . . . . . . |
. . . . |
39 |
Copyright IBM Corp. 1997 |
iii |
3.1.10 |
Activity Level Performance Reports and Displays |
. . . . . . . . . . . |
41 |
3.1.11 |
Comparing with Activity Level Guidelines . . . . |
. . . . . . . . . . . . |
42 |
3.1.12 |
Comparing W-I and A-W Ratio Guidelines . . . . |
. . . . . . . . . . . . |
42 |
3.2User Level Problem Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2.1Print Job Summary Report . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2.2 |
Print Transaction Summary Report |
. . . . . . . . . . |
. . . . . . . . . . |
43 |
3.3 Application Level Problem Analysis . . . . . . . . . . . . . |
. . . . . . . . . . |
43 |
||
3.3.1 |
Charging Resource Utilization to Interactive Program |
. . . . . . . . . |
44 |
|
3.3.2 |
Print Transaction Summary Report |
. . . . . . . . . . |
. . . . . . . . . . |
44 |
3.3.3Print Transaction Detail Report . . . . . . . . . . . . . . . . . . . . . . . 44
3.3.4Print Transition Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.4Programmer Performance Utilities . . . . . . . . . . . . . . . . . . . . . . . 46
3.4.1OS/400 Utilities for Tracing a Job . . . . . . . . . . . . . . . . . . . . . 46
3.4.2 |
Performance Tools/400 Utilities for Tracing a Job . . . . . . . . . . . . |
48 |
|
3.5 |
Performance Data Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . |
51 |
|
Chapter 4. Using BEST/1 for Communications Performance Analysis and |
|
||
Capacity Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
53 |
||
4.1 |
V3R7 BEST/1 Capacity Planning . . . . . . . . . . . . . . . . . . . . . . . . . |
53 |
|
4.1.1 |
When to Use BEST/1 for Communications Performance Analysis . . |
53 |
|
4.2 |
Creating a Model for Communications Analysis . . . . . . . . . . . . . . . |
54 |
|
4.2.1 |
Assigning Jobs to Workloads by Communications Line . . . . . . . . |
54 |
|
4.2.2 |
Creating a Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
58 |
|
4.3 |
Using a Model for Communications Analysis . . . . . . . . . . . . . . . . . |
58 |
4.3.1Displaying Model Reports . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.2Understanding Recommendations . . . . . . . . . . . . . . . . . . . . . 59
4.4 |
Changing Communications Resources . . . . . . . . . . . . . . . . . . . . . |
62 |
|
4.4.1 |
Example - Changing the IOP Type . . . . . . . . . . . . . . . . . . . . . |
64 |
|
4.5 |
BEST/1 Communications Support for Performance Analysis . . . . . . . . |
65 |
|
4.5.1 |
Creating a Communications IOP Feature . . . . . . . . . . . . . . . . . |
65 |
|
4.5.2 |
Creating a Communications Line Resource . . . . . . . . . . . . . . . |
67 |
|
4.5.3 |
Distribution of Characters Transferred Across Line Resources . . . . |
68 |
|
4.6 |
Comparing the Model Against the Measured Performance . . . . . . . . . |
69 |
|
4.7 |
Considerations When Analyzing Communications Data with BEST/1 . . . |
70 |
|
Chapter 5. Using System Service Tools . . . . . . . . . . . . . . . . . . . . . . . |
71 |
||
5.1 |
Checking the Communications Hardware . . . . . . . . . . . . . . . . . . . |
71 |
|
5.2 |
Working with Communications Traces . . . . . . . . . . . . . . . . . . . . . |
80 |
5.2.1Starting and Stopping the Trace . . . . . . . . . . . . . . . . . . . . . . 80
5.2.2Formatting the Trace Data . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Chapter 6. Communications I/O Processor (IOP) . . . . . |
. . . . . . . . . . . . |
89 |
|
6.1 |
Important Fields in the IOP Performance Manager File |
. . . . . . . . . . . |
89 |
6.1.1 IOP Utilization . . . . . . . . . . . . . . . . . . . . . |
. . . . . . . . . . . . |
89 |
|
6.2 |
Communication IOP Recommendations . . . . . . . . |
. . . . . . . . . . . . |
92 |
6.2.1Configuring Communication Lines . . . . . . . . . . . . . . . . . . . . . 93
6.2.2Frame Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2.3IOP Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.2.4IOP Assist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.2.5IOP Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Chapter 7. Local Area Network Performance Analysis . . . . . . . |
. . . . . . . |
97 |
7.1 LAN Performance Indicators in Performance Monitor Database |
. . . . . . |
97 |
7.2Line Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
7.2.1Using Performance Tools/400 to Display Line Utilization . . . . . . . . 97
ivComm Perf Investigation - V3R6/V3R7
7.2.2 Performance Monitor Database Fields |
. . . . . . . . . . . . . . . . . . 99 |
7.2.3Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.3LAN Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.3.1Not Ready and Sequence Errors . . . . . . . . . . . . . . . . . . . . . 101
7.3.2 |
Using Performance Tools/400 to Display Congestion . . . . . . . . . |
101 |
|
7.3.3 |
Performance Monitor Database Fields |
. . . . . . . . . . . . . . . . . |
102 |
7.3.4 |
Receive Congestion Errors on Token-Rings . . . . . . . . . . . . . . |
104 |
|
7.3.5 |
Ethernet Collision Counters . . . . . . . . . . . . . . . . . . . . . . . . |
104 |
|
7.3.6 |
Recommendations to Control Congestion . . . . . . . . . . . . . . . . |
105 |
|
7.4 Medium Access Control (MAC) Errors . . . . . . . . . . . . . . . . . . . . |
106 |
||
7.4.1 |
Using Performance Tools/400 to Display MAC Errors . . . . . . . . . |
106 |
|
7.4.2 |
Performance Monitor Database Fields |
. . . . . . . . . . . . . . . . . |
107 |
7.4.3Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7.4.4Token-Ring Network Errors . . . . . . . . . . . . . . . . . . . . . . . . 110
7.5Retransmissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
7.6Timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.6.1Using Performance Tools/400 to Display Timeouts and Retries . . . 111
7.6.2 |
Performance Monitor Database Fields |
. . . . . . . . . . . . . . . . . |
112 |
|
7.7 |
LAN Overheads . . . . . . . . . . . . . . . . . |
. . . . . . . . . . . . . . . . . |
113 |
|
7.7.1 |
Performance Monitor Database Fields |
. . . . . . . . . . . . . . . . . |
114 |
|
7.8 |
LAN Queries . . . . . . . . . . . . . . . . . . . |
. . . . . . . . . . . . . . . . . |
115 |
|
7.9 |
LAN Performance Tuning Recommendations |
. . . . . . . . . . . . . . . . |
115 |
|
7.9.1 |
LAN Controller Performance Parameters |
. . . . . . . . . . . . . . . . |
115 |
7.9.2LANCNNTMR and LANCNNRTY . . . . . . . . . . . . . . . . . . . . . . 116
7.9.3LANRSPTMR and LANFRMRTY . . . . . . . . . . . . . . . . . . . . . . 117
7.9.4LANACKTMR and LANACKFRQ . . . . . . . . . . . . . . . . . . . . . 118
7.9.5LANACKTMR and LANRSPTMR Relationship
7.9.6LANACKFRQ and LANMAXOUT Relationship
. . . . . . . . . . . . . |
118 |
. . . . . . . . . . . . . |
120 |
7.9.7LANINACTMR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
7.9.8LANWDWSTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
7.9.9 LANACCPTY (Token-Ring Networks Only) . . . . . . . . . . . . . . . 122
7.10LAN IOPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
7.11Frame Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.11.1Token-Ring Frame Sizes . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.11.2Ethernet Frame Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.11.3 Bridge Frame Size Considerations . . . . . . . . . . . . . . . . . . . 125
7.11.4ETHSTD Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
7.11.5Other Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Chapter 8. X.25 . . . . . . . . . . . . . . |
. . . . . . . . . . . . . . . . . . . . . . |
127 |
8.1 High Level Data Link Control (HDLC) |
. . . . . . . . . . . . . . . . . . . . . |
127 |
8.1.1Line Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
8.1.2Line Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
8.1.3Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.1.4Data Link Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
8.2Packet level Control (PLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
8.2.1Number of Packets Transmitted . . . . . . . . . . . . . . . . . . . . . 136
8.2.2Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.3Logical Link Control (LLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
8.3.1Data Units Retransmitted and Data Units Received in Error . . . . . 138
8.3.2LLC Rejects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
8.3.3 LLC Protocol Data Units Discarded |
. . . . . . . . . . . . . . . . . . . 140 |
8.3.4Timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
8.3.5Checksum Errors Detected . . . . . . . . . . . . . . . . . . . . . . . . 141
8.3.6 Number of Reset Indications from Packet Link Control . . . . . . . . 142
Contents v
8.3.7 LLC Congestion . . . . . . . . . . . . . . . |
. . . . . . . . . . . . . . . . |
142 |
8.4 Important Related Performance Manager Files |
. . . . . . . . . . . . . . . |
143 |
8.4.1IOP Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
8.4.2Remote Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Chapter 9. SDLC . . . . . . . . . . . . . . . . . . . . . . . . . |
. . . . . . . . . . |
147 |
9.1 Important Fields in the SDLC Performance Manager File |
. . . . . . . . . |
147 |
9.1.1Line Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
9.1.2Line Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
9.1.3Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
9.1.4Data Link Resets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
9.1.5Connect Poll Retries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
9.2 Other Related Performance Monitor Files . . . . . . . . . . . . . . . . . . 158
9.2.1IOP Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
9.2.2Remote Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Chapter 10. SNA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
163 |
|
10.1 Important Fields in the SNA Performance Monitor File . . . . . . . . . . |
163 |
|
10.1.1 |
Number of Connections Established . . . . . . . . . . . . . . . . . . |
164 |
10.1.2 |
Number of Sessions and Brackets Started/Ended . . . . . . . . . . |
165 |
10.1.3Session Level Pacing Wait Time . . . . . . . . . . . . . . . . . . . . 166
10.1.4Internal Session Level Pacing . . . . . . . . . . . . . . . . . . . . . . 167
10.1.5Transmission Queue Wait Time . . . . . . . . . . . . . . . . . . . . . 168
10.1.6Line Transmission Time . . . . . . . . . . . . . . . . . . . . . . . . . 169
10.2 Important Related Performance Manager Files . . . . . . . . . . . . . . 170
10.2.1Line Utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
10.2.2Communications Jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
10.3SNA Traces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Chapter 11. TCP/IP Performance Investigation |
. . . . . . . . . . . . . . . . . 175 |
11.1Performance Expectation . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
11.2TCP/IP Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
11.2.1Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
11.2.2Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
11.2.3 Version 3 Performance Improvements . . . . . . . . . . . . . . . . . 177
11.3Performance Tool/400 Databases . . . . . . . . . . . . . . . . . . . . . . 177
11.3.1QAPMSAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
11.3.2QAPMJOBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
11.4Bottlenecks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
11.5Tools We Can Use for TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . 178
Chapter 12. Analyzing APPN Communications Performance
12.1 Advanced Peer-to-Peer Networking (APPN) Performance
. . . . . . . . . 181
. . . . . . . . 181
12.1.1APPN System Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
12.1.2QLUS Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
12.1.3Topology Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . 184
12.1.4 Directory Services Registrations and Deletions |
. . . . . . . . . . . 188 |
12.1.5Configuration Changes . . . . . . . . . . . . . . . . . . . . . . . . . . 188
12.1.6Control Point Session Activation and Deactivation . . . . . . . . . . 190
12.1.7 Control Point Presentation Services (CPPS) . . . . . . . . . . . . . 190
12.1.8Session Setup Activities . . . . . . . . . . . . . . . . . . . . . . . . . 192
12.2APPN Transmission Priority . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Chapter 13. AnyNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
13.1MPTN Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
viComm Perf Investigation - V3R6/V3R7
13.2Types of MPTN Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
13.2.2AnyNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
13.2.3AnyNet/400 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
13.3 |
AnyNet Performance Considerations . . . . . . . . . . . . . . . . . . . . |
199 |
|
13.3.1 |
Some Guidelines for Performance Analysis . . . . . . . . . . . . . . |
200 |
|
13.3.2 |
AnyNet Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
205 |
|
Chapter 14. ISDN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
207 |
||
14.1 |
Link Access Protocol for D-Channel (LAP-D) . . . . . . . . . . . . . . . . |
209 |
14.1.1Line Utilization (LAP-D) . . . . . . . . . . . . . . . . . . . . . . . . . . 209
14.1.2Line Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
14.1.3Using Performance Tools/400 to Display Line Error Information . . 214
14.1.4Frame Errors (LAP-D) . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
14.1.5 |
Performance Monitor Database Fields . . . . . . . . . . . . . . . . . |
216 |
14.1.6 |
Using Performance Tools/400 to Display Frame Error Information |
217 |
14.1.7 |
Call Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
217 |
14.1.8 |
Using Performance Monitor/400 to Display Call Information . . . . |
217 |
14.2ISDN Data Link Control (IDLC) . . . . . . . . . . . . . . . . . . . . . . . . 218
14.2.1Line Utilization (IDLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
14.2.2Line Errors (IDLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
14.2.3Frame Errors (IDLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
14.2.4 Using Performance Tools/400 to Display Frame Errors (IDLC) . . . 222
14.3ISDN Used with X.25 (X.31) . . . . . . . . . . . . . . . . . . . . . . . . . . 223
14.3.1Circuit Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
14.3.2Packet Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
14.3.3 Performance Monitor Database Fields . . . . . . . . . . . . . . . . . 224
14.4Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
14.4.1Frame Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
14.4.2Window Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
14.4.3Packet Size (X.25 Only) . . . . . . . . . . . . . . . . . . . . . . . . . . 225
14.4.4A Case Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Appendix A. SDLC Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
227 |
|||
A.1 |
SDLC_ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
228 |
||
A.2 |
SDLC_HDLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
231 |
||
A.3 |
SDLC_IOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
233 |
||
A.3.1 |
IOP Query for a Communications Processor . . . . . . . . . . . . . . |
233 |
||
A.3.2 |
IOP Query for MFIO Processor . . . . . . . . . . . . . . . . . . . . . . |
235 |
||
A.4 |
SDLC_JOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
237 |
||
Appendix B. Local Area Network Queries . . . . . . . . . . . . . . . . . . . . |
239 |
|||
B.1 |
Token-Ring LAN Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
239 |
||
B.1.1 |
Sample Report Output . . . . . . . . . . . . . . . . . . . . . . . . . . . |
241 |
||
B.1.2 |
CL Program to Execute the Token-Ring LAN Queries . . . . . . . . |
242 |
||
B.1.3 |
Token-Ring LAN SAP Counter Query . . . . . . . . . . . . . . . . . . |
243 |
||
B.1.4 |
Token-Ring LAN Performance Indicators Query . . . . . . . . . . . . |
244 |
||
B.1.5 |
Token-Ring LAN MAC Error Counters Query |
. . . . . . . . . . . . . |
248 |
|
B.1.6 |
Token-Ring LAN Overhead Query . . . . . . . . . . . . . . . . . . . . |
254 |
||
B.2 |
Ethernet LAN Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
258 |
||
B.2.1 |
Sample Report Output . . . . . . . . . . . . . . . . . . . . . . . . . . . |
260 |
||
B.2.2 |
CL Program to Execute the Ethernet LAN Queries . . . . . . . . . . |
261 |
||
B.2.3 |
Ethernet LAN SAP Counter Query . . . . . . . . . . . . . . . . . . . . |
262 |
||
B.2.4 |
Ethernet LAN Performance Indicator Report Query . . . . . . . . . . |
263 |
||
B.2.5 |
Ethernet LAN MAC Error Counters Query . . . . . . . . . . . . . . . |
267 |
Contents vii
Appendix C. X.25 Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
275 |
||
C.1 |
X25_ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
276 |
|
C.2 |
X25_HDLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
280 |
|
C.3 |
X25_PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
282 |
|
C.4 |
X25_LLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
284 |
|
C.5 |
X25_IOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
286 |
|
C.5.1 |
IOP Query for a Communications Processor . . . . . . . . . . . . . . |
286 |
|
C.5.2 |
IOP Query for MFIO Processor . . . . . . . . . . . . . . . . . . . . . . |
288 |
|
C.6 |
X25_JOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
290 |
|
Appendix D. Queries for APPN Tasks . . . . . . . . . . . . . . . . . . . . . . . |
293 |
||
D.1 |
APPNSYSNAM Query (System Name - Input to Query APPNALL) . . . . |
295 |
|
D.2 |
APPNJOIN1 Query (APPN Task - Join Input to Query APPNALL) . . . . |
296 |
|
D.3 |
APPNJOIN2 Query (T2 Station IOM - Join Input to Query APPNALL) . . |
298 |
|
D.4 |
APPNJOIN3 Query (Token-Ring IOM - Join Input to Query APPNALL) . |
300 |
|
D.5 |
CPUALLOC Query (System Processor Usage by Categories) . . . . . . |
302 |
|
D.6 |
APPNALL Query (ASync Communications I/O Task Activity) . . . . . . . |
304 |
|
D.7 |
APPNDETAIL Query (APPN Tasks - Detailed Resource Usage) . . . . . |
306 |
|
D.8 |
APPNT2DTL Query (T2 Station IOP Task Detail) . . . . . . . . . . . . . . |
308 |
|
Appendix E. SNA Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
311 |
||
E.1 |
SNA_ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
312 |
|
E.2 |
SNA_CON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
324 |
|
E.3 |
SNA_IPAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
326 |
|
E.4 |
SNA_PAC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
329 |
|
E.5 |
SNA_PAC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
332 |
|
E.6 |
SNA_PAC3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
335 |
|
E.7 |
SNA_LIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
338 |
|
E.8 |
SNA_TRQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
341 |
|
Appendix F. Integrated PC Server Query . . . . . . . . . . . . . . . . . . . . . |
345 |
||
F.1 |
Integrated PC Server Performance Monitor Data Queries . . . . . . . . |
345 |
|
Appendix G. AnyNet Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
351 |
||
G.1 |
Sockets over SNA Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . |
351 |
|
G.1.1 |
SNA Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
352 |
|
G.1.2 |
Sockets Jobs Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
353 |
|
G.2 |
APPC over TCP/IP Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . |
359 |
|
G.2.1 |
SNA Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
359 |
|
G.2.2 |
APPC Jobs Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
360 |
|
Appendix H. ISDN Queries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
361 |
||
H.1 |
NWI_ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
362 |
|
H.2 |
NWI_CALLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
365 |
|
H.3 |
NWI_ERRORS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
367 |
|
H.4 |
NWI_IOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
369 |
|
H.5 |
NWI_LAPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
371 |
|
H.6 |
IDLC_ALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
373 |
|
H.7 |
IDLC_IOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
375 |
|
H.8 |
IDLC_UTIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
377 |
|
Appendix I. Guidelines for Interpreting Performance Data . . . . . . . . . . . |
379 |
||
Appendix J. Special Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
389 |
viii Comm Perf Investigation - V3R6/V3R7
Appendix K. Related Publications . . . . . . . . . . . . . . . . . . . . . . . . . |
391 |
|
K.1 |
International Technical Support Organization Publications . . . . . . . . |
391 |
K.2 |
Redbooks on CD-ROMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
391 |
K.3 |
Other Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
391 |
How to Get ITSO Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
393 |
|
How IBM Employees Can Get ITSO Redbooks . . . . . . . . . . . . . . . . . . |
393 |
|
How Customers Can Get ITSO Redbooks . . . . . . . . . . . . . . . . . . . . . |
394 |
|
IBM Redbook Order Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
395 |
|
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
397 |
|
ITSO Redbook Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
399 |
Contents ix
x Comm Perf Investigation - V3R6/V3R7
Improving communication performance is not a trivial task. The purpose of this redbook is to discuss how to manage communications performance and ways to locate the problem areas in communication performance. This redbook collects a large amount of the performance information from several sources and presents it in an ordered manner. The databases created by the Performance Tools/400 were used to give the key performance indicators.
This redbook is intended for technical professionals including network designers who want to tune the IBM AS/400 system to improve communications performance.
An intermediate knowledge of the Performance Tools/400 (5716-PT1) and
Query/400 (5716-QU1) is assumed.
This redbook was produced by a team of specialists from around the world working at the International Technical Support Organization Rochester Center.
Suehiro Sakai is an Advisory International Technical Support Specialist for the AS/400 system at the International Technical Support Organization, Rochester Center. He writes extensively and teaches IBM classes worldwide in all areas of AS/400 communications. Before joining the ITSO, he worked in AS/400 Brand, Japan as an AS/400 Solution Specialist.
Petri Nuutinen is a Systems Support Engineer in Finland. He has 15 years of experience in the Work Management field; first with S/38 and with the AS/400 system from 1987. His areas of expertise include performance tuning and work management. He has written extensively on how to find a performance problem and whether it is related to hardware or software.
Jozsef Redey has been with IBM for 5 years and is a Software Customer Engineer in Hungary. He has 15 years of experience in the IBM network and connectivity fields. He holds a degree in electrical engineering from the HfV in Dresden and in digital systems design from the Technical University in Budapest. His areas of expertise include multi-platform SNA communications, Client Access and AS/400 Internet connectivity.
Marcelo Porta has been supporting AS/400 in Argentina since 1988. Since 1991, he has been working in the AS/400 communications area, and PC Support/Client Access areas. His areas of expertise include APPN, main frame communications, TCP/IP connection with RS/6000 and the satellite communications.
This document is based on the ITSO redbook, AS/400 Communication
Performance Investigation, GG24-4669.
The authors of the redbook were:
Petri Nuutinen, IBM Finland
Philip Ryder, IBM Australia
Copyright IBM Corp. 1997 |
xi |
Meindert de Schiffart, IBM Netherlands
Thanks to the following people for their invaluable contributions to this project:
Allan Johnson, Rochester Development
Bob Manulik, Rochester Development
Tom Freeman, Rochester Development
John Horvath, Rochester Development
Doug Prigge, Rochester Development
Lois Douglas, ITSO Rochester
Your comments are important to us!
We want our redbooks to be as helpful as possible. Please send us your comments about this or other redbooks in one of the following ways:
•Fax the evaluation form found in ªITSO Redbook Evaluationº on page399 to the fax number shown on the form.
•Use the electronic evaluation form found on the Redbooks Web sites:
For |
Internet users |
http://www.redbooks.ibm.com |
For |
IBM Intranet users |
http://w3.itso.ibm.com |
• Send us a note at the following address: redbook@vnet.ibm.com
xii Comm Perf Investigation - V3R6/V3R7
Finding a performance problem is similar to solving a three-dimensional crossword puzzle: all of the puzzles are different from each other but after solving several puzzles, you begin to grasp a pattern. For example, you start the puzzle from the lower left-hand corner and continue systematically towards the upper right-hand corner. Solving a communications performance problem is a task even more challenging. You need to have the AS/400 system tuned properly before trying to figure out what is causing the communications performance problem.
As it is impossible to give anyone explicit instructions for solving a crossword puzzle, it is impossible to give you an exact check-list to be followed to find and solve a communications performance problem. In this book, we are leading you to the beginning of a never-ending task of finding the perfect performance.
The first step of solving a communication performance problem is to collect material to be analyzed with the tools available. The collection is done by entering the Start Performance Monitor (STRPFRMON) command that is described in Section 1.2, ªCollecting Communications Performance Dataº on page 2.
The tools you need to solve a performance problem are:
•CL commands described in more detail in Chapter 2, ªUsing CL Commands to Find Performance Problemsº on page 11:
−WRKSYSVAL, Work with System Values
−WRKSYSSTS, Work with System Status
−WRKACTJOB, Work with Active Jobs
−WRKDSKSTS, Work with Disk Status
•Performance tools/400 is described in Chapter 3, ªUsing Performance Tools/400º on page 27 and consists of the following parts:
−WRKSYSACT, Work with System Activity command
This command differs from the rest of the performance tools because it is the only tool used for a real-time analysis. For information about using this command, see Chapter 2, ªUsing CL Commands to Find Performance Problemsº on page 11.
−DSPPFRDTA, Display Performance Data command
−Advisor
−Reports
−BEST/1 is used to plan for system growth and analyze the effect of work load and hardware changes. Using this tool is discussed in Chapter 4, ªUsing BEST/1 for Communications Performance Analysis and Capacity Planningº on page 53.
−Programmer performance utilities such as:
-Job trace
-Disk Data Collection
-Analyze Process Access Group
-Performance Explorer
•System Service Tools is discussed in Chapter 5, ªUsing System Service Toolsº on page 71.
•Communications Trace is discussed in Chapter 5, ªUsing System Service Toolsº on page 71.
Copyright IBM Corp. 1997 |
1 |
The tools should be used in sequence from top to bottom. First, use the Work with System Values command to find out the settings of the allocation system values. After that, check the overall performance by using the Work with System Status command. Then find out if any individual jobs are using too much of the systems′ resources by using the Work with Active Jobs command. The Work with Disk Status command helps you to determine if any of the actuators are being over-committed or whether the total amount of disk arms is adequate.
By using the Performance tools, you find out the bottlenecks of the performance that can be analyzed more thoroughly by running queries to the performance tools database. Communications trace is used to find out how the data is passed between the AS/400 system and the remote end.
Please note that the users on a local token-ring are considered as remote users.
There are several ways of finding out if your AS/400 system is having a performance problem in the communications area, but a good starting point is to ask users what they think about response times. Bear in mind that usually workstation users are not satisfied with the response time even if it were something similar to a sub-second...
The indicators to pay attention to are:
•
•
•
•
Poor response time Reduced throughput
Heavy faulting rate in the main storage
High usage of system resources such as CPU, IOP, or DISK
Normally the degradation of response times is the first indication of something getting out of order. Be aware that usually the response times get longer little by little so noticing the degradation is almost impossible without a regular observation of system performance.
Before collecting the performance data to solve a communications performance problem, decide what might be the problem to be investigated. The problem description does not need to be overly detailed or technical, just try to simply describe one problem. For example:
•
•
•
Remote response time seems too slow. File transfer should go faster.
At times, the entire system seems sluggish.
Next, determine when the problem usually occurs. Maybe remote response time is slow the first thing in the morning, or the file transfers seem slow late in the afternoon.
When you can describe the communications performance problem and have determined when it seems to occur, you are ready to collect communications performance data for your analysis.
If possible, focus on collecting data for one problem at a time. Of course, try to collect the data when the problem is the most likely to appear. You can decide
2 Comm Perf Investigation - V3R6/V3R7
later how much of the data you want to analyze. For more information about when to collect performance data and how much to collect, see the first few pages of Chapter 4 in the AS/400 Performance Tools/400 Guide.
Collect performance data on a regular basis and create historical data out of the material collected. For example, you can run the performance data collection for two hours on every Wednesday afternoon with the default parameters; the trace data is not needed for the historical data. The reason for doing this is that viewing the historical data graphics is the easiest way to notice any trends in system performance if you are not using the Performance Monitor/400 software.
Another reason for collecting data regularly is that without having a baseline to compare your performance data with, you have no way of telling whether the performance is improving or degrading.
You do not need Performance Tools/400 to collect the data, the collection part is done by entering the Start Performance Monitor (STRPFRMON) command. This generates several performance database files that contain statistics for each communications protocol used. When collecting performance data to analyze a communications performance problem, set the sampling interval to the smallest value possible.
1.2.2.1 Start Performance Monitor (STRPFRMON) Command
Figure 1 shows an example of how to collect performance data to generate communications statistics to be analyzed either by the advisor or Performance Tools/400
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
Start Performance Monitor (STRPFRMON) |
|
||||||||
|
|
Type choices, press Enter. |
|
|
|
|
|
|
|
|
|
|||
|
|
Member . . |
. . . . |
. |
. . . . . . |
MBR |
*GEN |
|
|
|||||
|
|
.Library |
. . . . |
. |
. . . . . . |
LIB |
QPFRxx 1 |
|
||||||
|
|
Text ′ description′ . . . . . . . |
TEXT |
Comm. PFR Analysis 2 |
|
|||||||||
|
|
10/25/96 |
|
|
|
INTERVAL |
5 3 |
|
||||||
|
|
Time interval (in minutes) . . . |
|
|||||||||||
|
|
Stops data collection . . . . . |
ENDTYPE |
|
|
|
|
|
|
|||||
|
|
*ELAPSED |
|
|||||||||||
|
|
Days from current day . . . . . |
DAY |
0 |
|
|
|
|
|
|
|
|||
|
|
. . .Hour |
. . . . |
. |
. . . . . . |
HOUR |
2 |
|
|
|
|
|
|
|
|
|
.Minutes |
. . . . |
. |
. . . . . . |
MINUTE |
0 |
|
|
|
|
|
|
|
|
|
Data type |
. . . . |
. |
. . . . . . |
DATA |
*ALL 4 |
|
||||||
|
|
Trace type |
. . . . |
. |
. . . . . . |
TRACE |
*NONE |
|
||||||
|
|
Dump the trace . . . |
. . . . . . |
DMPTRC |
*YES |
|
||||||||
|
|
Job trace interval . |
. . . . . . |
JOBTRCITV |
.5 |
|
|
|
|
|
|
|
||
|
|
Job types |
. . . . |
. |
. . . . . . |
JOBTYPE |
*DFT |
|
||||||
|
|
|
|
|
+ for more values |
|
|
|
|
|
|
|
|
|
|
|
. . . . .Start database monitor |
STRDBMON |
*NO 5 |
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
More... |
|
|
|
|
F3=Exit |
F4=Prompt |
F5=Refresh |
F12=Cancel |
F13=How to use this display |
|
|||||||
|
|
F24=More keys |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Figure 1. STRPFRMON Command
Notes:
Chapter 1. Tools Used for Finding Performance Problems 3
1 When collecting performance data, you can use the default library QPFRDATA or you can create a specific library for your data. For example, you can create a library with your customer name.
2 As you may have several performance members in that library, put a text description of each member collected to help identify them. Usually, it is a good idea to include the date of the collection in the description field.
3 Set the time interval to five minutes.
4 This specifies the type of information collected. The possible values are:
*ALL All of the information is collected including system information, communications information, and input/output processor (IOP) information.
*SYS Only system information is collected. IOP information is not collected.
5 This parameter is new from Version 3 Release 6. Specifying *YES starts Database monitoring for all the jobs in the system and that usually is not preferable.
1.2.2.2 Start Database Monitor (STRDBMON) Command
You may use the STRDBMON command to start monitoring database activities if special information is required. Entering the STRDBMON command provides you with the following display:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
Start Database Monitor (STRDBMON) |
|||||||
|
Type choices, press Enter. |
|
|
|
|
|
|
|
|
|
File to receive output . . . . . |
|
|
1 |
Name |
||||
|
. . . . . . . . . . .Library |
|
*LIBL |
|
|
|
Name, *LIBL, *CURLIB |
||
|
Output member options: |
|
|
|
|
|
|
|
|
|
Member to receive output . . . |
*FIRST |
|
|
|
Name, *FIRST |
|||
|
. . . .Replace or add records |
*REPLACE |
*REPLACE, *ADD |
||||||
|
Job name . . . . . . . . . . . . |
* |
|
2 |
Name, *, *ALL |
||||
|
. . . . . . . . . . . . .User |
|
|
|
|
|
Name |
||
|
. . . . . . . . . . . .Number |
|
|
|
|
|
000000-999999 |
|
|
|
. . . . . . . .Type of records |
*SUMMARY |
*SUMMARY, *DETAIL |
||||||
|
Force record write . . . . . . . |
*CALC |
|
|
|
0-32767, *CALC |
|||
|
Comment . . . . . . . . . . . . |
*BLANK |
|
3 |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bottom |
|
|
F3=Exit F4=Prompt F5=Refresh |
F12=Cancel F13=How to use this display |
|
|
F24=More keys |
|
|
|
|
|
|
Figure 2. STRDBMON Command |
|
|
|
Notes: |
|
|
4 Comm Perf Investigation - V3R6/V3R7
1 Use this parameter to specify both the library and the file name to which the performance statistics are written. If the file does not exist, one is created based on the QAQQDBMN file in library QSYS.
2 Use this parameter to choose the job or jobs whose database activities are to be monitored.
3 Enter up to 100 characters of descriptive text on this input field.
Please note that at the time this publication was being written, there were no tools available for analyzing the data collected. Be extremely careful when collecting data because there is no way of knowing whether database monitoring is active or not.
Usually the data collected through the STRDBMON command includes no data directly related to communications performance.
IMPORTANT!
If you forget to turn the monitoring off, you may eventually fill up all of the disk space on the AS/400 system.
Automatic data collection allows you to select specific days of the week to collect the data using the OS/400 performance monitor. Use the Add Performance Collection (ADDPFRCOL) command or choose option 1 (add) on the Work with Performance Collection menu (achieved by entering WRKPFRCOL command) to establish a regular schedule for collecting performance data automatically on any day of the week.
You may either specify the day and the time to collect the performance data or just specify starting and ending times and run it every day of the week. Please make sure that the collection time includes the peak hours or the period you want to monitor.
Note: The default value of the RMTRSPTIME (Remote Response Time) parameter is *NONE which means that remote workstation response time is not collected unless otherwise specified.
1.2.4 Performance Management/400
One tool that is completely different from all the other tools discussed in this publication is Performance Management/400. It is a tool that is a combination of both collecting and analyzing the performance data.
Performance Management/400 (PM/400) is an IBM system management service offering that assists customers by helping them to plan and manage system resources through regular analysis of key performance indicators.
The service uses a set of software and procedures installed on the customer′ s system. The software collects performance data and summarizes and transmits the summarized data weekly to your local service provider.
PM/400 automates these functions and provides a summary of capacity and performance information. Reports and graphs are produced in a format that both non-technical and technical persons can understand.
Chapter 1. Tools Used for Finding Performance Problems 5
Performance data is both analyzed and maintained by IBM. Contact your local service provider for more information about using PM/400.
PM/400 does not require Performance Tools/400 (5716-PT1) and has no intention to replace that product.
You have several commands to use for identifying the performance problem interactively:
WRKSYSSTS This command is used to get a quick look at the system wide performance figures such as:
•
•
•
•
CPU usage
Disk usage
Memory usage
Note: There is no way of knowing the amount of memory used; you can only observe the rate of paging, which indirectly tells you whether there is enough storage available or not.
Job State transition rates
WRKACTJOB With this command, you can easily find out how the individual jobs are using system resources.
WRKDSKSTS With this command, you can observe the performance of each disk arm on the system.
WRKSYSACT With this command, you can observe both external jobs and internal task or processes. This command is actually the two previous commands in one package and is only available as a part of the Performance Tools/400 licensed program.
NOTICE!
Please bear in mind that using these commands can add a significant amount of workload to the system, especially if you are using the console display. In other words, analyzing a performance problem can cause more performance problems.
1.4 Using Performance Tools/400
Performance Tools/400 provides more ways for you to display performance related information about the system being analyzed.
The Work with System Activity display allows you to view performance data in a real-time fashion. The data is reported for any selected job or task that is currently active on the system. Besides having the capacity to view this data on the display station, you may also direct the data to be stored in a database file for future use.
6 Comm Perf Investigation - V3R6/V3R7
The Print Activity Report (PRTACTRPT) command generates reports based on the data collected by the Work With System Activity (WRKSYSACT) command.
The Display Performance Data (DSPPFRDTA) command starts the interactive displays that are used for showing the performance data.
Note: This command can only be used when previously collected performance data is available.
Pay attention to any communications related recommendations or conclusions.
The following list contains reports that you can produce by using the
Performance Tools/400 licensed software.
System report Prints an overview of what happened on the system.
Component report
Prints performance data by job, user, pool, disk, IOP, local workstation, and exception.
Transaction report
Prints information about the transactions that occurred during the time that the performance data was collected.
The transaction report may be extended to print:
•
•
Transaction detail report Transition detail report
Note: The transaction detail and transition detail reports are quite detailed. Use select/omit parameters to choose specific jobs, users, and time intervals only.
Lock report Prints a report that is used to determine whether jobs are delayed during processing because of unsatisfied lock requests or internal machine waits.
Job report Prints performance data about jobs that were active during the time that the performance data was collected.
Pool report Prints performance data about pools.
Resource report
Prints performance data about the system resources such as disks and workstation controllers.
Batch job report
Prints performance data about batch jobs traced through time. Resources utilized, exceptions, and state transitions are reported.
Chapter 1. Tools Used for Finding Performance Problems 7
Follow the flow chart shown in Figure 3 on page 9 to solve your communication performance problem.
Questions to ask yourself about the performance problems are:
•Is the performance always unacceptable?
•Is the AS/400 system balanced? If it is not, follow the map in Figure 7 on page 20 or contact your service provider to get assistance with tuning the system.
•Is there a specific time of day/week/month when performance is poor?
•Are there batch jobs or file transfer jobs running during the poor performance time?
−If the answer is yes, are the batch jobs running in the same storage pool as the communication jobs?
−If the answer is yes, consider creating a separate storage pool for either batch jobs or the communication jobs.
•Are all of the users affected?
•Are only remote users affected?
•What do the complaining users have in common?
−Is the same application used both in remote locations and locally?
−Are all of the users for this application complaining?
−Is there only one group of users having a problem?
−Are all of the users connected to the same controller/line/IOP?
8 Comm Perf Investigation - V3R6/V3R7
Figure 3. Where to Read, 1 of 2
Chapter 1. Tools Used for Finding Performance Problems 9
Figure 4. Where to Read, 2 of 2
10 Comm Perf Investigation - V3R6/V3R7
This chapter provides information about identifying a communications performance problem by using command language (CL) commands interactively.
Please bear in mind that using these commands can add a significant amount of workload to the system, especially if you are using the console display. In other words, analyzing a performance problem can cause more performance problems.
System values are pieces of information that affect the operating environment in the entire system. System values are not objects and, therefore, they cannot be passed as parameter values the same as CL variables.
There are some system values that affect performance such as QTOTJOB, QACTJOB, QMAXACTLVL, QMCHPOOL, and QCMNRCYLMT. Review these values first because they can relate to your situation.
This value controls the total number of jobs for which the storage is allocated during IPL.
The correct setting of this system value can be obtained by entering the WRKSYSSTS command. Pay attention to the value displayed in the ″Jobs in system″ field because the amount of jobs in the system should never be greater than the value of QTOTJOB. Add 15% to the number of ″Jobs in system″ field and set this to be the system value QTOTJOB provided that the following cautions are followed:
•Remember to clear output queues regularly because OS/400 reserves storage for a job as long as there is at least one spooled output file for that job even though the job is inactive. The more files there are in output queues, the more jobs you see on the Work with System Status display.
•If you have a high number of spooled files on the system while using the WRKSYSSTS command and you add 15% more to set the QTOTJOB value, you significantly increase the time it takes to IPL the system. Performance is also affected at run time of any system functions that search through the system wide Work Control Block Table (WCBT). These functions include the WRKACTJOB command, WRKJOB command, and STRSBS command.
•Consider using the AS/400 Operational Assistant options to clean the obsolete spooled files such as old job logs and program dumps from the system. This can be done by entering GO CLEANUP on any command line.
If the amount of ″Jobs in system″ reaches this value, all of the jobs are paged out from the main storage and the amount of job structures given with the QADLTOTJ system value (the shipped value is 10) is created before all of the jobs are paged into the main storage and normal processing continues.
You can suspect a wrong setting of QTOTJOB if the system seems to ″slow down″ periodically with no apparent reason such as a heavy batch job visible. The ″hang up″ situation normally lasts a couple minutes after which normal
Copyright IBM Corp. 1997 |
11 |
processing continues until the previously created job structures are used up and a new ″hang up″ situation arises.
The value shipped with the operating system is 30 which normally is not large enough.
Note: A change of this system value is effective only after the next IPL.
This value controls the initial number of active jobs for which storage is to be allocated during IPL. The amount of storage allocated for each active job is approximately 110K.
The correct setting for this value can be determined by entering the WRKACTJOB command; on the right-hand top corner of the display is the amount of active jobs in the system. Find out what is the highest amount of the active jobs during a busy day, add 10% to the number, and you have found the correct setting for the QACTJOB system value. The number of active jobs should not exceed this value, or all of the jobs are paged out from main storage until a number of job structures given with QADLACTJ are created.
You can suspect a wrong setting of QACTJOB if the system seems to ″fall asleep″ periodically with no apparent reason visible. The ″sluggish performance″ situation normally lasts a couple of minutes after which normal processing continues until the amount of previously created job structures are used up and a new ″hang up″ situation arises.
The value shipped with the operating system is 20 which normally is not large enough.
Note: A change of this system value is effective only after the next IPL.
Do Not Set the Values Too Large!
You must keep QACTJOB, QTOTJOB, QADLACTJ, and QADLTOTJ at reasonable values. If you make QACTJOB and QTOTJOB excessively high, the IPL is slower due to excessive storage allocation. If you make QACTJOB and QTOTJOB too small for your environment and you make QADLTOTJ and QADLACTJ excessively large, run-time performance can be impacted.
This value determines the maximum activity level of the system. This is the number of all the jobs that can compete at the same time for main storage and processor resources. If a job cannot be processed because no activity levels are available, the job is held until another job reaches a time slice end or a long wait. See Chapter 14 in the Work Management Guide for information about job state transitions.
Even though the value shipped with V3R7 is *NOMAX, ensure that this is the setting on your AS/400 system. This is because the value shipped with the previous releases (prior to V3R1M0) was 100 and normally the system values are not changed during the update of the operating system. A change to this system value takes effect immediately.
12 Comm Perf Investigation - V3R6/V3R7
This system value affects the size of the *MACHINE storage pool. The machine storage pool contains the highly-shared microcode and operating system programs. Some of the programs are pageable and some of them are not pageable. This means that you must be careful when changing the size for this storage pool because system performance may be impaired if the storage pool is too small.
Notes:
1.A change to this system value takes effect immediately. The shipped value is 20 000KB.
2.This value may be changed by the performance adjust support when the system value QPFRADJ is set to 1, 2, or 3.
You can also change the setting of the QMCHPOOL system value by using the Work with System Status display as described in the Section 2.4, ªWRKSYSSTS Commandº on page 16.
The third way of changing this system value is done by using the WRKSHRPOOL (Work with Shared Pools) command.
This system value provides recovery limits for system communications recovery. It specifies the number of recovery attempts to make and when to send an inquiry message to the system operator if the specified number of recovery attempts has been reached.
The recommended value is (2 5), which means that two communication line or control unit retries are tried within a 5-minute interval. Never set the first value (count limit) equal to or greater than the second value (time interval) excluding (0 0).
If the count limit is 0, regardless of the time interval, no recovery attempts are made. When the count limit is greater than 0 and the time interval is 0, infinite recovery attempts are being made. If the count limit is greater than 0 and the time interval is greater than 0, the specified number of recovery attempts are made and an inquiry message is sent to the operator after the specified time interval.
Table 1. QCMNRCYLMT Settings Examples
Count Limit |
Time Interval |
Action |
||||
|
|
|
|
|
|
|
0 |
|
|
0 |
|
|
No recovery |
0 |
|
|
1 |
through |
120 |
No recovery |
1 |
through |
99 |
0 |
|
|
Infinite recovery |
1 |
through |
99 |
1 |
through |
120 |
Count and time recovery |
An incorrect setting of a QCMNRCYLMT value can cause the system to perform the line or controller recovery continuously. Under some conditions, the continuous retries can consume a significant amount of system resources. If this occurs, stop the process by varying the configuration object off.
Chapter 2. Using CL Commands to Find Performance Problems 13
The next step of solving a communications performance problem is to verify that the hardware is functioning properly. This can be done with the PRTERRLOG (Print Error Log) command that is used primarily for problem analysis tasks. The command places a formatted printer file of the data in the system error log (in case there are errors reported) into a spooled printer device file named QPCSMPRT or into a specified output file.
This command is shipped with public *EXCLUDE authority. The following user profiles have private authorities to use the command: QPGMR, QSYSOPR, QSRV, and QSRVBAS.
The first page of the PRTERRLOG command prompt looks similar to the following display:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
Print Error Log (PRTERRLOG) |
|
|||||
|
|
Type choices, press Enter. |
|
|
|
|
|
|
||
|
|
Type of log data to list . . . . |
*ALL |
|
...*ALL, *ALLSUM, *ANZLOG |
|
||||
|
|
. . . .Logical device |
. . . . . |
*ALL |
Name, *ALL |
|
||||
|
|
|
+ for more values |
|
|
|
|
|
|
|
|
|
. . . .Resource name |
. . . . . |
|
|
|
Name |
|
||
|
|
|
+ for more values |
|
|
|
|
|
|
|
|
|
.Error log identifier |
. . . . . |
|
|
|
Hexadecimal value |
|
||
|
|
Output |
+ for more values |
|
|
|
*PRINT, *OUTFILE |
|
||
|
|
. . . . . . |
. . . . . |
|
||||||
|
|
Time period for log output: |
|
|
|
|
|
|
||
|
|
Beginning time . . . |
. . . . . |
*AVAIL |
|
Time, *AVAIL |
|
|||
|
|
. . .Beginning date |
. . . . . |
*CURRENT |
Date, *CURRENT |
|
||||
|
|
Ending time . . . . |
. . . . . |
*AVAIL |
|
Time, *AVAIL |
|
|||
|
|
. . . .Ending date |
. . . . . |
*CURRENT |
Date, *CURRENT |
|
||||
|
|
Print format . . . . . |
. . . . . |
*CHAR |
*CHAR, *HEX |
|
||||
|
|
|
|
|
|
|
|
...More |
|
|
|
|
F3=Exit |
F4=Prompt |
F5=Refresh |
F12=Cancel |
F13=How to use this display |
|
|||
|
|
F24=More keys |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Figure 5. PRTERRLOG Command Prompt
You can also view the error log by using the System Service Tool as described in Chapter 5, ªUsing System Service Toolsº on page 71.
If the list produced with the Print Error Log command contains no hardware errors in lines, controllers, or IOPs, proceed with the next topic. Otherwise, contact your hardware service provider.
This topic provides only part of the information about working with PTFs. For more information, see Chapter 4 in AS/400 System Startup and Problem Handling, SC41-4206.
Install the latest cumulative PTF package about every four months or at least twice a year. This is to ensure that your system has the latest level of code
14 Comm Perf Investigation - V3R6/V3R7
installed, and usually most of the so-called ″performance PTFs″ are included in the cumulative PTF packages.
IBM creates PTFs to correct problems or potential problems found within IBM licensed programs. PTFs may fix problems that appear to be hardware failures, or they may provide new or enhanced functions.
The Display Program Temporary Fix (DSPPTF) command shows the program temporary fixes (PTFs) for a specified product.
To find out what level of code is running on the system, type the DSPPTF 5716999 command on any command line and you receive the ″Display PTF Status″ display. The first line displayed shows you the latest cumulative PTF package installed on your system.
To find out what the latest PTF package is, enter the SNDPTFORD PTFID((SF98370)) command and press Enter. If you have a maintenance agreement with IBM, you receive a file that has information about:
•PTF packages available for Version 3 Release 7
•Installing the latest cumulative package
•Preventive service planning (PSP) information for installing the latest cumulative PTF package
•PSP information for installing Version 3 Release 7
•IBM frequently-asked questions about the AS/400 system
•Summary of the Version 3 Release 7 High Impact/Pervasive (HIPER) PTFs and PTFs that are in error (PE)
•Complete detailed list of the Version 3 Release 7 PTFs that are in error (PE)
•Complete detailed list of the Version 3 Release 7 High Impact/Pervasive (HIPER) problems
•Summary of the generally available Version 3 Release 7 PTFs
Enter the SNDPTFORD PTFID((SF97370)) command to obtain a listing that provides you with a convenient reference of the License Internal Code fixes and program temporary fixes (PTFs) that are available by IBM licensed program categories. This listing is updated regularly. You may choose to order a PTF/FIX that effects one of your IBM licensed programs.
Enter the SNDPTFORD PTFID((SF99370)) command to order the latest cumulative PTF package that is available in your country.
Information about the latest performance PTFs can also be obtained by reading item 130NC in HONE.
Chapter 2. Using CL Commands to Find Performance Problems 15
Observe and balance the overall (system wide) performance before focusing on a communications performance problem. The reason for this is that the communications performance is only a relatively small part of the overall performance. If the entire system is functioning poorly, there normally is no use trying to figure out what might be wrong with communications.
The Work with System Status display shows the current status of the system in real time. Use this display to observe the paging fault rates and job transitions. The indicators you need to pay special attention to (in order of priority) are:
1.Non database fault rates in the machine pool
2.Non database fault rates in all the other pools
3.Page rates in all the pools
4.Transition rates in all the pools
Note: When tuning the system, make sure that the machine pool is treated separately from the other pools.
Use the faulting guidelines in the Work Management Guide manual and Appendix I, ªGuidelines for Interpreting Performance Dataº on page 379 to determine the effects that faulting has on performance. The following examples may help you to understand the faulting guidelines:
•The response time of an interactive transaction is affected by any faults that
occur during that transaction. Each fault adds from 10 to 30 milliseconds to the end-user′s response time. For example, if the disk response time is 20
milliseconds and the transaction has five faults per transaction, add about 0.1 seconds to the total response time.
•Each fault consumes a certain amount of the CPU power: the more faults that occur, the more CPU is being consumed for unproductive work. In the following examples, processing the transactions consumes 70% of the CPU capability and the faulting rate is 100.
−On a 9401 class (CPW close to 7) processor, these faults use CPU for 0.6 seconds.
−On an 9402 model 2130 class (CPW close to 12) processor, these faults use CPU for 0.3 seconds.
−On an 9406 530 class (CPW close to 132) processor, these faults use CPU for 0.02 seconds.
If the faulting rate of your system is close to the poor end of the faulting guidelines tables, approximately 10% to 20% of the CPU is used for faulting. Adding main storage to reduce the faulting rate also lowers the CPU utilization, thus leaving more processing power available to handle more transactions.
•With the increasing faulting rate, the amount of disk I/O also increases. If you have only a few actuators, these faults can cause the disk utilizations to increase more rapidly than if you have many disk arms. As your disk arm (actuator) utilization increases, the time to process disk I/Os increases and the response times get longer.
16 Comm Perf Investigation - V3R6/V3R7