Comunicaçãoentre processos: Mensagens
|
|
- Sandra Sales Barroso
- 8 Há anos
- Visualizações:
Transcrição
1 Sistemas Distribuídos Comunicaçãoentre processos: Mensagens Nazareno Andrade Universidade Federal de Campina Grande 02/2008
2 Fundamentos Coordenando processos Construíndo sistemas Sistemas construídos 2
3 Fundamentos Coordenando processos Mensagens (e fluxos): UDP, TCP, MPI, Enfileiramento, Gossiping RPC e objetos distribuídos: RMI Mensagens vs. RPC Nomeação Sincronização e replicação Construíndo sistemas Sistemas construídos 3
4 Objetivos Dominar primitivas usadas para a comunicação entre processos Visão geral de paradigmas de comunicação entre processos 4
5 Fundamental: Mensagens e RPC/RMI Tudoéconstruídocom TCP e UDP Mensagens Diretocom primitivastcp ouudp Primitivasmaissofisticadas: MPI, enfileiramento, multicast, epidemias, boatos RPC/RMI Abstração de nível mais alto que mensagens 5
6 6
7 Transporte: TCP, UDP Tipicamente, um programador sólida com a camada de transporte As camadas inferiores são responsáveis por enviar dados brutos sem garantias de: Recebimento Ordem Integridade A camada de transporte torna isso tratável para nós 7
8 TCP vs. UDP Em resumo, confiabilidade vs. desempenho Propriedades do TCP não são sempre importantes 8
9 Antes de mais detalhes Lembremos 2 ou 3 coisas Camada de rede (no nosso caso IP): Responsável por comunicação best-effort de pacotes entre nós Pacotes podem seguir rotas diferentes ou não chegar Camada de transporte: Comunicação entre processos Multiplexamos a comunicação do IP com portas 9
10 As primitivas mais básicas da comunicação entre processos são send e receive Se são bloqueantes, a comunicação é síncrona Uma última abstração é o soquete: socket any port agreed port socket client Internet address = message other ports server Internet address =
11 UDP: como e pra quê UDP éo IP no nível do transporte Transmissão de datagramas convertidos em pacotes Checksum opcional Nenhuma garantia de chegada ou ordenação Não há retransmissão 11
12 Primitivas UDP Send() um datagrama, pode ser não-bloqueante Receive() bloqueante de um datagrama Recebe de qualquer fonte Pode ter um timeout de espera Mensagens são enviadas quando dadas ao IP e são postas em um buffer de recebimento no destino até o receive() O que pode dar errado aqui? 12
13 Traduzindoemum modelo Mensagens podem ser perdidas Nos buffers, por exemplo A comunicação está sujeita a falhas de omissão Mensagens podem sair de ordem Seguindo caminhos diferentes no roteamento IP A comunicação está desordenamento das msgs Isso nos diz algo sobre que tipo de sistemas devemos construir sobre o UDP 13
14 O UDP éútil! Um monte de problemas pode ser solucionado no modelo UDP DNS, DCHP, traceroute, SNMP, NTP Transmissão de vídeo Transmissão de áudio Utilização eficiente de banda em alto desempenho... 14
15 Exemplo UDP 15
16 TCP: como e para quê TCP soma ao IP Confiabilidade Fluxos de dados (em conexões) Segmentação automática dos fluxos em pacotes Garantias com retransmissões, ordenação e checksums Controle de fluxo Buffering (TCP éuma mãe) A que custo? O que disso poderia ser feito sobre UDP? Haveria ganhos? 16
17 Primitivas TCP accept() e connect() estabelecem uma conexão send() e receive() de bytes, não de datagramas Abstraem: Tamanhos de mensagem Perdas de mensagens Diferenças na velocidade de envio e recebimento (fluxo) Duplicação e ordenação de mensagens Destino das mensagens! (outro lado da conexão) 17
18 E o modelo disso? Não há falhas de omissão ou desordenação de mensagens Timeouts escondem de você que o mundo é assíncrono Há falhas de fail-stop Mas quando a conexão cai, falhou o canal ou o processo? Processos não detectam imediatamenteque mensagem não foi recebida Têm que esperar o ack não vir 18
19 Exemplo TCP 19
20 Quando TCP, quando UDP Comparemos quem usa um e outro: UDP: grupo 1: NTP, DHCP, DCP grupo 2: vídeo e áudio TCP: HTTP, FTP, SMTP Fora isso, hoje em dia, se usa UDP para driblar segurança que visa TCP NATs e alguns firewalls 20
21 Primitivas mais apropriadas para desenvolvedores send() e receive() são primitivas Comumente, émais conveniente usar abstrações de nível mais alto: Comunicação 1 N Multicast Comunicação eficiente em grupo MPI Observer-like Enfileiramento Disseminação de informação Protocolos epidêmicos... (Pra não falar em RPC/RMI) 21
22 Message Passing Interface: por que Queremos simular uma placa de ferro recebendo calor de duas fontes Dividimos a placa em pedaços, pedaços em processadores Simula t em um pedaço, comunica resultado com vizinhos Até estabilizar Que tipos de primitiva são úteis para computação paralela? E se queremos poder rodar a aplicação em clusters de qualquer tamanho? E se fôssemos físicos? 22
23 MPI: O queé Antes de MPI, mil empresas forneciam mil bibliotecas MPI éum padrãopara o desenvolvimento de aplicações paralelas com passagem de mensagens Émuitousado Hoje existem mil implementações do padrão Tudo que uma aplicação paralela pode querer: Comunicação ponto-a-ponto transparente, comunicação em grupo, abstrações para escrever aplicações portáveis... 23
24 Uma idéia O básico para cada processo: MPI_INIT MPI_FINALIZE MPI_COMM_SIZE MPI_COMM_RANK MPI_SEND MPI_RECV MPI_BCAST MPI_REDUCE 24
25 int main( int argc, char *argv[]){ int n, myid, numprocs, i; double mypi, pi, h, sum, x; MPI_Init(&argc,&argv); MPI_Comm_size(MPI_COMM_WORLD,&numprocs); MPI_Comm_rank(MPI_COMM_WORLD,&myid); if (myid == 0) { printf("enter the number of intervals: (0 quits) "); scanf("%d",&n); } MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD); if (n == 0) break; else { h = 1.0 /(double) n; sum = 0.0; for (i = myid + 1; i <= n; i += numprocs) { x = h *((double)i-0.5); sum += (4.0/(1.0 + x*x)); } mypi = h * sum; MPI_Reduce(&mypi, &pi, 1, MPI_DOUBLE, MPI_SUM, 0, MPI_COMM_WORLD); if (myid == 0) printf("pi is approximately %.16f, Error is %.16f\n", pi, fabs(pi - PI25DT)); } } MPI_Finalize(); 25 return 0; }
26 Mais algumas primitivas MPI MPI_send bloqueia até msg estar em buffer para envio MPI_Ssend bloqueia até destino receber mensagem MPI_Rsend dispensa handshake e é mais eficiente Sópode ser chamada se destino estáem receive() Isso dáuma idéia do mundo da otimização de comunicação... 26
27 Enfileiramento (Message queueing) E se queremos comunicação com o mínimo possível de acoplamento entre partes que se comunicam? Não quero saber a interface dos componentes láfora Não quero saber se os componentes estão online ou não Não quero bloquear até eles receberem a mensagem Mas quero comunicação confiável! é assim Sistemas baseados em publish/subscribe podem ser assim 27
28 Usode enfileiramento O princípio é que clientes põem mensagens em filas Filas são persistentes, implementadas por servidores Destinos lêem mensagens de suas filas Serve para aplicações pouquíssimo acopladas E.g.: Conectar diversas operações legadas Comunicação assíncrona e confiável: entre apps. Implementado com Message Oriented Middleware: IBM WebSphere MQ, Java Messaging Service, JBoss Messaging Admin instala e administra filas, aplicações usam-nas para se comunicar 28
29 29
30 public class Chat implements javax.jms.messagelistener{ /* Run the Chat client */ public static void main(string [] args){ try{ // args[0]=topicname; args[1]=username; args[2]=password Chat chat = new Chat(args[0],args[1],args[2]); // Read from command line BufferedReader commandline = new java.io.bufferedreader(new InputStreamReader(System.in)); // Loop until the word "exit" is typed while(true){ String s = commandline.readline( ); if (s.equalsignorecase("exit")){ chat.close( ); System.exit(0); } else chat.writemessage(s); } } catch (Exception e){ e.printstacktrace( ); } (...) } 30
31 public Chat(String topicname, String username, String password) throws Exception { InitialContext jndi = new InitialContext(env); // Look up a JMS connection factory TopicConnectionFactory confactory = (TopicConnectionFactory)jndi.lookup("TopicConnectionFactory"); // Create a JMS connection TopicConnection connection = confactory.createtopicconnection(username,password); // Create two JMS session objects TopicSession pubsession = connection.createtopicsession(false, Session.AUTO_ACKNOWLEDGE); TopicSession subsession = connection.createtopicsession(false, Session.AUTO_ACKNOWLEDGE); // Look up a JMS topic Topic chattopic = (Topic)jndi.lookup(topicName); // Create a JMS publisher and subscriber TopicPublisher publisher = pubsession.createpublisher(chattopic); TopicSubscriber subscriber = subsession.createsubscriber(chattopic); // Set a JMS message listener subscriber.setmessagelistener(this); } // Start the JMS connection; allows messages to be delivered connection.start( ); 31
32 /* Receive message from topic subscriber */ public void onmessage(message message) { try { TextMessage textmessage = (TextMessage) message; String text = textmessage.gettext( ); System.out.println(text); } catch (JMSException jmse){ jmse.printstacktrace( ); } } /* Create and send message using topic publisher */ protected void writemessage(string text) throws JMSException{ TextMessage message = pubsession.createtextmessage( ); message.settext(username+" : "+text); publisher.publish(message); } 32
33 Multicast Comunicação 1 vários A priori, existe no nível da rede (IP Multicasting) Quando tudo está configurado e permitido Geralmente éfeito sobre UDP Processos entram em um grupo de multicast tudo que éenviado para o grupo érecebido por todos nele Temos que limitar o alcance do multicast Freqüentemente, fazemos no nível da aplicação Note que broadcast é um caso particular de multicast Broad/Multicast confiável e ordenado é uma primitiva poderosa 33
34 Exemplo com multicast 34
35 Boatos e Epidemias como algo útil Problema: Muitos nós, uma informação que precisa ser difundida a todos periodicamente Solução 1: broadcasts o tempo todo O que émelhor que isso? E se eunão conheço a topologia da rede? 35
36 Boatos e epidemias Boatos e epidemias são duas coisas que se espalham eficientemente em topologias desconhecidas Essencialmente, boatos == epidemias 36
37 Protocolo básico de boato De aplicação pra aplicação: Escolha de nós Informação a ser trocada Consolidação da informação Em geral, espalha informação em o(log(n)) rounds, independente de N 37
38 Exemplos com epidemias e boatos Disseminação éo uso básico, mas existe mais um mundo láfora Disseminação da informação: Roteamento IP Gerência de recursos: Quem éo servidor mais carregado no sistema? Visão comum para detecção de falhas Computação: Se a cada rodada, v i, v k (v i + v k )/2, alguma hora v k seráa média para todos os nós A partir disso, podemos estimar o tamanho de um sistema! 38
39 Onde estamos Mensagens Primitivas básicas para envio e recebimento Paradigmas mais sofisticados RPCe RMI 39
40 RPC (e RMI) Outra apresentação 40
41 RPC vs. Mensagens RPC ou RMI: Transparências Facilidade de programação Semântica clara Sincronismo na comunicação Mensagens: Eficiência Síncrono ou assíncrono Heterogeneidade de plataformas e versões 41
42 Recapitulando Mensagens (e fluxos) UDP TCP MPI Enfileiramento Gossiping RPC e objetos distribuídos: RMI Mensagens vs. RPC 42
43 Mais sobre esse assunto Mundo UDP/TCP: RCP, umamodificação do TCP para otimizar tempo de download Como o Skype usa UDPpara contornar NATs MPI: Como rodar uma aplicação MPI em um sóprocessador para testá-la Enfileiramento: Apache ActiveMQ, JMS Gossiping: Introdução ao tema 43
UNIVERSIDADE. Sistemas Distribuídos
UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Comunicação Inter-Processos Sockets e Portas Introdução Sistemas distribuídos consistem da comunicação entre processos
Leia maisA interface de uma mensagem é extremamente flexível e permite várias formas de customização de conteúdo. Figura 1 - Tipos de Mensagens JMS
Programando com Java Artigo http://mballem.wordpress.com/ Chat JMS com ActiveMQ Java Message Service Autor Marcio Ballem: é formado em Sistemas de Informação e possui certificação Oracle Certified Professional,
Leia maisTópicos em Sistemas Distribuídos. Modelos de Comunicação
Tópicos em Sistemas Distribuídos Modelos de Comunicação Comunicação em SD Comunicação entre processos Sockets UDP/TCP Comunicação em grupo Broadcast Multicast Comunicação entre processos Conceitos básicos
Leia maisSistemas Distribuídos Comunicação entre Processos em Sistemas Distribuídos: Middleware de comunicação Aula II Prof. Rosemary Silveira F. Melo Comunicação em sistemas distribuídos é um ponto fundamental
Leia maisSistemas Distribuídos. Coulouris Capítulo 4
Sistemas Distribuídos Coulouris Capítulo 4 Mensagens Para comunicar-se com outros processos, um processo envia uma MENSAGEM para um DESTINO; um outro processo nesse destino recebe a mensagem. As operações
Leia maisComunicação Inter-Processos. Prof. Adriano Fiorese. Conceitos Iniciais
Comunicação Inter-Processos Conceitos Iniciais 1 Características para Comunicação Inter-Processos. Passagem de Mensagem pode ser suportada por duas operações de comunicação (send e receive). A comunicação
Leia maisComunicação em Sistemas Distribuídos. Conceitos: Paradigma C/S. Conceitos: Paradigma C/S. Paradigma Cliente/Servidor
Comunicação em Sistemas Distribuídos Paradigma / Os processos em um SD estão lógica e fisicamente separados. Precisam se comunicar para que possam interagir O desempenho de um SD depende criticamente do
Leia maisProgramação Paralela com Troca de Mensagens. Profa Andréa Schwertner Charão DLSC/CT/UFSM
Programação Paralela com Troca de Mensagens Profa Andréa Schwertner Charão DLSC/CT/UFSM Sumário Modelo de programa MPI Comunicação em MPI Comunicadores Mensagens Comunicação ponto-a-ponto Comunicação coletiva
Leia maisSistemas Distribuídos. Nomeação. Nazareno Andrade. Universidade Federal de Campina Grande 02/2008
Sistemas Distribuídos Nomeação Nazareno Andrade Universidade Federal de Campina Grande 02/2008 Fundamentos Coordenando processos Construíndo sistemas Sistemas construídos 2 Fundamentos Coordenando processos
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação- Protocolos, Tipos, RPC Capítulo 4 Agenda Protocolos em Camadas Pilhas de Protocolos em Sistemas Distribuídos Tipos de Comunicação
Leia maisProf. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013
MC714 Sistemas Distribuídos 2 semestre, 2013 Tipos de comunicação Middleware: serviço intermediário na comunicação de nível de aplicação. Fig. 67 Ex.: correio eletrônico Comunicação é persistente. Middleware
Leia maisSistemas Distribuídos
Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Mecanismos de Comunicação Voltando ao exemplo da calculadora... Rede local
Leia maisSistemas Distribuídos Capítulos 3 e 4 - Aula 4
Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos
Leia maisInvocação de Métodos Remotos RMI (Remote Method Invocation)
Invocação de Métodos Remotos RMI (Remote Method Invocation) Programação com Objetos Distribuídos Um sistema de objetos distribuídos permite a operação com objetos remotos A partir de uma aplicação cliente
Leia maisSistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: comunicação orientada por mensagem e comunicação orientada por fluxo Prof. MSc. Hugo Souza Continuando o módulo 03 da primeira unidade, iremos abordar sobre
Leia maisParte da Tarefa. Parte da Tarefa. Parte da Tarefa SEND RECEIVE SEND RECEIVE
Produto Escalar com MPI-2 (C++) Aula Sistemas Distribuídos Prof. Dr. Marcelo Facio Palin profpalin@gmail.com 1 1 O que é Paralelismo? Conceitos Paralelismo é uma técnica usada em tarefas grandes e complexas
Leia maisProgramação com sockets (em Java)
com sockets (em Java) Prof. Dr. Julio Arakaki Depto. Ciência da 1 Comunicação entre processos // aplicações - é um dos mecanismos mais utilizados - Java oferece modos de utilização:. TCP ( Transmission
Leia maisRedes de Computadores. Protocolos de comunicação: TCP, UDP
Redes de Computadores Protocolos de comunicação: TCP, UDP Introdução ao TCP/IP Transmission Control Protocol/ Internet Protocol (TCP/IP) é um conjunto de protocolos de comunicação utilizados para a troca
Leia maisComunicação entre Processos
Comunicação entre Processos Comunicação entre Processos - Sistemas Operacionais fornecem mecanismos para comunicação entre processos (IPC), tal como filas de mensagens, semáfaros e memória compartilhada.
Leia maisCamada de Transporte. Bruno Silvério Costa
Camada de Transporte Bruno Silvério Costa Serviços Oferecidos à camada superior Camadas de rede, transporte e aplicação. Primitivas do Serviço de Transporte As primitivas para um serviço de transporte
Leia maisREDES DE COMPUTADORES
REDES DE COMPUTADORES 09/2013 Cap.3 Protocolo TCP e a Camada de Transporte 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica. Os professores
Leia maisObjetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes
Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação
Leia maisAula 30 - Sockets em Java
Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar
Leia maisOlho por olho, e o mundo acabará cego. Mohandas Gandhi
Sockets Olho por olho, e o mundo acabará cego. Mohandas Gandhi Conectando-se a máquinas remotas. Protocolo Da necessidade de dois computadores se comunicarem surgiram diversos protocolos que permitissem
Leia maisSistemas Distribuídos
Sistemas Distribuídos Aula 5 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Estrutura básica Uma aplicação
Leia maisCurso de especialização em Teleinformática Disciplina Sistemas Distribuídos Prof. Tacla
- 1 - - 2 - COMUNICAÇÃO INTER PROCESSOS DISTRIBUÍDOS. - 3 - - 4 - Os sockets UDP e TCP são a interface provida pelos respectivos protocolos. Pode-se dizer que estamos no middleware de sistemas distribuídos
Leia maisProgramação de Sockets
Programação de Sockets Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando sockets Socket API introduzida no BSD4.1 UNIX, 1981 explicitamente criados, usados e liberados
Leia maisCapítulo 7 CAMADA DE TRANSPORTE
Capítulo 7 CAMADA DE TRANSPORTE INTRODUÇÃO (KUROSE) A Camada de Rede é uma peça central da arquitetura de rede em camadas A sua função é a de fornecer serviços de comunicação diretamente aos processos
Leia maisFTP FILE F TRANSFER PROTOCOL. Tópicos
FTP FILE F TRANSFER PROTOCOL Tópicos Revisão da aplicação FTP Implementação simples em Java de uma conexão FTP Implementação simples em Java de um comando de transferência de arquivo Descrição dos exercícios
Leia maisCAMADA DE TRANSPORTE
Curso Técnico de Redes de Computadores Disciplina de Fundamentos de Rede CAMADA DE TRANSPORTE Professora: Juliana Cristina de Andrade E-mail: professora.julianacrstina@gmail.com Site: www.julianacristina.com
Leia maisSISTEMAS DISTRIBUIDOS
1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização
Leia maisArquitecturas Paralelas I Computação Paralela em Larga Escala. Passagem de Mensagens
Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI/LMCC - 4º/5º Ano Passagem de Mensagens João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Novembro 2004 Passagem
Leia maisChamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução
Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite
Leia maisDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science (Tradução e Adaptação Ricardo Anido - IC/Unicamp) Capítulo 04: Comunicação Versão: 20 de março de 2014
Leia maisConsiderações no Projeto de Sistemas Cliente/Servidor
Cliente/Servidor Desenvolvimento de Sistemas Graça Bressan Graça Bressan/LARC 2000 1 Desenvolvimento de Sistemas Cliente/Servidor As metodologias clássicas, tradicional ou orientada a objeto, são aplicáveis
Leia maisMessage Driven Beans. Apresentação. Introdução Implementação de MDBs Deployment no JBoss Java Messaging Service Exemplo
Message Driven Beans Apresentação Introdução Implementação de MDBs Deployment no JBoss Java Messaging Service Exemplo 1 Introdução Message Driven Beans são EJBs que consomem mensagens enviadas para filas
Leia maissocket Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando sockets
Programação de Sockets Mário Meireles Teixeira. UFMA-DEINF Programação de Sockets Objetivo: aprender a construir aplicações cliente/servidor que se comunicam usando s API de Sockets: introduzida no UNIX
Leia maisRede d s d e d Com o pu p t u ado d r o es Conceitos Básicos M d o e d los o de d Re R de d s:
Tecnologia em Redes de Computadores Redes de Computadores Professor: André Sobral e-mail: alsobral@gmail.com Conceitos Básicos Modelos de Redes: O O conceito de camada é utilizado para descrever como ocorre
Leia maisProgramação Paralela e Distribuída. Prof. Cidcley T. de Souza
Programação Paralela e Distribuída Prof. Cidcley T. de Souza Conteúdo Parte I Introdução aos Sockets Tipos de Sockets Classes Java: InetAddress, Datagram Sockets, Stream Sockets, Output e Input Classes
Leia maisCST em Redes de Computadores
CST em Redes de Computadores Serviços de Rede Prof: Jéferson Mendonça de Limas Ementa Configuração de Serviços de Redes; Servidor Web; Servidor de Arquivos; Domínios; Servidor de Banco de Dados; SSH; SFTP;
Leia maisParadigma Cliente/Servidor
Paradigma Cliente/Servidor Mário Meireles Teixeira UFMA Departamento de Informática Dezembro, 2012 Comunicação em Sistemas Distribuídos! Os processos em um SD estão lógica e fisicamente separados. Precisam
Leia maisSUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2
SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2
Leia maisComunicação em Sistemas Distribuídos
Comunicação em Sistemas Distribuídos A diferença mais importante entre os Sistemas Distribuídos e os Sistemas Uniprocessadores é a comunicação inter-processo. Nos uniprocessadores esta comunicação é feita
Leia maisUNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS COLEGIADO DE INFORMÁTICA
UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS COLEGIADO DE INFORMÁTICA Disciplina: Redes de Computadores Ano: 2007 Professor: Luiz Antonio Trabalho 1º Bimestre Cliente/Servidor
Leia maisSistemas Distribuídos
Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Relembrando... Mecanismos de Comunicação Middleware Cenário em uma rede Local
Leia maisSistemas Distribuídos. Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br
Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Novembro/2003 Tópicos Tolerância a falhas em comunicação em grupo Tolerância a falhas em comunicação
Leia maisRedes de Computadores
Redes de Computadores Camada de Transporte UDP Slide 1 Camada de Transporte Fornece uma comunicação lógica entre processos de aplicações em diferentes hosts através da camada de rede; São implementados
Leia maisRede de Computadores
Escola de Ciências e Tecnologia UFRN Rede de Computadores Prof. Aquiles Burlamaqui Nélio Cacho Luiz Eduardo Eduardo Aranha ECT1103 INFORMÁTICA FUNDAMENTAL Manter o telefone celular sempre desligado/silencioso
Leia maisCapítulo 7 CAMADA DE TRANSPORTE
Capítulo 7 CAMADA DE TRANSPORTE SERVIÇO SEM CONEXÃO E SERVIÇO ORIENTADO À CONEXÃO Serviço sem conexão Os pacotes são enviados de uma parte para outra sem necessidade de estabelecimento de conexão Os pacotes
Leia maisSockets em Java. Leonardo R. Nunes - leonardo@sumersoft.com. 1. Introdução. 2. Sockets TCP/IP
Sockets em Java Leonardo R. Nunes - leonardo@sumersoft.com 1. Introdução A comunicação entre processos de software tornou-se indispensável nos sistemas atuais. O mecanismo mais utilizado atualmente para
Leia maisUtilização do Appia. Tolerância a Faltas Distribuída 2003/04. Nuno Carvalho nunomrc@di.fc.ul.pt
Utilização do Appia Tolerância a Faltas Distribuída 2003/04 Nuno Carvalho nunomrc@di.fc.ul.pt Appia Framework para execução e composição de protocolos. Comunicação efectuada por eventos Entre camadas e
Leia maisP L A N O D E D I S C I P L I N A
INSTITUTO FEDERAL DE SANTA CATARINA CAMPUS SÃO JOSÉ SC CURSO TÉCNICO EM TELECOMUNICAÇÕES / REDES DE COMPUTADORES P L A N O D E D I S C I P L I N A DISCIPLINA: Redes de Computadores Carga Horária: 95 HA
Leia maisMIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais
RMI JAVA MIDDLEWARE Aplicativos RMI, RPC e eventos Protocolo Requesição-Respostal Camadas Middleware Representação Externa dos Dados Sistemas Operacionais RMI REMOTE METHOD INVOCATION Invocação remota
Leia maisCliente-servidor com Sockets TCP
Cliente-servidor com Sockets TCP Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2007/2008 c 2000 2007 Paulo Sérgio Almeida Cliente-servidor com Sockets
Leia maisTCP é um protocolo de TRANSMISSÃO, responsável pela confiabilidade da entrega da informação.
Protocolo TCP/IP PROTOCOLO é um padrão que especifica o formato de dados e as regras a serem seguidas para uma comunicação a língua comum a ser utilizada na comunicação. TCP é um protocolo de TRANSMISSÃO,
Leia maisComunicação entre processos
Comunicação entre processos Processo: um programa em execução num sistema terminal (host) Processos em sistemas distintos comunicam trocando mensagens Processo Cliente: processo que inicia a comunicação
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Modelo cliente e servidor Slide 2 Nielsen C. Damasceno Modelos Cliente - Servidor A principal diferença entre um sistema centralizado e um sistema distribuído está na comunicação
Leia maisTutorial JMS com ActiveMQ Nível: Introdutório Autor: José Damico (jdamico@br.ibm.com) IBM Data: 26 de novembro de 2006
Tutorial JMS com ActiveMQ Nível: Introdutório Autor: José Damico (jdamico@br.ibm.com) IBM Data: 26 de novembro de 2006 O objetivo deste tutorial é oferecer uma documentação básica passo-a-passo e um exemplo
Leia maisSistemas Distribuídos Grupos
Sistemas Distribuídos Grupos Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Definição de Grupos Tipos Atomicidade Ordenamento 3 RPC Comunicação entre Pares Cliente - Servidor
Leia maisPlataforma para Agentes
Plataforma para es JATLite - Java Template, Lite O que é o JATLite? http://java.stanford.edu/ http://www.fe.up.pt/~eol/aiad/jatlite/doc/index.html Pacote de programas em Java permitindo: rápida criação
Leia mais1 Redes de Computadores - TCP/IP Luiz Arthur
1 Redes de Computadores - TCP/IP Luiz Arthur TCP/IP O protocolo TCP/IP atualmente é o protocolo mais usado no mundo. Isso se deve a popularização da Internet, a rede mundial de computadores, já que esse
Leia maisProgramação em Rede Baseada em Java. Luiz Affonso Guedes Tópicos em Redes de Computadores Programação Distribuída www.dca.ufrn.
Programação em Rede Baseada em Java Luiz Affonso Guedes Tópicos em Redes de Computadores Programação Distribuída www.dca.ufrn.br/~affonso/cursos Definiçõs Básicas Uma rede é um conjunto de computadores
Leia mais3. Comunicação em Sistemas Distribuídos
3. Comunicação em 3.1.Troca de mensagens As mensagens são objetos de dados cuja estrutura e aplicação são definidas pelas próprias aplicações que a usarão. Sendo a troca de mensagens feita através de primitivas
Leia maisJXTA. Alessandro Vasconcelos Ferreira de Lima. avfl@cin.ufpe.br
JXTA Alessandro Vasconcelos Ferreira de Lima Roteiro Motivação Introdução Arquitetura de JXTA Elementos de JXTA Os Protocolos Comparações e Desvantagens Conclusão Motivação Limitações do Modelo Cliente
Leia maisTeleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010
Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010 Prof. Silvana Rossetto (DCC/IM/UFRJ) 1 13 de julho de 2010 Questões 1. Qual é a diferença fundamental entre um roteador
Leia maisSistemas Distribuídos RPC x RMI. Edeyson Andrade Gomes www.edeyson.com.br
Sistemas Distribuídos RPC x RMI Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Chamada Remota a Procedimento Definição Passagem de Parâmetros STUBS Semântica de Falhas 2 RPC Chamada Remota a
Leia maisEnterprise Java Beans
Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side
Leia maisProf. Marcelo Cunha Parte 5 www.marcelomachado.com
Prof. Marcelo Cunha Parte 5 www.marcelomachado.com Criado em 1974 Protocolo mais utilizado em redes locais Protocolo utilizado na Internet Possui arquitetura aberta Qualquer fabricante pode adotar a sua
Leia maisProgramação de sockets com TCP
Programação de sockets Objetivo: aprender a construir aplicações cliente-servidor que se comunicam usando sockets SOCKET = API (Application Program Interface) Introduzida no BSD4.1 UNIX, 1981 * Explicitamente
Leia maisCamada de Transporte
Camada de Transporte Conceitos Básicos Redes de Computadores A. S. Tanenbaum Mário Meireles Teixeira. UFMA-DEINF Protocolos Protocolo: Conjunto de regras e formatos usados para comunicação entre entidades,
Leia mais3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.
Entregue três questões de cada prova. Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação orientada a Mensagem, Comunicação orientada a Fluxo Capítulo 4 Agenda Comunicação orientada a mensagem Comunicação transiente: MPI
Leia maisProf. Luís Rodolfo. Unidade III REDES DE COMPUTADORES E TELECOMUNICAÇÃO
Prof. Luís Rodolfo Unidade III REDES DE COMPUTADORES E TELECOMUNICAÇÃO Redes de computadores e telecomunicação Objetivos da Unidade III Apresentar as camadas de Transporte (Nível 4) e Rede (Nível 3) do
Leia maisProtocolos Hierárquicos
Protocolos Hierárquicos O que é a Internet? Milhões de elementos de computação interligados: hospedeiros = sistemas finais Executando aplicações distribuídas Enlaces de comunicação fibra, cobre, rádio,
Leia maisREDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 2 - MODELO DE REFERÊNCIA TCP (RM TCP) 1. INTRODUÇÃO O modelo de referência TCP, foi muito usado pela rede ARPANET, e atualmente usado pela sua sucessora, a Internet Mundial. A ARPANET é de grande
Leia maisINF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 18 Sockets OLadoServidor O Lado Cliente Múltiplos Clientes 1 Programa Capítulo 18 Sockets
Leia maisPrincípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5
Princípios de Sistemas Distribuídos Tecnologias utilizadas em sistemas distribuídos Aula 5 Conceitos de comunicação entre processos Interprocess Communication (IPC) Sistemas distribuídos são construídos
Leia maisRedes. Pablo Rodriguez de Almeida Gross
Redes Pablo Rodriguez de Almeida Gross Conceitos A seguir serão vistos conceitos básicos relacionados a redes de computadores. O que é uma rede? Uma rede é um conjunto de computadores interligados permitindo
Leia maisMÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos
MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada
Leia maisComunicação entre Processos
Comunicação entre Processos Comunicação memória compartilhada troca de mensagens base de comunicação em sistemas distribuídos Mensagens básicas send (destino, msg) receive (origem, mensagem) questões semântica
Leia maisCCNA 2 Conceitos Básicos de Roteadores e Roteamento
CCNA 2 Conceitos Básicos de Roteadores e Roteamento Capítulo 10 - TCP/IP Intermediário 1 Objetivos do Capítulo Descrever o TCP e sua função; Descrever a sincronização e o controle de fluxo do TCP; Descrever
Leia maisUNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS
UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS PROFESSOR: CARLOS BECKER WESTPHALL Terceiro Trabalho
Leia maisSistemas Distribuídos
Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Membership Grupos dinâmicos Membros entram e saem dos grupos Membros podem falhar (crash) Grupos são criados e destruídos em tempo
Leia maisMÓDULO 8 Modelo de Referência TCP/IP
MÓDULO 8 Modelo de Referência TCP/IP A internet é conhecida como uma rede pública de comunicação de dados com o controle totalmente descentralizado, utiliza para isso um conjunto de protocolos TCP e IP,
Leia maisEngenharia Elétrica Eletrônica Slides 20: TCP/IP em Winsocks 2. API do Windows para programar utilizando o protocolo TCP/IP Prof. Jean Marcelo SIMÃO
Engenharia Elétrica Eletrônica Slides 20: TCP/IP em Winsocks 2. API do Windows para programar utilizando o protocolo TCP/IP Prof. Jean Marcelo SIMÃO Engenharia Elétrica Eletrônica Tutorial: Programação
Leia maisA Camada de Transporte
A Camada de Transporte Romildo Martins Bezerra CEFET/BA s de Computadores II Funções da Camada de Transporte... 2 Controle de conexão... 2 Fragmentação... 2 Endereçamento... 2 Confiabilidade... 2 TCP (Transmission
Leia maisSistemas Distribuídos 59. Sistemas Distribuídos 61. "Receive não-bloqueante:
Comunicação entre processos! Memória Compartilhada: " os processo compartilham variáveis e trocam informações através do uso dessas variáveis compartilhadas COMUNICAÇÃO ENTRE PROCESSOS P1 Área Compartilhda!
Leia mais4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?
Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor remoto esteja associado. 2. Estabelecer
Leia maisArquitetura de Redes de Computadores. Bruno Silvério Costa
Arquitetura de Redes de Computadores Bruno Silvério Costa Projeto que descreve a estrutura de uma rede de computadores, apresentando as suas camadas funcionais, as interfaces e os protocolos usados para
Leia maisProf. Samuel Henrique Bucke Brito
- Arquitetura da Internet: TCP/IP www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Introdução Toda a estrutura atual da Internet está fundamentada na suíte de protocolos
Leia maisSistemas Distribuídos Comunicação. Edeyson Andrade Gomes www.edeyson.com.br
Sistemas Distribuídos Comunicação Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Comunicação entre Processos Protocolos Modelo OSI Modelo Cliente Servidor 3 Comunicação entre
Leia maisAPLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE
1/5 PROTOCOLOS DE O Modelo OSI O OSI é um modelo usado para entender como os protocolos de rede funcionam. Para facilitar a interconexão de sistemas de computadores, a ISO (International Standards Organization)
Leia maisMiddleware de Aplicações Paralelas/Distribuídas
Computação Paralela Middleware de Aplicações Paralelas/Distribuídas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Principais aspectos a gerir pelo Middleware
Leia maisTutorial RMI (Remote Method Invocation) por Alabê Duarte
Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos
Leia maisSegurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus
Segurança de redes com Linux Everson Scherrer Borges Willen Borges de Deus Segurança de Redes com Linux Protocolo TCP/UDP Portas Endereçamento IP Firewall Objetivos Firewall Tipos de Firewall Iptables
Leia maisUSO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP
USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP SMTP "Protocolo de transferência de correio simples (ou em inglês Simple Mail Transfer Protocol ) é o protocolo padrão para envio de e- mails através da
Leia maisAlan Menk Santos alanmenk@hotmail.com www.sistemasul.com.br/menk. Redes de Computadores e Telecomunicações. Camada de Transporte 03/06/2013
Alan Menk Santos alanmenk@hotmail.com www.sistemasul.com.br/menk Redes de Computadores e Telecomunicações. Modelo de Referência OSI 1 Segundo Tanenbaum, a camada de transporte não é simplesmente outra
Leia maisSoftware de rede e Modelo OSI André Proto UNESP - São José do Rio Preto andre.proto@sjrp.unesp.br O que será abordado Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços
Leia mais