To a certain degree, I/O with sockets is like file I/O.
TCP/IP sockets are identified using file descriptors.