Sistemas Distribuídos

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Bruno M. Carvalho Sala: 3B2 Horário: 35T34
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Redes de Computadores Wandreson Luiz Brandino
Introdução aos Sistemas Distribuídos
Sistemas operacionais
Aula 21/09/2011 Courouris, Dollimore, cap 10
Sistemas Distribuídos:Definições e Caracteristicas
Sistemas Distribuídos
Modelos de Comunicação em Sistemas Distribuídos
Computação Distribuída
Capítulo 2: Modelo de Computação distribuída
Capítulo 4: Estado Global
Sistemas Distribuídos
Sistemas Distribuídos Walfredo Cirne & Fubica Brasileiro Aula 5: Modelos de Sistemas Distribuídos.
Sistemas Distribuídos
Sistemas Distribuídos
Sistemas Distribuídos
Sistemas Distribuídos Walfredo Cirne & Fubica Brasileiro Aula 3:Conceitos Básicos As figuras que.
Sistemas Distribuídos Walfredo Cirne & Fubica Brasileiro Aula 5: Modelos de Sistemas Distribuídos.
Sistemas Distribuídos
Sistemas Distribuídos
QoS para Realidade Virtual
1 Sistemas Distribuídos - SDI Caracterização de Sistemas Distribuídos. Introdução. Exemplos de Sistemas Distribuídos. Desafios.
Modelos Fundamentais -> Interação Falhas Segurança.
Questões Resolvidas - A.C.-10/08/05
Modelo OSI OSI é um modelo de referência para interligação de sistemas abertos (open systems interconection) Padrão ISO 7498, publicado em 1984 Sistemas.
TIME, CLOCK’S and EVENTS
Sistemas Distribuídos
Conceito de Rede de Computadores Aula 1
Tópicos em Sistemas Distribuídos
Middleware e Sistemas Distribuídos
Sistemas Distribuídos
1 Modelos de Sistemas Distribuídos. Introdução - Dificuldades e ameaças para SD. Grande variação na utilização de SD )carga de trabalho e requerimentos.
Tópicos em redes e sistemas distribuídos
Tópicos em redes e sistemas distribuídos B Carlos Oberdan Rolim Ciência da Computação.
Sistemas Distribuídos
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Carlos Oberdan Rolim Ciência da Computação
Sistemas Distribuídos
Protocolos de Recuperação
Sistemas Operacionais
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Sistemas Distribuídos
PROGRAMAÇÃO DISTRIBUÍDA Aula 01 Prof. Henrique Mongelli
Sistemas Distribuídos
Sistemas Operacionais
Troca de Mensagens Programação concorrente
PROGRAMAÇÃO DISTRIBUÍDA Aula 02 Prof. Henrique Mongelli
Fundamentos de Redes de Computadores
Sistemas Distribuidos
Integração de Ferramentas CASE
CONECTIVIDADE Prof.: Alessandro V. Soares Ferreira
Princípios de Redes e Topologia de Redes
Infra-Estrutura de Software
SISTEMAS OPERACIONAIS
Sistemas Distribuídos
Sistemas Distribuídos Nadilma Nunes Aula Inicial – Apresentação da disciplina.
Sistemas Distribuídos Nadilma Nunes Aula Inicial – Apresentação da disciplina.
Sistemas Distribuídos
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Sistemas Distribuídos Wesley Lucas Breda 4ºP de SI e TADS.
Sistemas Distribuídos
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1/41 Análise e Projeto de Sistemas Arquitetura de Software.
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
Sistemas Operacionais Distribuídos e/ou de Redes Engenharia da Computação – UCPEL Ritiele Moreira Aldeburg.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Alessandro D. R. Fazenda
Transcrição da apresentação:

Sistemas Distribuídos Walfredo Cirne Aula 2: Conceitos Básicos As figuras que aparecem nesses slides são de Veríssimo&Rodrigues, reproduzidas com o consentimento dos mesmos.

O que é um sistema distribuído? Um sistema formado por componentes que estão localizados em vários computadores distintos Características de um sistema distribuído Vários computadores Interconectados por uma rede Compartilhando um estado

Exemplos de sistemas distribuídos A Internet é um sistema distribuído? A Web é um sistema distribuído? O DNS é um sistema distribuído? Um multiprocessador é um sistema distribuído? Um cluster é um sistema distribuído?

Características de um Sistema Distribuído Ausência de supervisão única supervisor  sistema operacional Inexistência de relógio global exato Falhas parciais Comunicação por mensagem entre os componentes

Exemplos de sistemas distribuídos A Internet é um sistema distribuído? A Web é um sistema distribuído? O DNS é um sistema distribuído? Um multiprocessador é um sistema distribuído? Um cluster é um sistema distribuído?

Quando distribuir? [Por que complicar?] Às vezes, o problema é distribuído Ex. Web, Email, Groupware Benefícios inerentes à distribuição Escala (performance) Aumento na confiança do funcionamento (dependability) Soluções distribuídas são mais adaptáveis Upgrade gradativo

Centralização × Distribuição Características de sistemas centralizados Homogeneidade, facilidade de gerência, maior consistência, controle centralizado Características de sistemas distribuídos Heterogeneidade, modularidade, controle distribuído, menor custo [?], escalabilidade, compartilhamento de recursos, degradação paulatina, mais sujeito a ataques

Que valores a distribuição pode adicionar? Viabilidade Antigamente era “redução de custo” Confiabilidade Redundância é natural Crescimento modular Integração de serviços

Notações formais É normalmente conveniente tratar com processos ao invés de processadores Um sistema distribuído é composto por N processos que executam em M processadores Processadores são conectados por canais de comunicação A evolução do sistema é modelada por uma sequência de eventos eip Um evento modifica o estado do processo p A história H é uma seqüência de tuplas contendo um evento eip e o estado de p após eip Uma execução (run) é um conjunto de histórias dos processos que forma o sistema distribuído

Eventos Eventos podem ser locais ou podem ser trocas de mensagem Eventos ordenados e concorrentes

Precedência [Lamport] Se a e b são eventos no mesmo processo e a precede b, então a  b Se a é o envio da mensagem m e b é a recepção da mensagem m, então a  b Se a  b e b  c, então a  c

Estado global Especificação Como computar S internamente? Se no tempo t cada processo pi está no estado Si e as mensagens em transito no canal cij que liga pi a pj é S(cij), então o estado global é dado por S = {S1, S2, ... Sn} U {S(cij), 1≤i,j≤n, i ≠j} Como computar S internamente? Troca de mensagens mudará o estado do sistema! Há protocolos de snapshot que resolvem este problema

Snapshots distribuídos

Tempo e relógios O que é o tempo real? O que é 1 segundo? Função monotônica contínua e crescente [Newtoniano] O que é 1 segundo? Divisor de um dia solar Relógios atômicos A linha do tempo timestamps duração de intervalos Relógios

O papel do tempo Gravar e observar a localização de eventos na linha do tempo seqüênciamento de eventos que formam um estado global medir a duração entre dois eventos Forçar o futuro posicionamento de eventos na linha do tempo sincronização

Medindo tempo em sistemas distribuídos Como medir durações distribuídas? Como reconciliar diferentes linhas do tempo? Ex. qual o tempo de transmissão de uma mensagem? Tempo global × tempo real

Relógios locais físicos O hardware (rf) implementa uma função monotônica discreta e crescente que mapeia o tempo real t em um tempo de relógio rf(t) Imperfeições de relógios físicos Granularidade (g) Taxa de desvio (r)

Propriedades de um relógio físico Granularidade Relógios físicos avançam em ticks (tk) g = rf(tk+1) – rf(tk) Taxa de desvio Depende da qualidade do relógio e das condições do ambiente (ex. temperatura) 0 ≤ 1-r ≤ (rf(tk+1) – rf(tk))/g ≤ 1+r

Para que serve um relógio local? Prover timestamps para eventos locais Medir durações locais Qual o erro causado pela taxa de desvio? r é tipicamente na ordem de 10-5 Definir timeouts Medir durações de atraso round-trip

Relógios globais Um relógio global é construído através da sincronização de relógios locais por um protocolo de sincronização de relógio Cada processo p cria um relógio virtual (rvp) a partir do seu relógio local (rfp) Os relógios virtuais são criados de forma a estarem sincronizados São resincronizados de tempos em tempos NTP é o protocolo mais comum para isso

Propriedades de um relógio global Convergência (d): quão próximo os relógios estão sincronizados logo após uma resincronização Precisão (p): quão próximos os relógios se mantêm sincronizados entre si em qualquer tempo Exatidão (a): quão próximos os relógios estão sincronizados em relação a uma linha de tempo absoluta de referência Requer um dispositivo de sincronização externa (ex. GPS) em algum lugar do sistema Taxa de desvio (r): é a taxa instantâneo de desvio do relógio global

Propriedades de um relógio global