I am using 1.6.2 on both Redhat 6.1 and Redhat 7.0. I am using the TCPServer class to accept incomming TCP requests. Each request is allocated a new thread and deals with the incomming message. The problem is - In RH6.1 two file descriptors are opened for the TCPServer Class (as seen in /proc/xxx/fd) and extras are opened for each accepted connection and freed once the connection is closed. In RH7.0 every call to recvfrom() for the accepted connection creates a new fd! These go on being opened (and never freed) until the kernel limit is reached - throwing and exception. Sounds like a difference in the kernel socket code to me but can someone assure me I am not barking up the wrong tree. Ta. Chris.