Please enable JavaScript.
Coggle requires JavaScript to display documents.
Aula 21 - Sockets - Coggle Diagram
Aula 21 - Sockets
Socket
A API de socket é provida pelo sistema
operacional (Free BSD, Linux, Windows,
Mac OS)
● A API de socket provê acesso aos serviços de transporte (TCP e UDP)
○ O socket é específico para um protocolo de transporte
Soket UDP
● Os datagramas/pacotes são enviados sem
confirmação nem retransmissão
○ O pacote pode não chegar no destinatário
-
● Modelo de falhas:
○ Falha por Omissão
■ Mensagens descartadas por erro no recebimento
(checksum) ou por buffer lotado
-
● Exemplos: Streaming, Teste de velocidade,
UI de jogos online, DNS
Socket TCP
-
-
● Usa identificadores de mensagens
○ Detectar e rejeitar pacotes duplicados
○ Ordenar pacotes que chegam fora de ordem
-
● Bloqueio:
○ Bloqueio por filas cheias
■ Send: bloqueado caso a fila do receptor estiver cheia
■ Receive: bloqueado caso a fila de
processamento estiver vazia
● Modelo de falhas:
○ Falha por Omissão
■ Se a perda de pacotes ultrapassar um limite
■ Se a rede for rompida
■ Se a rede estiver congestionada
-
Serialização
conceito
○ Processo que permite normalizar objetos de dados
ou dados propriamente ditos para serem
transmitidos entre aplicações
Envio de instancia
● Como fazer?
○ Através da criação de interfaces ou padrões que
tornem capazes recriar uma nova instância do
objeto após os dados chegarem no destinatário
■ Note que as instâncias são diferentes, você cria
novos objetos
Exemplo
● Representação binária
○ CDR do CORBA
○ Serialização de objetos da linguagem Java
● Representação em texto
○ XML
○ JSON
● Outros
○ Você pode definir o seu
modelos de comunicação
-
Assincrona
○ Send não bloqueante ○ Receive pode ser bloqueante e não bloqueante
○ Não é necessário um sincronismo entre ambas as partes para a comunicação fluir
■ A não ser que haja um fluxograma de estados da aplicação
Conceito
A comunicação entre dois ou mais processos localizados ou não em uma mesma máquina
■ Ex: Sistema de passagens aéreas
● APIs, Sockets, etc
-