wrapped the tcp server