After about 4 hours mulling over various information on sockets, i've discovered what could have been wrong: too many 'dead' connections. So i've went through and made some changes to the connection code to help solve it. I still cant gaurantee the server'll be up for more than an hour or two, but let's hope!