sistemas distribuídosfmc/ds-msc2006/aula03.pdf · instituto de informática ufg 8 os dois modelos...
TRANSCRIPT
UNIVERSIDADE FEDERAL DE GOIÁSUNIVERSIDADE FEDERAL DE GOIÁSINSTITUTO DE INFORMÁTICAINSTITUTO DE INFORMÁTICA
Sistemas DistribuídosSistemas Distribuídos
Mestrado em Ciência da ComputaçãoMestrado em Ciência da Computação
1o. Semestre / 2006
Prof. Fábio M. [email protected]
www.inf.ufg.br/~fmc/DSMSc2006
Aula 03
Instituto de Informática UFG 2
O modelo O modelo peertopeerpeertopeer
● Todos os processos/objetos possuem as mesmas capacidades (cliente e servidor)
– Provisão e requisição de recursos● Modelo descentralizado
– permite distribuir recursos compartilhados em larga escala na rede
● Escalabilidade melhor do que no modelo clienteservidor
– Devido à nãocentralização dos recursos
Considere o papel de modelos híbridosConsidere o papel de modelos híbridos
Instituto de Informática UFG 3
O modelo O modelo peertopeerpeertopeer
Application
Application
Application
Peer 1
Peer 2
Peer 3
Peers 5 .... N
Sharableobjects
Application
Peer 4
Instituto de Informática UFG 4
Interfaces e ObjetosInterfaces e Objetos
● Objetos
– Encapsulam a funcionalidade e o estado dos componentes de uma aplicação ou serviço distribuído
– Todas as propriedades usuais de orientação a objetos
– Modelo de objetos próprio ou da linguagem de progr.● Uma interface especifica:
– O conjunto de funções disponibilizadas por um processo ou objeto
● Objetos são acessíveis unicamente através de suas interfaces
● Uma ou várias interfaces por objeto
Instituto de Informática UFG 5
Requisitos de projetoRequisitos de projeto
● Desempenho– tempo de resposta, throughput (vazão),
balanceamento de carga
● Qualidade de serviço (QoS)– Diz respeito ao grau de satisfação quanto às
propriedades nãofuncionais do sistema● confiabilidade, segurança, desempenho
– Assume papel especial no caso de sistemas de tempo real
● multimídia distribuída
Instituto de Informática UFG 6
Requisitos de projetoRequisitos de projeto
● Uso de caching e replicação– Fator fundamental: melhoria de desempenho e
disponibilidade
● Dependabilidade– Tolerância a falhas– Segurança
Instituto de Informática UFG 7
Modelo de interaçãoModelo de interação
● Processos interagem entre si através da troca de mensagens para coordenação
● Um algoritmo distribuído define os passos necessários para coordenação
● Cada processo possui seu próprio estado● O desempenho do canal de comunicação não é
previsível (atraso, banda, jitter)● Não é possível manter uma noção global de
tempo única
Instituto de Informática UFG 8
Os dois modelos fundamentais de sistemas Os dois modelos fundamentais de sistemas distribuídosdistribuídos
● Síncrono – limites são conhecidos para:
– tempo de execução de cada passo em um processo
– tempo de transmissão (e recepção) de mensagens
– Taxa de defasagem dos relógios locais
● Assíncrono – limites não são conhecidos para as variáveis acima
Mais fácil construir aplicações sobre sistemas síncronos Mais fácil construir aplicações sobre sistemas síncronos ex.: ex.: timeoutstimeouts p/ detectar falhas p/ detectar falhas
Sistemas distribuídos reais tendem a ser assíncronos Sistemas distribuídos reais tendem a ser assíncronos (devido ao compartilhamento de recursos nos (devido ao compartilhamento de recursos nos
sistemas locais)sistemas locais)
Instituto de Informática UFG 9
Ordenação de eventos em tempo realOrdenação de eventos em tempo real
send
receive
send
receive
m1m2
2
1
3
4X
Y
Z
Physical time
A
m3
receive receive
send
receive receive receivet 1 t2 t 3
receive
receive
m2
m 1
Instituto de Informática UFG 10
Processos e canaisProcessos e canais
process p process q
Communication channel
send
Outgoing message buffer Incoming message buffer
receivem
Instituto de Informática UFG 11
Falhas de omissão e falhas arbitráriasFalhas de omissão e falhas arbitrárias
Class of failure Affects DescriptionFailstop Process Process halts and remains halted. Other processes may
detect this state.Crash Process Process halts and remains halted. Other processes may
not be able to detect this state.Omission Channel A message inserted in an outgoing message buffer never
arrives at the other end’s incoming message buffer.Sendomission Process A process completes a send, but the message is not put
in its outgoing message buffer.Receiveomission Process A message is put in a process’s incoming message
buffer, but that process does not receive it.Arbitrary(Byzantine)
Process orchannel
Process/channel exhibits arbitrary behaviour: it maysend/transmit arbitrary messages at arbitrary times,commit omissions; a process may stop or take anincorrect step.
Instituto de Informática UFG 12
Falhas de temporizaçãoFalhas de temporização
Class of Failure Affects DescriptionClock Process Process’s local clock exceeds the bounds on its
rate of drift from real time.Performance Process Process exceeds the bounds on the interval
between two steps.Performance Channel A message’s transmission takes longer than the
stated bound.
Instituto de Informática UFG 13
Objetos e “Objetos e “principalsprincipals””
Network
invocation
result
ClientServer
Principal (user) Principal (server)
ObjectAccess rights
Instituto de Informática UFG 14
Intrusos na comunicaçãoIntrusos na comunicação
Communication channel
Copy of m
Process p Process qm
The enemym’
Instituto de Informática UFG 15
Canais segurosCanais seguros
Principal A
Secure channelProcess p Process q
Principal B