Okay looking at this futher, I stripped out all the superflous stuff 
(apologies for not doing that first) and ran the code again. This time 
it managed 18 iterations before it bombed out.

When I remove the req.basic_auth line, the code iterates 77 times before 
it dies.

As an experiment, I checked the latest source out of CVS and compiled it 
under Cygwin. At the time of writting, the script below has iterated 250 
times without a problem.

Going to leave it running and see if it simply keeps on going.

Rob, puzzeled!

<<<<< code >>>>>

require 'net/http'

# set up connection details for audiotron
req = Net::HTTP::Get.new('apigetstatus.asp')
address = Net::HTTP.new('atron00427c', 80)
req.basic_auth 'admin','admin'

response = nil

passes = 0

while true
	puts passes
	passes += 1
	address.start { |http|
		response = http.request(req)
	}
	response = nil

	sleep 5
end