O documento discute sockets, que são primitivas de transporte que permitem a comunicação bidirecional entre processos localmente ou remotamente através de redes. Sockets usam endereços e domínios para identificar processos. Exemplos de domínios são AF_UNIX para máquinas locais e AF_INET para máquinas remotas usando IP e portas. Stream sockets usam TCP e garantem entrega enquanto datagram sockets usam UDP sem garantia de entrega.
2. Weslley Ceresa
Diretor TI na ProDental
Diretor/Web Development na Five’s
weslley@fivesdev.com
https://www.linkedin.com/in/weslleyceresa/
3. Sockets
O acesso aos serviços da camada de transporte pode ser feito por primitivas de
transporte, essas primitivas são denominadas SOCKET.
Por essas primitivas é possível acessar vários protocolos da camada de transporte,
dentre eles TCP e UDP.
4. Sockets
Sockets garantem a intercomunicação bidirecional entre processos, executados
localmente ou em máquinas conectadas através de uma LAN/WAN.
Endereçamento:
Sockets usam endereços para fazer referências entre si. O espaço de possíveis
endereços é denominado domínio.
5. Sockets
No caso de sockets alguns possíveis domínios são:
AF_UNIX - endereço é composto por um caminho dentro do sistema de arquivos.
O domínio está restrito a árvore de diretórios acessível pelo processo que criou o
socket. Utilizado quando os processos rodam em uma mesma máquina;
AF_INET - O endereço é composto pelo endereço de rede da máquina (IP) e o
número de identificação da porta sendo utilizada pelo processo.
6. Sockets
Ou seja são a interface entre a camada de
aplicação e a de transporte dentro de uma
máquina e fornecem a comunicação limpa
entre dois pontos utilizando texto.
Tipos de Socket...
7. Stream Sockets
A entrega em um ambiente em rede é garantida. Se você enviar através do tom de
fluxo três itens "A, B, C", eles chegarão na mesma ordem - "A, B, C". Esses sockets
usam TCP (Transmission Control Protocol) para transmissão de dados. Se a
entrega for impossível, o remetente recebe um indicador de erro. Os registros de
dados não possuem limites.
8. Sockets Datagram
A entrega em um ambiente em rede não é garantida. Eles estão sem conexão
porque você não precisa ter uma conexão aberta como no Stream Sockets - você
constrói um pacote com as informações de destino e envia-o. Eles usam UDP
(User Datagram Protocol).
9. Exemplos de uso
● Chats - TCP
● Stream Live de Vídeo ou Áudio - UDP
● Comunicação entre processos - TCP
● Webhooks - TCP
10. Bate Papo
1. Onde vocês utilizaram sockets para solucionar problemas, onde a
comunicação em tempo real era fundamental?