In computer networking, a socket forms one end of a bi-directional communication link between two programs on a network.

The BSD operating system introduced network sockets in 1983: see the Berkeley sockets API. Each socket gets bound to a given port, which lets the transport layer protocol (typically UDP or TCP) identify which application to send the data to.

This article is a stub. You can help Wikipedia by fixing it.