Updated: January 21, 2005
Applies To: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1, Windows Server 2003 with SP2
Except for very small networks, directory data must reside in more than one place on the network to be equally useful to all users. Through replication, the Active Directory® directory service maintains replicas of directory data on multiple domain controllers, ensuring directory availability and performance for all users. Active Directory uses a multimaster replication model, allowing you to make directory changes at any domain controller, not just at a designated primary domain controller. Active Directory relies on the concept of sites to help keep replication efficient, and on the Knowledge Consistency Checker (KCC) to automatically determine the best replication topology for the network.
Organizing data for replication
Data is stored on each domain controller in the directory store, which is divided logically into specific directory partitions. Each partition stores a different type of directory data, either domain data, forest schema data, forest configuration data, or application data. All domain controllers within a forest hold a replica of the schema and configuration partitions for that forest, and all domain controllers within a particular domain hold a replica of the domain partition for their domain. Application directory partitions hold directory data specific to a particular application and can be stored by domain controllers belonging to different domains. Changes to each directory partition are replicated to all other domain controllers that hold a copy of that partition. For more information, see Directory data store.
Replication also ensures the availability of the global catalog throughout the entire forest. The global catalog is a searchable directory store containing data about every object in all domains. The global catalog is stored by domain controllers for which the global catalog has been enabled. For more information, see Global catalog replication.
Improving replication efficiency with sites
To help make replication more efficient, Active Directory relies on sites. Sites, defined as groups of well-connected computers, determine how directory data is replicated. Active Directory replicates directory information within a site more frequently than among sites. This way, the best connected domain controllers, those most likely to need particular directory information, receive replicated updates first. The domain controllers in other sites also receive the changes, but less frequently, reducing network bandwidth consumption. For more information, see How replication works and Sites overview.
Determining the replication topology
The Knowledge Consistency Checker (KCC), a process running on each domain controller, automatically identifies the most efficient replication topology for your network, based on information you provide about your network in Active Directory Sites and Services. The KCC regularly recalculate the replication topology to adjust for any network changes that have occurred. The KCC of one domain controller within each site (the intersite topology generator) determines the intersite replication topology. For more information about the KCC, see Active Directory Replication Technologies.
Replication enhancements in the Windows Server 2003 family
The Microsoft® Windows Server 2003 family includes enhancements to make replication both more efficient, as well as more scalable across a larger number of domains and sites. These include refinements in memory usage, enhancements to the Windows 2000 spanning tree algorithm, a completely new spanning tree algorithm for Windows Server 2003 forests, and a new load balancing tool.
In a forest set to the Windows 2000 functional level, the replication enhancements provide gains in replication efficiency and scalability, even when sites and domains contain domain controllers running Windows 2000. If a site contains at least one domain controller running Windows Server 2003, then a domain controller running Windows Server 2003 assumes the intersite topology generator role for the site, allowing the enhancements to take effect.
In a forest set to the Windows Server 2003 functional level, the new Windows Server 2003 spanning tree algorithm goes into effect for larger gains in both efficiency and scalability. For example, using the original spanning tree algorithm from Windows 2000, one domain can contain up to 300 sites. With the new Windows Server 2003 algorithm, one domain can contain up to at least 3,000 sites. In the new algorithm, the intersite topology generator in each site uses a randomized selection process to determine the bridgehead servers for the site. This selection process more evenly distributes the bridgehead replication workload among domain controllers in a site, resulting in much better efficiency (particularly in hub sites with a number of domain controllers). By default, the randomized selection process takes place only when new connection objects are added to the site. However, a new tool, called adlb.exe, can be run to rebalance the load each time changes occur in the topology or in the number of domain controllers in the site. In addition, adlb can stagger schedules so that the outbound replication load for each server is spread out evenly across time. For more information about adlb and to download the tool, see the "Windows Server 2003 Active Directory Branch Office Planning and Deployment Guide."