# Soquete de rede

Um soquete de rede (em inglês: network socket) é um ponto final de um fluxo de comunicação entre processos através de uma rede de computadores. Hoje em dia, a maioria da comunicação entre computadores é baseada no Protocolo de Internet, portanto a maioria dos soquetes de rede são soquetes de Internet.
Uma API de soquetes (API sockets) é uma interface de programação de aplicativos (API), normalmente fornecida pelo sistema operacional, que permite que os programas de aplicação controlem e usem soquetes de rede. APIs de soquete de Internet geralmente são baseados no padrão Berkeley sockets.
Um endereço de soquete (socket address) é a combinação de um endereço de IP e um número da porta, muito parecido com o final de uma conexão telefônica que é a combinação de um número de telefone e uma determinada extensão. Com base nesse endereço, soquetes de internet entregam pacotes de dados de entrada para o processo ou thread (computação) de aplicação apropriado.

## Soquetes de Rede

Um soquete de rede é o ponto-final de um fluxo de comunicação entre 2 aplicativos através de uma rede.
Em documentos de RFC (Request for Comments) relacionados aos protocolos TCP ou UDP, um soquete de rede em um computador é definido como a combinação de :
* um endereço IP,
* o número de uma porta do protocolo de transporte (TCP ou UDP) acessado por um programa específico que utiliza este protocolo.
Com um soquete, é possível identificar unicamente um aplicativo na rede de comunicação IP.
Um soquete de rede pode ser usado em ligações de redes de computadores para um estabelecer um elo bidirecional de comunicação entre dois programas que utilizam o mesmo protocolo que estão ligados na mesma rede.
Um soquete de rede é um conceito ou abstração computacional.
A interface padronizada de sockets surgiu originalmente no sistema operacional Unix BSD (Berkeley Software Distribution); portanto, eles são muitas vezes chamados de Berkeley Sockets.
Sockets e RPCs têm a função de implementar numa aplicação as funções de rede, mas fazem de formas diferentes.

## Soquetes de CPU

Um soquete também pode ser o local das placas-mãe destinado a receber a CPU - o processador. Os nomes destes soquetes costumam indicar o número de pinos que o mesmo poderá receber. Ex.: Um soquete PGA 370 só admite processadores com 370 pinos.
Um soquete CPU fornece muitas funções, incluindo o fornecimento de uma estrutura física para suportar o CPU, fornecendo suporte para um dissipador de calor, facilitando a substituição (assim como a redução de custos) e, sobretudo formando uma interface elétrica tanto com a CPU e o PCB.
Um soquete CPU é feito de plástico e possui um metal ou alavanca e contatos de metal para cada um dos pinos ou terras na CPU. A maioria é desenhada para garantir a inserção adequada da CPU. CPUs com um pacote de PGA são inseridos no soquete e a trava fechada. Isso tem o efeito de garantir e proteger fisicamente o CPU, bem como provocando uma conexão elétrica entre os pinos do processador e do soquete. No caso de a CPU LGA é colocado no soquete e trava é fechada sobre o CPU, prendendo-o.
A maioria dos soquetes de CPU são projetados para suportar a instalação de um dissipador de calor. Ele deve ser capaz de proteger a CPU do peso do dissipador de calor, particularmente durante a instalação e remoção, mas também garantir o dissipador de calor faça bom contato térmico com a CPU.

### Sockets de fluxo

– Implementam o tradicional modelo cliente/servidor.
– Os dados são transferidos como um fluxo de bytes.
– Usam TCP para comunicação, de modo que são mais apropriados quando a comunicação tem de ser confiável.

### Sockets de datagrama

– Comunicação mais rápida, mas menos confiável.
– Os dados são transferidos por meio de pacotes de datagramas.

### Par de sockets

– Par de soquetes conectados e não denominados.
– Limitado para ser usado por processos que compartilham descritores de arquivo.