Qual é a mais inteligente?
Imagina que tens quatro réplicas que se sincronizam numa topologia de anel, o que significa que Redmond se sincroniza com Chicago que por sua vez se sincroniza com New York, que por sua vez se sincroniza com Philadelphia, que então se sincroniza com Redmond, e por aí adiante (não que as réplicas se sincronizem por si só, mas que as pessoas no local efectuem a sincronização). Philadelphia, depois de se ter sincronizado com New York, vai possuir todos os dados de todas as outras réplicas, para que quando te sincronizares com Redmond, Philadelphia possa saber que recebeu os dados que Redmond enviou para Chicago bem no principio do ciclo. A razão disto é que cada réplica mantém registo de qual a "geração" em que está referente às outras réplicas do conjunto. Desta maneira, Philadelphia sabe que acabou de receber os dados de Redmond (através de outras réplicas) e nenhum destes dados necessita de ser enviado novamente. Desta maneira, a réplica mais inteligente é a fonte "source" da sincronização.
Agora o que aconteceria se um dia tentasses inverter a direcção e sincronizar Redmond para Philadelphia (talvez os telefones estivessem avariados quando Philadelphia tentou se sincronizar e as pessoas em Redmond quiseram ter a certeza que os dados estavam sincronizados, sem terem de esperar por amanhã)? A réplica de Redmond "sabe" pela última vez que Philadelphia se sincronizou com ela, qual a geração em que está, mas não tem maneira de saber o que é que Philadelphia tem estado a fazer desde então. Redmond tentaria então enviar todos os dados desde aquela última vez para a Philadelphia, pensando que a coitada da Philadelphia não tinha recebido nenhuns dados desde essa altura. Não existe perigo para a integridade de dados nisto (porque o motor do Jet vai ignorar os registos mais "velhos" de Redmond em favor de novos, se quaisqueres alterações tiverem sido efectuadas, e vai saber que têm de apagar o registo se ele estiver na tabela MSysTombstones), mas pode levar a uma conecção telefónica muito mais longa entre os dois locais.
Isto é sempre um ponto importante a recordar com replicação, e porque eu usualmente construo todas as minhas funções de sincronização de maneira a poder deixar-me escolher dinamicamente, qual é a mais "inteligente" de modo a eu poder sempre minimizar o tempo necessário para efectuar a sincronização, quer localmente ou em situações de longa-distância.