OK - point taken - I need to do some homework and come up with some facts and details.
So here's what I have found. I am not getting any MALLOCFAIL errors. After memory has dwindled away, I get these on occasion:
1d08h: %AAA-3-ACCT_LOW_MEM_UID_FAIL: AAA unable to create UID for incoming calls due to insufficient processor memory
After comparing several sh processes memory commands, I found one process which seems to increment at roughly the same rate at which the memory drops, while the other processes remain roughly the same:
PID TTY Allocated Freed Holding Getbufs Retbufs Process 31 0 5030248 0 71112 36360 0 IP Input
In fact comparing about an hour later show the change already:
PID TTY Allocated Freed Holding Getbufs Retbufs Process 31 0 5166172 0 71476 36360 0 IP Input
Now, the troubleshooting guide suggests that this is usually found in fragmentation cases (not mine, as free, lowest and largest are identical in size), and to resolve it by either adding memory (not an option on my 16m/16m 2514) or to fix the problem. Hmmm. There's also a known issues note about the CiscoWorks app, which I don't use, which is a shame, because that's exactly what happens.
So, back to IP Input - the known issues note mentions that the cache entry table grows filling up the memory, and I realised that I'm using several NAT entries and extending them all:
ip nat inside source static tcp a.b.c.4 21 w.x.y.z 21 extendable ip nat inside source static tcp a.b.c.10 80 w.x.y.z 8001 extendable ip nat inside source static tcp a.b.c.4 53 w.x.y.z 53 extendable ip nat inside source static udp a.b.c.4 53 w.x.y.z 53 extendable ip nat inside source static tcp a.b.c.4 80 w.x.y.z 80 extendable ip nat inside source static tcp a.b.c.4 25 w.x.y.z 25 extendable ip nat inside source static tcp a.b.c.3 22 w.x.y.z 22 extendable
Also, my nat translations table is always large, several screenfuls - I think this may be it, so here are the stats despite clearing them yesterday afternoon:
Nimiety#sh ip nat st Total active translations: 101 (7 static, 94 dynamic; 101 extended) Outside interfaces: Dialer1, Ethernet1, Virtual-Access1 Inside interfaces: Ethernet0 Hits: 357371 Misses: 14397 Expired translations: 21626 Dynamic mappings:
-- Inside Source [Id: 1] access-list 1 interface Dialer1 refcount 5
So my questions are: can I unextend the nat translations above without affecting traffic? I have an ADSL link with several servers behind this router as you can see. If not, can I either limit the size of the IP Table process or forceably clear that process when it grows too large without reloading the router? I can go barely more than a day before running out of memory and being forced to reload or reboot, so I appreciate any input or suggestions you may have!
IOS (tm) 2500 Software (C2500-IS-L), Version 12.3(16), RELEASE SOFTWARE (fc4) Nimiety uptime is 1 day, 20 minutes
N....