- timeout blocking calls to socket send() and recv()
- throw an error on incomplete send() and recv()