Stream sockets
A stream socket (type SOCK_STREAM)
is the most commonly used type.
It provides bidirectional, sequenced,
and unduplicated flow of data without boundaries.
Except for the bidirectionality of data flow, a pair of connected stream
sockets provides an interface analogous to that of pipes.