I am doing alot of ftping over a frame network to nt machines from r50 aix 4.2.1 is there any parameters that can be tuned to speed up process roughly files are about 50 to 100k in size but 100 files every 15 minutes?
Some say the key parameter is the "tcp_mssdflt" setting which the TCP/IP protocol
uses as a starting point for negotiating a packet size from the txnode to the rx
node. This MUST be less than the tcp_sendspace and less than the MTU size.
Start with the 32768 value and decrease it incrementally until your FTP
streaming occurs.
thewall Specifies the maximum amount of memory, in kilobytes, that is allocated
to the memory pool. In AIX Version 4.2.1 and earlier, the default value is 1/8
of real memory or 65536 (64 megabytes), whichever is smaller.
In AIX Version 4.3, the default value is 1/8 of real memory or 131072
(128 megabytes), whichever is smaller. In AIX Version 4.3.1, the default
value is 1/2 of real memory or 131072 (128 megabytes), whichever is smaller.
In AIX Version 4.3.2 and later, the default value is 1/2 of real
memory or 1048576 (1 gigabyte), whichever is smaller. thewall is a
runtime attribute.
no -o thewall=131072 (or whatever we decide to use)
(if yours is higher...leave it alone..it should be ok)
Also add to the rc file. rc.net file near the end to make permanent. REMEMBER to
make a copy of all rc files before making changes. If you make a mistake
on an rc file, the machine will hang .............guaranteed..... These are just
samples...and not the recommended values....use the defaults and work backward.
-----------------------------------
Lets talk network stuff in general first. I know you know there are currently four classes
of networks...(There are actually more, but I will only discuss the first three).
Class A ranging from 1 to 126
Class B ranging from 128 to 191
Class C ranging from 192 to 223
Class D ranging from 224 to 239
I know you also know that there are several reserved network numbers that you cannot
use.( i.e. 127.0.0.1 which is your lo0 or loopback, 255.255.255.XXX which is your
subnet mask, Class D networks are for special settings only and should not be used
for general network stuff. A new networking scheme is in the works for 1997 which will
dramatically change how we use network numbers and subnet masks.
Simple networks have the same net-id (for example on a class c you have
221.13.73.xx where the 221.13.73 is the same network address for all machines on
this simple network. Only the xx will change so that each machine has a unique
address. The subnetmask is important also. All machines in our simple network
should have the same subnetmask. The default for a class C is 255.255.255.0
I know a lot of you are tempted to just go into smit, minimal configuration,
tcp , and just change things? Don't do it! Minimum configuration is supposed to be a
"go into it once and leave it alone" item. The best tools for change the IP address or
other information is to do the following:
netstat -rn(look to see if there is an lo0 and en0 or et0 up and running) Look for the U
in the status column.
TO PROPERLY REMOVE AN ALREADY CONFIGURED NETWORK
CONFIGURATION
you will need to do the following:
Run netstat -rn and see what is up or shown as there Then do an ifconfig statement for
each en or et
ifconfig en0 down ( or et0 if using the other 802.3 network setup)
ifconfig en0 detach
rmdev -l en0 -d ( to remove the definition)
cfgmgr ( to reconfigure equipment and drivers or reboot)
NOW you can go into smit minimal configuration and add your changes.
For every major change you should do all the ifconfig statements, the rmdev statement
and the cfgmgr statement to completely clean the information from the ODM database.
When you are done, you should check the /etc/hosts file to make sure there is an
entry for lo0 (your loopback at 127.0.0.1 and that you do not have any duplicate
entries. If you had an entry for one IP address and you changed it, make sure the
original is removed.
Make sure there are no spaces before the entry for the loopback entry. If there are you
may have problems with NFS as well. Usually you get a E18E984F label or a
256-9020 for the rpc.mountd.
If you cannot ping yourself, it is probably that the loopback line is missing or incorrect.
Check the rc.net file. Is the entry for the loopback line commented out?
The line should be
/usr/sbin/ifconfig/lo0 inet loopback up >> $LOGFILE 2>&1
Check to see if you can ping localhost, can you ping loopback? Can you ping
127.0.0.1?
Check the errpt..... errpt -a | more (any errors?)
IF SOMEONE BY ACCIDENT SET DHCP
....you must then manually change the /etc/rc.tcpip file to comment out all dhcp
daemon lines. Also look at the /etc/rc.net file for dhcp.
(This is 4.2.1 and before)
Look in the rc.net file for the USE_DHCP= line
if someone changed the USE_DHCP="1"
you have bsd turned on:
change to USE_DHCP="0"
Additional Configuration Information-Helpful Information on tcp
Troubleshooting
Check the oslevel
#>oslevel
make sure they have the update cd loaded or the latest patches for bos.net
lslpp -l | grep bos.net
If you tried a network setup, make sure you are in the right slot.
..are there two ethernet cards in this machine? Are you in the right one?
Do the Netstat command #> netstat -in
(this will tell you if they have set up en0 or et0 )the lo0 is the loopback and the
en0 means there is one ethernet card defined... the en1 means there is a
second ethernet card defined....
Is there an asteric next to the en0? this means that the ethernet is down.
Do a ifconfig en0 up
Then check the netstat -in again and see if the star is gone
Is the device available? #>lsdev -Cc adapter
sio0 Available 00-00 Standard I/O Planar
fda0 Available 00-00-0D Standard I/O Diskette Adapter
sioka0 Available 00-00-0K Keyboard Adapter
siota0 Available 00-00-0T Tablet Adapter
sioma0 Available 00-00-0M Mouse Adapter
ppa0 Available 00-00-0P Standard I/O Parallel Port Adapter
sa0 Available 00-00-S1 Standard I/O Serial Port 1
sa1 Available 00-00-S2 Standard I/O Serial Port 2
scsi0 Available 00-00-0S Standard SCSI I/O Controller
nep0 Available 00-01 GXT150M Graphics Adapter
ent0 Available 00-02 Ethernet High-Performance LAN Adapter (8ef5)
ent1 Available 00-03 Ethernet High-Performance LAN Adapter (8ef5)
Check for latest patches and software #> lslpp -l | grep bos.net
Shows that the filesets needed for tcpip are loaded as well as the filesets for
nfs...(look for the word committed....if nothing comes back, you do not have the
filesets loaded.)
bos.net.ncs 4.3.3.0 COMMITTED Network Computing System
bos.net.nfs.client 4.3.3.0 COMMITTED Network File System Client
bos.net.tcp.adt 4.3.3.0 COMMITTED TCP/IP Application Toolkit
bos.net.tcp.client 4.3.3.0 COMMITTED TCP/IP Client Support
bos.net.tcp.server 4.3.3.0 COMMITTED TCP/IP Server
bos.net.tcp.smit 4.3.3.0 COMMITTED TCP/IP SMIT Support
bos.net.ncs 4.3.3.0 COMMITTED Network Computing System
bos.net.nfs.client 4.3.3.0 COMMITTED Network File System Client
bos.net.tcp.client 4.3.3.0 COMMITTED TCP/IP Client SupportM
bos.net.tcp.server 4.3.3.0 COMMITTED TCP/IP Server
Did someone try and set up DNS? IF so remove the /etc/resolv.conf file until
you are done trying to ping and get the system set up. Do not do multiple
configurations at the same time or you will never figure out what is wrong.
Set up a /etc/netsvc.conf file with the line
hosts=local,bind if you are planning on doing DNS...or just
hosts=local if you are not.
Start from a fresh system if you cannot figure it out.
do an
ifconfig en0 down
ifconfig en0 detach
rmdev -dl en0
cfgmgr
Do for all interfaces. You can check with the netstat -in or rn and see what is
up. Do for en0, en1, et0, et1, if they are set up etc..... leave the lo0 alone...
Then go into smit tcpip minimum configuration >
Minimum Configuration & Startup
Further Configuration
Use DHCP for TCPIP Configuration & Startup
IPV6 Configuration
en0 Standard Ethernet Network Interface
et0 IEEE 802.3 Ethernet Network Interface
select and press enter
Fill In only needed fields, take defaults for others.
Minimum Configuration & Startup
* HOSTNAME [rome40] type in hostname here
* Internet ADDRESS [10.1.1.11] your IP address
Network MASK [255.255.252.0] your subnet mask
* Network INTERFACE en0
NAMESERVER
Internet ADDRESS (dotted decimal) []
DOMAIN Name []
Default GATEWAY Address [10.4.5.1] If there is add it/if not leave blank
(dotted decimal or symbolic name)
Your CABLE Type [ tp] Press f4
TP(twisted pair) DIX(AUI)or BNC
START Now [ no] Change to yes
Try to ping yourself from the command line.
Can you ping yourself? Can you ping loopback? Can you ping 127.0.0.1?
Make sure you are attached to the correct ethernet card, make sure you have
the same network and same subnet mask.
Make sure you have the ipforwarding on? default is off..
no -o ipforwarding=1
do a no -o ipforwarding and see what it is set at? To make permanent add to
/etc/rc.net
Make sure the cards are talking the same speed,the same full or half
duplex, if one is not matching, it will not communicate. Both ends, router and
card, or card and card...or hub and card.
On New ethernet cards, especially on PCI machines 7025-F50/PCI Ethernet
Performance Tuning. The performance of the PCI Ethernet Adapter (Features
2985 and 2987), when used in the 7025-F50, can be significantly improved by
setting the tx_que_size and rx_que_size parameters to 256. This can be
accomplished by using the following command to change the adapter settings:
smitty chgenet
Set the "HARDWARE TRANSMIT" queue size and "HARDWARE RECEIVE"
queue size fields to 256.
smit chinet
to change the full duplex and the media speed Change/Show Characteristic of
Network Interface (chinet, shinet)
Duplex
The Ethernet High-Performance LAN Adapter (8f95) can be configured to
operate in a full duplex 10BASET network. This mode of operation is only valid
using the adapter's RJ-45 (10BASET) port. Duplex mode is not valid when using
the AUI port or the BNC (10BASE2) port. Beginning with AIX Version 4.1.5, the
10/100 Mbps Ethernet TX MCA device driver (8f62) supports the following
additional configuration parameters:
Media Speed
The 10/100 Mbps Ethernet TX MCA device driver (8f62) supports a
user-configurable media speed for the adapter. The media speed attribute
indicates the speed at which the adapter will attempt to operate. The available
speeds are: 10 Mbps half-duplex, 10 Mbps full-duplex, 100 Mbps half-duplex,
100 Mbps full-duplex, and auto-negotiation. The default is auto-negotiation.
Note:Auto negotiate does not function properly, it is better to select either 100
or 10 but not auto.
Do a traceroute 9.8.8.16or whatever you are trying to reach and see what it
says. Trouble shoot from there.
entstat -d ent0
Is the card status up?
if not do a chdev -l en0 -a state=up
netstat -d ent1
ETHERNET STATISTICS (ent1)
Media Speed Selected: Auto negotiation
Media Speed Running: 10 Mbps Half Duplex
The first is how it is set up, the second is the speed it is using.
iptrace /tmp/ipfile
Kill the process after the file grows above 11 bytes)
ipreport /tmp/ipfile > /tmp/ipfile.out
lsattr -E -l en0
lssrc -g tcpip
tftpd running? inetd running? dhcpd?
startsrc -s tctpd to start demons
stopsrc -s dhcpd to stop demons
Check your demons
lssrc -a| more and see what is running.
Have you checked the /etc/services file?
Is tcp commented out? What about the /etc/rc.tcpip file is dhcp uncommented?
What about inetd is it uncommented, lo0 uncommented?
Telnet to loopback, Telnet hostname (to yourself)
netstat -rn
Is loopback up? Is there an arrow to the right of the lo0 or en0 indicating an
error?
Check for an /etc/resolv.conf file. If present rename it
mv /etc/resolv.conf /etc/resolv.old
If the loopback line is messed up in /etc hosts, try retyping it. Do not cut
and paste.
There should be two lines as follows: (In the /etc/hosts file
127.0.0.1 loopback localhost # loopback (lo0)
Make sure there is no spaces before this line, or that it is not commented out.
199.99.99.12 yourhostname yourhostname. # . or .com
The later versions of AIX like a fully qualified hostname... so you should at least
add yourhostname then tab and yourhostname. (dot) or .com or .net, whatever
Check the rc.net file in /etc There was a problem with the lo0 being
commented out for starting the interface.
Cloning routes in 4.3.3
add to rc.net also......They need to be before /usr/lib/methods/definet.
#no -o tcp_pmtu_discover=0
#no -o udp_pmtu_discover=0
. This values are set to 1 by default in AIX 4.3.3.
Which means clone routes....if you don't want cloned
routes change to zero.
Here is where it is (near the bottom) in the rc.net file:
at the very bottom..... /usr/sbin/no -o extendednetstats=0 >>/dev/null 2>&1
if [ -f /usr/sbin/no ] ; then
/usr/sbin/no -o tcp_sendspace=65536
/usr/sbin/no -o tcp_recvspace=65536
/usr/sbin/no -o ipforwarding=1
/usr/sbin/no -o tcp_pmtu_discover=0
/usr/sbin/no -o udp_pmtu_discover=0
fi
Routes Routes You have to Have Routes!
To create/delete routes in AIX.
the chinet command (which smitty route uses) stores the route in the ODM.
These types of routes will be automatically recreated upon reboot.
OR the route add/delete command
Which creates the route, but does not store them in the ODM and hence are
lost upon reboot (unless a script is run from /etc/inittab to recreate them or
add to /etc/rc.net).
How do you tell if a route is in the ODM or not (besides rebooting to see if
it comes back)?
lsattr -El inet0
How do you clear a routing table? route -f (flush)
Add static routes with smitty smit mkroute or :
chdev -l inet0 -a addroute=XXXXXXXXXXXXXXXXXX
Remove static routes with smitty smit rmroute :
chdev -l inet0 -a delroute=XXXXXXXXXXXXXXXXXX
chdev -l inet0 -a delroute=net,destination_address,gateway,subnet_mask -
chdev calls a routine that will delete the route from the ODM.
tuning parms
Remember if you do set them with the no -o it takes effect immediately and if you
reboot they are gone...unless you add them to the rc files.
Run no -a| more
and look at the settings for the following parameters:
thewall
sb_max
tcp_sendspace
tcp_recvspace
tcp_mssdflt
rfc1323
I AM NOT recommending these settings only showing what some have done:
In particular, set the following using the no -o command:
rfc1323=1 /* this means that the adapters are high-speed . */
thewall=65536 /* the bigger the better but this is pinned memory which cannot be
reused */
sb_max=131072 /* the bigger the better and significantly bigger then 'thewall'. */
tcp_sendspace=65536 /* this is the maximum and is pinned memory but must be
bigger that udp_sendspace */
tcp_recvspace=65536 /* same as above */
tcp_mssdflt=32768 /* this is a starting point and should be set smaller as tuning
progresses */
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.