SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Frederico Madeira
                        LPIC­1, LPIC­2, CCNA
                         fred@madeira.eng.br
                          www.madeira.eng.br




Sistemas Distribuídos
Introdução
Referências

-     Coulouris,   G.;Dollimore,   J.;   Kindberg,       T.;
SISTEMAS DISTRIBUIDOS CONCEITOS E PROJETO. Capítulo 1.
Conceito Formal

    Definimos um sistema distribuído como sendo aquele no qual
os componentes de hardware ou software, localizados em
computadores interligados em rede, se comunicam e coordena
suas ações apenas enviando mensagens entre si.

[Coulourus, G.; Dollimore, J.; Kindberg, T. Sistemas Distribuídos Conceitos e
Projeto]
Consequências da Definição

✔
    Concorrência: Execução concorrente de programas. A
    capacidade de execução concorrente pode ser ampliada com a
    adição de novos computadores ao sistema.

✔
    Inexistência de um relógio global: Quando os programas
    precisam cooperar, eles coordenam suas ações através da
    troca de mensagens;

✔
    Falhas independentes: Falhas são inerentes. Cada
    componente do sistema pode falhar independentemente,
    deixando a inda os outros em funcionamento;
Uma Breve Introdução
Os sistemas distribuídos podem ainda ser definidos como :
✔
    Uma coleção de computadores independentes que aparecem
    para o usuário como um único sistema;

✔
    Sistemas autônomos interconectados por uma rede de
    comunicação;

✔
    Processadores distribuídos cooperando para execução de
    processos, compartilhamento de recursos;

✔
    Um sistema distribuído organizado como middleware, onde o
    nível de middleware abrange múltiplas maquinas.
Exemplos de Sistemas Distribuídos
- A Internet
Exemplos de Sistemas Distribuídos

A Internet


- Os protocolos permitem que um programa em
execução em qualquer lugar envie mensagens para
programas em qualquer outro lugar


- Conjunto de serviços aberto, ou seja, pode ser
ampliado com a adição de novos computadores e
servidores e novos tipos de serviço
Exemplos de Sistemas Distribuídos
- Intranets
Exemplos de Sistemas Distribuídos

Intranets


- Parte da Internet administrada separadamente


- Composta por várias redes locais interligadas por
backbones


- Tamanho pode variar desde um único site a
múltiplos sites.
Exemplos de Sistemas Distribuídos
- Computação Móvel e Ubíqua
Exemplos de Sistemas Distribuídos

Computação Móvel e Ubíqua


- Exemplos: notebooks, PDA, telefones móveis,
dispositivos incorporado em aparelhos como
máquinas de lavar, carros, geladeiras, etc..


- Computação Móvel é a capacidade de um
dispositivo computacional e os serviços associados
ao mesmo serem móveis, permitindo este ser
carregado ou transportado mantendo-se conectado a
rede ou a Internet.


- Computação Ubíqua é a capacidade de estar
conectado à rede e fazer uso da conexão a todo o
momento
Compartilhamento de Recursos
Compartilhamento de Recursos
Principal motivação para criação de SD's.


- Exemplos de recursos: hardware, dados, sistemas
Na Web, os recursos são publicados através de URL
(Uniform Resource Locator)


http://www.cdk4.net
http://www.w3.org/Protocols/Activity.html#intro
http://www.google.com/search?q=kindberg
Nome do         Nome do Caminho           Consulta     Fragmento
Servidor DNS
www.cdk4.net    (padrão)                  (nenhuma)    (nenhum)
www.w3.org      Protocols/Activity.html   (nenhuma)    intro
www.google.co   search                    q=kindberg   (nenhum)
m
Desafios
1. Heterogeneidade
SD devem permitir acesso a um conjunto
heterogêneo de computadores e redes.


Se aplica à:

✔
    Redes
✔
    Hardware de computador
✔
    Sistemas Operacionais
✔
    Linguagens de programação
✔
    Implementação de diferentes programadores


Middleware (corba)
Heterogeneidade e migração de código (java)
Desafios
2. Sistemas Abertos


De forma      resumida:   Principais   interfaces   são
publicadas.


Exemplo: RFC's para os protocolos de Internet


SD abertos podem ser construídos a partir de
hardware e software heterogêneo, possivelmente de
diferentes fornecedores.
Desafios
3. Segurança


Baseada em três componentes:

✔
    Confidencialidade
✔
    Integridade
✔
    Disponibilidade


Dois problemas ainda não resolvidos:

✔
    Ataque de negação de serviço (Denial of Service):
    interrupção de serviço
✔
    Segurança de código móvel: Aplicativo que é
    entregue ao usuário
Desafios
4. Escalabilidade


        Um sistema é descrito com escalável se
permanece eficiente quando há um aumento
significativo no número de recursos e no número de
usuários.

✔
    Controlar o custo dos recursos físicos
✔
    Controlar a perda de desempenho
✔
    Impedir que os recursos de software se esgotem:
    Exemplo: IPv4
✔
    Evitar gargalos de desempenho:           Arquitetura
    antiga DNS. Arquivo de hosts.
Desafios
5. Tratamento de Falhas


  Falhas em SD devem ser parciais, ou seja, alguns
componentes    falham   e    outros    continuam
funcionando.


Algumas técnicas:

✔
    Detecção de Falhas: contadores
✔
    Mascaramento de Falhas: descarte/retransmissão
    de pacotes/Raid.
✔
    Tolerância a falhas
✔
    Recuperação de Falhas
✔
    Redundância: duas rotas de rede, replicação de
    servios DNS/BD.
Desafios
6. Concorrência



     Tanto serviços como os aplicativos fornecem
recursos que podem ser compartilhados pelos
clientes em um SD. Desta forma, existe a
possibilidade de que vários clientes tentem acessar
um recurso compartilhado ao mesmo tempo.
Desafios
7. Transparência
   É definida como ocultação , para um usuário final
ou programador, da separação dos componentes em
um SD de modo que o sistema seja percebido como
um todo, em vez de uma coleção de componentes
independentes.
Tipos:

✔
    De acesso
✔
    De localização
✔
    De concorrência
✔
    De replicação
✔
    De falhas
✔
    De mobilidade
✔
    De desempenho
✔
    De escalabilidade
Frederico Madeira
                        LPIC­1, LPIC­2, CCNA
                         fred@madeira.eng.br
                          www.madeira.eng.br




Sistemas Distribuídos
Introdução

Mais conteúdo relacionado

Mais procurados

SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosFrederico Madeira
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaAdriano Teixeira de Souza
 
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídosAula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídosMessias Batista
 
Sistema operativo servidor
Sistema operativo servidorSistema operativo servidor
Sistema operativo servidorSandu Postolachi
 
Aula de Sistemas Distribuídos - Tolerância a Falhas
Aula de Sistemas Distribuídos - Tolerância a FalhasAula de Sistemas Distribuídos - Tolerância a Falhas
Aula de Sistemas Distribuídos - Tolerância a FalhasVictor Hazin da Rocha
 
Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Arthur Emanuel
 
Introdução à Segurança de Redes
Introdução à Segurança de RedesIntrodução à Segurança de Redes
Introdução à Segurança de RedesSofia Trindade
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosMessias Batista
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileCloves da Rocha
 
Manutenção preventiva
Manutenção preventivaManutenção preventiva
Manutenção preventivaKaren Carvalho
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaVictor Hazin da Rocha
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Redes de computadores II - 4.Camada de Transporte TCP e UDP
Redes de computadores II - 4.Camada de Transporte TCP e UDPRedes de computadores II - 4.Camada de Transporte TCP e UDP
Redes de computadores II - 4.Camada de Transporte TCP e UDPMauro Tapajós
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Messias Batista
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidorsimoesflavio
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidorAndré bogas
 

Mais procurados (20)

SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas Distribuidos
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
 
Virtualização - Máquinas Virtuais
Virtualização - Máquinas VirtuaisVirtualização - Máquinas Virtuais
Virtualização - Máquinas Virtuais
 
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídosAula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
Aula03 Sistemas Distribuídos - Arquiteturas de sistemas distribuídos
 
Sistema operativo servidor
Sistema operativo servidorSistema operativo servidor
Sistema operativo servidor
 
Aula de Sistemas Distribuídos - Tolerância a Falhas
Aula de Sistemas Distribuídos - Tolerância a FalhasAula de Sistemas Distribuídos - Tolerância a Falhas
Aula de Sistemas Distribuídos - Tolerância a Falhas
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01
 
Introdução à Segurança de Redes
Introdução à Segurança de RedesIntrodução à Segurança de Redes
Introdução à Segurança de Redes
 
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídosAula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
Aula02 Sistemas Distribuídos - Caracterização de sistemas distribuídos
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao Mobile
 
Manutenção preventiva
Manutenção preventivaManutenção preventiva
Manutenção preventiva
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação Indireta
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
Redes de computadores II - 4.Camada de Transporte TCP e UDP
Redes de computadores II - 4.Camada de Transporte TCP e UDPRedes de computadores II - 4.Camada de Transporte TCP e UDP
Redes de computadores II - 4.Camada de Transporte TCP e UDP
 
Vantagens__Desvantagens_Tipos_de_servidores
Vantagens__Desvantagens_Tipos_de_servidoresVantagens__Desvantagens_Tipos_de_servidores
Vantagens__Desvantagens_Tipos_de_servidores
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidor
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidor
 

Semelhante a Sistemas Distribuídos: Conceitos e Desafios

Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxChadidoDiogo1
 
Fundamentos da arquitetura cliente servidor.
Fundamentos da arquitetura cliente servidor.Fundamentos da arquitetura cliente servidor.
Fundamentos da arquitetura cliente servidor.Valdeir Frizzera
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdfRoberto Aragy
 
Caracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidosCaracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidosPortal_do_Estudante_SD
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionaisDuFelix02
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdfDimas Francisco
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...Ramon Mayor Martins
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em NuvemVitor Savicki
 
Cloud
CloudCloud
CloudFYPA
 
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Ministério Público da Paraíba
 
Computação em Nuvem
Computação em Nuvem  Computação em Nuvem
Computação em Nuvem Toivo Gomes
 
Ferramenta de Cloud Computer para apoio à Engenharia de Software
Ferramenta de Cloud Computer para apoio à Engenharia de SoftwareFerramenta de Cloud Computer para apoio à Engenharia de Software
Ferramenta de Cloud Computer para apoio à Engenharia de SoftwareDanilo Sousa
 
Cloud computing, Grid Computing, Virtualization
Cloud computing, Grid Computing, VirtualizationCloud computing, Grid Computing, Virtualization
Cloud computing, Grid Computing, VirtualizationAdário Muatelembe
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebDaniel Brandão
 
Distributed Systems - Exercises
Distributed Systems - ExercisesDistributed Systems - Exercises
Distributed Systems - ExercisesMichel Alves
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em redeFabio Roberto
 

Semelhante a Sistemas Distribuídos: Conceitos e Desafios (20)

Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 
Aula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosdsAula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosds
 
Fundamentos da arquitetura cliente servidor.
Fundamentos da arquitetura cliente servidor.Fundamentos da arquitetura cliente servidor.
Fundamentos da arquitetura cliente servidor.
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdf
 
Caracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidosCaracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidos
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Introdução à sistemas distribuídos
Introdução à sistemas distribuídosIntrodução à sistemas distribuídos
Introdução à sistemas distribuídos
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf
 
Introducao.2s
Introducao.2sIntroducao.2s
Introducao.2s
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
 
Desenvolvimento em Nuvem
Desenvolvimento em NuvemDesenvolvimento em Nuvem
Desenvolvimento em Nuvem
 
Cloud
CloudCloud
Cloud
 
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
Tecnologias Atuais de Redes - Aula 6 - Cloud Computing [Apostila]
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Computação em Nuvem
Computação em Nuvem  Computação em Nuvem
Computação em Nuvem
 
Ferramenta de Cloud Computer para apoio à Engenharia de Software
Ferramenta de Cloud Computer para apoio à Engenharia de SoftwareFerramenta de Cloud Computer para apoio à Engenharia de Software
Ferramenta de Cloud Computer para apoio à Engenharia de Software
 
Cloud computing, Grid Computing, Virtualization
Cloud computing, Grid Computing, VirtualizationCloud computing, Grid Computing, Virtualization
Cloud computing, Grid Computing, Virtualization
 
Aula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para WebAula 1 - Programação Dinâmica para Web
Aula 1 - Programação Dinâmica para Web
 
Distributed Systems - Exercises
Distributed Systems - ExercisesDistributed Systems - Exercises
Distributed Systems - Exercises
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
 

Mais de Frederico Madeira

Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud ComputingFrederico Madeira
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoFrederico Madeira
 
SI - SAD - Sistemas de Arquivos Distribuídos
SI - SAD  - Sistemas de Arquivos DistribuídosSI - SAD  - Sistemas de Arquivos Distribuídos
SI - SAD - Sistemas de Arquivos DistribuídosFrederico Madeira
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaFrederico Madeira
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDFrederico Madeira
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de ProgramasFrederico Madeira
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internetFrederico Madeira
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open sourceFrederico Madeira
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaFrederico Madeira
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreFrederico Madeira
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksFrederico Madeira
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFrederico Madeira
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesFrederico Madeira
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de RedesFrederico Madeira
 
Apresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesApresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesFrederico Madeira
 

Mais de Frederico Madeira (20)

WebServices
WebServicesWebServices
WebServices
 
IoT - Internet of Things
IoT -  Internet of ThingsIoT -  Internet of Things
IoT - Internet of Things
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
SI - SAD - Sistemas de Arquivos Distribuídos
SI - SAD  - Sistemas de Arquivos DistribuídosSI - SAD  - Sistemas de Arquivos Distribuídos
SI - SAD - Sistemas de Arquivos Distribuídos
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de Programas
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open source
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software Livre
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation Networks
 
MRTG - SNMP na Prática
MRTG - SNMP na PráticaMRTG - SNMP na Prática
MRTG - SNMP na Prática
 
Introdução ao SNMP
Introdução ao SNMPIntrodução ao SNMP
Introdução ao SNMP
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em Redes
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
 
Apresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de RedesApresentação da disciplina de Gerência de Redes
Apresentação da disciplina de Gerência de Redes
 

Sistemas Distribuídos: Conceitos e Desafios

  • 1. Frederico Madeira LPIC­1, LPIC­2, CCNA fred@madeira.eng.br www.madeira.eng.br Sistemas Distribuídos Introdução
  • 2. Referências - Coulouris, G.;Dollimore, J.; Kindberg, T.; SISTEMAS DISTRIBUIDOS CONCEITOS E PROJETO. Capítulo 1.
  • 3. Conceito Formal Definimos um sistema distribuído como sendo aquele no qual os componentes de hardware ou software, localizados em computadores interligados em rede, se comunicam e coordena suas ações apenas enviando mensagens entre si. [Coulourus, G.; Dollimore, J.; Kindberg, T. Sistemas Distribuídos Conceitos e Projeto]
  • 4. Consequências da Definição ✔ Concorrência: Execução concorrente de programas. A capacidade de execução concorrente pode ser ampliada com a adição de novos computadores ao sistema. ✔ Inexistência de um relógio global: Quando os programas precisam cooperar, eles coordenam suas ações através da troca de mensagens; ✔ Falhas independentes: Falhas são inerentes. Cada componente do sistema pode falhar independentemente, deixando a inda os outros em funcionamento;
  • 5. Uma Breve Introdução Os sistemas distribuídos podem ainda ser definidos como : ✔ Uma coleção de computadores independentes que aparecem para o usuário como um único sistema; ✔ Sistemas autônomos interconectados por uma rede de comunicação; ✔ Processadores distribuídos cooperando para execução de processos, compartilhamento de recursos; ✔ Um sistema distribuído organizado como middleware, onde o nível de middleware abrange múltiplas maquinas.
  • 6. Exemplos de Sistemas Distribuídos - A Internet
  • 7. Exemplos de Sistemas Distribuídos A Internet - Os protocolos permitem que um programa em execução em qualquer lugar envie mensagens para programas em qualquer outro lugar - Conjunto de serviços aberto, ou seja, pode ser ampliado com a adição de novos computadores e servidores e novos tipos de serviço
  • 8. Exemplos de Sistemas Distribuídos - Intranets
  • 9. Exemplos de Sistemas Distribuídos Intranets - Parte da Internet administrada separadamente - Composta por várias redes locais interligadas por backbones - Tamanho pode variar desde um único site a múltiplos sites.
  • 10. Exemplos de Sistemas Distribuídos - Computação Móvel e Ubíqua
  • 11. Exemplos de Sistemas Distribuídos Computação Móvel e Ubíqua - Exemplos: notebooks, PDA, telefones móveis, dispositivos incorporado em aparelhos como máquinas de lavar, carros, geladeiras, etc.. - Computação Móvel é a capacidade de um dispositivo computacional e os serviços associados ao mesmo serem móveis, permitindo este ser carregado ou transportado mantendo-se conectado a rede ou a Internet. - Computação Ubíqua é a capacidade de estar conectado à rede e fazer uso da conexão a todo o momento
  • 13. Compartilhamento de Recursos Principal motivação para criação de SD's. - Exemplos de recursos: hardware, dados, sistemas Na Web, os recursos são publicados através de URL (Uniform Resource Locator) http://www.cdk4.net http://www.w3.org/Protocols/Activity.html#intro http://www.google.com/search?q=kindberg Nome do Nome do Caminho Consulta Fragmento Servidor DNS www.cdk4.net (padrão) (nenhuma) (nenhum) www.w3.org Protocols/Activity.html (nenhuma) intro www.google.co search q=kindberg (nenhum) m
  • 14. Desafios 1. Heterogeneidade SD devem permitir acesso a um conjunto heterogêneo de computadores e redes. Se aplica à: ✔ Redes ✔ Hardware de computador ✔ Sistemas Operacionais ✔ Linguagens de programação ✔ Implementação de diferentes programadores Middleware (corba) Heterogeneidade e migração de código (java)
  • 15. Desafios 2. Sistemas Abertos De forma resumida: Principais interfaces são publicadas. Exemplo: RFC's para os protocolos de Internet SD abertos podem ser construídos a partir de hardware e software heterogêneo, possivelmente de diferentes fornecedores.
  • 16. Desafios 3. Segurança Baseada em três componentes: ✔ Confidencialidade ✔ Integridade ✔ Disponibilidade Dois problemas ainda não resolvidos: ✔ Ataque de negação de serviço (Denial of Service): interrupção de serviço ✔ Segurança de código móvel: Aplicativo que é entregue ao usuário
  • 17. Desafios 4. Escalabilidade Um sistema é descrito com escalável se permanece eficiente quando há um aumento significativo no número de recursos e no número de usuários. ✔ Controlar o custo dos recursos físicos ✔ Controlar a perda de desempenho ✔ Impedir que os recursos de software se esgotem: Exemplo: IPv4 ✔ Evitar gargalos de desempenho: Arquitetura antiga DNS. Arquivo de hosts.
  • 18. Desafios 5. Tratamento de Falhas Falhas em SD devem ser parciais, ou seja, alguns componentes falham e outros continuam funcionando. Algumas técnicas: ✔ Detecção de Falhas: contadores ✔ Mascaramento de Falhas: descarte/retransmissão de pacotes/Raid. ✔ Tolerância a falhas ✔ Recuperação de Falhas ✔ Redundância: duas rotas de rede, replicação de servios DNS/BD.
  • 19. Desafios 6. Concorrência Tanto serviços como os aplicativos fornecem recursos que podem ser compartilhados pelos clientes em um SD. Desta forma, existe a possibilidade de que vários clientes tentem acessar um recurso compartilhado ao mesmo tempo.
  • 20. Desafios 7. Transparência É definida como ocultação , para um usuário final ou programador, da separação dos componentes em um SD de modo que o sistema seja percebido como um todo, em vez de uma coleção de componentes independentes. Tipos: ✔ De acesso ✔ De localização ✔ De concorrência ✔ De replicação ✔ De falhas ✔ De mobilidade ✔ De desempenho ✔ De escalabilidade
  • 21. Frederico Madeira LPIC­1, LPIC­2, CCNA fred@madeira.eng.br www.madeira.eng.br Sistemas Distribuídos Introdução