PT-43737423:  using native read and write timeout doesnt seem to work as expected in boost asio.  We reimplented timeout to use asio deadline timers instead.