5
Capitulo I Conceitos básicos de sistemas distribuídos 1. Introdução Um sistema distribuído é constituído por um conjunto de processadores autónomos conectados através de um subsistema de comunicação, que cooperam através da troca de mensagens. Esse tipo de sistema deve apresentar duas características inerentes: 1. A transparência na sua utilização, ou seja, a capacidade de se apresentar aos seus usuários como uma entidade única, e 2. O alto grau de tolerância a faltas (falhas). Actualmente, os sistemas distribuídos estão sendo pesquisados, desenvolvidos e apresentados como alternativa aos grandes sistemas centralizados. Alguns dos factores que justificam a tendência actual para sistemas distribuídos são: 1. Baixo custo dos processadores; 2. Custo por instrução em um processador de menor porte é inferior ao custo em um computador de grande porte; 3. Desejo de maior participação por parte dos usuários finais; necessidade de maior disponibilidade do sistema; 4. Alto custo das linhas telefónicas de comunicação utilizadas para conectar usuários remotos a sistemas centralizados; 5. Baixo desempenho das linhas telefónicas de comunicação, inadequado para transmissão de dados em alta velocidade; 6. Facilidade para interligar sistemas aplicativos distintos; 7. Tecnologia de rede disponível; 8. Necessidade de compartilhamento de recursos caros; 9. Segurança e confiabilidade, devido à distribuição do sistema; 10. Possibilidade de balanceamento de carga entre os processadores; e 11. Possibilidade de crescimento incremental de poder de processamento Página 1 de 5

Conceitos basicos

Embed Size (px)

Citation preview

Page 1: Conceitos basicos

Capitulo I Conceitos básicos de sistemas distribuídos

1. Introdução Um sistema distribuído é constituído por um conjunto de processadores autónomos

conectados através de um subsistema de comunicação, que cooperam através da troca

de mensagens. Esse tipo de sistema deve apresentar duas características inerentes:

1. A transparência na sua utilização, ou seja, a capacidade de se apresentar aos

seus usuários como uma entidade única, e

2. O alto grau de tolerância a faltas (falhas).

Actualmente, os sistemas distribuídos estão sendo pesquisados, desenvolvidos e

apresentados como alternativa aos grandes sistemas centralizados. Alguns dos factores

que justificam a tendência actual para sistemas distribuídos são:

1. Baixo custo dos processadores;

2. Custo por instrução em um processador de menor porte é inferior ao custo em

um computador de grande porte;

3. Desejo de maior participação por parte dos usuários finais; necessidade de

maior disponibilidade do sistema;

4. Alto custo das linhas telefónicas de comunicação utilizadas para conectar

usuários remotos a sistemas centralizados;

5. Baixo desempenho das linhas telefónicas de comunicação, inadequado para

transmissão de dados em alta velocidade;

6. Facilidade para interligar sistemas aplicativos distintos;

7. Tecnologia de rede disponível;

8. Necessidade de compartilhamento de recursos caros;

9. Segurança e confiabilidade, devido à distribuição do sistema;

10. Possibilidade de balanceamento de carga entre os processadores; e

11. Possibilidade de crescimento incremental de poder de processamento

Página 1 de 5

Page 2: Conceitos basicos

2. Definição Um Sistema Distribuído definido por Tanenbaum é uma colecção de computadores

independentes que se apresenta ao usuário como um sistema único e consistente; outra

definição, de Coulouris, seria uma colecção de computadores autónomos interligados

através de uma rede de computadores e equipados com software que permita o

compartilhamento dos recursos do sistema: hardware, software e dados.

3. Vantagens As vantagens de Sistemas Distribuídos incluem a possibilidade de:

1. Crescimento incremental (extensibilidade), ou seja, novos computadores e linhas

de comunicação serem acrescidos ao sistema;

a. A capacidade de evolução de um sistema central é limitada. Numa

aproximação distribuída, a capacidade de processamento pode ser

aumentada facilmente, basta considerar que os computadores pessoais

têm várias dezenas de Mips e capacidades de disco de centenas de

Mbytes.

b. Para além deste aspecto os sistemas distribuídos podem expandir-se com

máquinas de diferentes gerações tecnológicas

2. Implementação de aplicações inerentemente distribuídas (modularidade)

exemplo: CSCW (Computer Supported Collaborative Work), correio

electrónico, etc.; CSCW é a abreviatura de "Computer Supported Cooperative

Work", traduzido em Português como Trabalho Cooperativo Suportado por

Computador. De uma forma genérica, o CSCW é uma área científica

interdisciplinar que estuda a forma como o trabalho em grupo pode ser

suportado por tecnologias de informação e comunicação, de forma a melhorar o

desempenho do grupo na execução das suas tarefas. As pesquisas em CSCW são

normalmente caracterizadas em um quadro de duas dimensões: a distância das

pessoas cooperando (remota ou localmente), e a forma de comunicação

(síncrona ou assíncrona). O CSCW enquadra-se num domínio científico

interdisciplinar, envolvendo diversas áreas científicas, tanto técnicas, como

sistemas distribuídos, comunicação multimédia, telecomunicações, ciências da

informação, quanto humanas e sociais, como psicologia, percepção e teoria

Página 2 de 5

Page 3: Conceitos basicos

sócio-organizacional. Os programas informáticos cujo objectivo é serem usados

por grupos cooperativos designam-se habitualmente por groupware.

Genericamente, pode-se considerar o groupware como sendo software que

suporta CSCW. As aplicações groupware mais antigas são o correio electrónico

(E-mail), os grupos de discussão (newsgroup) e os sistemas de mensagens

curtas, como o ICQ e o MSN Messenger. (http://pt.wikipedia.org/wiki/CSCW)

a. Num sistema distribuído, o sistema informático pode evoluir de forma

modular, incrementando o número ou capacidade das unidades, de

acordo com as necessidades específicas de cada localização geográfica

ou aplicação.

b. Os investimentos podem ser programados da forma mais adequada ao

crescimento da organização.

3. Tolerância a falhas através da replicação de processos em unidades de

computação distintas;

4. Maior poder computacional: concorrência

5. Menor atraso no acesso (disponibilidade), que pode ser feito em um computador

“próximo”. Por exemplo o site http://www.edubuntu.org/Download tem a opção

para a escolha do local (África, Ásia Europa, América, …) a partir do qual se

pretende fazer o download. Este sugere a escolha do servidor mais próximo do

interessado, com o propósito de tornar o processo de download rápido.

a. A disponibilidade advém da existência de máquinas independentes que

podem continuar a assegurar um serviço quando uma delas falha.

b. Obviamente, tal não se pode fazer se o serviço não tiver sido programado

para funcionar de forma replicada

6. Separação física possibilita falhas independentes

7. Adequação geográfica

a. A maioria das organizações, com alguma dimensão, é intrinsecamente

distribuída: à distribuição geográfica adequa-se, naturalmente, uma

repartição do sistema de informação.

b. A centralização baseada em acesso por terminais remotos implica custos

de comunicação significativos, porque não tira partido da possibilidade

de trabalho local, em particular na interacção com o utilizador final das

aplicações.

8. Desempenho optimizado

Página 3 de 5

Page 4: Conceitos basicos

a. Possibilidade de atribuir às máquinas mais adequadas as tarefas que elas

podem optimizar. Por exemplo, os servidores de bases de dados (SGBD)

podem ser aliviados das tarefas (altamente consumidoras de tempo de

processamento) relacionadas com a interface com o utilizador

b. A outra hipótese de optimização advém da utilização de máquinas com

capacidade de execução paralela para cálculos científicos ou servidores

de base de dados especializadas para grandes volumes de informação.

9. Melhor custo

a. O preço cada vez mais reduzido dos computadores pessoais e servidores

multiprocessador permite obter, por um custo muito menor, uma

potência computacional e capacidade de armazenamento comparável à

das grandes máquinas.

b. É claro que os sistemas distribuídos implicam custos de comunicações,

equipamento de rede e de supervisão, mas eliminam outros como os

grandes centros de cálculo com ambiente controlado e elevados custos de

exploração.

Fig. 1: Visualização das vantagens

Embora o hardware desses sistemas estejam num estágio avançado de desenvolvimento,

o mesmo não se pode afirmar em relação ao software devido a complexidade adicional

inerente a sua distribuição.

Página 4 de 5

Page 5: Conceitos basicos

4. Desvantagens 1. Software – até o presente momento não há muita disponibilidade de software

para os sistemas distribuídos

2. Comunicação – tratamento e recuperação de mensagens. Melhoria da rede pode

acarretar em custos altos.

3. Segurança – Compartilhamento de dados implica em esquemas especiais para

proteção de dados sigilosos.

4. Integração de sistemas heterogêneos

5. Motivação (Porquê?) 1. Distribuição Geográfica (organizações físicas distribuídas);

2. Extensibilidade, modularidade;

3. Partilha de recursos;

4. Maior disponibilidade (replicação);

5. Maior desempenho (carga computacional distribuída)

Página 5 de 5