13.07.2015 Views

Gerenciamento de Recursos em Sistemas Distribuídos usando ... - LSI

Gerenciamento de Recursos em Sistemas Distribuídos usando ... - LSI

Gerenciamento de Recursos em Sistemas Distribuídos usando ... - LSI

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>• Quantida<strong>de</strong> <strong>de</strong> área <strong>em</strong> disco – Para um <strong>de</strong>terminado tipo <strong>de</strong> aplicação po<strong>de</strong>mosnecessitar consultar o total <strong>de</strong> área <strong>em</strong> disco, ocupada <strong>em</strong> cada um dos microsgerenciados, baseado no nome padrão usado para i<strong>de</strong>ntificar a extensão. Ex<strong>em</strong>plo, ototal <strong>de</strong> arquivos do tipo doc, exe, zip, etc.• Localizar um usuário – A partir do nome <strong>de</strong> login do usuário, saber se ele se encontra<strong>usando</strong> um equipamento, i<strong>de</strong>ntificado pelo seu login ativo e informando <strong>em</strong> qualequipamento, <strong>em</strong> qual a localização física do usuário.• Software <strong>em</strong> uso – Permite gerenciar quantas cópias <strong>de</strong> um <strong>de</strong>terminado software estão<strong>em</strong> uso <strong>em</strong> neste momento da consulta <strong>em</strong> todo o ambiente do sist<strong>em</strong>a distribuído.O gerenciamento dos recursos aqui listados ocorre <strong>em</strong> t<strong>em</strong>po real. As consultas quandorealizadas fornec<strong>em</strong> resultados com base <strong>em</strong> respostas recebidas <strong>de</strong> todos os componentes queformam o sist<strong>em</strong>a distribuído. Apenas no caso <strong>de</strong> t<strong>em</strong>po <strong>de</strong> uso, a análise dos dados é pertinente aum <strong>de</strong>terminado período <strong>de</strong> um <strong>de</strong>terminado equipamento.3 COMUNICAÇÃO EM GRUPOA comunicação entre os computadores interligados, po<strong>de</strong> ocorrer <strong>de</strong> diferentes formas,<strong>usando</strong> diversos protocolos tanto <strong>em</strong> ambiente <strong>de</strong> re<strong>de</strong> local como ambiente <strong>de</strong> re<strong>de</strong>s <strong>de</strong> longadistância. Um caso particular <strong>de</strong> comunicação ocorre quando uma mesma mensag<strong>em</strong> t<strong>em</strong> que serenviada para diversos computadores na re<strong>de</strong>, <strong>em</strong> especial mensagens <strong>de</strong> solicitação <strong>de</strong> status paratodos os componentes gerenciados. Alguns ambientes físicos <strong>de</strong> re<strong>de</strong> permit<strong>em</strong> o broadcast, on<strong>de</strong>um único comando <strong>de</strong> envio manda a mensag<strong>em</strong> para todos os en<strong>de</strong>reços da re<strong>de</strong> porém aconfiabilida<strong>de</strong> <strong>de</strong>ste método não é garantida, po<strong>de</strong>ndo ocorrer alguma perda s<strong>em</strong> que o <strong>em</strong>issor damensag<strong>em</strong> seja notificado <strong>de</strong>sta perda.Visando aten<strong>de</strong>r esta necessida<strong>de</strong> <strong>de</strong> comunicação <strong>de</strong> um para muitos, com confiabilida<strong>de</strong>,escalabilida<strong>de</strong>, e <strong>de</strong> forma transparente para qu<strong>em</strong> <strong>de</strong>senvolve uma aplicação como esta <strong>de</strong>gerenciamento, foi criado um novo paradigma chamado comunicação <strong>em</strong> grupo. Um protocolo <strong>de</strong>comunicação <strong>em</strong> grupo separa a complexida<strong>de</strong> <strong>de</strong> controle e gerenciamento das mensagens, dacomplexida<strong>de</strong> da aplicação, tratando os diversos computadores como sendo pertencentes a umgrupo. Assim po<strong>de</strong>mos nos preocupar apenas com a aplicação, suas funcionalida<strong>de</strong>s, seusprocedimentos, seus algoritmos particulares, s<strong>em</strong> nos envolvermos com os probl<strong>em</strong>as da


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>comunicação. Passa a ser responsabilida<strong>de</strong> do protocolo <strong>de</strong> comunicação <strong>em</strong> grupo o controle <strong>de</strong>fluxo, a confiabilida<strong>de</strong>, o sequenciamento e a garantia <strong>de</strong> entrega das mensagens ao aplicativo <strong>de</strong>gerência <strong>de</strong> recursos, b<strong>em</strong> como o controle <strong>de</strong> quais computadores estão fazendo parte <strong>de</strong>ste grupo,controlando a entrada <strong>de</strong> novos m<strong>em</strong>bros no grupo, saída voluntária ou saídas involuntárias <strong>de</strong>vidoa quebras no computador ou particionamento da re<strong>de</strong>.Diversos mecanismos <strong>de</strong> comunicação <strong>em</strong> grupo exist<strong>em</strong> tais como: ISIS (BIRMAN,1994); PHOENIX (MALLOTH, 1996); RMP (WHETTEN, 1994); TOTEM (MOSER, 1996);HORUS (RENESSE, 1996); ENSEMBLE (HAYDEN, 1998); TRANSIS (DOLEV, 1996);NEWTOP (EZHILCHELVAN, 1995); ATOMIC (KOCH, 2000); INTERGROUP (BERKET,2000); JGROUP (MONTRESOR, 2000) e SPREAD (AMIR,1998).Alguns <strong>de</strong>stes mecanismos foram <strong>de</strong>senvolvidos, tiveram alguma evolução e <strong>de</strong>poispermaneceram s<strong>em</strong> atualizações. Outros como INTERGROUP e JGROUP são b<strong>em</strong> recentes etotalmente baseado <strong>em</strong> ambiente Java/RMI. Já o SPREAD é um dos mecanismos <strong>de</strong> comunicação<strong>em</strong> grupo que v<strong>em</strong> evoluindo ao longo do t<strong>em</strong>po, com boa documentação, disponibilida<strong>de</strong> <strong>de</strong> fontesna modalida<strong>de</strong> Open Source, portado para diversos sist<strong>em</strong>as operacionais como UNIXes (AIX,BSDI, LINUX, FreeBSD, SGI, MAC OSX, SGI, SOLARIS, SUNos), Windows e Mac OS. Contacom bibliotecas que po<strong>de</strong>m ser usadas <strong>em</strong> linguagens tipo C, PERL e JAVA.Para o presente trabalho foi adotado o mecanismo <strong>de</strong> comunicação <strong>em</strong> grupo SPREAD(AMIR, 1998) por ser disponível <strong>em</strong> diversas plataformas ter uma boa documentação e aten<strong>de</strong>rtanto comunicação <strong>em</strong> grupo para re<strong>de</strong>s locais (LAN) como re<strong>de</strong>s <strong>de</strong> longa distância (WAN).Possui uma interface <strong>de</strong> programação <strong>de</strong> aplicação (API) com as seguintes funções:• SP_connect – Para estabelecer a comunicação com o da<strong>em</strong>on SPREAD.• SP_disconnet – Para terminar a conexão com o da<strong>em</strong>on SPREAD.• SP_join – Para iniciar a conexão a um <strong>de</strong>terminado grupo, passando a fazer parte <strong>de</strong>stegrupo.• SP_leave – Para <strong>de</strong>ixar <strong>de</strong> fazer parte <strong>de</strong> um <strong>de</strong>terminado grupo.• SP_multicast – Para enviar uma mensag<strong>em</strong> a todos os m<strong>em</strong>bros <strong>de</strong> um grupo.• SP_receive – Para receber mensagens, tanto mensagens <strong>de</strong> aplicação como mensagens<strong>de</strong> transições informando alterações dos m<strong>em</strong>bros do grupo.


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>A aplicação aqui apresentada neste artigo não é uma extensão do SPREAD n<strong>em</strong> acrescentanovas funcionalida<strong>de</strong>s ao mesmo. É uma ferramenta in<strong>de</strong>pen<strong>de</strong>nte apenas <strong>usando</strong> todas asfuncionalida<strong>de</strong>s relativas a comunicação <strong>em</strong> grupo que são disponibilizadas pelo SPREAD atravésdo uso <strong>de</strong> suas API anteriormente <strong>de</strong>scritas.4 IMPLEMENTAÇÃO DO GERENCIAMENTOA aplicação <strong>de</strong> gerenciamento <strong>de</strong> recursos <strong>em</strong> ambiente distribuído é composta <strong>de</strong> doisambientes. Um ambiente <strong>de</strong> coleta <strong>de</strong> dados para o tratamento exclusivo da consulta <strong>de</strong> t<strong>em</strong>po <strong>de</strong>uso <strong>de</strong> um recurso no sist<strong>em</strong>a distribuído, na forma <strong>de</strong> um arquivo log registrando quando um microé ligado ou <strong>de</strong>sligado, que será <strong>de</strong>scrito no it<strong>em</strong> 4.3. Outro ambiente <strong>de</strong> gerenciamento <strong>em</strong> t<strong>em</strong>poreal com programas, na forma <strong>de</strong> mestre escravo. No atual contexto o programa escravo é tratadocomo um conjunto <strong>de</strong> escravos que faz<strong>em</strong> parte do mesmo grupo. Assim um programa mestre, <strong>de</strong>consulta, que será <strong>de</strong>scrito <strong>em</strong> 4.2, enviará mensagens aos programas clientes que i<strong>de</strong>ntificarão otipo <strong>de</strong> consulta e fornecerão a resposta a<strong>de</strong>quada, conforme <strong>de</strong>scrito <strong>em</strong> 4.1.Figura 1: Programa <strong>de</strong> Consulta e Programas Cliente


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>4.1 PROGRAMA CLIENTEImpl<strong>em</strong>entado para trabalhar <strong>em</strong> ambiente WINDOWS, como um aplicativo (da<strong>em</strong>on) quefica ativo s<strong>em</strong>pre e s<strong>em</strong> ícone na barra <strong>de</strong> tarefas. Quando este programa for iniciado, vai seconectar ao SPREAD com uma i<strong>de</strong>ntificação única (nome da máquina). Este programa só será<strong>de</strong>sativado via mensag<strong>em</strong> enviada pelo programa <strong>de</strong> consulta, mostrado na Figura 1. Todos osclientes faz<strong>em</strong> parte <strong>de</strong> um grupo chamado GG, grupo geral. Este programa cliente é carregadomesmo antes do processo <strong>de</strong> login na estação. Fica s<strong>em</strong>pre aguardando alguma mensag<strong>em</strong> que v<strong>em</strong>para o grupo GG ao qual pertence.O programa cliente terá as seguintes funções:• Função 1 – Mostra mensag<strong>em</strong> recebida <strong>em</strong> uma janela tipo pop-up. Ex<strong>em</strong>plo na Figura2.• Função 2 – Informa se o micro (cliente) está livre, s<strong>em</strong> usuário com login ativo.• Função 3 – Verifica se o software XYZ está <strong>em</strong> uso neste cliente.• Função 4 – Verifica se exist<strong>em</strong> arquivos com a terminação XYZ neste cliente. Se existe,conta quantos arquivos e o total <strong>de</strong> k bytes <strong>de</strong>stes arquivos. Respon<strong>de</strong> com o número <strong>de</strong>arquivos e com o total <strong>de</strong> k bytes.• Função 5 – Verifica se um <strong>de</strong>terminado usuário está com seu login ativo neste cliente.Confere se o login enviado na consulta é o corrente neste cliente e se for respon<strong>de</strong> com ai<strong>de</strong>ntificação da máquina.• Função Z – Desativa o cliente. Quando recebe este código Z o cliente encerra a suaexecução.Figura 2: Ex<strong>em</strong>plo <strong>de</strong> mensag<strong>em</strong> recebida pelo programa cliente


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>Figura 3: Tela <strong>de</strong> comandos do Programa <strong>de</strong> Consulta4.2 PROGRAMA DE CONSULTAEste é um programa que foi impl<strong>em</strong>entado <strong>em</strong> ambiente WINDOWS e que vai interagircom os clientes que estarão fazendo parte do grupo GG. T<strong>em</strong>os um botão para selecionar cada umadas funções conforme ex<strong>em</strong>plo da tela mostrada na Figura 3. Para cada função selecionada, abreuma nova janela para receber os dados compl<strong>em</strong>entares que sejam necessários. Impl<strong>em</strong>enta asseguintes funções:• Função 1 – Mensag<strong>em</strong> Geral. Esta é uma situação <strong>de</strong> broadcast geral on<strong>de</strong> umamensag<strong>em</strong> será mostrada <strong>em</strong> todos os clientes. Recebe a i<strong>de</strong>ntificação do grupo e amensag<strong>em</strong> que é enviada a todos <strong>de</strong>ste grupo. Ex<strong>em</strong>plo conforme Figura 4.


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>Figura 4: Envio <strong>de</strong> mensag<strong>em</strong> genérica• Função 2 – Consulta <strong>de</strong> micro livre. Ex<strong>em</strong>plo na Figura 5. Manda uma mensag<strong>em</strong> <strong>de</strong>consulta a micro livre e aguarda respostas. Po<strong>de</strong>rá receber N respostas que serãomostradas <strong>em</strong> uma janela com barra <strong>de</strong> rolag<strong>em</strong>. Assume um time-out <strong>de</strong> 1 minuto parareceber todas as respostas. Este t<strong>em</strong>po <strong>de</strong> time-out é um parâmetro na tela já incializadocom o valor <strong>de</strong> 1 minuto e que o usuário po<strong>de</strong> alterar.Figura 5: Consulta <strong>de</strong> micro livre


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>• Função 3 – Consulta se o software XYZ está <strong>em</strong> uso. Ex<strong>em</strong>plo na Figura 6. Recebe dousuário um campo com o nome do software a ser consultado. Manda a mensag<strong>em</strong>consultando os clientes e aguardar resposta <strong>em</strong> um <strong>de</strong>terminado t<strong>em</strong>po conforme<strong>de</strong>scrito na função 2. Uma janela mostrara todas as maquinas que estão executando estesoftware.Figura 6: Consulta se <strong>de</strong>terminado software esta <strong>em</strong> uso• Função 4 – Consulta se t<strong>em</strong> arquivos do tipo XYZ na maquina cliente. Ex<strong>em</strong>plo naFigura 7. Recebe do usuário um campo com o tipo <strong>de</strong> arquivo. Manda a mensag<strong>em</strong> <strong>de</strong>consulta a todos os clientes e mostra o resultado <strong>em</strong> uma janela on<strong>de</strong> cada linha t<strong>em</strong> onome da maquina, número <strong>de</strong> arquivos e tamanho total dos arquivos. Permite classificarpor maquina, número <strong>de</strong> arquivos, tamanho total. T<strong>em</strong> o mesmo controle <strong>de</strong> time-out dafunção 2.


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>Figura 7: Consulta tipo <strong>de</strong> arquivos <strong>em</strong> todas os micros• Função 5 – Consulta se um <strong>de</strong>terminado usuário está com seu login ativo. Ex<strong>em</strong>plona Figura 8. Recebe o login <strong>de</strong> um usuário e envia uma mensag<strong>em</strong> com esta consulta.. Sevier resposta informa a localização on<strong>de</strong> está o usuário, nome da maquina e en<strong>de</strong>reço IP.Usa o mesmo controle <strong>de</strong> time-out da função 2.Figura 8: Consulta usuário


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>• Função Z – Desativa o programa cliente. Se esta solicitação for efetivada, apósvalidar uma senha <strong>de</strong> acesso a este recurso, será enviada uma mensag<strong>em</strong> a todos osclientes e os mesmos serão encerrados. Normalmente um cliente é ativado quando se ligao micro, fica s<strong>em</strong>pre executando, até que a maquina seja <strong>de</strong>sligada.4.3 PROGRAMA GERADOR DE LOG DE CONEXÃONo mecanismo <strong>de</strong> Comunicação <strong>em</strong> Grupo que foi usado neste trabalho, o SPREAD,<strong>de</strong>scrito anteriormente, todas as informações relativas às transições <strong>de</strong> estado estão disponíveisautomaticamente. Assim para cada cliente que é ativado ou <strong>de</strong>sativado, esta mudança nos m<strong>em</strong>brosdo grupo se reflete <strong>em</strong> uma mensag<strong>em</strong> <strong>de</strong> transição <strong>de</strong> estado que é enviada pelo SPREAD paratodos os m<strong>em</strong>bros do grupo.Aproveitando esta facilida<strong>de</strong> foi <strong>de</strong>senvolvido um programa para ficar executando nomesmo equipamento on<strong>de</strong> está instalado o SPREAD. Este programa foi impl<strong>em</strong>entado no ambienteLINUX e t<strong>em</strong> como objetivo gravar um arquivo log com registros on<strong>de</strong> são informadas a data ehora <strong>em</strong> que cada cliente foi ativado e <strong>de</strong>sativado. Com esta facilida<strong>de</strong> passamos a ter um log quenos mostra a hora que o micro foi ligado e a hora que o micro foi <strong>de</strong>sligado. Como as maquinas queestão sendo monitoradas estão na mesma re<strong>de</strong> local, on<strong>de</strong> está o da<strong>em</strong>on do SPREAD não t<strong>em</strong>osprobl<strong>em</strong>as com particionamento <strong>de</strong> re<strong>de</strong>.Desta forma um programa <strong>de</strong> visualização seleciona e tabula os registros <strong>de</strong> logs <strong>de</strong>conexão <strong>de</strong> um <strong>de</strong>terminado micro, apresentando um relatório <strong>de</strong> uso (maquina ligada) do mesmo<strong>em</strong> <strong>de</strong>terminado período <strong>de</strong> t<strong>em</strong>po, conforme Figura 9.Este programa gerador <strong>de</strong> log é ativado como um serviço na partida do sist<strong>em</strong>a e somenteserá <strong>de</strong>sativado quando o sist<strong>em</strong>a for <strong>de</strong>sligado. O arquivo <strong>de</strong> logs é incr<strong>em</strong>ental e é rotacionado narotina padrão <strong>de</strong> tratamento dos <strong>de</strong>mais logs do sist<strong>em</strong>a.


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>Figura 9: Relatório <strong>de</strong> uso <strong>de</strong> um equipamento5 CONCLUSÃOO uso <strong>de</strong> um mecanismo <strong>de</strong> comunicação <strong>em</strong> grupo permite total abstração quanto aescalabilida<strong>de</strong> no contexto <strong>de</strong> gerenciamento dos recursos <strong>em</strong> um sist<strong>em</strong>a distribuído. Todos osrecursos estejam eles na re<strong>de</strong> local ou <strong>em</strong> re<strong>de</strong>s <strong>de</strong> longa distância po<strong>de</strong>m ser gerenciadossimultaneamente pelo mesmo programa <strong>de</strong> consulta. Em termos práticos é recomendado umgerenciador SPREAD <strong>em</strong> cada segmento <strong>de</strong> re<strong>de</strong>, controlando os equipamentos <strong>de</strong>sta re<strong>de</strong> local.Estes gerenciadores se integram formando um sist<strong>em</strong>a único <strong>de</strong> controle <strong>de</strong> grupo permitindo queuma consulta feita <strong>em</strong> qualquer ponto da re<strong>de</strong> seja respondida por todos os outros pontos quecompõ<strong>em</strong> este grupo mesmo estando <strong>em</strong> segmentos <strong>de</strong> re<strong>de</strong>s distintos. Uma eventual queda <strong>de</strong>conexão entre dois segmentos vai particionar o ambiente <strong>em</strong> dois grupos distintos e quando houvera reconexão automaticamente é feita uma reorganização voltando a ter um grupo único com todosos micros do sist<strong>em</strong>a distribuído, idêntico à situação anterior à queda da re<strong>de</strong>. Outra gran<strong>de</strong>vantag<strong>em</strong> é po<strong>de</strong>rmos integrar num único gerenciamento diferentes arquiteturas <strong>de</strong> hardware esist<strong>em</strong>as operacionais.


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>Esta ferramenta <strong>de</strong> gerenciamento <strong>de</strong> sist<strong>em</strong>as distribuídos, <strong>usando</strong> comunicação <strong>em</strong> gruponão foi comparada com produtos similares pois não encontramos produtos s<strong>em</strong>elhantes <strong>usando</strong>comunicação <strong>em</strong> grupo. Este artigo contribui para divulgar o uso <strong>de</strong> mecanismos <strong>de</strong> comunicação<strong>em</strong> grupo mostrando o seu uso prático <strong>em</strong> um software <strong>de</strong> gerenciamento <strong>de</strong> recursos <strong>em</strong> sist<strong>em</strong>asdistribuídos.Como trabalhos futuros fica a sugestão <strong>de</strong> portar o aplicativo cliente para outrasplataformas como MAC e LINUX. Também uma versão do programa <strong>de</strong> consulta <strong>em</strong> JAVA seriamuito interessante pois permitiria o uso do mesmo <strong>em</strong> ambiente WEB.6 REFERÊNCIAS BIBLIOGRÁFICASAMIR, Y.; STANTON, J. The SPREAD Wi<strong>de</strong> Area Group Communication Syst<strong>em</strong>. Technicalreport, Center of Networking and Distributed Syst<strong>em</strong>s, Johns Hopkins University, Baltimore,Mariland, 1998. Disponível na internet URL: http://www.cnds.jhu.edu/publications/ capturado <strong>em</strong>agosto <strong>de</strong> 2001.BERKET, K., The InterGroup Protocols: Scalable Group Communication for the Internet.Dissertation, University of California – USA 2000. Disponível na internet URL http://wwwitg.lbl.gov/InterGroupcapturado <strong>em</strong> <strong>de</strong>z<strong>em</strong>bro <strong>de</strong> 2001.BIRMAN, K; RENESSE, R. van, Reliable Distributed Computing with the ISIS Toolkit, IEEEComputer Society Press, 1994.COULOURIS G.; DOLLIMORE J.; KINDBERG T., Distributed Syst<strong>em</strong>s Concepts and Design,Addison Wesley, Third Edition, 2001DOLEV, D.; MALKI, D.; The Transis Approach to High Availability ClusterCommunication., Communications of the ACM, 39(4), April 1996EZHILCHELVAN, P.; MACEDO, R.; SHRIVASTAVA, A. NEWTOP: A Fault-tolerante GroupCommunication Protocol. Proceedings of the 15 th IEEE International Conference onDistributed Computing Syst<strong>em</strong>s, pag 296-306, Vancouver, Canada, maio 1995.HAYDEN, M. The Ensenble Syst<strong>em</strong>, PhD thesis, Department of Computer Science, CornellUniversity, January 1998KOCH, R.R. The Atomic Group Protocols: Reliable Or<strong>de</strong>red message <strong>de</strong>livery for ATMnetworks PhD Dissertation, Department of Electrical and Computer Engineering, University ofCalifornia, Santa Barbara, CA, Dec<strong>em</strong>ber 2000


II Congresso Brasileiro <strong>de</strong> Computação – CBComp 2002Sist<strong>em</strong>as Paralelos e <strong>Distribuídos</strong>MALLOTH, C; Conception and Impl<strong>em</strong>entation of a Toolkit for Building Fault-TolerantDistributed Applications in Large-Scale Networks, PhD thesis , Ecole Polytechnique Fe<strong>de</strong>rale <strong>de</strong>Lausanne, 1996.MONTRESOR, A., Syst<strong>em</strong> Support for Programming Object-Oriented DependableApplications in Partitionable Syst<strong>em</strong>s, Technical Report UBLCS-2000-10 Department ofComputer Science, University of Bologna, Bologna – Italy, 2000. Disponível na internet URLhttp://www.cs.unibo.it capturado <strong>em</strong> <strong>de</strong>z<strong>em</strong>bro <strong>de</strong> 2001.MOSER, L. E.; MELLIAR-SMITH, P.M.; AGARWAL, D.A.;BUDHIA, R.;LINGLEY-PAPADOULOS, C. Tot<strong>em</strong>: A Fault-Tolerant Group Communication Syst<strong>em</strong>. Communicationsof the ACM, 39(4) , April 1996.RENESSE, R. van; BIRMAN, K.P.; MAFFEIS, S. Horus: A Flexible Group CommunicationSyst<strong>em</strong>, Communications of ACM, 39(4):76-83, April 1996.WHETTEN, B.; MONTGOMER, Y., T.; KAPLAN, S., A High Performance Totally Or<strong>de</strong>redMulticast Protocol. Proceedings of the International Workshop on Theory and Practice inDistributed Syst<strong>em</strong>s, pag 33-57, Dagstuhl Castle, Al<strong>em</strong>anha, Set<strong>em</strong>bro 1994.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!