Allow port to be nil, this permits the use of UNIX socket backends