Download - Aid Cap2 Modelosfundamentais
-
8/8/2019 Aid Cap2 Modelosfundamentais
1/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-20111
Modelos Fundamentais
Aplicaes DistribudasLicenciatura em Engenharia Informtica3 Ano 5 SemestreAno lectivo 2010-2011
-
8/8/2019 Aid Cap2 Modelosfundamentais
2/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelos Fundamentais
Modelos que lidam com a sincronizao do tempo, atrasosnas mensagens, falhas e questes de segurana so: Modelo de Interaco lida com o desempenho e a
dificuldade do estabelecimento de limites temporaisnum SD.
Modelo de Falhas Especificao das falhas quepodem ser exibidas pelos processos. Modelo de Segurana Discute os aspectos de
segurana dos processos e canais de comunicao.
-
8/8/2019 Aid Cap2 Modelosfundamentais
3/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelo de Interaco Os SD so compostos por mltiplos processos que interagemdurante a execuo de um algoritmo distribudo.
A execuo de cada passo do algoritmo ocorre dentro dos processos. Os processos interagem trocando mensagens, o que resulta na:
comunicao (i.e., fluxo de informao) coordenao (sincronizao e ordenao das actividades) entre
processos. Existem dois factores importantes que afectam dois processos em
interaco: O desempenho do canal de comunicao / Rede A impossibilidade de se manter de uma nica noo global de tempo
O modelo de interaco deve reflectir os factos de que acomunicao sofre atrasos e que a coordenao de processos estlimitada por estes dois factores
-
8/8/2019 Aid Cap2 Modelosfundamentais
4/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Desempenho de um canal de comunicao
Latncia: Atraso entre o nicio da transmisso de uma mensagem por umprocesso e o correspondente inicio de recepo por outroprocesso
Taxa de Transmisso:
Quantidade de informao que pode ser enviada num dadointervalo de tempo.
Jitter Variao na latncia de uma srie de mensagens. Esta
caracterstica relevante para aplicaes multimdia.
-
8/8/2019 Aid Cap2 Modelosfundamentais
5/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Relgios dos Computadores etemporizao dos eventos
Cada computador possui o seu relgio interno, que pode serusado por processos locais para obter o tempo actual.
Dois processos em execuo em diferentes computadoresassociamtimestamps com os seus eventos.
Contudo, mesmo que os dois processos leiam o seu relgio emsimultneo, podem ler valores distintos.
Podem existir desvios entre os relgios, mesmo que tenham sidoinicializados ao mesmo tempo.
Existem tcnicas para correco do tempo dos relgios doscomputadores:
Recepo de sinais de rdio do sistema GPS (Global PositioningSystem) preciso de 1 microsegundo.
Sincronizao com um servidor central usando o protocolo NTP(Network Time Protocol) (consultar http://www.oal.ul.pt/hora.php)
-
8/8/2019 Aid Cap2 Modelosfundamentais
6/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Sincronizar Relgios dos Computadores
Windows XP/Vista(duplo clique sobre o relgio Acertar Hora e Data)
Mac OS X(preferncias do sistema Data & Hora)
-
8/8/2019 Aid Cap2 Modelosfundamentais
7/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelo de Interaco
Num SD difcil estabelecer limites ao tempo necessrio execuode um processo, entrega de mensagens e nos desvios dos relgios.
Sistemas Sncronos Difceis de implementar - sistemas em que: Cada operao tem um tempo mnimo e um tempo mximo de execuo; Cada mensagem transmitida no canal deve ser recebida dentro de um
tempo mximo bem conhecido Cada processo tem um relgio cujo desvio mximo relativamente ao
tempo real bem conhecido Sistemas Assncronos, sistemas em que no existem limites:
Temporais para a execuo dos processos, atrasos na mensagens ou nosdesvios dos relgios.
Muito frequente na Internet; Exemplo: uma mensagem de e-mail podedemorar horas ou dias a chegar.
-
8/8/2019 Aid Cap2 Modelosfundamentais
8/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Tipos de Interaco
Activa Processo solicita execuo de operao noutro processo
Reactiva Evento no sistema desencadeia aco num processo
Indirecta Processos comunicam atravs de um espao partilhado
-
8/8/2019 Aid Cap2 Modelosfundamentais
9/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
InteracoReactiva: Modelo Publish/Subscribe
No modelo publish/subscribe, um processo (subscritor/consumidor)subscreve o interesse num conjunto de eventos junto de
outro processo(publisher/produtor) que os fornece.
O publisher envia os eventos de um dado tipo para todosos processos que o subscreveram
-
8/8/2019 Aid Cap2 Modelosfundamentais
10/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Interaco Indirecta
Processos comunicam e coordenam-se atravs dumespao de memria partilhada distribuda Processos escrevem e lem dados no espao de memria partilhada E.g., Base de dados
-
8/8/2019 Aid Cap2 Modelosfundamentais
11/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelo de Interaco:Ordenao de eventos
A determinao da ordem dos eventos dificil, umas vez que os ns ou processos noesto perfeitamente sincronizados Existe interesse em saber-se se um dado evento executado antes, depois ou
concorrencialmente com outro evento noutros processos. A execuo de um sistema pode ser descrito em termos da ordenao dos eventos. Consider umamailing list com utilizadores X, Y, Z, e A.
send
receive
send
receive
m1 m 2
2
1
3
4X
Y
Z
Physicalt ime
Am3
receive r ece ive
send
receive recei ve recei ve
receive
receive
m 2
m1
-
8/8/2019 Aid Cap2 Modelosfundamentais
12/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Resultado: a Inbox de A ser:
Devido independente entrega das mensagens, as mensagens podem serentregues numa ordem diferente.
Se as mensagens m1, m2, m3 transportarem o tempo t1, t2, t3, podem,supostamente, ser mostradas aos utilizadores de acordo com a ordenaodo seu tempo.
Item From Subject
23 Z Re: Meeting
24 X Meeting
26 Y Re: Meeting
-
8/8/2019 Aid Cap2 Modelosfundamentais
13/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelo de Falhas
Num sistema distribudo tanto os processos (ecomputadores) como os canais de comunicao podemfalhar
No possvel conceber componentes sem falhas, apenas se podediminuir a probabilidade de as mesmas ocorrerem
O modelo de falhas consiste na definio rigorosa dequais os erros ou avarias, assim como das falhas quepodem ter lugar nos diferentes componentes.
O modelo de falhas abrange ainda a indicao rigorosa docomportamento global do sistema na presena dos diferentes tipos de
falhas.
-
8/8/2019 Aid Cap2 Modelosfundamentais
14/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Tipos de Falhas
Falha por Omisso Uma falha por omisso d-se quando um processo ou um canal decomunicao falha a execuo de uma aco que devia executar
Exemplo: uma mensagem que devia chegar no chegou Falha Temporal
Uma falha temporal d-se quando um evento que se devia produzirnum determinado perodo de tempo ocorreu mais tarde
Falha Arbitrria Uma falha arbitrria ou bizantina d-se quando se produziu algo no
previsto Exemplo: chegou uma mensagem corrompida, um atacante produziu
uma mensagem no esperada.
As falhas por omisso e as falhas temporais dizem-se falhas benignaspois so mais facilmente mascarveis e no corrompem to facilmenteos outros componentes
-
8/8/2019 Aid Cap2 Modelosfundamentais
15/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Falhas por Omisso e Arbitrrias
Class of failure Affects Description
Omission Channel A message inserted in an outgoing message buffer nevarrives at the other end s incoming message buffer.
Send-omission Process A process completes a send, but the message is not putin its outgoing message buffer.
Receive-omission Process A message is put in a process s incoming messagebuffer, 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.
-
8/8/2019 Aid Cap2 Modelosfundamentais
16/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Falhas na Comunicao
process p process q
Communication channel
send
Outgoing message buffer Incoming message buffer
receivem
Falha send-omission Falha channel-omission Falha receive-omission
-
8/8/2019 Aid Cap2 Modelosfundamentais
17/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Falhas Temporais
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.
-
8/8/2019 Aid Cap2 Modelosfundamentais
18/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Mascarando as Falhas
possvel construir servios fiveis com componentesque exibem falhas. Recurso replicao de dados e componentes
Mltiplos servidores guardando replicas dos dados podemcontinuar a oferecer o servio mesmo que um deles falhe.
O conhecimento do tipo de falha pode permitir que umservio seja desenhado para mascarar a falha doscomponentes de que depende:
Exemplo: Uso deChecksums nas mensagens e de mecanismos de
retransmisso
-
8/8/2019 Aid Cap2 Modelosfundamentais
19/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
A segurana de um SD baseia-se na definio global de uma estratgia oupoltica de segurana que se apoia em diversos mecanismos de proteco informao ou recursos, e que dever ter em conta o valor potencial dainformao, as ameaas esperadas e os custos associados implementao.
No fundo, no fundo o modelo de segurana consiste em definir quais asameaas das quais um sistema se consegue defender.
i) O que queremos proteger? Ex. CPUs, ficheiros com dados secretos, acessos a linhas telefnicas, acesso aperifricos, etc.
ii) Contra quem devemos proteger o sistema? Contra espionagem por escuta em cabos, anlise criptogrfica, tentativas de
adivinhao de palavras chave, etc.
iii) E qual o nvel de segurana? (...) compromisso entre os custos associados (hardware, software e
operadores) e o potencial valor da informao gerida pelo Sistema Distribudo
Modelo de Segurana
-
8/8/2019 Aid Cap2 Modelosfundamentais
20/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Conceitos Base Ameaas, ataques, contra-ataque Umaameaa a um sistema consiste em uma pessoa individual ouorganizao que quer atentar contra a segurana desse sistema.
Umataque o que acontece quando uma ameaa tenta levarvantagem sobre uma vulnerabilidade.
Umataque activo quando a ameaa introduz informaes no sistemana tentativa de tirar vantagens sobre as suas vulnerabilidades.
Um mecanismo decontra-ataque uma aco tomada com intuito defornecer proteco contra um ataque especfico (ou classe) a umavulnerabilidade particular. (Ex : Cartes de multibanco, 3 tentativas).
Numataque passivo a ameaa simplesmente observa a informaoque flui no sistema. No so introduzidas informaes para que seexplorarem as vulnerabilidades desse sistema.
Modelo de Segurana
-
8/8/2019 Aid Cap2 Modelosfundamentais
21/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
O inimigo Ameaas
Communication channel
Copy of m
Process p Process qm
The enemym
Para modelar ameaas de segurana, assume-se que oinimigo tem grande capacidade e pode: Enviar mensagens para qualquer processo
Forjar endereo das mensagens, fazendo-se passar por outroprocesso
Ler, copiar, remover e reenviar mensagens que passam no canal Impedir interaco, repetir interaco, etc.
-
8/8/2019 Aid Cap2 Modelosfundamentais
22/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Realizao da Segurana
Network
invocation
resultClient
Server
Principal (user) Principal (server)
ObjectAccess r ights
Num sistema existem entidades que do ponto de vista da seguranatm identidade prpria, direitos e deveres e.g., utilizadores,processos, etc. Utiliza-se o termo actor/principal para as designar eque pode ser julgado pelos seus actos.
A segurana do sistema distribudo passa por: Proteger os processos e os canais usados para a interaco entre
processos - autenticao dos actores e Canais seguros Proteger os objectos (dados) geridos pelos processos contra acessos
no autorizados - Verificar direitos de acesso aos objectos controlo deacessos
-
8/8/2019 Aid Cap2 Modelosfundamentais
23/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Servios Bsicos de Segurana
Autenticao Pelo que se sabe (Ex : login e palavra chave) Pelo que se tem (Ex : voz, impresses digitais, retina, ADN, etc)
Autorizao ou controlo de acesso Est relacionado com quem pode aceder a um objecto. Envolve
autorizao, direitos e previlgios. O mecanismo mais comum de autorizao so as lista de controlo de
acesso ou ALCs (Access Control Lists). Cada entrada na ACL especificaum utilizador, grupo de utilizadores, e tipo de acesso permitido (Ex :Read, Write, eXecute ).
Objecto0: (Pedro, *,RWX)
Objecto1: (Pedro, estudante, RWX)Objecto2: (Pedro, *, RW_),(Ana, estudante, R__)Objecto3: (*, estudante, R__)Objecto4: (Jos, *,___),(Maria, docente, RWX)
-
8/8/2019 Aid Cap2 Modelosfundamentais
24/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Criptografia Os servios de criptografia permitem que informaes sejam enviadaspor meio de harware no confivel.
A criptografia geralmente permite: Assegurar aprivacidade dos dados. Verificar aintegridade da informao , tal como por exemplo o
CRC faz.
Exemplo: Cifra de Csar Mensagem original: O TRABALHO ESTA QUASE CONCLUIDO Mensagem cifrada: R XUDEDOLR HVXD TZDVH
FRQFOZMGR
Servios Bsicos de Segurana
-
8/8/2019 Aid Cap2 Modelosfundamentais
25/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Canais Seguros
Principal A
The image cannot be displayed. Your computer may not haveenough memory to open the image, or the image may havebeen corrupted. Restart your computer, and then open the leagain. If the red x still appears, you may have to delete theimage and then insert it again.
The image cannot be displayed. Your computer may not haveenough memory to open the image, or the image may havebeen corrupted. Restart your computer, and then open the leagain. If the red x still appears, you may have to delete theimage and then insert it again.
Secure channelProcess p Process q
Principal B
Num canal seguro os interlocutores (A e B) estoautenticados O inimigo no pode ler, copiar, alterar ou introduzir mensagens O inimigo no pode fazerreplaying de mensagens
O inimigo no pode reordenar as mensagens
-
8/8/2019 Aid Cap2 Modelosfundamentais
26/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Texto = sequncia de dados a cifrar aplicando uma dada transformao(M).
As transformaes de cifragem e descodificao so definidas com duaspartes: uma funo (F) e uma chave (K)
A funo f define um algoritmo de cifragem cujo resultado {M} K dependedo valor de uma chave (K).
TextoOriginal(M)
TextoCifrado({M}K)
Algoritmo
deCifragem(F)
Canais Seguros
Chave K
-
8/8/2019 Aid Cap2 Modelosfundamentais
27/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Criptografia Chave Privada (ou Simtrica) As chaves para cifrar e decifrar o texto so idnticas
Canais Seguros
1. Aquisio K 2. f(K ,M)->{M} K 3. Envio {M} K
1. Aquisia K 2. Recepo {M} K 3. f -1 (K ,{M} k )->M
Remetente A Destinatrio B
{M] K
-
8/8/2019 Aid Cap2 Modelosfundamentais
28/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Criptografia Chave Pblica (ou Assimtrica) Deve ser computacionalmente difcil obter a chave privada Kd a partirda chave pblica Ke
1. Aquisio K e2. E(K
e,M)->{M}
Ke3. Envio {M} Ke
1. Clculo de K e , Kd2. Publicao K e3. Recepo {M} Ke4. D(K d,{M}Ke)->M
Base dedados deChaves
Pblicas
Remetente A Destinatrio BPedido
Ke
{M]Ke
Ke
Canais Seguros
-
8/8/2019 Aid Cap2 Modelosfundamentais
29/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Modelos de SistemasReviso 1.0, Reviso 1.1 (Set. 2010)
2007-2011, Alexandre Fonte ([email protected])
-
8/8/2019 Aid Cap2 Modelosfundamentais
30/30
Alexandre Fonte Material de Apoio a AD, ESTCB Edio 2010-2011
Referncias
Coulouris, Dollimore and Kindberg; DistributedSystems: Concepts and Design; Edition 3, Addison-Wesley 2001
Captulo 2: System Models (pg. 29-62)
Para Saber mais sobre Segurana em SistemasDistribudos Unidade Curricular de Segurana Informtica