IBM AS 400 User Manual

0 (0)

SG24-4895-00

AS/400 Communication Performance Investigation

- V3R6/V3R7

December 1997

IBML

International Technical Support Organization

SG24-4895-00

 

AS/400 Communication Performance Investigation

- 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.

Contents

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

Preface

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.

The Team That Wrote This Redbook

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

Comments Welcome

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

Chapter 1. Tools Used for Finding Performance Problems

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.

1.1 Usual Symptoms of Degraded Performance

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.

1.2 Collecting Communications Performance Data

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.

1.2.1 Why Collect Performance Data

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.

1.2.2 How to Collect Performance Data

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.

1.2.3 Automatic Data Collection

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.

1.3 Using CL Commands Interactively

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.

1.4.1 WRKSYSACT Command

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

1.4.2 PRTACTRPT Command

The Print Activity Report (PRTACTRPT) command generates reports based on the data collected by the Work With System Activity (WRKSYSACT) command.

1.4.3 DSPPFRDTA 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.

1.4.4 The Advisor

Pay attention to any communications related recommendations or conclusions.

1.4.5 Produce Reports

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

1.5 What to Look For

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

IBM AS 400 User Manual

Figure 4. Where to Read, 2 of 2

10 Comm Perf Investigation - V3R6/V3R7

Chapter 2. Using CL Commands to Find Performance Problems

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.

2.1 WRKSYSVAL Command

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.

2.1.1 QTOTJOB

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.

2.1.2 QACTJOB

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.

2.1.3 QMAXACTLVL

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

2.1.4 QMCHPOOL

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.

2.1.5 QCMNRCYLMT

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

2.2 PRTERRLOG Command

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

 

 

 

. . . . . .

. . . . .

*PRINT

 

 

 

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.

2.3 PTF Commands

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.

2.3.1 DSPPTF

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.

2.3.2 SNDPTFORD

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

2.4 WRKSYSSTS Command

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.

2.4.1 WRKSYSSTS

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

Loading...
+ 390 hidden pages