Sistemas Distribuídos

João Paulo Silva Araújo
Mind Map by João Paulo Silva Araújo, updated more than 1 year ago
João Paulo Silva Araújo
Created by João Paulo Silva Araújo almost 7 years ago
229
7

Description

Estudos Sistemas Distribuídos Mind Map on Sistemas Distribuídos, created by João Paulo Silva Araújo on 04/10/2014.

Resource summary

Sistemas Distribuídos

Annotations:

  • Conjunto de computadores independentes entre si que aparentam ser um sistema único e coerente
  1. Tipos de SDs
    1. Sistemas de Computação
      1. Cluster
        1. Grade (Grid)

          Annotations:

          • Recursos de diferentes organizações são reunidos para permitir a colaboração de um grupo de pessoas ou instituições
        2. Sistemas de Informação
          1. Sistemas Empresariais
            1. Processamento de Transações
            2. Sistemas Pervasivos

              Annotations:

              • Caracteriz pela ausência geral de controle administrativo humano; Requisitos:    - Adotar mudanças contextuais;  - Incentivar composição ad hoc;  - Reconhecer compartilhamento como padrão  
              1. Sistemas de dispositivos de computação móvel
                1. Sistemas domésticos
                  1. Redes de sensores
                    1. Sistemas eletrônicos
                  2. Exemplos de SDs
                    1. Internet
                      1. Intranet
                        1. Aplicações Comerciais
                        2. Arquitetura

                          Annotations:

                          • Os modelos de arquiteturas definem com os componentes de um sistema interage e como eles são mapeados na rede de computadores; Devem oferecer: - Confiabilidade; - Gerenciamento; - Adaptabilidade; - Viabilidade Econômica
                          • Outros Conceitos relacionados: - Arquitetura em camadas; - Arquitetura baseadas em objetos;  - Arquiteturas baseadas em eventos- Servidores de Borda;- Interceptadores;
                          1. Modelo Cliente/Servidor
                            1. Nível de Interface do Usuário
                              1. Nível de Processamento
                                1. Nível de Dados
                                2. Modelo P2P
                                  1. Distribuited HashTable (DHT)
                                    1. Softwares Colaborativos
                                      1. Torrents
                                    2. Modelo Código Móvel (Applets)
                                      1. Modelo Agentes Móveis
                                        1. Modelo Clientes Finos (leves) - (thin client)
                                          1. Modelo Dispositivos Móveis

                                            Annotations:

                                            • Mobilidade leva a interoperabilidade espontânea; Variação no modelo cliente-servidor na qual associações entre dispositivos são a todo momento criadas e destruídas.
                                            1. Modelo de Interação
                                              1. Comunicação (Entre Processos)
                                                1. Protocolos comunicação em camadas
                                                  1. Modelo OSI
                                                    1. Modelo TCP/IP
                                                    2. Protocolos de Middlewares
                                                      1. Chamada de Procedimento Remoto (RPC)
                                                        1. Síncrono
                                                          1. Assíncrono
                                                          2. Ligação (Msgs) entre Cliente e Servidor
                                                            1. Comunicação via sockets
                                                            2. Padrão: Message Passing Interface (MPI)

                                                              Annotations:

                                                              • Troca de informações entre vários processadores ou nodos de um cluster
                                                              1. Padrão que oferece infraestrutura para computação paralela
                                                              2. Modelos de Filas de Mensagens
                                                                1. Streaming de dados por uma rede
                                                                  1. Mecanismos de sincronização
                                                                    1. Quality of Service (QoS)
                                                                      1. Comunicação entre Aplic. e SDs orientados a objetos
                                                                        1. CORBA
                                                                          1. JAVA RMI
                                                                            1. WebServices
                                                                              1. Servlets
                                                                                1. J2EE (Java 2 Enterprise Edition)
                                                                                  1. EJB (Enterprise Java Bean)
                                                                                  2. Por Mensagens (Datagramas)
                                                                                    1. Por Fluxo (Stream)
                                                                                    2. Algoritmo distribuído (AD)

                                                                                      Annotations:

                                                                                      • Descreve passos que cada processo executa, incluindo transmissão de mensagens entre eles.
                                                                                      1. Noção de Tempo Global único
                                                                                      2. Desempenho de Comunic.
                                                                                        1. Latência
                                                                                          1. Largura de Banda
                                                                                            1. Jitter
                                                                                        2. Naming
                                                                                          1. Príncipios de IPs móveis
                                                                                            1. Conceitos de nomes,identificadores e enderesços
                                                                                              1. Forwarding Pointers
                                                                                                1. Distribuição de Nomes
                                                                                                  1. Domain Name System (DNS)
                                                                                                  2. Organização hierárquica de localizações de serviços em domínios
                                                                                                    1. Name Spaces
                                                                                                    2. Consistência e Replicação
                                                                                                      1. Razões para se replicar dados
                                                                                                        1. Modelos de Consistência centralizados em dados
                                                                                                          1. Consistência Contínua
                                                                                                            1. Consistência sequencial
                                                                                                              1. Consistência causal
                                                                                                                1. Consistência eventual
                                                                                                              2. Segurança
                                                                                                                1. Criptografia
                                                                                                                  1. Autenticação
                                                                                                                    1. Autorização
                                                                                                                      1. Lista de controle de acesso
                                                                                                                        1. Firewall
                                                                                                                          1. Sandbox
                                                                                                                            1. Algoritmos de segurança
                                                                                                                              1. Kerberos
                                                                                                                                1. Assinatura Digital
                                                                                                                                  1. Needham-Schroeder protocol
                                                                                                                                2. Sistemas de Arquivos Distribuídos
                                                                                                                                  1. NFS (Network file system)
                                                                                                                                    1. GFS (Google file system)
                                                                                                                                    2. Cloud Computing
                                                                                                                                      1. Map Reduce
                                                                                                                                        1. LISP
                                                                                                                                        2. Sincronização
                                                                                                                                          1. Sinc. Relógios
                                                                                                                                            1. Localização via GPS
                                                                                                                                              1. Algoritmos de exclusão mútua
                                                                                                                                                1. Algoritmos de eleição
                                                                                                                                                2. VANTAGENS dos SDs

                                                                                                                                                  Annotations:

                                                                                                                                                  • (sobre os Sist. Centralizados e PCs indep.)
                                                                                                                                                  1. ECONOMIA - Solução mais efetiva em custo (Vários processadores baratos)
                                                                                                                                                    1. DESEMPENHO - com processamento distribuído ao invés de centralizado
                                                                                                                                                      1. DISTRIBUIÇÃO INERENTE

                                                                                                                                                        Annotations:

                                                                                                                                                        • Aplicações necessitam de máquinas separadas
                                                                                                                                                        1. Sist. Controle de Produção de Fábrica
                                                                                                                                                          1. Sist. Reserva de Passagens
                                                                                                                                                            1. Sist. de Suporte ao trab. cooperativo
                                                                                                                                                            2. CONFIABILIDADE - Falha em 1 máquina não para o sistema
                                                                                                                                                              1. ESCALABILIDADE - Recursos são adicionados conforme necessidade
                                                                                                                                                                1. COMPARTILHAMENTO DE DADOS
                                                                                                                                                                  1. COMPARTILHAMENTO DE RECURSOS
                                                                                                                                                                    1. FLEXIBILIDADE (Dividir carga de trabalho)
                                                                                                                                                                    2. DESVANTAGENS dos SDs
                                                                                                                                                                      1. SOFTWARE
                                                                                                                                                                        1. Falta de experiência (Pouco software exist. p/ SDs)
                                                                                                                                                                          1. Falta de Consenso de especialistas

                                                                                                                                                                            Annotations:

                                                                                                                                                                            • Quanto um usuário deve conhecer a distribuição; Quanto deve o sistema fazer e quanto deve o usuário fazer
                                                                                                                                                                          2. REDES DE COMUNIC.
                                                                                                                                                                            1. Perda de mensagens
                                                                                                                                                                              1. Sobrecarga na rede
                                                                                                                                                                                1. Segurança
                                                                                                                                                                              2. QUESTÕES ???

                                                                                                                                                                                Attachments:

                                                                                                                                                                                1. CARACTERÍSTICAS DOS SDs (METAS)
                                                                                                                                                                                  1. TRANSPARÊNCIA (Tipos)

                                                                                                                                                                                    Annotations:

                                                                                                                                                                                    • Esconder detalhes de implementação do usuário
                                                                                                                                                                                    1. Acesso

                                                                                                                                                                                      Annotations:

                                                                                                                                                                                      • Ocultar diferença entre arquiteturas diferentes; Objetos locais e remotos são acessados da mesma forma
                                                                                                                                                                                      1. Nomeação de arquivos em SOs diferentes
                                                                                                                                                                                        1. Acordo sobre como os dados devem ser representados
                                                                                                                                                                                        2. Localização

                                                                                                                                                                                          Annotations:

                                                                                                                                                                                          • Usuários não sabem onde é a localização física do recurso (ex.: servidor)
                                                                                                                                                                                          1. Nomeação (www.google.com)
                                                                                                                                                                                          2. Migração

                                                                                                                                                                                            Annotations:

                                                                                                                                                                                            • Recursos podem migrar de local por questões de desempenho ou recurso
                                                                                                                                                                                            1. Migração de localidade deve garantir a continuidade de comunicação
                                                                                                                                                                                            2. Relocação

                                                                                                                                                                                              Annotations:

                                                                                                                                                                                              • Oculta que um recurso possa ser movido para outra localização durante o uso
                                                                                                                                                                                              1. Celular movimentando na mesma área de cobertura
                                                                                                                                                                                                1. Automóvel passando em várias redes sem fio com conexão ininterrupta
                                                                                                                                                                                                2. Replicação

                                                                                                                                                                                                  Annotations:

                                                                                                                                                                                                  • Uso de várias instancias de recursos para aumentar a confiabilidade e o desempenho
                                                                                                                                                                                                  1. Uso de várias instâncias de recursos
                                                                                                                                                                                                  2. Concorrência

                                                                                                                                                                                                    Annotations:

                                                                                                                                                                                                    • Deve garantir consistência; Travas de acesso; Usuário não percebe a concorrência; Tratamento mais refinado: transações
                                                                                                                                                                                                    1. Compartilhamento competitivo de recursos
                                                                                                                                                                                                    2. Falhas

                                                                                                                                                                                                      Annotations:

                                                                                                                                                                                                      • Usuários não devem perceber que um recurso deixou de funcionar bem
                                                                                                                                                                                                      1. Mascarar falhas para o usuário
                                                                                                                                                                                                      2. Escala
                                                                                                                                                                                                        1. Sist. muda de escala sem que usuário perceba
                                                                                                                                                                                                      3. ESCALABILIDADE

                                                                                                                                                                                                        Annotations:

                                                                                                                                                                                                        • Manipular qtde crescente de trabalho de forma uniforme
                                                                                                                                                                                                        1. Tamanho (Problemas)
                                                                                                                                                                                                          1. Gargalo de serviços centralizados
                                                                                                                                                                                                            1. Saturação de linhas de comunicação
                                                                                                                                                                                                            2. Termos Geográficos (Problemas)
                                                                                                                                                                                                              1. Dificuldade de ampliar SDs que foram projetados para LANs
                                                                                                                                                                                                                1. Comunicação não confiável em redes de longa distância
                                                                                                                                                                                                                2. Termos administrativos (Problemas)

                                                                                                                                                                                                                  Annotations:

                                                                                                                                                                                                                  • Sistema pode ser fácil de ser gerenciado, mesmo que abranja várias organizações diferentes
                                                                                                                                                                                                                  1. Políticas conflitantes em relação a utilização, pagamento, gerenciamento e segurança de recursos
                                                                                                                                                                                                                    1. Ação indevida a recursos que estão na fronteiras do Domínio
                                                                                                                                                                                                                      1. Usuários finais tomam o controle (P2P)
                                                                                                                                                                                                                      2. Técnicas
                                                                                                                                                                                                                        1. Distribuição de Processamento em partes

                                                                                                                                                                                                                          Annotations:

                                                                                                                                                                                                                          • Exemplo: Hierarquia do DNS
                                                                                                                                                                                                                          1. Ocultar latências de comunicação
                                                                                                                                                                                                                            1. Comunicação Assíncrona
                                                                                                                                                                                                                              1. Passar parte do processamento para o cliente

                                                                                                                                                                                                                                Annotations:

                                                                                                                                                                                                                                • Redução de Comunicação Global 
                                                                                                                                                                                                                              2. Replicação de componentes p/ equilibrar carga

                                                                                                                                                                                                                                Annotations:

                                                                                                                                                                                                                                • Exemplo: Cache
                                                                                                                                                                                                                            2. TOLERÂNCIA A FALHAS
                                                                                                                                                                                                                              1. Tipos de falhas em SDs
                                                                                                                                                                                                                                1. Indisponibilidade (Medida)

                                                                                                                                                                                                                                  Annotations:

                                                                                                                                                                                                                                  • Disponibilidade: Medida da porção de tempo que o sistema permanece operacional; Evita-se através da redundância  gerenciada de hardware ou replicação de hardware
                                                                                                                                                                                                                                  1. Falhas de coerência (Msg fora de ordemm)
                                                                                                                                                                                                                                  2. Mecanismo de mascaramento de falhas
                                                                                                                                                                                                                                    1. Diferença de falhas em grupo plano e grupo hierárquico
                                                                                                                                                                                                                                      1. Consenso em sistemas falhos
                                                                                                                                                                                                                                        1. Formas de se aumentar a Tolerância a falhas
                                                                                                                                                                                                                                          1. Redundância de hardware
                                                                                                                                                                                                                                            1. Recuperação por software

                                                                                                                                                                                                                                              Annotations:

                                                                                                                                                                                                                                              • Uma falha pode ocasionar  uma informação pode ficar em estado não coerente.    Ex.: Falhas durante uma transação de A p/ B deve cancelar a operação (Roll-back) BDs transacionais
                                                                                                                                                                                                                                              1. Controle de Feedback
                                                                                                                                                                                                                                                1. Sincronização Virtual
                                                                                                                                                                                                                                                  1. Commit em 2 fases
                                                                                                                                                                                                                                                    1. Commit em 3 fases
                                                                                                                                                                                                                                                      1. Checkpointing
                                                                                                                                                                                                                                                  2. ABERTURA
                                                                                                                                                                                                                                                    1. Hardware de fabricantes distintos
                                                                                                                                                                                                                                                      1. Software
                                                                                                                                                                                                                                                        1. Protocolos de Comunicação.
                                                                                                                                                                                                                                                          1. Módulos de SO
                                                                                                                                                                                                                                                            1. Obtida pela Especificação de Interfaces
                                                                                                                                                                                                                                                              1. Linguagem de doc. de Interface (IDL)
                                                                                                                                                                                                                                                              2. Deve(ria) passar pela Padronização
                                                                                                                                                                                                                                                                1. IEEE
                                                                                                                                                                                                                                                                  1. ISO
                                                                                                                                                                                                                                                                    1. OMG-CORBA
                                                                                                                                                                                                                                                                  2. Interoperabilidade

                                                                                                                                                                                                                                                                    Annotations:

                                                                                                                                                                                                                                                                    • Define até que ponto 2 implementações de recursos de fornecedores diferentes devem coexistir e trabalhar em conjunto com confiança mútua
                                                                                                                                                                                                                                                                    1. Portabilidade

                                                                                                                                                                                                                                                                      Annotations:

                                                                                                                                                                                                                                                                      • Caracteriza até que ponto uma aplicação A pode ser executada sem modificação em um SD A e um SD B Habilidade de reusar um código existente ao invés de refazê-lo quando este é movido de um ambiente para outro
                                                                                                                                                                                                                                                                    2. ACESSO A RECURSOS (Compartilhamento)
                                                                                                                                                                                                                                                                      1. Compart. Hardware
                                                                                                                                                                                                                                                                        1. Compart. Software
                                                                                                                                                                                                                                                                        2. Tem um único mecanismo de comunicação interprocessos

                                                                                                                                                                                                                                                                          Annotations:

                                                                                                                                                                                                                                                                          • Global - Qualquer processo pode se comunicar com qualquer outro
                                                                                                                                                                                                                                                                          1. Gerenciamento de Processos precisa ser o mesmo no sistema todo
                                                                                                                                                                                                                                                                            1. Tem um único conjunto de chamadas do sistema
                                                                                                                                                                                                                                                                              1. Sist. de arquivos deve ter as mesmas características
                                                                                                                                                                                                                                                                                1. Cópias idênticas do kernel em todas as CPUs
                                                                                                                                                                                                                                                                                  1. CONCORRÊNCIA
                                                                                                                                                                                                                                                                                    1. Arquitetura centralizada (1 processador)

                                                                                                                                                                                                                                                                                      Annotations:

                                                                                                                                                                                                                                                                                      • Concorrência obtida pela intercalação de processos
                                                                                                                                                                                                                                                                                      1. Arquitetura com N processadores

                                                                                                                                                                                                                                                                                        Annotations:

                                                                                                                                                                                                                                                                                        • 1 processador por processo (N vezes mais rápido que a centralizada)
                                                                                                                                                                                                                                                                                        1. Acesso ao mesmo recurso
                                                                                                                                                                                                                                                                                          1. Sincronização de acesso p/ ficar coerente

                                                                                                                                                                                                                                                                                            Annotations:

                                                                                                                                                                                                                                                                                            • Ao mesmo tempo, deve-se evitar a perda dos benefícios da concorrência
                                                                                                                                                                                                                                                                                      Show full summary Hide full summary

                                                                                                                                                                                                                                                                                      Similar

                                                                                                                                                                                                                                                                                      Comunicação de Dados e Redes
                                                                                                                                                                                                                                                                                      cesarfabr
                                                                                                                                                                                                                                                                                      REDES DE COMPUTADORES
                                                                                                                                                                                                                                                                                      quirinodox
                                                                                                                                                                                                                                                                                      REDES DE COMPUTADORES
                                                                                                                                                                                                                                                                                      Mirela Sandes
                                                                                                                                                                                                                                                                                      REDES DE COMPUTADORES
                                                                                                                                                                                                                                                                                      Antonio Gilneson
                                                                                                                                                                                                                                                                                      Redes de Computadores
                                                                                                                                                                                                                                                                                      deisi.weg
                                                                                                                                                                                                                                                                                      Simulado sobre conceitos de redes de computadores
                                                                                                                                                                                                                                                                                      paulohenriquebs
                                                                                                                                                                                                                                                                                      Gerência de Redes
                                                                                                                                                                                                                                                                                      Adilson Matos
                                                                                                                                                                                                                                                                                      Redes - Modelo OSI - Camadas
                                                                                                                                                                                                                                                                                      Rodrigo Ferreira
                                                                                                                                                                                                                                                                                      PSI - Política de Segurança da Informação
                                                                                                                                                                                                                                                                                      Raoni Carvalho
                                                                                                                                                                                                                                                                                      Senai-Bruna
                                                                                                                                                                                                                                                                                      brunnahrodrigues