implemented peer timeouts