Cómo funciona la replicación

 

Última modificación del tema: 2005-05-12

Cuando varios almacenes de carpetas públicas (cada uno ubicado en un servidor independiente) admiten un mismo árbol de carpetas públicas, Exchange Server 2003 utiliza la replicación de carpetas públicas para mantener sincronizados los almacenes.

El contenido de carpetas públicas está incluido sólo en los almacenes configurados para tener una réplica de una carpeta específica. La información del contenido y de la jerarquía se replica por separado. Cada almacén mantiene una copia de la jerarquía, que incluye listas de los demás almacenes que contienen réplicas del contenido de cada carpeta. Las réplicas de contenido existen sólo en los almacenes que especifique.

Cada almacén de carpetas públicas mantiene una Tabla de estado de replicación que hace un seguimiento del estado de cada réplica del almacén. La Tabla de estado de replicación almacena la información siguiente:

  • Información básica necesaria para crear actualizaciones de cada réplica.
  • Información acerca de la última actualización de cada réplica que se originó en el almacén local, incluido el número de cambio de la actualización.
  • Grupos de actualizaciones aplicadas a todas las demás réplicas conocidas de la carpeta. Los números de cambio identifican las actualizaciones de cada grupo. El conjunto de números de cambio de todas las actualizaciones de un grupo se denomina CNSet. La información de actualizaciones se transmite de un almacén a otro como parte del proceso de replicación.

Las tablas siguientes muestran un ejemplo simplificado de cómo funcionan las tablas de estado de replicación. En este ejemplo, los almacenes de carpetas públicas del servidor A y del servidor B tienen réplicas de una carpeta llamada Proyectos. En cada servidor, la Tabla de estado de replicación hace un seguimiento no sólo del estado de la réplica de dicho servidor, sino también del estado de la réplica del otro servidor. Con esta información, el servidor A puede determinar si su réplica de Proyectos está sincronizada con la réplica de Proyectos que hay en el servidor B. Del mismo modo, el servidor B puede hacer un seguimiento de su estado respecto al servidor A.

Datos de ejemplo de la Tabla de estado de replicación para el servidor A

Réplica Datos

Proyectos en servidor A

(réplica local)

Se envió la última actualización el: A-100

Proyectos en servidor B

A-100 recibido

B-50 recibido

Datos de ejemplo de la Tabla de estado de replicación para el servidor B

Réplica Datos

Proyectos en servidor A

A-100 recibido

B-50 recibido

Proyectos en servidor B

(réplica local)

Se envió la última actualización el: B-50

Mediante la combinación de las listas de almacenes que contienen réplicas de contenido y la información de la Tabla de estado de replicación, cada almacén de carpetas públicas puede determinar su nivel de actualización con respecto a los demás almacenes que aceptan el árbol de carpetas públicas. Para obtener información acerca de cómo los almacenes de carpetas públicas utilizan esta información, consulte Solicitudes de reposición y mensajes de reposición.

Cuando se modifica una carpeta o su contenido, el almacén que aloja la réplica modificada envía por correo electrónico el cambio a los demás almacenes en forma de un mensaje de replicación. Exchange Server 2003 enruta el mensaje de replicación de la misma manera que los mensajes normales de correo electrónico. Para que la replicación funcione correctamente:

  • El Servicio de actualización de destinatarios debe poder marcar atributos de correo electrónico en los objetos de almacén del servicio de directorios de Microsoft Active Directory (como mail y proxyAddresses). Normalmente Exchange Server 2003 crea de forma automática las directivas de destinatarios que el Servicio de actualización de destinatarios sigue para actualizar los objetos de almacén.
  • Exchange Server 2003 debe poder enrutar el correo electrónico entre los servidores replicantes. Los mensajes de replicación se pueden enrutar mediante distintos tipos de vínculos de correo electrónico (como conectores para grupo de enrutamiento y conectores X.400).

Nota

El proceso de replicación utiliza los atributos de Active Directory de los almacenes de carpetas públicas, no de las carpetas públicas individuales. Las entradas de Active Directory para carpetas públicas individuales sólo se utilizan para enviar el correo electrónico normal a las carpetas o desde ellas. En la figura siguiente se muestran objetos de almacén de carpetas públicas en Active Directory. Los objetos de almacén de carpetas públicas se configuran y mantienen automáticamente, y residen en el contenedor Configuración de Active Directory.

7a8e9d93-a998-494d-99c2-92fda45613d0

Los mensajes de replicación se diferencian de otros mensajes de correo electrónico en que Exchange Server 2003 trata los primeros como mensajes del sistema. Esto significa que los mensajes de replicación no están obligados a las restricciones normales que se aplican a los mensajes de correo electrónico de los usuarios, como las restricciones de tamaño y entrega. En el directorio de Exchange Server 5.5, los mensajes de replicación también se trataban como mensajes del sistema.

En la tabla siguiente se enumeran los distintos tipos de mensajes de replicación que utiliza Exchange Server 2003.

Tipos de mensajes de replicación de carpetas públicas y su uso

Tipo de mensaje* Uso

Jerarquía (0x2)

Replica los cambios en la jerarquía desde el almacén local de carpetas públicas a todos los demás almacenes de carpetas públicas que admiten la misma jerarquía. Si bien Exchange Server 2003 trata los cambios en la jerarquía de manera diferente que los cambios en las réplicas de contenido, trata la jerarquía como si se tratara de otra carpeta. En algunos mensajes de sucesos y en otras operaciones, Exchange Server 2003 se refiere a la jerarquía como Carpeta 1-1.

Contenido (0x4)

Replica los cambios de contenido desde una réplica a todas las demás réplicas de contenido de esa carpeta. Un mensaje de contenido sólo contiene información que se aplica a una única carpeta.

Solicitud de reposición (0x8)

Solicita datos que faltan (en CNSet) desde otro almacén (tanto números de cambio de contenido como de jerarquía).

Respuesta de reposición (0x80000002 ó 0x80000004)

Envía datos que faltan (en CNSet) a un almacén que solicitó actualizaciones no ejecutadas.

Estado (0x10)

Envía los CNSet actuales de una carpeta a una o varias réplicas de esa carpeta (tanto números de cambio de contenido como de jerarquía).

Solicitud de estado (0x20)

Solicita la replicación de CNSet o la devolución de mensajes de estado (tanto números de cambio de contenido como de jerarquía).

*   El valor entre paréntesis es la notación hexadecimal del tipo de mensaje, que se utiliza en sucesos y registros. Utilice el valor hexadecimal al solucionar problemas de replicación. Para obtener más información acerca de las soluciones de problemas de replicación, consulte Diagnóstico y reparación de problemas de almacén de Exchange Server 2003.

Proceso básico de replicación de jerarquía y contenido

Cuando un usuario modifica una carpeta pública, se produce el proceso siguiente en el servidor que contiene la réplica de la carpeta a la que el usuario está conectado:

  1. El almacén de carpetas públicas graba el cambio.
  2. En el siguiente ciclo de replicación programado (que está determinado por el intervalo de replicación establecido para el almacén de carpetas públicas), el almacén de carpetas públicas comprueba las propiedades de la carpeta para determinar qué otros servidores contienen una réplica de esa carpeta. Si existen otras réplicas, el almacén determina la información que es necesario replicar en ellas. Esta información se convierte en la actualización de las réplicas.
    La replicación de carpetas públicas está basada en objetos: si se modifica una propiedad de un objeto, debe replicarse el objeto completo. El almacén que replica el cambio no puede dar por supuesto que todas las réplicas recibidas están actualizadas, por lo que debe enviar el objeto completo. Las consecuencias de los distintos tipos de replicación son:
    • Replicación de jerarquía   Si se crea una nueva carpeta o se modifica una propiedad de una carpeta (por ejemplo, el nombre para mostrar), la actualización incluye todas las propiedades de la carpeta.
    • Replicación de contenido   Si se envía un nuevo mensaje o se modifica uno existente, la actualización incluye el mensaje completo y sus propiedades.
  3. El almacén de carpetas públicas asigna un número de cambio a la actualización.
    Cuando una carpeta replica una actualización en otro servidor, el número de cambio se incluye con la actualización. Después, el servidor receptor utiliza el número de cambio para determinar si la actualización representa un cambio nuevo y si le faltan datos.
    Los números de cambio son similares a los números de secuencia de actualización (USN) utilizados en la replicación de Active Directory. No obstante, en casi todos los demás aspectos, la replicación de carpetas públicas es muy diferente a la replicación de Active Directory.
  4. El almacén de carpetas públicas empaqueta las actualizaciones en un mensaje de replicación. Los números de cambio de todas las actualizaciones incluidas en el mensaje se conocen como CNSet.
    Junto con las actualizaciones, el almacén de carpetas públicas empaqueta la información de las entradas de la carpeta de la tabla de estado de replicación, incluidos los CNSet aplicados a la réplica anteriormente. Esto significa que el mensaje de replicación incluye el estado de la carpeta emisora.
    Para reducir el tráfico de correo, el almacén de carpetas públicas empaqueta varias actualizaciones de jerarquía en un único mensaje de replicación. Del mismo modo, el almacén empaqueta varias actualizaciones de contenido para la misma carpeta en un único mensaje de replicación. Sin embargo, el almacén no puede empaquetar actualizaciones de jerarquía en el mismo mensaje de replicación que las actualizaciones de contenido y cada mensaje de replicación de contenido incluye actualizaciones para una única carpeta.
  5. El almacén de carpetas públicas dirige el mensaje de replicación a los demás almacenes de carpetas públicas que alojan réplicas de la carpeta actualizada. El almacén envía el mensaje y cualquier otro mensaje que se haya empaquetado desde el ciclo de replicación anterior.
    El almacén de carpetas públicas utiliza los componentes de enrutamiento internos de Exchange Server 2003 para la entrega de mensajes de replicación. El almacén no intenta dividir los mensajes de replicación basándose en los detalles de topología. Si se modifica el contenido de una carpeta y la carpeta tiene otras cinco réplicas, el almacén generará un único mensaje de replicación y lo dirigirá a los cinco almacenes que contienen esas réplicas. Los componentes de enrutamiento determinan cómo se enruta y entrega el mensaje.

Cuando un almacén de carpetas públicas recibe un mensaje de replicación, se produce el siguiente proceso:

  1. El almacén de carpetas públicas desempaqueta las actualizaciones y la información de estado del mensaje de replicación.
  2. El almacén compara los números de cambio de las nuevas actualizaciones con la lista de números de cambio que ya tiene e identifica las actualizaciones que no ha recibido anteriormente.
  3. El almacén aplica las nuevas actualizaciones a las réplicas de la carpeta apropiadas.
  4. Para cada réplica actualizada, el almacén actualiza la Tabla de estado de replicación con los números de cambio de las actualizaciones actuales y la información de estado de la carpeta contenida en el mensaje de replicación.
    Si la información de la Tabla de estado de replicación indica que se han aplicado otros CNSet a otras réplicas de la carpeta pero no a la réplica de este almacén, el almacén graba los CNSet que faltan en una ubicación llamada matriz de reposición y se prepara para enviar una solicitud de reposición. (Para obtener información detallada, consulte Solicitudes de reposición y mensajes de reposición).

Advertencia

Si realiza cambios en la jerarquía de carpetas públicas que afectan a varias carpetas a la vez, el proceso de replicación puede requerir un ancho de banda de red considerable. Por ejemplo, para mover las carpetas públicas de un servidor a otro, es necesario crear las nuevas réplicas en el servidor nuevo, esperar a que se repliquen los cambios de la jerarquía al servidor original y que el contenido se replique a las nuevas réplicas. Una vez que las réplicas se han sincronizado, es necesario quitarlas del servidor anterior. Incluso esta operación genera tráfico de red, porque el hecho de que se hayan eliminado las réplicas se debe replicar como un cambio de jerarquía. Para entender mejor cómo afectarán estos cambios a su sistema, consulte "Solicitudes de estado y mensajes de estado" más adelante en este tema y Solicitudes de reposición y mensajes de reposición.

Solicitudes de estado y mensajes de estado

Además de la información de estado contenida en cada mensaje de replicación, Exchange Server 2003 utiliza las solicitudes de estado y los mensajes de estado para determinar si las carpetas públicas tienen que emitir solicitudes de reposición o no.

Un almacén de carpetas públicas envía una solicitud de estado si se dan las siguientes circunstancias:

  • Se notifica al almacén un cambio en la lista de almacenes que contienen réplicas de una carpeta. Por ejemplo, ha utilizado el Administrador del sistema de Exchange para agregar o quitar un almacén de la lista. Exchange Server 2003 replica este cambio mediante mensajes de actualización de jerarquía. En este caso, el almacén envía una solicitud de estado que requiere la respuesta de todos los almacenes que contengan una réplica de la carpeta.
  • Se ha iniciado un nuevo almacén por primera vez. En este caso, el almacén solicita el estado de la jerarquía de carpetas públicas (que para el estado se trata como una carpeta especial llamada Carpeta 1-1). El almacén envía una solicitud de estado que requiere la respuesta de todos los almacenes que aceptan el árbol de carpetas públicas.
  • Un almacén que se ha restaurado mediante Copia de seguridad de Microsoft Windows se inicia por primera vez después de completarse la restauración. En este caso, el almacén solicita el estado de la jerarquía de carpetas públicas y de todas las carpetas para las que el almacén tiene réplicas de contenido. Esta solicitud de estado enumera dos o tres almacenes como de respuesta obligatoria. Los almacenes que tienen que responder obligatoriamente son los almacenes que aceptan esta jerarquía y, de acuerdo con un proceso de selección interna, son fuentes confiables de contenido de carpetas.
  • Se ha reiniciado un almacén con la clave Replication Flags del Registro configurada. Para obtener más información acerca de esta clave del Registro, consulte el artículo 813629 de Microsoft Knowledge Base, "Update to Send Status Request Messages in Microsoft Exchange 2000 Server". En este caso, el almacén solicita el estado de la jerarquía de carpetas públicas y de todas las réplicas de contenido que parezcan actualizaciones que faltan. Esta solicitud enumera dos o tres almacenes como de respuesta obligatoria.
  • Se ha reiniciado un almacén con la clave Enable Replication Messages On Startup del Registro configurada. Para obtener más información acerca de esta clave del Registro, consulte el artículo 321082 de Microsoft Knowledge Base, "How to Send Replication Status Request Messages in Exchange 2000 Server". En este caso, el almacén solicita el estado de la jerarquía de carpetas públicas y de todas las réplicas de contenido. Esta solicitud enumera dos o tres almacenes como de respuesta obligatoria.

Un almacén envía un mensaje de estado a otro almacén para indicar el estado actual de una carpeta concreta que contiene el primero. Un almacén envía un mensaje de estado en estas dos circunstancias:

  • En respuesta a una solicitud de estado enviada por otro almacén. El mensaje de estado sólo va al almacén solicitante, y sólo si se dan las dos condiciones siguientes:
    • El almacén que recibió la solicitud de estado está en la lista de solicitudes de los almacenes que deben responder obligatoriamente.
    • La tabla de estado de replicación indica que el almacén que recibió la solicitud de estado tiene actualizaciones que faltan en el almacén que envió la solicitud.
  • 24 horas después de recibirse la actualización más reciente de una carpeta, si no ha habido actualizaciones posteriores. Cada vez que el almacén recibe una actualización de una carpeta específica, el temporizador se restablece a 24 horas. Este mensaje de estado se envía a los demás almacenes de carpetas públicas que tienen réplicas de la carpeta actualizada.

Un almacén sigue una programación establecida para comprobar si tiene que enviar mensajes de estado. De forma predeterminada, esta comprobación se ejecuta a las 00:15 y 12:15 según la hora universal coordinada (hora del meridiano de Greenwich). Como resultado, una vez actualizada una carpeta, un almacén puede enviar un mensaje de estado hasta 36 horas más tarde.

Si un almacén de carpetas públicas recibe un mensaje de estado relativo a una carpeta que indica que el almacén emisor tiene información más reciente sobre la carpeta, el almacén receptor creará una solicitud de reposición. Si los números de cambio son los mismos (o los números de cambio del servidor receptor son más recientes), no se realiza ninguna acción.

Por ejemplo, la primera vez que se inicia un nuevo almacén de carpetas públicas, envía mensajes de solicitud de estado a todos los almacenes que aceptan la jerarquía de carpetas públicas. Cada almacén responde con información acerca del estado de la jerarquía (según el seguimiento realizado por ese almacén). El nuevo almacén utiliza esta información para identificar qué réplicas debe tener (si hay alguna). El nuevo almacén puede enviar solicitudes de reposición según sea necesario para llenar el contenido de réplicas.