Zusammenfassung der Ressource
COMUNICAÇÃO ENTRE PROCESSOS
- SOCKETS
- SURGIDA COM O UNIX
- ABSTRAÇÃO PARA REPRESENTAR A COMUNICAÇÃO ENTRE PROCESSOS
- COMUNICAÇÃO ENTRE DOIS PROCESSOS: MENSAGEM DE UM SOCKET EM UM PROCESSO PARA UM SOCKET DE OUTRO
- PROTOCOLO DE INTERNET ENVIADAS PARA UM PAR: ENDEREÇO_INTERNET; NUMERO_PORTA
- NUMERO DE PORTAS DISPONÍVEIS: 65536
Anmerkungen:
- Para receber mensagens, um processo pode usar várias portas simultaneamente, mas não pode compartilhar uma porta com outro processo diferente no mesmo computador.
- PROTOCOLO
- TCP
- Protocolo com conexão
- ESTABELECEM CONEXÃO ANTES DE COMUNICAR ATRAVÉS DO STREAM
- A PARTIR DESTA LIGAÇÃO PODEM SE COMUNICAR SEM TER DE INDICAR IP / PORTA
- Comunicação por streams
- Utilização da abstração Stream para ler/escrever dados
- TENTA "UNIFORMIZAR" AS VELOCIDADES DOS PROCESSOS QUE LÊEM/ESCREVEM EM UM STREAM
- MODELO DE FALHAS
- CHECKSUM PARA DETECTAR E REJEITAR PACOTES CORROMPIDOS
- TIMEOUTS E RETRANSMISSÃO PARA PACOTES PERDIDOS
- NUMERO DE SEQUÊNCIA PARA DETECTAR E REJEITAR PACOTES DUPLICADOS
- Se uma mensagem não chega porque o sistema está congestionado, ele não recebe a confirmação da recepção da mensagem até que a conexão seja cancelada após um certo tempo (timeout)
- UDP
- Protocolo sem conexão
- Comunicação por “datagrams”
- PERMITE CRIAR UM SOCKET NA MAQUINA LOCAL PARA O PROCESSO CONCORRENTE
- COMUNICAÇÃO ATRAVÉS DOS MÉTODOS:
- SEND
- A operação send não é bloqueante
- RECEIVE
- A operação receive é bloqueante
- FALHAS
- OMISSÃO
- BUFFER CHEIO
- ERRO DE CONTEÚDO (CHECKSUM)
- ORDENAÇÃO
- FORA DE ORDEM
- SERIALIZAÇÃO
- IMPLEMENTAÇÃO
- RPC (REMOTE PROCEDURE CALLING)
- RMI (REMOTE METHOD INCOCATION)
- QUALQUER TIPO DE DADOS QUE POSSA SER PASSADO COMO ARGUMENTO OU DEVOLVIDO COMO RESULTADO DEVE PODER SER SERIALIZADO
- DEFINIÇÃO: processo de transformar os dados do seu formato interno para uma representação externa que possa ser transmitida em uma mensagem
- O middleware é que realiza o processo de marhalling/unmarshalling
- REFERÊNCIA PARA OBJETOS REMOTOS
- IDENTIFICADOR DE UM OBJETO VÁLIDO NO SISTEMA DISTIBUÍDO
- OBJETO QUE DESEJAMOS ACESSAR, A REFERENCIA DEVE EXISTIR:
- NO PROCESSO LOCAL
- NA MENSAGEM QUE ENVIAMOS AO OBJETO
- NO PROCESSO REMOTO QUE POSSUI A INSTÂNCIA DO OBJETO CUJO MÉTODO QUEREMOS INVOCAR
- REFERENCIAS REMOTAS DEVEM SER GERADAS DE MODO A GARANTIR UNICIDADE NO ESPAÇO/TEMPO
- COMUNICAÇÃO CLIENTE/SERVIDOR
- SE COMUNICAM ATRAVÉS DE UM MECANISMO DE TRANSPORTE
- PROTOCOLO PEDIDO-RESPOSTA (REQUEST-REPLY PROTOCOL)
- USADO PELA MAIORIA DOS SISTEMAS QUE SUPORTAM RPC E RMI