Buscar

SISTEMAS DISTRIBUIDOS Eng. Peter

Prévia do material em texto

SISTEMAS DISTRIBUÍDOS
INSTITUTO SUPERIOR POLITÉCNICO DE KANGONJO
ENGENHARIA INFORMÁTICA IIIº ANO NOITE
ENG. PEDRO JOÃO
“Um sistema no qual componentes de software ou
hardware localizados em computadores
interconectados por rede comunicam e coordenam
suas acções através da troca de mensagens”
[Coulouris].
CONCEITO DE SISTEMAS DISTRIBUÍDOS
1º Definição
“Coleção de computadores independentes, que
cooperam para resolver uma tarefa, mas aparecem
como um único computador para os usuários do
sistema” ou seja, coleção de computadores
autônomos conectados por uma rede de comunicação
que é percebida pelos usuários como um único
computador que regula um serviço ou resolve um
problema. (Tanenbaum & Steen, 2002)
2º Definição
Coleção de computadores autônomos,
interligados por uma rede de comunicação e
equipados com um sistema operacional
distribuído, que permitem o
compartilhamento transparente de recursos
existentes no sistema.
3º Definição
EVOLUÇÃO HISTÓRICA
1960
 Sistema multi-usuário de tempo compartilhado
 Redes de computadores
 Sistemas centralizados
1970
 Estações de trabalho mono-usuário:
SUN, XEROX e Apple
 Redes locais: 
Ethernet (XEROX), Cambridge Ring
 Sistema Operacional UNIX:
1974
 Sistema UNIX BSD
 Primeiros sistemas distribuídos experimentais
1980
 Microprocessadores com alto poder 
computacional
 Redes Locais de maior velocidade
 O protocolo TCP/IP torna-se um padrão de facto
 Sistemas Distribuídos:
V-System, Amoeba, Sun NFS, March, Sprite, 
Chorus, Andrew File System
1990
2000
 Disponibilidade e facilidade de comunicação
Internet
 Serviços Distribuídos
CONCEITOS DE HARDWARE & SOFTWARE
- Hardware
Máquinas autônomas;
Componentes de Hardware;
Dispositivos de Entrada; Saída e Misto;
Protecção ou Segurança de Hardware.
- Software
Tipos de Sistemas;
Abstração, encapsulamento de detalhes;
Visão do usuário: única máquina (computador);
Estruturas de Armazenamento.
SEGURANÇA
Segurança na comunicação é necessária, a
representação digital da informação facilita a
criptografia e envolve:
“selar” informações importantes enviadas
através da rede (ex. criptografia de número de
cartão de crédito)
Identidade: garantir a autenticidade da fonte.
Ex. um médico deseja acessar dados de 
pacientes de forma remota. É preciso assegurar 
que o usuário é realmente o médico.
Ex. um usuário deseja comprar um livro pela
Internet. É preciso.
Assegurar a identidade da loja virtual - que
realmente é uma loja e não vai fazer mal uso do
cartão.
Problemas: Indisponibilidade de serviço devido a 
ataques.
Segurança de código móvel (ex. anexados a emails, 
applets)
- Acoplamento
Grau de dependência entre os diversos componentes 
do sistema.
Também define como o usuário vê o sistema.
- Fortemente Acoplados
Os diversos processadores cooperam na execução de 
uma tarefa (processamento paralelo).
- Fracamente Acoplados
Máquinas independentes, com sua própria memória, 
HD, processador que se comunicam quando necessário.
CONCEITOS DE ACOPLAMENTO
SISTEMA TIMESHARING MULTIPROCESSADORES
- Software Fortemente Acoplado;
- Hardware Fortemente Acoplado;
- Máquinas voltadas para propósitos específicos, como
bases de dados dedicadas e processamento de imagens;
- Todo o projeto pode ser centralizado => visão de um
único processador.
- Existência de uma única fila de espera (processos
que não estão bloqueados e prontos para execução);
- Memória compartilhada por todos os processadores;
- Único sistema de arquivos;
SISTEMA OPERACIONAL DE REDE
- Software Fracamente Acoplado
- Hardware Fracamente Acoplado
- Rede de Estações de Trabalho conectadas por uma LAN
Cada estação de trabalho pode ter ou não disco rígido
Cada estação de trabalho tem o seu próprio sistema 
operacional
Todos os comandos são normalmente executados 
localmente
Eventualmente é possível fazer uma conexão remota 
com outra estação de trabalho
- Forma mais conveniente de comunicação e
compartilhamento de informação: Sistema de Arquivo
Global Compartilhado (NFS)
Implementado em uma ou mais máquinas chamadas
Servidores de Arquivos
Servidores de Arquivos aceitam requisições de
programa de usuários (chamados clientes)
EXEMPLOS DE SISTEMAS DISTRIBUÍDOS
EXEMPLOS DE SISTEMAS DISTRIBUÍDOS
EXEMPLOS DE SISTEMAS DISTRIBUÍDOS
EXERCÍCIOS DE REDES 
Aplicações Comerciais
- Sistemas de reserva e venda de passagens aéreas
Complexidade
- Sistemas de caixas eletrônicos de bancos
- Transporte 
Roteamento e distribuição
Aplicações WEB
- Correio eletrônico
- Serviços bancários e comércio eletrônico
Aplicações de Multimídia
- Aprendizado por computador
- Vídeo-conferência
- Projetos cooperativos
- Jogos
CLUSTERS OU AGRUPAMENTOS
Máquinas conectadas por rede de alta velocidade;
Necessidade de alto desempenho computacional;
 Evitar custo de máquinas de alto desempenho;
Objetivo: compartilhar recursos computacionais.
De processamento
De armazenamento
De memória
Outros
CLUSTERS SÃO UTILIZADOS PARA...
 Aumentar a disponibilidade de serviço.
 se um nodo falha, outro assume.
 Equilibrar carga de trabalho.
 um ou mais computadores do cluster actuam como
distribuidores da carga entre os demais.
 Alto desempenho.
 Para resolver tarefas complexas que podem ser
decompostas em sub-tarefas, cada uma rodando num
nodo do cluster.
 Implementação mais comum: LINUX e software livre
para implementar conformidade.
- GRID ou GRADE = as máquinas encontram-se 
distantes geograficamente.
- É uma cooperativa de máquinas.
- não pertencem necessariamente a mesma 
organização;
- são ditas organizações virtuais;
- não há administração central dos recursos 
computacionais;
- Utilização de protocolos/padrões abertos.
VANTAGENS DE UM SISTEMA DISTRIBUÍDO.
 Compartilhamento de dados: base de dados 
comum;
 Compartilhamento de dispositivos: acesso 
compartilhado a periféricos;
 Comunicação: torna-se mais simples e mais rápida a
comunicação entre pessoas. Além disso, é possível:
transferência de arquivos entre nós, login remoto, etc;
 Flexibilidade: dividir a carga de trabalho entre os nós 
da rede;
 Confiabilidade: se um nó falha os demais poderão
continuar operando;
 Velocidade de computação: maior poder
computacional obtido através de concorrência. Há a
possibilidade de distribuir uma computação
particionada a vários nós para executarem
concorrentemente;
 Performance a baixo custo: preço baixo dos PCs;
 Escalabilidade: aumentar o número de nós.
DESVANTAGENS DE UM SISTEMA DISTRIBUÍDO.
Software
Falta de experiência
Mudança de Paradigma
Conhecimento sobre a distribuição
Quanto deve ser feito pelo sistema e quanto 
pelo usuário?
Rede
Perda de mensagens
Sobrecarga na comunicação
Dimensionamento da rede
Vulnerabilidade das redes
Segurança
Autenticação, credenciais, bloqueios
ABERTOS
O grau de abertura de um SD depende de:
- Facilidade de adicionar novos recursos;
- De hardware;
- De software: novos serviços ou re-implementação de antigos.
SD abertos baseiam-se em:
- Mecanismos de comunicação uniformes;
- Especificados por organismos;
- Publicação de interfaces de serviços: para esconder a
semelhança de implementação dos serviços, as
implementações devem aderir a uma forma de publicar as
interfaces dos serviços.
BIBLIOGRAFIA
- Andrew S. Tanembaum, Sistemas Distribuídos, 
Princípios e Paradigmas 2a edição, 2008
- Andrew S. Tanenbaum, Distributed Operating Systems. 
Prentice-Hall, 1995
- Andrew S. Tanenbaum, Distributed Systems: Principles 
and Paradigms. Prentice Hall, 2002
- George Coulouris, Jean Dollimore, Tim Kindberg,
Distributed Systems - Concepts and Design, 3rd Ed.,
AddisonWesley, September 2001

Continue navegando