add timeout support in proxy client