Buscar

SD 02 - Modelos Arquiteturais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistemas Distribuídos
Modelos Arquiteturais
Joinvile Batista Junior
UFGD - SD 02 - Joinvile Batista Junior 2
Modelos Arquiteturais
 A : Dificuldades e Ameaças aos SDs
 B : Arquitetura de SDs
 C : Modelos de Sistemas Distribuídos
 D : Variações dos Modelos Principais
 E : Modelos dos Componentes Básicos de SDs
UFGD - SD 02 - Joinvile Batista Junior 3
A : Dificuldades e Ameaças aos SDs
1. Explique porque SDs são afetados por diferentes modos de uso e 
por uma ampla variedade de ambientes.
2. Ilustre problemas internos e ameaças externas que afetam SDs.
UFGD - SD 02 - Joinvile Batista Junior 4
Dificuldades e Ameaças aos SDs
• Modos de uso muito variados
– partes componentes sujeitas a amplas variações na carga de trabalho
• algumas páginas da web são acessadas milhões de vezes por dia
– componentes podem estar desconectados ou mal conectados
– ex: inclusão/exclusão de computadores móveis
– alguns aplicativos com requisitos especiais
• aplicativos multimídia: grande largura de banda, baixa latência
• Ampla variedade de ambientes
– sistema distribuído pode acomodar
• hardware, sistemas operacionais e redes heterogêneas
– redes podem diferir amplamente no desempenho
• redes sem fio operam a uma taxa de transmissão inferior a de 
redes locais cabeadas
– quantidade de computadores envolvidos
• de dezenas a milhões
UFGD - SD 02 - Joinvile Batista Junior 5
Dificuldades e Ameaças aos SDs
• Problemas internos
– relógios não sincronizados
– atualizações conflitantes de dados
– diferentes modos de falhas de hardware e de software 
envolvendo os componentes individuais do sistema
• Ameaças externas
– ataques à integridade e ao sigilo de dados
– negação de serviço
• forçar o sistema vítima a reinicializar ou consumir seus 
recursos (memória, processamento) de forma que ele não 
pode mais fornecer seu serviço
• obstruir a mídia de comunicação entre os utilizadores e o 
sistema vítima para prejudicar a comunicação
UFGD - SD 02 - Joinvile Batista Junior 6
B : Arquitetura de SDs
1. Explique o que é arquitetura de software e qual a diferença entre 
arquitetura de sistema local e de SD.
2. Explique o relacionamento entre as camadas de Plataforma, 
Middleware e Aplicação.
UFGD - SD 02 - Joinvile Batista Junior 7
Arquitetura de Sw
• estrutura em termos dos componentes do sistema
• simplifica e abstrai
– as funções de componentes individuais do SD
• considera
– o posicionamento dos componentes ao longo da rede
• definindo padrões úteis para distribuição de dados e carga
– o inter-relacionamento entre componentes
• seus papéis funcionais e os padrões de comunicação entre 
eles
• originalmente: local
– estruturar software em camadas ou módulos em um único 
computador
• mais recentemente: distribuído
– serviços oferecidos e requisitados entre processos
• localizados no mesmo computador
• ou em computadores diferentes 
UFGD - SD 02 - Joinvile Batista Junior 8
Servidores e Serviços
Servidor
• é um processo que aceita requisitos de outros processos
Serviço distribuído
• pode ser provido por um ou mais processos servidores
– interagindo entre si e com processos clientes
• ex: serviço de tempo na rede (Network Time Protocol – NTP)
– processos servidores executando em hospedeiros (hosts) 
através da rede
• fornecendo o tempo corrente para qualquer cliente
• ajustando as versões de tempo corrente, através de 
interações entre si 
UFGD - SD 02 - Joinvile Batista Junior 9
Camadas Sw e Hw em SDs
Applications, services
Computer and network hardware
Platform
Operating system 
Middleware
UFGD - SD 02 - Joinvile Batista Junior 10
Plataforma
Plataforma para sistemas e aplicativos distribuídos
• camadas de hardware e software (SO) de mais baixo nível
– fornecem serviços para as camadas acima
– de forma que a interface de programação facilite a comunicação 
e a coordenação entre processos
• a denominação da plataforma combina a família do processador 
com o SO
UFGD - SD 02 - Joinvile Batista Junior 11
B : Arquitetura de SDs
1. Liste abstrações providas pela camada de Middleware para a 
comunicação entre aplicações. Comente sobre um middleware 
para invocação remota.
2. Explique a dependabilidade como limitação do middleware, 
ilustrando com um exemplo.
UFGD - SD 02 - Joinvile Batista Junior 12
Middleware
• camada de software que mascara a heterogeneidade
– e provê um modelo de programação conveniente para 
aplicações
• provê blocos construtivos para a construção
– de componentes de software que interagem em um sistema 
distribuído
• suporta abstrações utilizadas para comunicação entre aplicações
– método de invocação remota
– comunicação entre grupos de processos
– notificação de eventos
– replicação de dados compartilhados
– transmissão de dados multimídia em tempo real
UFGD - SD 02 - Joinvile Batista Junior 13
Middlewares
• Middleware Orientados a Procedimentos
– RPC (Remote Procedure Call)
• Middlewares Orientados a Objetos
– OMG’s (Object Management Group) CORBA (Common Object 
Request Broker Arquitecture)
– Java RMI (Remote Method Invocation)
– Web Services
– DCOM (Distributed Component Objet Model) da Microsoft
• Middlewares também provêem serviços para aplicações
– serviços CORBA
• resolução de nomes, segurança, transações, persistência, 
notificação de eventos 
UFGD - SD 02 - Joinvile Batista Junior 14
Limitações do Middleware
• muitas aplicações dependem dos serviços de um middleware 
específico
– para suportar suas necessidades de comunicação e 
compartilhamento de dados
• dependabilidade : alguns aspectos dependem de suporte da 
aplicação não provido pelo middleware
– por exemplo quando uma aplicação tenta transferir um arquivo 
muito grande em uma rede com baixa confiabilidade
• o protocolo de transmissão de dados TCP possui algum 
mecanismo de deteção e correção de erros
• mas não consegue se recuperar de interrupções mais sérias 
na rede
– o serviço de transferência de correio eletrônico acrescenta outro 
nível de tolerância a falhas
• mantendo um registro de andamento da transferência
• e retomando a transmissão em uma nova conexão TCP
– caso a anterior se desfaça
UFGD - SD 02 - Joinvile Batista Junior 15
C : Modelos de Sistemas Distribuídos
1. Explique como funciona o Modelo Cliente-Servidor.
2. Explique como funciona o Modelo Peer-to-Peer. Qual sua 
principal vantagem e desvantagem?
UFGD - SD 02 - Joinvile Batista Junior 16
Sistemas distribuídos
• aspectos arquiteturais relevantes
– divisão de responsabilidades entre componentes do sistema: 
aplicações, servidores e outros processos
– posicionamento dos componentes em computadores na rede
• com implicações em
– desempenho, confiabilidade e segurança
• os 2 principais modelos de arquitetura de SDs
• modelo cliente-servidor
• modelo peer-to-peer
UFGD - SD 02 - Joinvile Batista Junior 17
Classificação de Processos
• classificação inicial de processos
– servidor
– cliente
– peer (par): no mesmo nível ou na mesma função na rede
• classificação identifica as responsabilidades de cada um
– ajuda a avaliar suas cargas de trabalho
– e determinar o impacto das falhas em cada um deles
• resultado desta análise pode ser utilizado para
– especificar o posicionamento dos processos de forma a atender 
requisitos do sistema resultante
• desempenho e confiabilidade
UFGD - SD 02 - Joinvile Batista Junior 18
Modelo Cliente-Servidor
Server
Client
Client
invocation
result
Server
invocation
result
Process:
Key:
Computer:
UFGD - SD 02 - Joinvile Batista Junior 19
Modelo Cliente-Servidor
• modelo distribuído mais divulgado e amplamente empregado
• servidorespodem ser clientes de outros servidores
– aplicação web
• cliente : web browser
• camada de apresentação : web server
• camada de negócios : application server
• camada de persistência : data base server
– web servers são clientes de
• servidor de arquivos local
– gerencia os arquivos nos quais as páginas web estão 
armazenadas
• serviços de DNS (Domain Name System)
– mapeia nomes de domínio Internet em endereços de rede (IP)
– search engine atuando como servidor e como cliente
• responde a queries de browsers de clientes
• executa web crawlers que agem como clientes de outros servidores
UFGD - SD 02 - Joinvile Batista Junior 20
Modelo Peer-to-Peer (entre pares)
Coordination
Application
code
Coordination
Application
code
Coordination
Application
code
UFGD - SD 02 - Joinvile Batista Junior 21
Modelo Peer-to-Peer
• arquitetura na qual todos os processos desempenham papéis similares
– interagindo cooperativamente como pares para realizar uma 
atividade distribuída
– sem distinção de cliente ou servidor
• utilização dos desktops atuais para montar um sistema peer-to-peer
– maior capacidade do hardware e aumento da funcionalidade do SO 
dos desktops atuais
– desktops equipados com conexões de banda larga
• aplicativo Napster impulsionou o desenvolvimento desta arquitetura
• aplicativos são compostos de grande número de processos executados 
em computadores distintos
– o padrão de comunicação entre os processos dependente 
inteiramente da funcionalidade do aplicativo
– cada objeto pode ser replicado em vários computadores para 
distribuir melhor a carga e proporcionar resiliência (grau de tolerância 
a falhas em uma rede)
UFGD - SD 02 - Joinvile Batista Junior 22
Modelo Peer-to-Peer
• compartilhamento de dados e recursos numa larga escala
– eliminando qualquer requisito por servidores gerenciados 
separadamente e a sua infra-estrutura associada
– partilhando recursos de computadores pessoais: 
processamento, disco e largura de banda
• código dos processos peer
– mantém consistência dos recursos a nível de aplicação
– sincroniza ações a nível de aplicação quando necessárias
• em geral processos peer interagem uns com os outros
– padrões de comunicação dependem da aplicação
• a eliminação de processos servidores reduz
– o atraso da comunicação entre processos para acessar objetos 
locais
• necessidade de manter réplicas entre muitos computadores
– torna esta arquitetura substancialmente mais complexa do que a 
arquitetura cliente-servidor
UFGD - SD 02 - Joinvile Batista Junior 23
D : Variações dos Modelos Principais
1. Explique o papel do particionamento e da replicação de dados 
em serviços providos por múltiplos servidores.
2. Explique porque cache compartilhado por um proxy server 
aumenta a disponibilidade e o desempenho do serviço.
UFGD - SD 02 - Joinvile Batista Junior 24
Serviços providos por Múltiplos Servidores
Server
Server
Server
Service
Client
Client
UFGD - SD 02 - Joinvile Batista Junior 25
Serviços providos por Múltiplos Servidores
• serviços podem ser implementados por múltiplos processos 
servidores
– em diferentes hospedeiros
– interagindo quando necessário para prover um serviço para um 
processo cliente
• dados particionados
– na web: servidores web gerenciam seus próprios recursos
– um browser no cliente: acessa recursos em qualquer um dos 
web servers 
• replicação de dados
– replicação é utilizada para
• melhorar performance e disponibilidade
• prover tolerância a falhas
– provê múltiplas cópias consistentes de dados em processos 
executando em diferentes computadores
UFGD - SD 02 - Joinvile Batista Junior 26
Exemplos
• particionamento de dados em servidores web
– cada servidor web gerencia seu próprio conjunto de recursos
– o usuário pode utilizar o navegador para acessar um recurso de 
qualquer um desses servidores
• Sun NIS (Network Information Service) utilizado em uma LAN 
quando um usuário se loga
– cada servidor NIS tem sua própria réplica do arquivo de senhas
• contendo a lista de usernames de login dos usuários e as 
senhas criptografadas
• arquitetura fortemente acoplada baseada em clusters
– maior interação entre os vários servidores
• a execução de um serviço pode ser particionada ou 
duplicada entre as unidades existentes
– serviços web que necessitam maior escalabilidade
• mecanismos de busca e lojas on-line
UFGD - SD 02 - Joinvile Batista Junior 27
Web proxy server
Client
Proxy
Web 
server
Web 
server
server
Client
UFGD - SD 02 - Joinvile Batista Junior 28
Cache no Cliente ou Compartilhado
• caches armazenam dados utilizados recentemente
– objeto só é acessado na origem se cópia atualizada não estiver 
disponível
– sua utilização é bastante comum
• cache local no cliente
– web browsers mantém um cache de páginas visitadas 
recentemente e outros recursos web no sistema de arquivos 
local do cliente
• usando HTTP para checar com o servidor original que 
páginas web estão atualizadas antes de mostrá-las
• cache compartilhado em um proxy server
– web proxy servers provêem um cachê compartilhado de 
recursos web para máquinas clientes em um site ou através de 
diversos sites
• com o propósito de aumentar disponibilidade e performance 
do serviço
• reduzindo a carga na rede e nos servidores web 
UFGD - SD 02 - Joinvile Batista Junior 29
D : Variações dos Modelos Principais
1. Explique as vantagens e as desvantagens de um cliente enxuto 
(thin client).
UFGD - SD 02 - Joinvile Batista Junior 30
Clientes Enxutos e Servidores de Aplicação
Thin
Client
Application
Process
Network computer or PC
Compute server
network
UFGD - SD 02 - Joinvile Batista Junior 31
Cliente Enxuto (Thin Client)
• clientes enxutos
– com poucos recursos
– utilizam serviços providos por servidores mais poderosos
• requisitos muito simples para o cliente
– em termos de capacidade de processamento, memória e banda 
de comunicação
– tipicamente: somente um browser
• dificuldade
– processamento gráfico altamente iterativo como CAD ou 
processamento de imagens
• atrasos aumentam em função da necessidade transferir 
imagens entre o cliente e o aplicativo
UFGD - SD 02 - Joinvile Batista Junior 32
D : Variações dos Modelos Principais
1. Qual a diferença entre Applet e Agente Móvel?
2. Explique os problemas associados a agentes móveis.
3. Ilustre os problemas associados à comunicação móvel.
UFGD - SD 02 - Joinvile Batista Junior 33
Web applets
a) client request results in the downloading of applet code 
Web 
server
Client
Web 
serverApplet
Applet code
Client
b) client interacts with the applet 
UFGD - SD 02 - Joinvile Batista Junior 34
Código Móvel
• mover código de um processo para o outro, permite um processo 
delegar tarefas a um outro processo
– clientes podem fazer download de código dos servidores e 
executar localmente
– objetos e códigos que acessam um processo, podem se mover 
para reduzir atrasos de acesso e minimizar tráfego de 
comunicação
• applets são exemplos bem conhecidos e largamente utilizados
– um browser seleciona um link para fazer download
• de um applet armazenado em um web server
• vantagem de executar o applet localmente
– boa resposta iterativa
– sem sofrer atrasos decorrentes da variação de largura de banda 
na rede
• exemplo : stockbroker
– recebe mudanças de preços nas ações e notifica cliente
– eventualmente executando compra e venda de ações
UFGD - SD 02 - Joinvile Batista Junior 35
Agentes Móveis
• programa (incluindo código e dados) que trafega pela rede
– realizando uma tarefa em nome de alguém
– como colecionar informações e retornarresultados
• um agente móvel pode invocar recursos locais nos sites visitados
– por exemplo, acessar bases de dados individuais
• reduz custo e tempo de comunicação
– ao substituir invocações remotas por locais
UFGD - SD 02 - Joinvile Batista Junior 36
Agentes Móveis: Problemas Associados
• agentes móveis podem comprometer a segurança dos recursos que 
eles visitam
– o ambiente que os recebe deveria decidir que recursos 
disponibilizar
• com base na identidade do agente
• e no interesse de quem o agente está agindo
• agentes móveis podem ser vulneráveis
– não conseguir completar suas tarefas
– porque o recurso que eles necessitam foi negado
• tarefas realizadas por agentes móveis podem ser realizadas por 
outros meios
– web crawlers fazem invocações remotas a processos servidores
UFGD - SD 02 - Joinvile Batista Junior 37
Rede Espontânea em um hotel
Internet
gateway
PDA
service
Music 
service
service
Discovery
Alarm
Camera
Guests
devices
Laptop
TV/PC 
Hotel wireless
network
UFGD - SD 02 - Joinvile Batista Junior 38
Equipamentos móveis e Interoperabilidade espontânea
• proliferação de equipamentos móveis
– laptop, PDA (Personal Digital Assistent)
– celular, câmera digital
– eletrodoméstico com software embarcado
• ex: máquina de lavar
• capazes de comunicação sem fio com redes
– metropolitanas : centenas de metros
– ou pouco metros : Bluetooth, infra-vermelho
• além de clientes: possibilidade de servidores móveis
– mobilidade leva à interoperabilidade espontânea
• variação no modelo cliente-servidor
– na qual associações entre dispositivos são 
rotineiramente criadas e destruídas
– ex: ônibus de turismo executando servidor que via conectando 
com redes wireless disponíveis em seu trajeto
• disponibilizando informações e serviços para os notebooks 
dos turistas
UFGD - SD 02 - Joinvile Batista Junior 39
Características chaves
• facilidade de comunicação com rede local
• facilidade de integração com serviços locais
– ex. serviços wireless providos por um hotel
• música nos vários cômodos
• serviço de despertador com música
• set-top box da TV atuando com TV ou como computador 
(provendo acesso à web)
• serviço de visualização de imagens armazenadas na câmera 
digital
• execução de aplicações favoritas por aluguel
UFGD - SD 02 - Joinvile Batista Junior 40
Problemas
• conectividade limitada
– sem conexão em trens ou em túneis
– desconexão por um longo período de tempo
• segurança e privacidade
– hotel e seus hóspedes são vulneráveis a ataques de 
funcionários ou de outros hóspedes
– sistemas podem rastrear a localização física dos usuários
– usuários em trânsito podem expor acesso a sua intranet 
UFGD - SD 02 - Joinvile Batista Junior 41
E : Modelos dos Componentes Básicos de SDs
1. O que justifica a criação de modelos para os componentes básicos 
de SDs? Quais as características e objetivos de um modelo para 
SDs.
UFGD - SD 02 - Joinvile Batista Junior 42
Comunicação entre Processos
• comunicação entre processos é realizada por meio de troca de 
mensagens
• esta comunicação pode ser afetada por
– atrasos
– sofrer uma variedade de falhas
– ser vulnerável a ataques de segurança
• estes problemas são tratados por 3 modelos
– especificam os principais problemas, dificuldades e ameaças no 
desenvolvimento de sistemas distribuídos
– para execução de tarefas corretamente, de forma confiável e 
segura
UFGD - SD 02 - Joinvile Batista Junior 43
Modelos dos Componentes Básicos dos SDs
• todos os modelos de sistemas distribuídos vistos
– apesar de bastante diferentes
– apresentam algumas propriedades fundamentais idênticas
• todos são compostos de processos que se comunicam por 
meio de envio de mensagens através de uma rede de 
computadores
• todos devem atender requisitos de
– desempenho, confiabilidade dos processos e das redes 
de comunicação
– segurança dos recursos presentes no sistema
UFGD - SD 02 - Joinvile Batista Junior 44
Características de um Modelo
• modelo contém apenas os ingredientes essenciais
– que precisamos considerar para entender
– e raciocinar a respeito de certos aspectos do comportamento 
de um sistema
• modelo de sistema precisa tratar das seguintes questões
– Quais as principais entidades presentes no sistema?
– Como elas interagem?
– Quais as características que afetam seu comportamento 
individual e coletivo
• o objetivo do modelo é
– explicitar suposições relevantes sobre os sistemas modelados
– fazer generalizações a respeito de possibilidades e 
impossibilidades
• algoritmos de propósito geral
• ou propriedades desejáveis que deverão ser garantidas
UFGD - SD 02 - Joinvile Batista Junior 45
Modelos para Sistemas Distribuídos
Modelos que abstraem características comuns dos componentes 
básicos a partir do qual os SDs são construídos
• Modelo de Iteração
• Modelo de Falha
• Modelo de Segurança
Modelo de Iteração
• a precisão com a qual processos independentes podem ser 
coordenados é limitada pelos atrasos de comunicação
• e pela dificuldade de manter a mesma noção de tempo entre todos 
os computadores do sistema
UFGD - SD 02 - Joinvile Batista Junior 46
Modelos para Sistemas Distribuídos
Modelo de Falha
• define e classifica falhas que podem ser exibidas por processos e 
canais de comunicação
• fornece base para análise de seus efeitos e para projetar sistemas 
capazes de tolerar certos tipos de falhas
Modelo de Segurança
• a natureza modular dos sistemas distribuídos e a filosofia de 
sistemas abertos os torna vulneráveis a a ataques de agentes 
externos e internos
• o modelo define e classifica as formas que os tais ataques possam 
assumir
– fornecendo uma base para análise das possíveis ameaças
– e do desenvolvimento voltado para resistir essas ameaças
UFGD - SD 02 - Joinvile Batista Junior 47
E : Modelos dos Componentes Básicos de SDs
1. O que justifica a existência de um Modelo de Interação para SDs? 
Explique os principais fatores que afetam a interação entre 
processos. 
2. Explique as características de desempenho de canais de 
comunicação.
3. Explique o que é a taxa de desvio de relógios da rede. Discuta 
uma estratégia para sincronização. Explique a ordenação de 
eventos como solução para sincronização de relógios.
4. Conceitue um sistema síncrono. Conceitue um sistema 
assíncrono. Discuta sua utilização e limitações.
UFGD - SD 02 - Joinvile Batista Junior 48
Modelo de Iteração
Decorrência dos SDs
• não é possível prever a velocidade com que cada processo de um 
SD é executado
• nem a sincronização da troca de mensagem entre eles
Fatores que afetam significativamente a interação entre processos
• fator limitante: desempenho da comunicação
• impossibilidade de manter uma noção global de tempo única
UFGD - SD 02 - Joinvile Batista Junior 49
Modelo de Iteração
Características de desempenho dos canais de comunicação
• latência
– atraso decorrido ente o início da transmissão de uma mensagem 
em um processador remetente e ínicio da recepção pelo processo 
destinatário
– engloba: tempo de transmissão, tempo de acesso à rede, processo 
dos serviços de comunicação do SO para envio e recepção
• largura de banda
– volume total de informações que pode ser transmitido em um dado 
momento
• jitter
– variação de tempo exigida para distribuir uma sequência de 
mensagens
– crucial para dados multimídia
• amostras de áudio reproduzidas em diferentes intervalos de 
tempo causam distorção
UFGD - SD 02 - Joinvile Batista Junior 50
Modelo de Iteração
Taxa de Desvio dos relógios dos computadores da rede
• quantidade relativa que cada relógio de computador difere de um 
relógio de referência perfeito– mesmo que todos os relógios tivessem um ajuste inicial: 
necessitariam de um reajuste periódico
• estratégia para sincronização
– relógio com fonte precisa (GPS) pode enviar mensagens de 
sincronização para os demais
– mas o reajuste é afetado pelos atrasos variáveis de comunicação 
das mensagens
Variantes do Modelo de Interação
• Sistemas Distribuídos Síncronos
• Sistemas Distribuídos Assíncronos
UFGD - SD 02 - Joinvile Batista Junior 51
Modelo de Iteração
Sistemas Distribuídos Síncronos
• alocação de recursos (tempo de processamento, capacidade de 
rede, e limite do desvio de relógio) para garantir as seguintes 
restrições
– o tempo para executar cada etapa de um processo tem limites 
inferior e superior conhecidos
– cada mensagem transmitida em um canal é recebida dentro de 
um tempo limitado e conhecido
– cada processo tem um relógio local cuja taxa de desvio do 
tempo real tem um limite conhecido
UFGD - SD 02 - Joinvile Batista Junior 52
Modelo de Iteração
Sistemas Distribuídos Assíncronos
• não admite nenhum limite para as restrições dos sistemas 
distribuídos síncronos
• a internet é perfeitamente representada por este modelo
• muito frequentemente os sistemas distribuídos são assíncronos
– devido a necessidade de processos compartilharem: tempo de 
processamento, canais de comunicação e acesso à rede
• contudo existem problemas que não podem ser resolvidos para um 
sistema assíncrono
– necessidade de fazer com que elemento de um fluxo de dados 
multimídia seja emitido dentro de um prazo final
UFGD - SD 02 - Joinvile Batista Junior 53
Modelo de Iteração
Ordenação de Eventos
• interesse em saber se um evento (envio ou recepção de uma 
mensagem)
– ocorreu em um processo antes, depois ou simultaneamente 
com outro evento em outro processo
• solução trivial para relógios sincronizados
• como em um SD os relógios não podem ser perfeitamente 
sincronizados
– Modelo de Relógio Lógico (Lamport – 1978)
• fundamentação
– mensagem é só recebida após ter sido enviada
– resposta só é enviada após a recepção da mensagem
• atribui a cada evento um número correspondente à sua 
ordem lógica
– eventos posteriores terão um número mais alto
UFGD - SD 02 - Joinvile Batista Junior 54
E : Modelos dos Componentes Básicos de SDs
1. Explique as falhas de processos e canais de comunicação. 
2. Explique como funciona o mascaramento de falhas.
3. Explique as propriedades de uma comunicação confiável.
UFGD - SD 02 - Joinvile Batista Junior 55
Modelo de Falha
• classificação de falhas de processos e de canais de comunicação 
básicos em um SD
– falhas por omissão
• processo ou canal de comunicação deixa de executar as 
ações que deveria
• detecção mais simples em sistemas síncronos através de 
timeouts (vencimento de temporização)
– falhas arbitrárias
• pior falha possível: qualquer tipo de erro pode ocorrer
– ex: atribuir valores incorretos aos dados retornando 
resposta errada
• são raras em canais de comunicação
– detecção por checksum ou número da sequência
– falhas de sincronização
• indisponibilidade de resposta em sistemas síncronos no 
intervalo previsto
UFGD - SD 02 - Joinvile Batista Junior 56
Modelo de Falha
• mascaramento
– serviço mais confiável é construído a partir de outro menos 
confiável
• escondendo algumas falhas que o menos confiável exibe
– em serviços de comunicação
• ex: falhas por omissão podem ser mascaradas pela 
retransmissão das mensagens perdidas
• propriedades de comunicação confiável
– integridade
• uma mensagem recebida deve ser idêntica à enviada
• nenhuma mensagem pode ser enviada 2 vezes
– validade
• toda mensagem colocada em buffer de envio seja entregue em 
um buffer de recepção
UFGD - SD 02 - Joinvile Batista Junior 57
E : Modelos dos Componentes Básicos de SDs
1. Explique os tipos de ameaças a um SD aberto. Comente outros 
tipos de ameaças. Como tratar ameaças à segurança em SDs?
2. Explique o conceito de canal seguro. Comente as técnicas 
utilizadas para a sua implementação. Dê exemplo de canais 
seguros.
UFGD - SD 02 - Joinvile Batista Junior 58
Modelo de Segurança
• identifica as possíveis ameaças aos processos e canais de 
comunicação em um sistema distribuído aberto
• tipos de ameaças
– aos processos
• à autenticação
– falsificação da identificação do originador e do 
destinatário da mensagem
– aos canais de comunicação
• à integridade
– usuários mal intencionados podem falsificar uma 
mensagem
• à privacidade
– ter acesso a informações confidenciais de terceiros
UFGD - SD 02 - Joinvile Batista Junior 59
Modelo de Segurança
• canais seguros usam técnicas de criptografia para 
– garantir a integridade e a privacidade das mensagens
– para autenticar mutuamente os pares que estejam se 
comunicando
• algumas técnicas utilizadas
– criptografia assimétrica: utiliza uma par de chaves pública e 
privada
– indicação de relógio para impedir reprodução ou reordenação 
de mensagens
• exemplos de canais seguros
– VPN – Virtual Private Network
– SSL – Secure Sockets Layer
UFGD - SD 02 - Joinvile Batista Junior 60
Modelo de Segurança
• outras ameaças
– negação de serviço
– código móvel mal intencionado
• muitos problemas já foram resolvidos com a utilização de 
Java
• mas persistem muitas vulnerabilidades embaraçosas
• custo de processamento
– são acarretados pela utilização de técnicas de critptografia e 
controle de acesso
• ameaças em SDs surgem em muitos pontos
– é necessária um análise cuidadosa das ameaças que possam 
surgir de todas as fontes possíveis no ambiente de rede, físico 
e humano do sistema  construção de um modelo de ameaças
• listar todas as formas de ataque
• avaliação dos riscos e consequências
• escolha das técnicas considerando eficácia e custo

Outros materiais