socket
termprogrammingnetworking
The operating system's handle for one end of a network conversation, identified by address, port and protocol.
It is the boundary where the network becomes a programming problem: an application does not send packets, it writes to a descriptor and the kernel does the rest. That abstraction is why so much network debugging happens with tools that list sockets rather than capture traffic - the state of a connection is visible on the host before anything is on the wire. It is also a finite resource, and sockets left in a waiting state after close are a routine cause of a server that stops accepting while looking idle.
Also known as: file descriptor