Socket é uma estrutura de dados criada no Sistema Operacional que dá suporte à comunicação, na qual processos podem ser ligados a ela, ou ela pode ser ligada a processos, caracterizando, assim, um mecanismo de comunicação entre processos.
Utilizando-se das facilidades da Camada de Transporte, o mecanismo de Sockets é abstrato o suficiente para permitir que apenas o nome da máquina e o número da porta sejam fornecidos. Podemos fazer uma analogia entre o nome da máquina e o número da porta com o nome da rua e o número da casa num endereço convencional.