working joins via tcp and timeout disconnect handling