Professional Documents
Culture Documents
1
10/07/2017
2
10/07/2017
3
10/07/2017
4
10/07/2017
Relgios Fsicos
Sincronizao
Sincronizao de relgios em redes sem fio
1. Sincronizao de Relgios
2. Relgios Lgicos
3. Excluso Mtua
4. Posicionamento global de ns
5. Algoritmos de eleio
Relgios Lgicos
Relgios Lgicos
Problemas na ordenao de eventos
At o momento foi considerada a
sincronizao de relgios como naturalmente
relacionada com a hora real.
Lamport mostrou que, embora a sincronizao de
relgios seja possvel, no precisa ser absoluta:
necessrio sincronizar processos que no interagem
entre si? No!
Soluciona problemas relativos a ordem de eventos
independentemente da hora real.
5
10/07/2017
Relgios Lgicos
Relgios Lgicos
Relgios Lgicos Vetoriais Imposio
Causalidade em relgios lgicos vetoriais
Causal
6
10/07/2017
Sincronizao
Sincronizao
Excluso Mtua
1. Sincronizao de Relgios Como garantir que o acesso concorrente de
recursos no gere situaes de inconsistncia
2. Relgios Lgicos de dados?
3. Excluso Mtua Atravs da Excluso Mtua, que, em S.D. pode
4. Posicionamento global de ns ser dividida em duas categorias:
Baseadas em fichas;
5. Algoritmos de eleio Essa categoria consegue a excluso mtua com a
passagem de uma mensagem especial entre os
processos conhecida como ficha.
Evita inanio (Starvation);
Fcil evitar deadlocks;
Sincronizao Sincronizao
Excluso Mtua Algoritmo centralizado
Baseadas em permisso. Simula o que feito em um sistema
Processo que quer recursos deve antes pedir permisso monoprocessador:
aos demais.
Um processo eleito como coordenador;
Existem diferentes modos de conceder tal permisso.
Vejamos alguns deles a seguir. Sempre que um processo quiser acessar determinado
recurso, necessrio pedir permisso para acessar o
mesmo ao coordenador, atravs de uma mensagem;
O coordenador permite acesso ao recurso atravs de uma
mensagem de concesso, desde que nenhum outro
processo esteja acessando o recurso neste momento.
Sincronizao Sincronizao
Algoritmo centralizado Algoritmo centralizado
Prs:
Simples, fcil de entender e de implementar;
justo (segue o FCFS);
Como no FCFS, no h inanio (starvation);
Contras:
Como todo sistema centralizado: um ponto de
erro e um ponto de gargalo;
Processos no conseguem distinguir coordenador
inativo de permisso negada;
7
10/07/2017
Sincronizao Sincronizao
Algoritmo descentralizado Algoritmo descentralizado
Usar um algoritmo de votao em um sistema Prs
baseado em DHT: Torna a soluo centralizada original menos vulnervel a
falhas de um nico coordenador;
Cada recurso replicado n vezes; Possibilita uso de rplicas de recursos;
Cada rplica possui um coordenador; Contras
Processo requisitante precisa receber voto majoritrio de No protege contra starvation;
coordenadores: m > n/2 Se muitos ns querem acessar o mesmo recurso, nenhum
n conseguir votos suficientes, e os recursos deixaro de
Caso a permisso seja negada (processo obtm menos que ser usados;
m votos), o mesmo desistir do recurso por um perodo de H uma probabilidade positiva (embora muito baixa) de
tempo aleatrio, e far a tentativa novamente mais tarde. permitir a 2 ns acesso ao mesmo recurso, ao mesmo
tempo (ou seja, no garantir a excluso mtua).
Sincronizao Sincronizao
Algoritmo distribudo Algoritmo distribudo
Para muitos, um algoritmo correto segundo as leis da Requer ordenao total de todos os eventos no
probabilidade no bom o bastante. sistema;
Para isso ser usado... Algoritmo de Lamport!
Para resolver esse problema, pesquisadores Funcionamento:
procuraram algoritmos distribudos determinsticos Quando processo deseja acessar um recurso
de excluso mtua. compartilhado, monta uma mensagem que contm o
nome do recurso, seu nmero de processo e a hora
Lamport apresentou o primeiro em 1978; corrente (lgica).
Ricart e Agrawala o tornaram mais eficiente (1981). Envia mensagem para todos processos, inclusive ele
mesmo (similar a broadcast ou multicast);
Ser analisada a verso de Ricart e Agrawala. Quando um processo recebe uma mensagem de
requisio de outro, executa uma ao de acordo com
seu prprio estado em relao ao recurso:
Andrew S. Tanenbaum Andrew S. Tanenbaum
Maarten Van Steen Maarten Van Steen
Sincronizao Sincronizao
Algoritmo distribudo Algoritmo distribudo
Funcionamento (continuao): Funcionamento (continuao):
1. Se o receptor no estiver acessando o recurso nem O processo remetente aguarda recebimento de
quer acess-lo, devolve OK ao remetente todas as respostas;
2. Se j tem acesso ao recurso, no responde e coloca
requisio em uma fila;
Quando houver permisso de todos, processo
3. Se receptor tambm quer acessar o recurso, mas
acessa o recurso;
ainda no possui a permisso, compara a marca de Processo libera o recurso enviando um OK a
tempo da mensagem que chegou com a marca de todos os processos
tempo da mensagem que enviou a todos. A mais
baixa vence.
8
10/07/2017
Sincronizao Sincronizao
Algoritmo distribudo Algoritmo distribudo
Vantagens:
Excluso mtua garantida;
No h deadlock;
No h starvation;
Nmero de mensagens: 2(n-1) //n=nmero de ns
No existe nenhum ponto de falha nico
Sincronizao Sincronizao
Algoritmo distribudo Algoritmo Token Ring
Desvantagens: Baseado nas redes token ring estudadas em
Ponto de falha nico foi substitudo por n pontos de falha; rede, mas no necessariamente uma rede
Deve usar comunicao multicast ou manter uma lista de fsica: pode ser uma rede lgica
associao ao grupo em cada processo, incluindo
processos que entram no grupo ou caem (funciona melhor
com poucos processos que se mantm estveis);
Trocou 1 gargalo por n gargalos;
Portanto : Mais lento, mais complicado, mais caro e
menos robusto que o original centralizado.
9
10/07/2017
Sincronizao Sincronizao
Posicionamento Global de ns Posicionamento Global de ns
difcil que um n monitore outros em um Em redes de sobreposio geomtrica designada
sistema distribudo quando h um uma posio em um espao geomtrico n-
crescimento do nmero de ns. dimensional a cada n, de modo que a distncia
entre cada n represente uma mtrica de
desempenho no mundo real.
Para solucionar o problema utiliza-se o Ex.: d(P,Q) para distncia de latncia entre os ns P e Q.
posicionamento global dos ns, que informa til para redirecionar para rplica de um servidor com
menor tempo de resposta para o cliente;
onde cada n est. Identificar melhor posicionamento para rplicas;
Roteamento baseado em posio.
Posicionamento Global de Ns
Posicionamento Global de Ns
O posicionamento global de
A variao em relao ao tempo pode gerar
ns requer m+1 medies de inconsistncias.
distncia. As medies podem violar a desigualdade
Como no GPS, o clculo pode triangular, que implica que para 3 pontos
ser feito por: arbitrrios P, Q e R:
d(P,R)d(P,Q)+d(Q,R);
(x x ) + (y y ) (i = 1,2,3)
i p
2
i p
2
10
10/07/2017
11
10/07/2017
12
10/07/2017
DVIDAS
13