1) A comunicação entre processos em sistemas distribuídos é feita através da troca de mensagens, ao invés de memória compartilhada.
2) Protocolos de comunicação utilizam camadas para facilitar a implementação e entendimento da troca de mensagens entre sistemas heterogêneos.
3) O Modelo OSI define sete camadas de funcionalidade para a comunicação entre sistemas abertos de forma estruturada.
O documento explica os conceitos básicos de endereçamento IPv4, incluindo classes de rede A, B e C, máscaras de rede, endereços de broadcast, sub-redes e endereços privados.
O documento discute sistemas de gerência de redes. Ele descreve como esses sistemas fornecem interfaces unificadas para monitorar e controlar redes de forma integrada. Também explica que esses sistemas são compostos por plataformas de gerência de redes e aplicações que operam sobre essas plataformas.
O modelo cliente-servidor descreve a relação entre programas em uma aplicação, onde o servidor fornece serviços e funções para um ou mais clientes que iniciam pedidos de serviço. Os clientes podem se conectar a vários servidores simultaneamente e os servidores processam as solicitações e retornam as informações solicitadas. Embora aplicável a diferentes tipos de aplicações, a arquitetura permanece a mesma, com o servidor centralizando recursos e administração.
1) O documento descreve os conceitos básicos de redes de computadores, incluindo definição, sistemas de comunicação, classificação, topologias e meios de transmissão.
2) As redes podem ser classificadas de acordo com o alcance, conexão e uso. Exemplos de topologias incluem barramento, anel e estrela. Cabos de par trançado e fibra ótica são comumente usados como meios de transmissão.
3) A configuração de dispositivos de rede como roteadores, switches, plac
Redes PON são arquiteturas de fibra óptica que fornecem banda larga de alta velocidade para residências e empresas de forma compartilhada e econômica. Elas distribuem sinal óptico de uma central até vários usuários através de divisores ópticos, permitindo a oferta conjunta de internet, voz e TV. O termo FTTx engloba diferentes modelos como FTTH, FTTB e FTTC que variam na distância que a fibra é levada.
O documento descreve os componentes e estrutura básica de um diagrama de casos de uso. Ele explica que casos de uso representam as funcionalidades do sistema e atores representam os usuários. O documento também fornece exemplos de como documentar casos de uso e mostrar as associações entre casos de uso e atores.
Aula 01 - Introdução ao curso - Projeto de Redes de ComputadoresDalton Martins
Este documento apresenta o curso de Projeto de Redes de Computadores da Fatec São Paulo. O curso tem como objetivos ensinar os alunos a desenvolver projetos de redes abordando aspectos técnicos e de gestão. O material de apoio inclui um livro didático e um simulador de redes. A avaliação dos alunos será feita por meio de duas provas, um projeto de rede e um artigo sobre tendências atuais.
O documento explica como funcionam os servidores de e-mail, descrevendo o processo de envio e recebimento de mensagens através dos protocolos SMTP, POP3 e IMAP. As mensagens são enviadas pelo remetente para o servidor do provedor de acesso à internet e então transmitidas através da internet para o servidor do destinatário, de onde podem ser baixadas pelo cliente de e-mail deste.
O documento explica os conceitos básicos de endereçamento IPv4, incluindo classes de rede A, B e C, máscaras de rede, endereços de broadcast, sub-redes e endereços privados.
O documento discute sistemas de gerência de redes. Ele descreve como esses sistemas fornecem interfaces unificadas para monitorar e controlar redes de forma integrada. Também explica que esses sistemas são compostos por plataformas de gerência de redes e aplicações que operam sobre essas plataformas.
O modelo cliente-servidor descreve a relação entre programas em uma aplicação, onde o servidor fornece serviços e funções para um ou mais clientes que iniciam pedidos de serviço. Os clientes podem se conectar a vários servidores simultaneamente e os servidores processam as solicitações e retornam as informações solicitadas. Embora aplicável a diferentes tipos de aplicações, a arquitetura permanece a mesma, com o servidor centralizando recursos e administração.
1) O documento descreve os conceitos básicos de redes de computadores, incluindo definição, sistemas de comunicação, classificação, topologias e meios de transmissão.
2) As redes podem ser classificadas de acordo com o alcance, conexão e uso. Exemplos de topologias incluem barramento, anel e estrela. Cabos de par trançado e fibra ótica são comumente usados como meios de transmissão.
3) A configuração de dispositivos de rede como roteadores, switches, plac
Redes PON são arquiteturas de fibra óptica que fornecem banda larga de alta velocidade para residências e empresas de forma compartilhada e econômica. Elas distribuem sinal óptico de uma central até vários usuários através de divisores ópticos, permitindo a oferta conjunta de internet, voz e TV. O termo FTTx engloba diferentes modelos como FTTH, FTTB e FTTC que variam na distância que a fibra é levada.
O documento descreve os componentes e estrutura básica de um diagrama de casos de uso. Ele explica que casos de uso representam as funcionalidades do sistema e atores representam os usuários. O documento também fornece exemplos de como documentar casos de uso e mostrar as associações entre casos de uso e atores.
Aula 01 - Introdução ao curso - Projeto de Redes de ComputadoresDalton Martins
Este documento apresenta o curso de Projeto de Redes de Computadores da Fatec São Paulo. O curso tem como objetivos ensinar os alunos a desenvolver projetos de redes abordando aspectos técnicos e de gestão. O material de apoio inclui um livro didático e um simulador de redes. A avaliação dos alunos será feita por meio de duas provas, um projeto de rede e um artigo sobre tendências atuais.
O documento explica como funcionam os servidores de e-mail, descrevendo o processo de envio e recebimento de mensagens através dos protocolos SMTP, POP3 e IMAP. As mensagens são enviadas pelo remetente para o servidor do provedor de acesso à internet e então transmitidas através da internet para o servidor do destinatário, de onde podem ser baixadas pelo cliente de e-mail deste.
O documento descreve os principais protocolos de rede e comunicação na Internet, incluindo TCP/IP, HTTP, HTTPS, FTP e protocolos de email. TCP/IP é o principal protocolo da Internet que permite a comunicação entre computadores através da divisão dos dados em pacotes. HTTPS é uma versão segura do HTTP que utiliza criptografia SSL/TLS.
O documento descreve o modelo de camadas TCP/IP, que consiste em quatro camadas: aplicação, transporte, inter-rede e interface de rede. A camada de aplicação contém protocolos como Telnet, FTP e HTTP. A camada de transporte inclui TCP e UDP. A camada inter-rede usa protocolos como IP e ICMP. A camada de interface de rede gerencia a interface física com dispositivos de rede.
Este documento fornece uma introdução sobre redes de computadores. Resume os principais pontos como:
1) Define o que é uma rede de computadores e seus objetivos de proporcionar entendimento dos conceitos e fundamentos de redes;
2) A metodologia inclui exposição participada com uso de recursos em sala de aula e atividades;
3) Os conteúdos abordados incluem introdução a redes, classificação, meios de transmissão, equipamentos e gestão de redes.
O documento descreve o protocolo HTTP, que é utilizado para transferência de dados na Internet entre cliente e servidor. Ele usa um mecanismo de requisição-resposta e opera na porta 80 por padrão. O HTTP suporta vários métodos como GET, POST, PUT e DELETE.
15 padrões de mensageria para integração de sistemasHelder da Rocha
1) O documento apresenta padrões de mensageria para integração de sistemas, descrevendo padrões como canal de mensagens, terminal de mensagens e roteador de mensagens.
2) É destacado que mensageria é uma estratégia eficiente para integrar aplicações não projetadas para trabalhar juntas e que padrões de mensageria promovem separação de responsabilidades em soluções de integração.
3) Frameworks como Spring Integration implementam padrões de integração e facilitam a construção de soluções usando estratégias como
O documento descreve dois modelos de referência para comunicação em redes: (1) O modelo OSI, desenvolvido pela ISO, que define sete camadas para interconexão de sistemas, e (2) o modelo TCP/IP. O modelo OSI divide as camadas em três blocos: aplicação, transporte e rede.
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
O documento fornece uma introdução sobre sistemas operacionais, incluindo conceitos básicos como hardware, software, processamento, memória e arquitetura. Também discute tópicos como pipelining e sistemas distribuídos.
O documento discute conceitos de endereçamento IP, incluindo:
1) O formato do cabeçalho IP e como ele contém informações como endereço de origem e destino;
2) Como endereços IP são representados em formato decimal e binário;
3) As classes de endereços IP (A, B e C) e como elas determinam o tamanho da rede e da máscara de rede.
O documento discute conceitos e medidas de segurança em bancos de dados, incluindo controle de acesso, criptografia, e as responsabilidades do administrador de banco de dados (DBA) para garantir a integridade, disponibilidade e confidencialidade dos dados.
O HTTP é um protocolo de transferência de hipertexto utilizado para transferir dados na web através da porta 80, enquanto o HTTPS é uma versão segura do HTTP que utiliza criptografia SSL/TLS através da porta 443 para proteger a privacidade e integridade dos dados transmitidos.
Este documento fornece uma referência sobre comandos básicos do Linux, incluindo comandos para navegação de arquivos e diretórios, visualização de informações do sistema, configuração de permissões e ferramentas de linha de comando. O documento lista vários comandos úteis e fornece exemplos de uso.
1) O documento discute processos, threads, virtualização e migração de código em sistemas distribuídos.
2) Threads permitem a execução concorrente de tarefas dentro de um mesmo processo para melhorar o desempenho.
3) A virtualização permite a execução de sistemas operacionais de forma isolada através de máquinas virtuais para melhor utilização dos recursos.
O documento descreve e compara os principais sistemas de arquivos, incluindo HFS/HFS+ da Apple, UFS, Ext2/3/4, ReiserFS, HPFS e JFS. Fornece detalhes sobre suas características, como suporte a nomes longos de arquivos, tamanhos máximos, desempenho e recuperação de dados.
O documento descreve como funcionam os protocolos de rede TCP/IP, incluindo endereçamento IP, classes de endereço IP (A, B, C, D, E), sub-redes e CIDR. Explica que os endereços IP identificam redes e nós, que roteadores localizam dispositivos, e como classes de endereço, máscaras de sub-rede e CIDR dividem e gerenciam endereços de rede.
Este documento discute os conceitos de comunicação e transmissão de dados, comparando as transmissões serial e paralela. A transmissão paralela permite altas taxas de transferência, mas é limitada a curtas distâncias, enquanto a transmissão serial pode viajar longas distâncias com baixa taxa de transferência. O documento fornece exemplos de aplicações para cada método de transmissão.
O documento discute as principais topologias de rede e sua classificação. Ele explica que as redes podem ser classificadas por abrangência, modelo computacional, tipo de comutação, topologia e pilha de protocolos. As principais topologias descritas são: linear, anel, estrela, árvore, híbrida, totalmente conectada e sem fio.
O documento discute conceitos de endereços IP, incluindo:
1) As cinco classes de endereços IP e seus intervalos;
2) Como determinar a rede e máscara de rede a partir de um endereço IP;
3) Como calcular o número máximo de hosts em uma rede dado um endereço IP e máscara.
SNMP é um protocolo de gerenciamento de rede que permite monitorar e controlar dispositivos em uma rede IP. Ele define um modelo de informação padrão chamado MIB (Management Information Base) que descreve os atributos de gerenciamento de cada dispositivo gerenciado, bem como as operações que podem ser executadas neles.
Os principais componentes do SNMP são:
- Agentes: Software residente nos dispositivos de rede que coleta e mantém informações de gerenciamento locais.
- Gerentes: Software que executa no sistema de gerenciamento de rede para comunicar-se com os agentes,
Gerência de Armazenamento: Sistemas de Entrada e SaídaAlexandre Duarte
Explorar a estrutura do subsistema de E/S de um sistema operacional
Discutir os princípios e complexidade do hardware de E/S
Prover detalhes do aspectos de desempenho do hardware e software de E/S
O documento discute a camada de transporte em redes de computadores, descrevendo suas funções principais de fornecer transferência de dados confiável e econômica entre aplicações. Detalha os protocolos de transporte TCP e UDP da Internet, incluindo o estabelecimento e encerramento de conexões TCP e o controle de fluxo e congestionamento.
O documento discute os protocolos TCP e UDP para comunicação entre processos, comparando suas características como confiabilidade, ordenamento e sincronia. Também apresenta a API Java para sockets e fluxos TCP, mostrando exemplos de cliente e servidor.
Definir formalmente o conceito de processo
Descrever as várias funcionalidades relacionadas à manipulação de processos pelo sistema operacional, incluindo escalonamento, criação, terminação e comunicação
Apresentar as principais formas de comunicação utilizadas por sistemas cliente-servidor
O documento descreve os principais protocolos de rede e comunicação na Internet, incluindo TCP/IP, HTTP, HTTPS, FTP e protocolos de email. TCP/IP é o principal protocolo da Internet que permite a comunicação entre computadores através da divisão dos dados em pacotes. HTTPS é uma versão segura do HTTP que utiliza criptografia SSL/TLS.
O documento descreve o modelo de camadas TCP/IP, que consiste em quatro camadas: aplicação, transporte, inter-rede e interface de rede. A camada de aplicação contém protocolos como Telnet, FTP e HTTP. A camada de transporte inclui TCP e UDP. A camada inter-rede usa protocolos como IP e ICMP. A camada de interface de rede gerencia a interface física com dispositivos de rede.
Este documento fornece uma introdução sobre redes de computadores. Resume os principais pontos como:
1) Define o que é uma rede de computadores e seus objetivos de proporcionar entendimento dos conceitos e fundamentos de redes;
2) A metodologia inclui exposição participada com uso de recursos em sala de aula e atividades;
3) Os conteúdos abordados incluem introdução a redes, classificação, meios de transmissão, equipamentos e gestão de redes.
O documento descreve o protocolo HTTP, que é utilizado para transferência de dados na Internet entre cliente e servidor. Ele usa um mecanismo de requisição-resposta e opera na porta 80 por padrão. O HTTP suporta vários métodos como GET, POST, PUT e DELETE.
15 padrões de mensageria para integração de sistemasHelder da Rocha
1) O documento apresenta padrões de mensageria para integração de sistemas, descrevendo padrões como canal de mensagens, terminal de mensagens e roteador de mensagens.
2) É destacado que mensageria é uma estratégia eficiente para integrar aplicações não projetadas para trabalhar juntas e que padrões de mensageria promovem separação de responsabilidades em soluções de integração.
3) Frameworks como Spring Integration implementam padrões de integração e facilitam a construção de soluções usando estratégias como
O documento descreve dois modelos de referência para comunicação em redes: (1) O modelo OSI, desenvolvido pela ISO, que define sete camadas para interconexão de sistemas, e (2) o modelo TCP/IP. O modelo OSI divide as camadas em três blocos: aplicação, transporte e rede.
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
O documento fornece uma introdução sobre sistemas operacionais, incluindo conceitos básicos como hardware, software, processamento, memória e arquitetura. Também discute tópicos como pipelining e sistemas distribuídos.
O documento discute conceitos de endereçamento IP, incluindo:
1) O formato do cabeçalho IP e como ele contém informações como endereço de origem e destino;
2) Como endereços IP são representados em formato decimal e binário;
3) As classes de endereços IP (A, B e C) e como elas determinam o tamanho da rede e da máscara de rede.
O documento discute conceitos e medidas de segurança em bancos de dados, incluindo controle de acesso, criptografia, e as responsabilidades do administrador de banco de dados (DBA) para garantir a integridade, disponibilidade e confidencialidade dos dados.
O HTTP é um protocolo de transferência de hipertexto utilizado para transferir dados na web através da porta 80, enquanto o HTTPS é uma versão segura do HTTP que utiliza criptografia SSL/TLS através da porta 443 para proteger a privacidade e integridade dos dados transmitidos.
Este documento fornece uma referência sobre comandos básicos do Linux, incluindo comandos para navegação de arquivos e diretórios, visualização de informações do sistema, configuração de permissões e ferramentas de linha de comando. O documento lista vários comandos úteis e fornece exemplos de uso.
1) O documento discute processos, threads, virtualização e migração de código em sistemas distribuídos.
2) Threads permitem a execução concorrente de tarefas dentro de um mesmo processo para melhorar o desempenho.
3) A virtualização permite a execução de sistemas operacionais de forma isolada através de máquinas virtuais para melhor utilização dos recursos.
O documento descreve e compara os principais sistemas de arquivos, incluindo HFS/HFS+ da Apple, UFS, Ext2/3/4, ReiserFS, HPFS e JFS. Fornece detalhes sobre suas características, como suporte a nomes longos de arquivos, tamanhos máximos, desempenho e recuperação de dados.
O documento descreve como funcionam os protocolos de rede TCP/IP, incluindo endereçamento IP, classes de endereço IP (A, B, C, D, E), sub-redes e CIDR. Explica que os endereços IP identificam redes e nós, que roteadores localizam dispositivos, e como classes de endereço, máscaras de sub-rede e CIDR dividem e gerenciam endereços de rede.
Este documento discute os conceitos de comunicação e transmissão de dados, comparando as transmissões serial e paralela. A transmissão paralela permite altas taxas de transferência, mas é limitada a curtas distâncias, enquanto a transmissão serial pode viajar longas distâncias com baixa taxa de transferência. O documento fornece exemplos de aplicações para cada método de transmissão.
O documento discute as principais topologias de rede e sua classificação. Ele explica que as redes podem ser classificadas por abrangência, modelo computacional, tipo de comutação, topologia e pilha de protocolos. As principais topologias descritas são: linear, anel, estrela, árvore, híbrida, totalmente conectada e sem fio.
O documento discute conceitos de endereços IP, incluindo:
1) As cinco classes de endereços IP e seus intervalos;
2) Como determinar a rede e máscara de rede a partir de um endereço IP;
3) Como calcular o número máximo de hosts em uma rede dado um endereço IP e máscara.
SNMP é um protocolo de gerenciamento de rede que permite monitorar e controlar dispositivos em uma rede IP. Ele define um modelo de informação padrão chamado MIB (Management Information Base) que descreve os atributos de gerenciamento de cada dispositivo gerenciado, bem como as operações que podem ser executadas neles.
Os principais componentes do SNMP são:
- Agentes: Software residente nos dispositivos de rede que coleta e mantém informações de gerenciamento locais.
- Gerentes: Software que executa no sistema de gerenciamento de rede para comunicar-se com os agentes,
Gerência de Armazenamento: Sistemas de Entrada e SaídaAlexandre Duarte
Explorar a estrutura do subsistema de E/S de um sistema operacional
Discutir os princípios e complexidade do hardware de E/S
Prover detalhes do aspectos de desempenho do hardware e software de E/S
O documento discute a camada de transporte em redes de computadores, descrevendo suas funções principais de fornecer transferência de dados confiável e econômica entre aplicações. Detalha os protocolos de transporte TCP e UDP da Internet, incluindo o estabelecimento e encerramento de conexões TCP e o controle de fluxo e congestionamento.
O documento discute os protocolos TCP e UDP para comunicação entre processos, comparando suas características como confiabilidade, ordenamento e sincronia. Também apresenta a API Java para sockets e fluxos TCP, mostrando exemplos de cliente e servidor.
Definir formalmente o conceito de processo
Descrever as várias funcionalidades relacionadas à manipulação de processos pelo sistema operacional, incluindo escalonamento, criação, terminação e comunicação
Apresentar as principais formas de comunicação utilizadas por sistemas cliente-servidor
O documento discute a infraestrutura da Internet e servidores web, incluindo: 1) a arquitetura cliente-servidor e os protocolos TCP/IP e HTTP; 2) populares servidores web como Apache, Nginx e Varnish; e 3) bancos de dados como MySQL e PostgreSQL usados com servidores web.
O documento discute os principais conceitos da camada de transporte na arquitetura TCP/IP, incluindo funções como controle de conexão, fragmentação, endereçamento e confiabilidade. Detalha os protocolos TCP e UDP, descrevendo como o TCP oferece serviço confiável através de mecanismos como controle de fluxo, janelas deslizantes e retransmissão de pacotes, enquanto o UDP é mais simples e não fornece confiabilidade. Apresenta também tópicos para pesquisa adicional.
O documento descreve os conceitos de invocação remota, chamada de procedimento remoto e invocação de método remoto. Discute como essas técnicas permitem que procedimentos e métodos em máquinas remotas sejam chamados de forma transparente, escondendo aspectos como codificação/decodificação de parâmetros e passagem de mensagens. Também aborda interfaces de serviço, linguagens de definição de interface e a arquitetura cliente-stub-servidor-stub para implementar a chamada remota de procedimentos.
O documento discute modelos de falhas em sistemas distribuídos, classificando falhas e definindo termos como disponibilidade, confiabilidade e pontualidade. Apresenta estratégias para tolerar falhas, como redundância de informação, tempo e componentes físicos, além de abordar comunicação confiável entre processos e grupos.
O documento discute a arquitetura cliente-servidor, definindo seus conceitos principais como cliente magro e gordo, servidor, vantagens e desvantagens. Também aborda a organização de servidores, tipos como servidor de arquivos e bancos de dados, e como funciona a comunicação cliente-servidor através de portas.
O documento apresenta uma agenda de treinamento sobre HornetQ, abordando conceitos de mensageria, arquitetura do HornetQ, uso standalone e em ambientes JEE. O instrutor possui mais de 12 anos de experiência e ministra treinamentos sobre diversas tecnologias.
O documento descreve as sete camadas do modelo OSI, começando pela camada de aplicação e terminando na camada física. Cada camada é responsável por funções específicas como endereçamento, estabelecimento de sessão, transporte de dados e conversão de formatos. Protocolos como IP, TCP e HTTP são usados nas diferentes camadas.
O documento discute os conceitos de transparência, resiliência e segurança em sistemas distribuídos. São descritos tipos de transparência como localização, migração e replicação que ocultam aspectos da distribuição dos recursos dos usuários. Também são abordados conceitos como disponibilidade, tolerância a falhas e medidas para proteger a segurança dos dados e recursos.
O documento discute o Java Message Service (JMS) e mensageria em Java. Ele introduz conceitos fundamentais de mensageria e MOMs, mostra exemplos de aplicações JMS, e explica como usar o JBossMQ como provedor JMS. Também discute como escrever produtores e consumidores de mensagens síncronos e assíncronos em JMS.
O documento fornece uma introdução sobre sistemas cliente/servidor, abordando conceitos como clientes, servidores, comunicação entre eles e alguns protocolos utilizados como RPC, IPX/SPX e NetBIOS/NetBEUI.
Este documento discute como mensagens podem ser perdidas no RabbitMQ em três frases ou menos:
1) Mensagens podem ser perdidas se o consumidor confirmar o recebimento antes de processá-las e falhar antes de completar o processamento.
2) Mensagens podem expirar e ser removidas se seu tempo de vida (TTL) for atingido antes de serem processadas.
3) Mensagens armazenadas apenas na memória podem ser perdidas durante falhas no broker.
O documento discute diversos modelos de comunicação em sistemas distribuídos, incluindo comunicação cliente-servidor, transmissão de dados, endereçamento, sincronismo, confiabilidade, chamada remota de procedimentos e comunicação em grupo.
O documento discute diversos modelos de comunicação em sistemas distribuídos, incluindo comunicação cliente-servidor, transmissão de dados, endereçamento, sincronismo, confiabilidade, chamada remota de procedimentos e comunicação em grupo.
O documento discute sistemas operacionais aplicados, especificamente sobre servidores de aplicação e conceitos relacionados como programa, serviço, rede, modelos de comunicação e protocolos. Aborda também aplicações centralizadas versus distribuídas e os papéis da rede e protocolos nesses sistemas.
1) O documento descreve a arquitetura cliente-servidor da World Wide Web, incluindo definições de clientes (navegadores web), servidores e diferentes tipos de servidores.
2) Dois formatos importantes utilizados na WWW são descritos: HTML para criação de páginas web e XML como uma linguagem de marcação flexível.
3) Dois tipos de identificadores de hiperligações são explicados: URLs para localizar recursos e URN's para nomear recursos.
1) A tolerância a falhas é uma característica importante em sistemas distribuídos que permite que o sistema continue funcionando mesmo quando alguns de seus componentes falham.
2) A redundância, como a replicação de processos em grupos, é uma técnica fundamental para mascarar falhas e manter a disponibilidade do sistema.
3) Protocolos de consenso como Paxos e PBFT são usados para que processos replicados cheguem a um acordo sobre operações mesmo na presença de falhas.
Este documento fornece um resumo sobre:
1. Os objetivos de conhecer a história, componentes e aplicações de servidores de e-mail.
2. A breve história do e-mail desde seu surgimento na ARPANET em 1971 até seu uso atual.
3. Os principais componentes de um sistema de e-mail, incluindo MUA, MTA, LDA e AA.
1) O documento discute sistemas de arquivos distribuídos, incluindo conceitos, requisitos, serviços básicos e aspectos de implementação como geração de identificadores de arquivos, modos de acesso e semântica de compartilhamento.
2) É descrito o uso de memória cache nos servidores e clientes para melhorar o desempenho, assim como técnicas de consistência de cache.
3) A replicação é abordada como forma de aumentar a confiabilidade e disponibilidade dos dados, discutindo diferentes abord
O documento discute soluções para o problema de exclusão mútua em sistemas distribuídos. Apresenta três algoritmos: centralizado, distribuído e em anel. O algoritmo centralizado usa um processo coordenador para controlar o acesso à região crítica. O algoritmo distribuído ordena eventos globalmente através de troca de mensagens. O algoritmo em anel passa um token circularmente entre os processos.
O documento discute o problema da sincronização de tempo em sistemas distribuídos e apresenta possíveis soluções. As principais ideias são: (1) a sincronização de tempo é um desafio devido às diferenças nos relógios físicos de cada máquina; (2) soluções centralizadas e distribuídas são discutidas, sendo esta última mais adequada; (3) o algoritmo de Lamport propõe o uso de relógios lógicos para ordenar eventos.
1) O documento descreve a evolução da computação, desde os mainframes centralizados nas décadas de 1970 até os sistemas distribuídos atuais. 2) Fatores como o aumento da capacidade dos microcomputadores e o desenvolvimento das redes permitiram a distribuição dos sistemas e aplicações. 3) Isso levou ao surgimento de arquiteturas cliente-servidor e modelos de computação ubíqua, permitindo maior escalabilidade e tolerância a falhas.
O documento descreve a arquitetura de entrada e saída em sistemas distribuídos, dividida em 4 camadas: 1) gerenciadores de interrupção, 2) drivers de dispositivo, 3) software independente de dispositivo e 4) software do usuário. Cada camada executa funções específicas para receber requisições de E/S, executar operações no hardware, responder aos solicitantes e tratar erros.
O documento discute sistemas de arquivos em sistemas distribuídos. Apresenta os problemas iniciais de armazenamento de informação apenas na memória e introduz o conceito de arquivos. Descreve estruturas e atributos de arquivos, operações com arquivos e diretórios, e sistemas de arquivos baseados em discos.
O documento descreve algoritmos de eleição para sistemas distribuídos, incluindo o algoritmo do ditador, onde o processo com maior ID se torna coordenador, e variações do algoritmo em anel, onde uma mensagem circular o anel para eleger o processo com maior ID.
Este documento fornece instruções para a realização de provas de redação e matemática. Contém informações sobre preenchimento do caderno de questões e folhas de resposta, tempo disponível para realização das provas, nova ortografia da língua portuguesa e demais regras de avaliação.
Este documento fornece instruções para a realização de provas de História e Língua Estrangeira. Ele explica que os candidatos receberam um caderno de questões e duas folhas de respostas e fornece diretrizes sobre como preencher os documentos corretamente. Também esclarece que as provas devem ser respondidas por candidatos aos cursos do Grupo D, que incluem Letras, Línguas Estrangeiras e afins.
Este documento apresenta o gabarito da segunda fase do vestibular de 2013 da UFBA, contendo 6 questões de matemática. As questões abordam tópicos como porcentagem, geometria plana e espacial, sistemas de equações, funções e círculos.
O documento é um gabarito de uma prova de inglês com 6 questões. A questão 1 trata de tópicos relacionados à disseminação do inglês como língua global com 4 alternativas. A questão 2 apresenta uma afirmação sobre o ensino de inglês na China. As questões 3-5 são de múltipla escolha sobre bilinguismo. A questão 6 pede para completar frases com palavras em inglês.
1) O documento apresenta as respostas corretas para as questões de um vestibular de física, incluindo cálculos e conceitos sobre mecânica, termodinâmica e eletromagnetismo.
2) O experimento de Michelson-Morley visava detectar o "vento do éter" através da interferência da luz, mas os resultados não mostraram mudanças, não comprovando a existência do éter.
3) Isso não viola o postulado de Einstein de que todos os referenciais inerciais são equivalentes.
O documento fornece instruções para a realização de provas de Física e Química. Ele instrui os candidatos a registrar seu número de inscrição, ler cuidadosamente as questões, fazer rascunhos, responder nas folhas de respostas correspondentes, e fornece detalhes sobre o tempo da prova. Também lista os cursos dos grupos A.1 e B para os quais as provas devem ser respondidas.
Este documento contém o gabarito da segunda fase do vestibular de química de 2013 da UFBA, com 6 questões que abordam tópicos como interações intermoleculares, processo de extração de íons de magnésio da água do mar, cálculo de entalpia de formação, produção de carbonato de sódio no processo Solvay e cálculo de pH.
Este documento contém 52 questões de múltipla escolha sobre conceitos de ciência da computação como banco de dados, modelagem de dados, algoritmos e estruturas de dados, sistemas operacionais e redes de computadores. As questões abordam tópicos como normalização, álgebra relacional, modelagem UML, redes de Petri, sistemas de coordenadas em computação gráfica e condições para ocorrência de deadlock.
O documento apresenta 20 questões de matemática sobre diversos tópicos como funções, limites, geometria, álgebra linear e lógica. As questões envolvem cálculos, resolução de equações e sistemas de equações, análise de funções, provas lógicas e geometria espacial.
1) O documento apresenta uma prova de matemática para seleção de pós-graduação em ciência da computação, contendo 20 questões de múltipla escolha sobre tópicos como funções, cálculo, lógica e geometria.
El documento resume tres oraciones o menos los conceptos clave. Describe cómo la globalización ha conectado regiones geográficas a través del comercio internacional y los flujos de capitales. También menciona que la globalización ha traído tanto oportunidades como desafíos a las economías nacionales en términos de empleo, desarrollo económico y estabilidad macroeconómica.
Este documento fornece o gabarito oficial definitivo de uma prova chamada POSCOMP 2011, contendo as alternativas corretas para cada uma das 70 questões, além de informar mudanças nos gabaritos das questões 18 e 35.
2. Introdução
• A maior diferença entre um sistema monoprocessado e um
sistema distribuído é a comunicação entre processos
– Em um sistema monoprocessado:
• Assume-se a existência de memória compartilhada, que é
fundamental para o funcionamento de soluções para:
– Comunicação entre processos
– Exclusão mútua e regiões críticas
– Semáforos, variáveis compartilhadas, etc
– Em sistemas distribuídos:
• A ausência de memória compartilhada (ou a impossibilidade de
garantir a disponibilidade deste recurso) obriga os componentes
dos sistemas distribuídos a buscar outra solução para interagir
– Troca de mensagens
– Implica em adotar protocolos de comunicação para permitir que
ambientes heterogêneos troquem mensagens
3. Protocolos de Comunicação
– Protocolos são regras pré-estabelecidas para
comunicação entre duas ou mais partes
• O uso de camadas facilita sua implementação e
entendimento, já que cada camada possui responsabilidades
específicas
• Em 1983, a International Standards Organization (ISO)
desenvolveu um modelo de referência que identifica
claramente os vários níveis envolvidos e suas atribuições: o
“Modelo OSI” (Open Systems Interconnection Reference
Model)
– Voltado para comunicação entre sistemas abertos
– Um sistema aberto é preparado para se comunicar com qualquer outro sistema
aberto através de regras que ditam o formato, conteúdo e significado das
mensagens enviadas e recebidas.
4. Modelos de Protocolos
• Protocolos orientados à conexão
– Neste modelo, o emissor e o receptor de uma
determinada mensagem devem estabelecer uma conexão
antes que ocorra a troca de dados propriamente dita
• Existe possibilidade inclusive de negociação de aspectos do
protocolo
• Protocolos sem conexão
– Conforme o nome já indica, não há necessidade de que o
emissor e o receptor de uma determinada mensagem
estejam conectados para a comunicação acontecer
5. O Modelo OSI
• Características:
– Dividido em sete
camadas de
funcionalidade
• Cada camada trata de
um aspecto da
comunicação e provê
uma interface
(operações que definem
os serviços da camada)
às camadas adjacentes
– Cabeçalhos e
finalizadores podem ser
acrescentados e
retirados às mensagens
6. Características Importantes na
Comunicação SD
• Dependabilidade (qualidade do serviço oferecido
por um dado sistema)
– Em geral, sistema é considerado confiável se há
garantia de entrega de mensagens apesar da perda de
um número “razoável” de pacotes
– Reconhecimento de mensagens
• Reconhecimento positivo (esta é a mensagem esperada)
• Reconhecimento negativo (esta não pode ser a mensagem)
• Ordenação
– Alguns sistemas dependem da ordem das mensagens
– Fácil implementar para cliente-servidor ou p2p,
porém complexo em comunicação multicast
7. APIs de Comunicação
• APIs de comunicação permitem que as aplicações enviem e
recebam dados
– Fornecem primitivas de comunicação que podem ser chamadas
a partir do código
– Oferecem acesso aos serviços de comunicação, que podem
assim ser usados pelas aplicações
– Exemplos de APIs de comunicação:
• Sockets:
– Portas de comunicação locais ou de rede (Ex: SSL)
• Suportes de RPC (Remote Procedure Call):
– Permitem chamar procedimentos/métodos remotamente (ex.: Java RMI, Sun
RPC, ...)
• Canais de eventos:
– Permitem notificar threads e processos dos eventos ocorridos no sistema (Ex.:
JMS, CORBA Notification Service, …)
8. API Socket
• São abstrações que representam uma porta de
comunicação associada a uma aplicação
– Origem: UNIX - depois portado para outros Sos
– Identificados por um inteiro de 16 bits:
• Valores de 0 a 1024: serviços padronizados pela rede
• Valores acima de 1024: livres para uso (desenvolvedores)
– Tipos de Socket
• Sockets Datagrama:
– serviço sem conexão que usa protocolo UDP em mensagens 1 para 1
• Sockets Multicast:
– envio para um grupo sem estabelecimento de conexão via UDP
• Sockets Stream:
– serviço com conexão, baseado no paradigma cliente-servidor
9. Comunicação Cliente/Servidor
• Conceitos básicos:
– Servidor: oferece serviços
– Cliente: consome serviços oferecidos
– Em termos lógicos, para que dois processos se
comuniquem é preciso apenas a existência de duas
operações primitivas:
– SEND (enviar) – acionada pelo rementente da mensagem
– RECEIVE (receber) – acionada pelo destinatário
– 3 questões importantes:
• Como o cliente localiza o serviço?
• Como se processa o envio/entrega das mensagens?
• Como lidar com o conceito de “garantia de entrega”?
10. Comunicação Cliente/Servidor (cont.)
• Como o cliente localiza o servidor para solicitar um
serviço?
– Opção 1: O pedido é enviado para o endereço do servidor
acompanhado pelo endereço do processo/serviço
• Desvantagem: endereço estático no código do cliente
Cliente Servidor
SO SO
Rede Rede
Pedido para 123.1
Resposta para 123.2
11. Comunicação Cliente/Servidor (cont.)
• Como o cliente localiza o servidor para solicitar um
serviço?
– Opção 2: O pedido é enviado para todos
• Desvantagem: sobrecarga da rede
• Variação da opção 2: Antes do pedido ser enviado, é
feito um broadcast para localizar o servidor (reduz
sobrecarga)
Cliente Servidor
SO SO
Rede Rede
Resposta para 0.0 (broadcast)
Pedido para 0.0 (broadcast)
12. Comunicação Cliente/Servidor (cont.)
• Como o cliente localiza o servidor para solicitar um
serviço?
– Opção 3: O cliente consulta um serviço de resolução de
nomes para localizar o servidor desejado
• Desvantagem: exige um serviço adicional centralizado
Cliente
SO
Rede
Servidor
SO
Rede
Pedido de resolução de nomes
Resposta do endereço real
Servidor NS
SO
Rede
13. Comunicação Cliente/Servidor (cont.)
• Comportamento das primitivas SEND e RECEIVE:
– Na Comunicação Síncrona
– É a solução mais comum
– Exige que a origem e o destino da mensagem estejam
sincronizadas a cada troca de mensagem, ou seja, as
operações de SEND e RECEIVE causam bloqueios em
suas respectivas execuções
– Ao ser emitido um SEND, o emissor é bloqueado até que
um RECEIVE correspondente seja realizado
– Ao ser executado um RECEIVE, o processo receptor é
bloqueado até a mensagem chegar
14. Comunicação Cliente/Servidor (cont.)
• Comportamento das primitivas SEND e
RECEIVE:
– Na Comunicação Assíncrona
– A operação SEND é “não bloqueante”, permitindo
que o processo remetente prossiga em sua
execução assim que a mensagem emitida seja
armazenada em algum dispositivo (um buffer local,
por exemplo) para envio
– Oferece a vantagem de permitir que o processo
continue executando paralelamente ao envio real
da mensagem
15. Comunicação Cliente/Servidor (cont.)
• Comunicação Assíncrona (cont.)
– A operação RECEIVE pode ser implementada de duas formas:
– RECEIVE não bloqueante
– A operação RECEIVE consiste em fornecer um
buffer para armazenar a mensagem que será
recebida em background. Com isso, o processo
receptor pode prosseguir sua execução e deve
receber uma notificação posterior informando que
há dados a serem processados no buffer
– Isso pode ser implementado usando técnicas de
polling ou interrupção
– RECEIVE bloqueante
– Se comporta igual ao RECEIVE da comunicação
síncrona
16. Comunicação Cliente/Servidor (cont.)
• Comunicação Assíncrona (cont.)
• A grande maioria dos sistemas não adota a comunicação
assíncrona em virtude de sua complexidade no tratamento
de informações que podem ser recebidas fora do fluxo
normal de execução
– Quando a comunicação termina?
– Houve alguma falha ou necessidade de
intervenção?
17. Processamento do Pedido/Resposta
• Um mecanismo de controle comum tanto para
primitivas bloqueantes quanto para primitivas não
bloqueantes, é o uso de timeouts
– O estabelecimento de um limite de tempo facilita o
tratamento de situações de espera muito longa
– Em primitivas bloqueantes:
• Se o tempo de espera de um send ou receive for muito alto, além
de um determinado valor, pode-se notificar um erro.
– Em primitivas não bloqueantes:
• O número de tentativas de enviar/receber pode ser limitado.
18. Garantia de Entrega
– Até o momento assumimos que sempre que um
cliente envia uma mensagem para o servidor, esta é
entregue ou falha.
• Na realidade, as mensagens podem se atrasar na
entrega, ou falhar na entrega.
– Cada vez que um SEND é executado, imagina-se que a
mensagem tenha sido recebida
– No entanto, não existem garantias de que isso realmente
aconteceu
Conceitos Básicos
19. Garantia de Entrega
• Proposta 1: assumir que o envio é falho e não
confiável
– Exemplo: Correios
• Quando se deixa uma carta no correio usando postagem
normal, sabe-se que ainda falta um caminho a ser
percorrido pela carta até seu destino
• O correio faz o seu melhor para entregar a mensagem, mas
não há garantias rígidas de entrega ou prazo
• Algumas vezes, caso os Correios saibam que a mensagem
não pode ser entregue, é possívem efetuar a devolução da
mensagem e até mesmo a recusa da mesma
• Mas o remetente já se imaginava livre dessa tarefa e sua
agenda de atividades não prevê tratar este problema
Conceitos Básicos
20. Garantia de Entrega
• Proposta 2: solicitar a confirmação do
recebimento da mensagem
– ACK (ACKNOWLEDGE)
– Um simples pedido/resposta agora tem 4
mensagens
Cliente Servidor
SO SO
Rede Rede
Pedido
Resposta
ACK
ACK
21. Garantia de Entrega
• Proposta 3: solicitar a confirmação do
recebimento da Resposta da Mensagem
– Possível devido a característica do modelo Cliente-
Servidor
– Um pedido/resposta agora tem 3 mensagens
Conceitos Básicos
Cliente Servidor
SO SO
Rede Rede
Pedido
Resposta
ACK
22. Implementando o Modelo
Cliente/Servidor
Localização Processamento de
Envio/Recepção de
mensagens
Garantia
Endereços
predefinidos e escritos
nos clientes
Boloquear enquanto
envia/recebe
Não confiar
Broadcast Não Bloquear Solicitar confirmação
para cada mensagem
Serviço de Resolução
de Nomes
Notificar quando a
mensagem estiver
pronta
Solicitar confirmação
para cada resposta
Conceitos Básicos
23. Estudo de Caso: RPC
• RPC (Remote Procedure Call)
– É um meio de empacotar e trocar mensagens entre
processos de forma a tornar isso mais fácil e mais
parecido com a programação convencional.
– É um método de transferência de controle
• Quem aciona o procedimento remoto suspende
sua execução e fica aguardando o retorno do
mesmo (ou seja, passa o controle da execução
adiante)
• O procedimento remoto assume o controle,
executa suas funções e devolve o controle para
quem o acionou
• O acionador retoma sua execução do ponto em
que parou
24. Estudo de Caso: RPC
• RPC (Remote Procedure Call)
– A troca de mensagens entre processos ou o I/O
envolvido não são percebidos pelo programador
da aplicação
• O ambiente que suporta RPC provê toda a
infraestrutura necessária para que a
comunicação aconteça sem que o
programador precise codificar isso de forma
explícita
25. Estudo de Caso: RPC (cont.)
• O que motivou a criação do RPC:
– Programar usando primitivas de comunicação não
é uma solução transparente, pois exige
conhecimento do ambiente físico ao redor
– Primitivas orientadas a Entrada/Saída (E/S) não
conseguem reproduzir nos sistemas distribuídos o
mesmo efeito obtido em sistemas centralizados
• Objetivo do RPC:
– Tornar mais fácil e transparente a implementação
de aplicações distribuídas
26. Estudo de Caso: RPC (cont.)
• STUB
– “Um stub ou method stub em desenvolvimento
de software, é um pedaço de código usado para
substituir algumas funcionalidades de
programação.” (Wikipédia)
– O código referente a chamadas à rede é
“escondido” (encapsulado) em procedimentos
chamados STUBs
• Os STUBs permitem ao RPC proteger os programas de
aplicação em relação a preocupações com detalhes
(exemplo: SOCKETS)
• A conversão dos tipos de dados acontece nos STUBS
durante a passagem de parâmetros
– Reduz a chance de erros, pois torna o sistema
transparente em relação a diferentes
representações de dados
27. Estudo de Caso: RPC (cont.)
• STUB
– Como obter os STUBs?
• Os STUBs são gerados pelo compilador e
“linkados” ao programa
– Em vários sistemas baseados em RPC os STUBs são
gerados automaticamente, mas existem algumas
implementações que oferecem a opção de gerá-los
de forma manual
28. Estudo de Caso: RPC (cont.)
• BINDER
– Cliente precisa localizar o servidor que vai executar o
procedimento remoto, mas isso deve acontecer de
forma transparente
• O responsável pelo processo de localização é um programa
chamado “Binder”, que fica disponível na rede em uma ou
mais máquinas
• STUBs possuem uma chamada o programa BINDER para
obter estas informações
– O programa Binder possui uma tabela com:
• Nomes e endereços dos serviços ativos e corretamente
exportados
• Um Checksum que identifica a versão de cada interface
exportada
29. Estudo de Caso: RPC (cont.)
• Funcionamento do BINDER
– Para cada instância de um serviço que está no ar:
• A interface é exportada no início da execução do serviço
para o Binder
• Cada serviço ativo é incluído na tabela do binder
• Um checksum é calculado a partir da interface exportada
• O cliente, ao iniciar, precisa se ligar (bind) ao serviço remoto
desejado
– Este processo é chamado de Dynamic Binding
• Os tipos de dados no cliente e no servidor devem ser
compatíveis (mas não necessariamente idênticos)
• Cliente e servidor são compilados separadamente mas
precisam ter a mesma interface
30. Estudo de Caso: RPC (cont.)
CLIENTE
Aplicação CLIENTE
CALL ‘rotina’ parm1
Serviço executando
EMPACOTA
PARÂMETROS
DESEMPACOTA
RESULTADOS
DESEMPACOTA
PARÂMETROS
EMPACOTA
RESULTADOS
KERNEL do CLIENTE KERNEL do SERVIDOR
TRANSPORTE
DE MENSAGENS
VIA REDE
STUB
CLIENTE
STUB
SERVIDOR
SERVIDOR
31. Comunicação em Grupo
• Um grupo é uma coleção de processos que atuam
juntos em um sistema
– Para que o grupo funcione bem, é desejável garantir que
qualquer mensagem enviada ao grupo seja conhecida por
todos os seus membros
– Grupos são dinâmicos:
• Novos grupos podem ser criados e outros podem ser apagados
• Um processo pode se unir a um grupo ou deixar-lo
• Um processo pode pertencer a mais de um grupo
32. Comunicação em Grupo
• Outras características de grupos
– É preciso haver algum tipo de estratégia de gestão de
grupos
– A existência de um grupo precisa ser transparente
• Quando um processo envia uma mensagem para o
grupo, ele não precisa saber o tamanho do grupo e
nem a localização dos membros
33. Comunicação em Grupo:
Estratégia de Comunicação
• A comunicação em pares (um-para-um) não é o melhor
modelo para comunicação de um processo com um
grupo
– Para estes casos, o emprego da difusão seletiva (multicast) é a
solução mais indicada
– A adoção de multicast permite a implementação de sistemas
distribuídos que suportam as seguintes características:
• Tolerância a falhas baseado em serviços replicados
• Localização de serviços de descoberta na interligação de
redes
• Melhor desempenho através da replicação de dados
• Propagação de notificações de eventos
34. Comunicação em Grupo:
Técnicas de implementação
• Comunicação do grupo com outros processos:
– Grupos abertos
• Neste tipo de grupo, qualquer processo externo pode enviar
mensagem para o grupo todo
• É uma abordagem usada tipicamente em casos de
replicação de serviços
– Grupos fechados
• Neste tipo de grupo, apenas os membros do grupo podem
mandar mensagem para o grupo todo
• E como alguém de fora fala com o grupo?
– A mensagem é mandada para um único integrante do
grupo, que se encarrega de repassar aos demais
• É uma abordagem usada tipicamente em processamento
paralelo
36. Comunicação em Grupo:
Técnicas de implementação
• Estrutura interna do grupo:
– Grupos igualitários (ou peers)
• Todos os processos são iguais e as decisões são tomadas coletivamente
• É um grupo simétrico, e isso evita a existência de um ponto único de
falha, já que todos os processos são iguais e podem desempenhar as
mesmas funções
• A tomada de decisão bem mais complexa
– Grupos hierárquicos
• Existe algum tipo de hierarquia entre os membros
• A organização mais simples (mas não a única possível) deste tipo de
grupo consiste em um processo coordenador e outros processos
denominados trabalhadores
– Quando uma requisição é feita, o coordenador decide qual
trabalhador é o mais apropriado para realizar a tarefa, ou define que
todos devem realizar a tarefa
• Possui um ponto único de falha (geralmente, o coordenador)
• A tomada de decisão neste tipo de grupo é mais simples
37. Comunicação em Grupo:
Controle de Membros
• É preciso realizar de alguma forma o controle de quais são os membros
do grupo, bem como permitir a inclusão e exclusão de membros
• As duas principais formas de fazer essa gerência são:
– Usando um servidor de grupo
• Todas as requisições devem ser feitas ao servidor
• O servidor deve manter uma base de dados completa de todos os grupos
e seu conjunto exato de membros
• É eficiente, direto e fácil de implementar, mas o servidor torna-se uma
vulnerabilidade da solução
– Adotando um controle distribuído
• Cada novo membro deve enviar mensagem a todos os membros atuais
anunciando a sua presença e, ao sair, deve avisar a todos os outros
membros
• É uma solução mais tolerante a falhas
• Quando um membro falha ele deixa de pertencer ao grupo e não há
mensagens de aviso
• A entrada e a saída do grupo devem ser sincronizadas com a troca de
mensagens
38. Comunicação em Grupo:
Atomicidade
• Quando uma mensagem é enviada para o grupo, ela deverá
chegar corretamente para todos os membros ou para
nenhum deles
– Não são permitidas situações onde alguns membros recebem a
mensagem e outros não (entrega parcial da mensagem)
– Isso torna a programação de aplicações mais fácil, pois quando um
processo envia uma mensagem para o grupo não precisa se preocupar
com o fato de alguém não ter recebido a mensagem
• Falhas na entrega são reportadas ao emissor da mensagem
– Sabendo-se que a mensagem falhou, é possível realizar as ações
necessárias para recuperação da consistência do processamento
39. Comunicação em Grupo:
Atomicidade
• A implementação da atomicidade não é simples
– A única forma de garantir a entrega da mensagem para todos os
destinos é através do envio de mensagens de reconhecimento
• Tolerância a falhas
– É essencial que a atomicidade seja mantida mesmo na presença
de falhas
– Exemplo de falha:
• O emissor envia uma mensagem para todos os membros do
grupo e falha em seguida
• Um processo do grupo não recebe a mensagem
• Não há mais um emissor para ser avisado, logo, não existe
possibilidade de retransmissão da mensagem
• Qual a ação do grupo?
– Resposta: ignorar a mensagem
40. Comunicação em Grupo:
Ordenação
• Um mecanismo de comunicação em grupo precisa ter uma
semântica bem definida com relação à ordem em que as
mensagens serão entregues.
• A melhor garantia para isto é fazer com que as mensagens
sejam entregues na mesma ordem em que foram enviadas
• Como nem sempre é possível imitar a ordem de envio,
existem quatro tipos diferentes de ordenação que
normalmente estão implementadas nos mecanismos de
comunicação de grupo:
– Sem Ordem
– Ordenamento FIFO
– Ordenamento Causal
– Ordenamento Total
41. Comunicação em Grupo:
Ordenação
• Tipos de ordenação:
– Sem Ordem
• As mensagens são enviadas ao grupo sem a preocupação de ordenamento
• Tem o menor overhead pois não necessita controle algum de sequência
• Nem sempre é adequado para certas aplicações.
– Ordenamento FIFO
• Garante que todas as mensagens de um membro sejam entregues aos demais na
ordem que o mesmo enviou
• Não garante que todas as mensagens serão ordenadas, apenas ordena por membro
– Ordenamento CAUSAL
• Adota o conceito de mensagem dependente de outra
• Se uma mensagem “A” é dependente de outra mensagem “B”, então “A” deve
sempre ser recebida depois de “B”
• Exemplo: respostas de mensagens em listas de discussão
– Ordenamento TOTAL
• Cada membro do grupo recebe TODAS as mensagens na mesma ordem