- using timeout functionality of net.socket
- add a tiny delay when timeout has occurred before trying to fetch it again