Programação Distribuída em Java Aula 05. 2 Na aula passada vimos Domain Name Server –Funcionamento básico O pacote java.net –Sua finalidade A classe InetAddress.

Slides:



Advertisements
Apresentações semelhantes
Sockets Marco Antonio – marcoreis.net Arquiteto de Software Dezembro/2007.
Advertisements

Família tcp/ip Prof: Diovani Milhorim
Comunicação entre processos distribuídos
Bruno Rafael de Oliveira Rodrigues
URL: Redes Prof. Edgard Jamhour URL:
Redes de Computadores Aula Prática 4
Comunicação Distribuída
TCP Serviço de Transporte Confiável
Modelo TCP/IP Versus Modelo OSI
26/09/2005 LCMI - DAS - UFSC 1 Introdução aos Sockets Java Fábio Favarim DAS – Departamento de Automação e Sistemas UFSC – Universidade.
1 Introdução aos Sockets (Java) Tiago Semprebom DAS – Departamento de Automação e Sistemas UFSC – Universidade Federal de Santa Catarina.
Paulo Roberto Freire Cunha
Visão Geral de Protocolos
TCP/IP CAMADA DE APLICAÇÃO SERVIÇOS
SMB é um protocolo, não uma implementação.
Escola Secundária Filipa de Vilhena Ano Lectivo 2010/ Turma IGR1
REDES DE COMPUTADORES II
Software de Rede Willamys Araújo.
Modelo de referência OSI
Interconexão e Transporte em Redes
Aula 9 - Camada de aplicação
Infra-Estrutura de Comunicação (IF678) Aula Prática 02 – CIn/UFPE Davi Duarte Denyson José Eduardo Souza Ivan França Rafael Lima.
Redes Aula 7 Professor: Marcelo Maia.
IC II - Prof. Msc. Allan K. Luizi - UNEMAT
Programação com sockets
Java Avançado Luiz Carlos d´Oleron SJCP Java Sockets.
Comunicação Entre Processos Sockets - Java
Camada de Transporte prof. Eduardo.
Modelos de Referência OSITCP/IP29/06/06.  Camadas de Protocolos  Modelo de Referência OSI Funcionamento Camadas e Funcionalidades  Modelo de Referência.
Infra-Estrutura de Comunicação (IF678) Aula Prática CIn/UFPE Rafael Lucena Roberta Mota Rubens Lopes Rodolfo Santos João Pedro Cordeiro.
Implementando comunicação em JAVA via Sockets Alcides Calsavara - Leonardo R. Nunes -
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Redes de Computadores I Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Escola Secundaria Sebastião da Gama Trabalho realizado por: André Santos 12ºL nº:2 Prof: Carlos Pereira.
Redes de Computadores Prof Rafael Silva.
MODELO DE REFERÊNCIA TCP/IP
Arquitetura TCP/IP Redes de Computadores.
Desenvolvimento de Aplicações TCP/IP com Sockets Márcio de Sousa Dias
Infra-Estrutura de Comunicação (IF678) Aula Prática 02 Programação de Sockets TCP e UDP Hugo Simões Original por: Flávio.
Disciplina: Comunicação de Dados Ricardo Bento 12ºL.
Arquitectura tcp. Camada tcp Ao contrário do protocolo UDP, o TCP representa um grande incremento de qualidade relativamente ao protocolo IP que lhe serve.
Arquitetura de Redes de Computadores – Luiz Paulo Maia Camada de Transporte1 Arquitetura de Redes de Computadores Luiz Paulo Maia Camada de Transporte.
1) A camada de transporte provê comunicação lógica entre hosts.
Falso, essa é a função fowarding, o roteamento determina a rota tomada pelos pacotes. 1) No roteador, a função roteamento é encaminhar pacotes que chegam.
Camada de Transporte: protocolo UDP
Administração e Projeto de Redes
Camada de Inter-Redes do modelo TCP-IP Endereço IP e DHCP
Programação Distribuída em Java Aula Na aula passada vimos: I/O Streams Filtros Readers and Writers.
Programação Distribuída em Java Aula Na aula passada vimos: I/O Sockets.
Programação Distribuída em Java Aula Na aula passada vimos: O protocolo UDP –Características principais –Velocidade x confiabilidade A classe DatagramPacket.
1 Programação Distribuída em Java Aula Na aula de hoje veremos: Introdução Conceito de Rede Protocolos Modelo ISO/OSI Modelo TCP/IP Modelo Cliente/Servidor.
Redes de computadores: Aplicações Prof. Dr. Amine BERQIA
Escola Secundaria Sebastião da gama Comunicação de dados Prof: Carlos Pereira Nome :André Santos Ano/Turma:12ºL Nº:2 IP Dinâmico, IP Fixo e DNS.
Planejamento e Implantação de Servidores
TCP/IP.
Termos – redes de computadores
Arquitetura TCP/IP Aplicação Transporte Rede Enlace Física.
Serviços de rede e internet Jackson Eduardo da Silva.
Informática Industrial N8INF Prof. Dr. Cesar da Costa 5.a Aula: Endereçamento IP.
Passagens de Mensagens Prof. Dr. Norian Marranghello
Redes de Computadores 2 - Camada de Aplicação (Princípios Básicos) –
Administração e Projeto de Redes Material de apoio Camada de Transporte Cap.4 10/02/2010.
Redes de computadores e a Internet
Protocolos de Comunicação e Passagem de Mensagens
Redes de Computadores Prof. Msc. Moisés Pereira Bastos.
Redes de Computadores e Aplicações – Camada de aplicação IGOR ALVES.
DNS, IP e GATEWAY Os componentes de rede citados anteriormente servem, basicamente, para permitir acesso à rede e à Internet, seja em ambiente doméstico.
Escola de Ciência e Tecnologia Arquitetura TCP/IP Arquitetura TCP/IP Interface entre o Nível Lógico e Físico Protocolo IP Etienne César R. de Oliveira.
Capítulo 2 Redes de computadores e a Internet Camada de aplicação Prof. Gustavo Wagner.
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

Programação Distribuída em Java Aula 05

2 Na aula passada vimos Domain Name Server –Funcionamento básico O pacote java.net –Sua finalidade A classe InetAddress –O que representa –Formas de utilização

3 Na aula passada vimos A classe Url –O que representa –Formas de utilização –Recuperação de dados –Acesso a CGI e Servlets A classe UrlConnection –Representação –Possibilidades

4 O que você deve ter fixado: Distinguir endereço de hostname; ter noções de DNS Quando usar InetAddress e quando usar URL Recuperar dados de um URL; enviar solicitações a cgi e servlet

5 Na aula de hoje veremos: O protocolo UDP A classe DatagramPacket A classe DatagramSocket MultiCastSocket

6 Recordando TCP Transmissão confiável de dados Dados perdidos ou danificados são reenviados Pacotes fora de ordem são ordenados Controle de velocidade de recepção de pacotes Custo: baixa velocidade

7 UDP – user datagram protocol Conection-less Datagram-based Unreliable Postal-like Prize: high velocity

8 Mas por quê usar UDP ? Aplicações de tempo real; multicasting Velocidade crítica versus confiabilidade Possibilidade de controle na camada de aplicação –Domain Name Server DNS –Network File System NFS –Trivial FTP TFTP

9 UDP no Java Java implementa UDP através das classes: DatagramPacket –Armazena dados na forma de bytes DatagramSocket –Envia e recebe DatagramPacket Não existe algo como um DatagramServerSocket

10 UDP no Java Não existe stream Trabalho com datagramas individuais Um DatagramSocket pode se comunicar com vários hosts

11 DatagramPacket Acrescentam pouco aos datagramas de IP Sistema de portas independente do TCP Capacidade máxima 64k –Incluindo 20 bytes de cabeçalho –Incluindo 8 bytes próprios do datagrama de UDP Na prática utilizam-se no máximo 8k

12 DatagramPacket Quanto menor melhor (mais seguro) Por segurança usa-se 512k ou menos por datagrama TCP libera o programador desses detalhes

DatagramExample.java13 DatagramPacket constructors Usados para receber dados public DatagramSocket (byte[] buffer, int length) public DatagramSocket (byte[] buffer, int offset, int length) Usados para enviar dados public DatagramSocket (byte[] buffer, int length, InetAddress ia, int port) public DatagramSocket (byte[] buffer, int offset, int length, InetAddress ia, int port)

14 DatagramPacket Métodos básicos –getPort() –getData() –getAddress() –getLength() –getOffset() Existem os correspondentes setters

15 DatagramSocket Envia e recebe datagramas UDP Socket utilizado por cliente ou servidor é idêntico Diferem apenas pelo uso de porta anônima ou notável Cliente só usa anônima; atribuição aleatória Servidor usa atribuição explícita

UDPPortScanner.java16 DatagramSocket constructors Enviar dados public DatagramSocket() Receber dados public DatagramSocket(int port) public DatagramSocket(int port, InetAddress interface)

17 Enviar e receber datagramas Um DatagramSocket pode fazer ambas as operações Pode receber e enviar para vários host’s ao mesmo tempo! Exceções podem ser geradas ou não.

UDPDiscardClient.java and UDPDiscarServer.java 18 Enviar e receber datagramas O método send() envia um packet por vez O método receive(), assim como accept() bloqueia a execução do programa receive() armazena o datagrama que veio da rede em um DatagramSocket local Importante lembrar que o tamanho máximo de um datagrama é 64k

19 Conexões UDP ?!? Todo soquete de datagrama pode conversar com qualquer host indiscriminadamente E quando queremos restringir a comunicação? Fazemos uma “conexão”!

20 Conexões UDP ?!? public void connect(InetAddress ia, int port) Especifica para onde vai o datagrama Especifica que só recebe datagramas desse mesmo local A chegada de datagramas de outro endereço gera uma IllegalArgumentException Pacotes recebidos de outro endereço ou porta são descartados.

21 MulticastSocket Envia dados de um host para vários hosts Dados vão apenas para clientes que expressam interesse Meio termo entre comunicação ponto-a- ponto e difusão

QuoteServer.java22 MulticastSocket Pode ser usado no lado servidor Deve ser usado no lado cliente A cada estímulo envia a mesma mensagem a todos do grupo

23 Possibilidades de MulticastSocket Games multi-player Sistemas de arquivos distribuídos Computação paralela intensiva Teleconferência Web sites de alto tráfego Entre outras...

24 Multicast group Conjunto de hosts “conectados” ao mesmo endereço multicast Endereços multicast são classe D Estão no intervalo a Endereços começados em 224 ou 239 são reservados para serviços baixo nível

25 MulticastSocket A maioria dos grupos multicast é temporária 248 milhões de endereços nesse intervalo podem ser usados livremente. Roteadores são responsáveis por impedir que dois grupos usem o mesmo endereço

26 MulticastSocket Dados multicast usam UDP, logo são três vezes mais rápidos que TCP Requer atenção especial ao TTL O Time to Live é usado para que os pacotes perdidos não inundem a Internet Todos os receptores devem ouvir na mesma porta

MulticastListener.java27 MulticastSocket no lado cliente Crie um MulticastSocket e junte-se a um grupo –Usar o método joinGroup (InetAddress groupAddress) Troque informações e deixe o grupo –Usar os métodos: send(), receive e leaveGroup() Na verdade, para enviar uma mensagem a um grupo não é necessário ser parte dele

28 O que você precisa saber: Compreender as vantagens e desvantagens do uso de UDP Converter a informação em bytes Compreender as características particulares de soquetes de datagrama Entender quando usar um MulticastSocket

29 Na próxima aula veremos: policytool SecurityManager