Quite correct stating it's either a code-red like worm (or human scanning), but it doesn't explain your Linux box slowing down to a crawl.
! BTW, ditch telnet. It's *insecure*, please install and use ssh. If you're not convinced attach tcpdump to your eth interface and log in. That should show you login authentication and other telnet traffic is in *clear text format*, so sniffable.
If your Linux box is slowing down cuz some runaway process is leaking memory you could use something like
Memprof (GPL I think). This loads a library and has a GUI, and you don't need to recompile any apps to use it. OTOH its quite specialistic in its setup (at least from my POV) and you need to have a hunch which is the offending app to check...
You could also do an hourly/quarterly cronjob have a shellscript like
"ps -eo %mem,pid,user,args --sort %mem > /tmp/ps-$(/bin/date +%d%m-%H:%S).log"
but this requires you to check the data which longrunning processes hog memory.
If your Linux box is slowing down cuz of something else, like network related, there's usually some performance tweaks (Im thinking net.core.rmem*), but I think if you don't want to serve anything in the 24.0.0.0/8 range (on tcp port 80), add that to your firewall (and /etc/hosts.deny) and see if that will help.