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.