Departamento de Informática

Documentos relacionados
Departamento de Informática

Departamento de Informática

Licenciatura em Engenharia Informática Sistemas Distribuídos I 2ª chamada, 6 de Julho de º Semestre, 2004/2005

Redes de Computadores I Licenciatura em Eng. Informática e de Computadores 1 o Semestre, 26 de Outubro de o Teste A

Grupo I [6v] Considere o seguinte extracto de um programa de definição de uma calculadora apenas com a função soma de dois valores reais

Grupo I [4v] b. [0,6v] De que forma é que o escalonador do Linux tenta minimizar o impacto desta limitação?

Grupo I [6,6v] Responda com os valores que se observam depois da chamada acontecer. 1 Falta na mensagem de resposta. Valor retornado na chamada

Sistemas Distribuídos

Arquitetura de Sistemas Operativos

REDES DE COMPUTADORES I 2007/2008 LEIC - Tagus-Park TPC Nº 2. Avaliação sumária da matéria do Capítulo 2

UFG - Instituto de Informática

UNIVERSIDADE. Sistemas Distribuídos

Desenvolvimento Cliente-Servidor 1

Grande conjunto de informação que existe em todo o Mundo alojada em centenas de milhares de computadores chamados servidores Web.

Sistemas Multimédia. Arquitectura Protocolar Simples Modelo OSI TCP/IP. Francisco Maia Redes e Comunicações


UNIVERSIDADE. Sistemas Distribuídos

Redes de Computadores (LTIC) 2013/14. GRUPO 1 (7 valores) 1º Teste 1 de Abril de Nome: Nº de aluno:

AGRUPAMENTO DE ESCOLAS DA PEDRULHA ESCOLA BÁSICA RAINHA SANTA ISABEL Curso de Educação e Formação (Despacho Conjunto Nº453/2004, de 27 de Julho)

Grupo I [7v] 1. [1,0] Apresente o conteúdo do IDL relativo a este programa. Assuma PROGRAM=62015 e VERSION=1.

Programação de Sistemas

Programação de Sistemas

Introdução. Sistemas Distribuídos. Mas, o que é um sistema distribuído? Seriamente. Professor: Paulo Jorge Marques. Professora Práticas: Pinki Meggi

USO GERAL DOS PROTOCOLOS SMTP, FTP, TCP, UDP E IP

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

Manual de utilização do Moodle

SISTEMAS DISTRIBUIDOS

REDES DE COMPUTADORES I 2007/2008 LEIC - Tagus-Park TPC Nº 1. Avaliação sumário da matéria do capítulo 1

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUIDOS Ano Lectivo 2015/2016

Capítulo II Modelos de Programação Distribuída (parte 2)

Sistemas Distribuídos

Sistemas Distribuídos

Sistemas Distribuídos

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware.

SISTEMAS DISTRIBUÍDOS

3. 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.

Engenharia de Software Sistemas Distribuídos

Serviços Web: Introdução

Modelos de Arquiteturas. Prof. Andrêza Leite

Rede de Computadores (REC)

Redes de Computadores

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

Redes de Computadores

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Escola Secundária Eça de Queiroz

Camada de Aplicação. Prof. Eduardo

Vodafone ADSL Station Manual de Utilizador. Viva o momento

Ferramentas de Modelação e Análise de Sistemas baseadas em Redes de Petri (RdP)

Redes de Computadores. Trabalho de Laboratório Nº2

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Um sistema SMS 1 simplificado

Engenharia de Software Sistemas Distribuídos

Sistemas Distribuídos RPC x RMI. Edeyson Andrade Gomes

Introdução à Camada de Aplicação. Prof. Eduardo

CONCEITOS BÁSICOS DE INTERNET. Disciplina: INFORMÁTICA 1º Semestre Prof. AFONSO MADEIRA

Ciência de Computadores Sistemas Distribuídos e Móveis

Rede de Computadores

GESTÃO DOCUMENTAL E FLUXOS DE TRABALHO

5 Estudo de caso: utilizando o sistema para requisição de material

Sistemas de Bases de Dados

Escola Superior de Tecnologia de Setúbal. Projecto Final

Alan Menk Santos Redes de Computadores e Telecomunicações. Camada de Aplicação. Camada de Aplicação

Tecnologia de Sistemas Distribuídos Capítulo 8: Sistemas de Ficheiros Distribuídos Paulo Guedes

Introdução ao Modelos de Duas Camadas Cliente Servidor

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Redes de Computadores. Trabalho de Laboratório Nº7

Informática I. Aula Aula 22-03/07/06 1

Sistemas Distribuídos. Coulouris Capítulo 4

Protocolos de Internet (família TCP/IP e WWW) Primeiro Técnico. Prof. Cesar

Redes - Internet. Sumário Aula 3,4 e 5 9º C } Estrutura baseada em camadas. } Endereços IP. } DNS -Domain Name System

Curso de Engenharia Informática (2º Ciclo) Segurança em Sistemas e Redes de Computadores SSRC-0910-EN-1.1.A

Consistência Eventual - Sistemas Distribuidos e Tolerância a Falhas

Trabalho de laboratório sobre DHCP

3 SCS: Sistema de Componentes de Software

World Wide Web. Disciplina de Informática PEUS, U.Porto. Disciplina de Informática, PEUS 2006 Universidade do Porto

LEIC/LERC 2012/13 2º Teste de Sistemas Operativos 15/Janeiro/2013

Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUÍDOS Ano Lectivo 2012/2013

1

Segurança Internet. Fernando Albuquerque. (061)

Transcrição:

Departamento de Informática Licenciatura em Engenharia Informática Sistemas Distribuídos exame de recurso, 9 de Fevereiro de 2012 1º Semestre, 2011/2012 NOTAS: Leia com atenção cada questão antes de responder. A interpretação do enunciado de cada pergunta é um factor de avaliação do teste. O exame é SEM consulta. A duração do exame é de 2h00 min. O enunciado contém 5 páginas que devem ser entregues com a resposta ao exame. NOME: NÚMERO.: 1) Uma das características fundamentais dos sistemas distribuídos é a independência das falhas dos sistemas de comunicação e dos componentes do sistema (máquinas, processos). Discuta as implicações desta característica no desenvolvimento duma sistema distribuído. 2) Suponha que pretende desenvolver um sistema tipo Google Docs, que permite manter um conjunto de documentos ficheiros de texto, folhas de cálculo, apresentações, etc. Vários utilizadores podem editar no seu computador um mesmo documento simultaneamente usando um browser de Internet, observando imediatamente as operações dos outros utilizadores. Adicionalmente, o sistema permite observar em que posição do documento o outro utilizador tem o seu cursor. a) Considere apenas as operações que permitem apresentar a posição do cursor dum utilizador (nova posição: linha, coluna) na edição colaborativa dum ficheiro de texto. Suponha que as operações são propagadas entre os vários clientes do sistema usando um sistema de comunicação em grupo. Indique qual a semântica do mecanismo de comunicação em grupo que deve ser usada relativamente à fiabilidade e ordenação das mensagens. Justifique. Fiabilidade: porque Ordenação das mensagens: porque 1

b) O sistema Google Docs é baseado numa arquitectura cliente/servidor, em que os clientes enviam as suas operações para o servidor que as propaga para os outros clientes. Apresente vantagens desta aproximação face a uma solução peer-to-peer em que os clientes propagavam directamente entre si as operações efectuadas (as quais podem explicar a solução do Goole Docs). 3) Considere o sistema BitTorrent de partilha de ficheiros. O protocolo implementado pelo sistema torna-o apropriado para efectuar reprodução em tempo real dos ficheiros multimédia transferidos? Justifique. Sim, porque... / Não, porque... 4) Suponha que tem um servidor em que todos os métodos são idempotentes. Caso use um protocolo de invocação com um mecanismo de retransmissão de pedidos, será necessário integrar um mecanismo de filtragem de duplicados? Justifique. Sim, porque... / Não, porque... 5) Assinale com [V]erdadeiro ou [F]also as seguintes afirmações (nota: as respostas erradas descontam): i. A codificação de dados usada no Corba é mais eficiente do que a usada no Java RMI. ii. Em Java RMI, uma referência remota mantém uma cópia das fábricas de sockets do cliente e do servidor. iii. A especificação dos Web Services (SOAP) permite que o protocolo de transporte usado seja SMTP. iv. No Java RMI, os objectos que estendem Serializable são passados por referência. v. Um servidor REST é tipicamente acedido usando uma conexão HTTP para o servidor. 2

6) Considere uma empresa U9A que tem um conjunto de clientes aos quais pretende fornecer um serviço de correio electrónico. Cada cliente tem um registo na empresa, o qual contém o seu nome e uma palavra chave. Para fornecer o serviço de correio electrónico, a empresa U9A recorre a uma segunda empresa Jêmeile que mantém o serviço através dum servidor Smail. Por questões de segurança, a empresa U9A não pretende fornecer as palavras chaves dos utilizadores à empresa Jêmeile. Para ajudar a segurança do sistema, a empresa U9A tem um servidor de autenticação SAut que conhece os nomes e passwords de todos os clientes. O servidor Saut partilha uma chave secreta, Kam, com o servidor de correio electrónico Smail que execute na empresa Jêmeile. Apresente um protocolo que permita a um cliente C com palavra-chave pwd autenticar-se e estabelecer um canal seguro com o servidor Smail. Na sua solução, minimize a informação transmitida na rede e o poder computacional necessário para executar o protocolo. O protocolo deve ter, no máximo, 4 mensagens, efectuando a seguinte interacção: C->Smail; Smail->Saut; Saut->Smail; Smail->C. Explique como seriam garantidas as propriedades indicadas. Use as notações sintéticas de descrição de protocolos criptográficos que aprendeu nas aulas. NOTA: A partir duma palavra-chave, pwd, é possível criar uma chave secreta Kpwd. NOTA: Caso não consiga resolver o problema assumindo que os elementos do sistema apenas conhecem inicialmente as chaves indicadas, indique explicitamente as chaves adicionais que assume serem conhecidas para cada um dos elementos do sistema no início do protocolo. C -> Smail: Smail -> Saut: Saut -> Smail: Smail -> C: Qual a chave a usar em posteriores comunicações entre C e Smail? O que é que garante o secretismo das mensagens seguintes? Como é que Smail tem a certeza que está a comunicar com o utilizador C? Como é que o utilizador C tem a certeza que está a comunicar com o servidor Smail? Como é que se evita o replaying? Definição dos símbolos usados (complete, se necessário): C nome do utilizador; pwd palavra chave do utilizador (conhecida por C e Saut) Kam chave secreta partilhada entre Saut e Smail 3

7) A utilização de certificados de chaves públicas levanta problemas quando uma chave privada é comprometida. Discuta o principal problema que se levanta nesta situação e como se pode lidar com ele. 8) Nos sistemas REST a utilização do mecanismo de codificação de dados json tem-se tornado bastante popular nos últimos anos em detrimento da utilização de XML. Indique como se codificaria a seguinte classe em json e apresente razões para a popularidade do json (face ao XML). class Person { String nome; String address; } 9) Suponha que se pretendia implementar um mecanismo de URNs para identificar documentos e ficheiros na Internet. Discuta as vantagens e desvantagens dessa aproximação face à utilização simples de URLs usada actualmente. Vantagens URN: Vantagens URL: 4

10) Considere o sistema distribuído de ficheiros NFS. Na versão 2 do sistema, uma operação de escrita executada no servidor apenas retornava após a escrita ter sido efectuada em disco. Explique os problemas desta solução. 11) Considere o sistema distribuído de ficheiros CIFS. A falha e recuperação dum servidor pode colocar problemas na manutenção da coerência dos ficheiros e controlo da cache? Justifique. Sim, porque... / Não, porque... 5