Performance improvements for LANSA and TCP/IP
|Product/Release:||All LANSA products|
|Abstract:||TCP/IP and LANSA Settings which can improve application performance|
|Submitted By:||LANSA Technical Support|
A LANSA consultant has reported significant performance improvements by making some changes to the TCP/IP settings on the AS/400. The performance improvements affect Visual LANSA, LANSA Open, LANSA Client and LANSA for Web connections with the AS/400. The changes made on the AS/400 were based on an article in the Club Tech Networking Tips Newsletter, April 11, 2001 on iSeriesNetwork.com.
Your AS/400 may be running TCP/IP at a disadvantage unless you've changed some IBM default settings: Minimum Transfer Unit (MTU) size and the TCP/IP window size. MTU limits the size of the largest packet transmitted by your AS/400. The default MTU size of 576 bytes is designed to be effective over dial-up connections. Alas, it is much lower than the most efficient values for Ethernet and Token-Ring, which can handle 1500 and 2000 bytes, respectively. The result is that your AS/400 must chop data up into three times as many packets to send it - very wasteful and a huge performance sink on today's fast LAN and Internet networks.
Matching the MTU size to the best one for a particular physical interface will improve network efficiency markedly. You do this by editing each TCP/IP route in your OS/400's routing table (usually there is just one, the default route, but you may have more):
- GO CFGTCP
- Select option 2, Work with TCP/IP routes
- Edit the desired route
- Change the Maximum Transmission Unit to *IFC
This sets the MTU to the most efficient value for the interface supporting that route. For example, if your default route is an Ethernet port leading to your Internet gateway, the *IFC value will automatically change the MTU for packets on that path from 576 to 1500.
The other default value to change is the TCP/IP window size, which governs how much data can be "in the air" waiting for an acknowledgment. Here again IBM has been overly conservative - the window size defaults to just 8 K, when today's reliable networks can easily juggle much more. Fixing this will have a noticeable effect on performance - the larger the window, the better the performance. Too large a window size results in buffer overruns, which can cause retransmissions and degraded performance, so you may have to experiment a bit. A good bet is to start with 32 K or 64 K. Here's how to do it:
- GO CFGTCP
- Select option 3, Change TCP/IP attributes
- Change the send and receive buffer sizes
- Restart TCP/IP
Disabling LANSA security checking will also improve performance but this is an option that should be carefully considered before implementing. If you do not use LANSA internal security , then apply these changes:
CHGDTAARA DTAARA(DC@A01 (422 1)) VALUE('N')
CHGDTAARA DTAARA(DC@A01 (475 1)) VALUE('N')
CHGDTAARA DTAARA(DC@A01 (495 3)) VALUE('YYY')
Please refer to appendix A in the Technical guide for full details of the DC@A01 data area.