Aid Cap2 Modelosfundamentais

Embed Size (px)

Citation preview

  • 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