b"\n_START_ARTICLE_\nGossiping\n_START_PARAGRAPH_\nEm sistemas distribu\xc3\xaddos um protocolo de propaga\xc3\xa7\xc3\xa3o de boatos, ou gossiping simplesmente, \xc3\xa9 uma categoria de protocolo de comunica\xc3\xa7\xc3\xa3o que propaga informa\xc3\xa7\xc3\xa3o de forma an\xc3\xa1loga a propaga\xc3\xa7\xc3\xa3o de um boato em um dado c\xc3\xadrculo social. Este tipo de protocolo tamb\xc3\xa9m \xc3\xa9 chamado muitas vezes de propaga\xc3\xa7\xc3\xa3o epid\xc3\xaamica que, essencialmente, \xc3\xa9 igual \xc3\xa0 propaga\xc3\xa7\xc3\xa3o de boatos.\n_START_SECTION_\nGossiping\n_START_PARAGRAPH_\nNa propaga\xc3\xa7\xc3\xa3o de boato, diferentemente da propaga\xc3\xa7\xc3\xa3o epid\xc3\xaamica, \xc3\xa9 a gera\xc3\xa7\xc3\xa3o/recebimento de uma atualiza\xc3\xa7\xc3\xa3o que dispara o mecanismo de propaga\xc3\xa7\xc3\xa3o. Assim, n\xc3\xa3o h\xc3\xa1 mais rodadas fixas nas quais cada n\xc3\xb3 realiza a propaga\xc3\xa7\xc3\xa3o, ao inv\xc3\xa9s disso cada n\xc3\xb3, ao receber uma atualiza\xc3\xa7\xc3\xa3o escolhe um outro n\xc3\xb3 aleatoriamente e propaga a atualiza\xc3\xa7\xc3\xa3o. Para aumentar a efici\xc3\xaancia, uma vez que um n\xc3\xb3 tenha recebido uma atualiza\xc3\xa7\xc3\xa3o ele pode passar a propagar a mesma periodicamente._NEWLINE_Entretanto, no gossiping, caso um n\xc3\xb3 tente propagar uma determinada atualiza\xc3\xa7\xc3\xa3o para um outro n\xc3\xb3 e este outro n\xc3\xb3 j\xc3\xa1 tiver recebido a atualiza\xc3\xa7\xc3\xa3o em quest\xc3\xa3o, o n\xc3\xb3 propagador perde o interesse em propagar aquela nova informa\xc3\xa7\xc3\xa3o. Este mecanismo \xc3\xa9 an\xc3\xa1logo \xc3\xa0 vida real. Andr\xc3\xa9 n\xc3\xa3o ter\xc3\xa1 mais interesse em propagar a informa\xc3\xa7\xc3\xa3o recebida de Ant\xc3\xb4nio caso descubra que essa informa\xc3\xa7\xc3\xa3o n\xc3\xa3o \xc3\xa9 mais novidade._NEWLINE_Desta forma, embora gossiping seja uma forma eficiente de propagar uma nova informa\xc3\xa7\xc3\xa3o na rede, n\xc3\xa3o \xc3\xa9 poss\xc3\xadvel garantir que todos os n\xc3\xb3s ser\xc3\xa3o atualizados.\n_START_SECTION_\nRemo\xc3\xa7\xc3\xa3o de Dados\n_START_PARAGRAPH_\nEmbora protocolos baseados em propaga\xc3\xa7\xc3\xa3o de boatos sejam extremamente eficientes para propagar informa\xc3\xa7\xc3\xa3o, \xc3\xa9 dif\xc3\xadcil remover um dado do sistema. Isso acontece porque se simplesmente removermos o dado de um determinado n\xc3\xb3, o dado pode ser novamente propagado por um outro n\xc3\xb3 que ainda n\xc3\xa3o teve o dado removido._NEWLINE_H\xc3\xa1, contudo, algumas alternativas para contornar tal problema:_NEWLINE_Uma primeira abordagem \xc3\xa9 determinar o tempo de vida de cada informa\xc3\xa7\xc3\xa3o, sendo a mesma exclu\xc3\xadda ap\xc3\xb3s este tempo de vida. Por\xc3\xa9m, esta abordagem exige que a informa\xc3\xa7\xc3\xa3o seja republicada ap\xc3\xb3s o seu tempo de vida caso deseje-se que a mesma permane\xc3\xa7a viva por um per\xc3\xadodo maior._NEWLINE_Outra poss\xc3\xadvel abordagem \xc3\xa9 cada atualiza\xc3\xa7\xc3\xa3o possuir um n\xc3\xbamero de vers\xc3\xa3o. de forma que para remover um item envia-se uma nova atualiza\xc3\xa7\xc3\xa3o de remo\xc3\xa7\xc3\xa3o de conte\xc3\xbado, que chamaremos de certificado de \xc3\xb3bito, com um n\xc3\xbamero de vers\xc3\xa3o maior que a \xc3\xbaltima atualiza\xc3\xa7\xc3\xa3o. O problema desta solu\xc3\xa7\xc3\xa3o \xc3\xa9 que com o tempo cada n\xc3\xb3 ir\xc3\xa1 acumular um grande n\xc3\xbamero de certificados de \xc3\xb3bito. Para contornar tal problema pode-se adotar a primeira abordagem para os certificados de \xc3\xb3bito, ou seja, determinar um tempo de vida para os certificados de \xc3\xb3bito. Novamente o problema aqui \xc3\xa9 determinar qual o tempo m\xc3\xa9dio de propaga\xc3\xa7\xc3\xa3o da informa\xc3\xa7\xc3\xa3o._NEWLINE_Dependendo da natureza da informa\xc3\xa7\xc3\xa3o que seu sistema ir\xc3\xa1 propagar \xc3\xa9 poss\xc3\xadvel utilizar uma abordagem h\xc3\xadbrida, tal como ilustrada a seguir:\n_START_SECTION_\nExemplo\n_START_PARAGRAPH_\nO bigoo \xc3\xa9 um sistema de aloca\xc3\xa7\xc3\xa3o de caronas peer-to-peer que utiliza um protocolo baseado em propaga\xc3\xa7\xc3\xa3o epid\xc3\xaamica para propagar as caronas._NEWLINE_Neste sistema as caronas possuem um n\xc3\xbamero de vers\xc3\xa3o, um n\xc3\xbamero finito de vagas e uma data na qual a carona ir\xc3\xa1 ocorrer. Cada n\xc3\xb3 remove de forma autom\xc3\xa1tica uma carona uma vez que a mesma j\xc3\xa1 tenha ocorrido. Entretanto em determinadas situa\xc3\xa7\xc3\xb5es pode ser necess\xc3\xa1rio remover uma carona do sistema, por exemplo, caso a pessoa que esteja oferecendo a carona desiste de oferecer a mesma, ou caso a as vagas tenham esgotado simplesmente._NEWLINE_Nestes casos \xc3\xa9 propagada uma nova atualiza\xc3\xa7\xc3\xa3o da carona com o n\xc3\xbamero de vagas igual a 0. Note que embora esta carona esteja 'inv\xc3\xa1lida', j\xc3\xa1 que nenhum n\xc3\xb3 mais pode requisit\xc3\xa1-la, ela permanecer\xc3\xa1 no sistema at\xc3\xa9 a sua data de expira\xc3\xa7\xc3\xa3o."