add an optional parameter port for supporting special port

@heimonsy