XDR - eXternal Data Representation

678 views
493 views

Published on

Trabalho apresentado na Universidade Católica de Pernambuco em setembro de 2013.

Para baixar o trabalho completo com uma parte escrita para auxilio:
http://www.4shared.com/zip/-DVPuYvP/xdr.html

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
678
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

XDR - eXternal Data Representation

  1. 1. XDR - eXternal Data Representation Sistemas Distribuídos Kleber Santos – Prof.: Almir Pires
  2. 2. RPC (Remote Procedure Call) Chamada de Procedimento
  3. 3. RPC (Remote Procedure Call) • O programador não se preocupa com detalhes da implementação remota; • As chamadas se assemelham a de procedimentos locais;
  4. 4. RPC (Remote Procedure Call) • Tecnologia para implementação do modelo cliente-servidor; Executar um procedimento Resposta do servidor
  5. 5. RPC (Remote Procedure Call) IDL Linguagem de Descrição de Interface
  6. 6. RPC (Remote Procedure Call) Arquivo IDL Pode-se gerar Pode-se gerar RPCGEN (Compilador de interface – em C) STUB
  7. 7. RPC (Remote Procedure Call)
  8. 8. RPC (Remote Procedure Call) XDR ? • Necessita de protocolo comum de representação de dados;
  9. 9. XDR (eXternal Data Representation) • Padrão IETF de 1995 da camada de representação do modelo OSI; • Não permite especificar nomes à interfaces; • São fornecidos um número de programa e um de versão passados na mensagem de requisição;
  10. 10. XDR (eXternal Data Representation) • Apenas um parâmetro de entrada é permitido; • Procedimentos que necessitam de vários parâmetros devem incluí-los em única estrutura; • Parâmetros de saída retornados por único resultado;
  11. 11. XDR (eXternal Data Representation) • Assinatura consistindo do tipo do resultado, nome do procedimento e no tipo de parâmetro de entrada; • Independe da camada de transporte;
  12. 12. XDR (eXternal Data Representation) • Número do programa = 9999; • Número da versão = 2; • Procedimento READ recebe por parâmetro uma estrutura com três componentes (referentes a arquivo); • O resultado é uma estrutura contendo número de bytes retornados e dados do arquivo; • WRITE = 1; READ = 2; Testa disponibilidade do servidor = 0; Exemplos de interfaces de procedimentos na XDR da Sun.
  13. 13. XDR (eXternal Data Representation) Gera procedimentos: Gera procedimentos: RPCGEN (Compilador da Sun) • stub no cliente; • main, despachante e stub no servidor; • empacotamento e desempacotamento de XDR;
  14. 14. XDR (eXternal Data Representation) • Os dados são transferidos em unidades de 4 bytes; • Os números são transferidos na rede em ordem dos bytes mais significativos;
  15. 15. XDR (eXternal Data Representation)
  16. 16. XDR (eXternal Data Representation)
  17. 17. XDR (eXternal Data Representation) Serialização: • Cria-se uma instância da classe ObjectOutputStream, invocando seu método writeObject passando o objeto Person como argumento; Desserialização: • Abre-se o fluxo como ObjectInputStream, utilizando o método readObject
  18. 18. XDR (eXternal Data Representation)
  19. 19. Tipos de dados XDR • • • • • • • • • • • booleano int (inteiro 32 bit) hyper (inteiro 64 bit) double enumerações estruturas string arrays de tamanho fixo arrays de tamanho variado uniões dados opacos
  20. 20. Kleber Santos – Prof.: Almir Pires

×