What is the use of DFS Replication?

Introduction

Distributed File System Replication (DFS-R or DFSR) is a native replication service in Windows that organizations can use to replicate folders across file servers in distributed locations.  DFS-R is available in Microsoft Windows Server 2008 R2 and later and serves multiple purposes, from replicating the SYSVOL directory (replacing the older FRS) and as a replacement for the DFS Namespaces replication engine.

DFS-R tools to check replication status (Microsoft Windows Server 2008, Windows Server 2012, Windows Server 2016)

Here are a few basic tools that may help provide insight into DFS-R status. However, these tools are very limited. You may need a more robust solution if you are looking for: a detailed status of the DFS-R replication process, a DFS-R health check, forced replication, or performance tuning. We provide more insight into alternative tools, such as Resilio’s DFSR Solution, in this blog post.

Option #1

You could use a PowerShell command line from Microsoft.

1. Get-DfsrBacklog:

This command shows retrieves pending updates between two computers that participate in DFS-R file replication service. 

PS C:\> Get-DfsrBacklog -SourceComputerName "MyServer" -GroupName "G01" -FolderName "Folder" Identifier                  : {DCE7FC28-5584-4D5D-BC84-2BD9D53CC5FC}-v538 Flags                       : 5 Attributes                  : 32 GlobalVersionSequenceNumber : {DCE7FC28-5584-4D5D-BC84-2BD9D53CC5FC}-v538 UpdateSequenceNumber        : 71575496 ParentId                    : {997D8F76-1207-49D7-85C9-DED015105A2F}-v1 FileId                      : 562949953495210 Volume                      : \\.\C: Fence                       : 3 Clock                       : 130078672846368199 CreateTime                  : 3/15/2013 5:28:04 PM UpdateTime                  : 3/15/2013 5:28:04 PM FileHash                    : 173b51c11257a2eb 8c05884560fcfd1d FileName                    : file.exe FullPathName                : c:\folder\file.exe Index                       : 1 ReplicatedFolderName        : folder Replicated Folder Id        : 997d8f76-1207-49d7-85c9-ded015105a2f

2. Get-DfsrState:

This command shows you the current replication state of DFS-R in regard to its DFS replication group partners.  

PS C:\> Get-DfsrState -ComputerName "Server" | Format-Table FileName,UpdateState,Inbound,Source* -Auto -Wrap FileName                   UpdateState Inbound SourceComputerName --------                   ----------- ------- ------------------ ntfrs - Copy.exe             Scheduled True SRV02 ntdsai - Copy.dll            Scheduled True SRV02 NlsLexicons0046 - Copy.dll   Scheduled True SRV02 NlsLexicons000a - Copy.dll Downloading    True SRV02 occache - Copy.dll           Scheduled True SRV02 NlsModels0011 - Copy.dll     Scheduled True SRV02 NlsLexicons0007 - Copy.dll   Scheduled True SRV02 NlsLexicons000f - Copy.dll Downloading    True SRV02 NlsLexicons003e - Copy.dll   Scheduled True SRV02 NlsLexicons0045 - Copy.dll   Scheduled True SRV02 NlsData001a - Copy.dll     Downloading True SRV02 ntlanui2 - Copy.dll          Scheduled True SRV02

Option #2

Option two is to use the Dfsrdiag.exe tool that provides DFSR status. In the latest Windows Server builds, DFS Management Tools may not be installed. You should execute the following command from PowerShell to install it.

Install-WindowsFeature RSAT-DFS-Mgmt-Con

DFS-R Deficiencies

The DFS-R service is widely used and suffers from well-known deficiencies, foremost among these being a general lack of visibility into the replication process. DFS-R is effectively a “black box,” indicating nothing about the current status of the service. When relying on DFS-R and its algorithms for mission-critical replication, this lack of visibility can be extremely frustrating for administrators tasked with keeping these critical services operational and users happy. 

For mission-critical data replication, customers require additional functionality from the service as follows:

  • A detailed status of the DFS-R replication process
  • DFS-R health check
  • DFS-R force replication 
  • DFS-R performance tuning (making replication times predictable and consistent)
  • DFS-R real-time monitoring
  • DFS-R GUI/Dashboard

Many of these address basic visibility and control issues inherent in the service.  For example, a common pain customers experience is when a file is sitting in a SCHEDULED state with no clear way to start the replication.  Waiting for the service to “get around to it” is not a viable option. A simple “force replication” feature would solve these problems. Another common complaint from customers is the performance of the service is often inconsistent.   Replication times should be predictable and fast, especially for mission-critical workflows, regardless of the network topology (i.e. full mesh, hub/spoke).

There are some basic resources available in Windows whereby users can gain limited status information on the DFS-R service.  The most commonly used are the ones mentioned earlier.

The Future of DFS Replication in Windows Server

Despite these configure tools, it’s clear from the community that to make DFS-R an acceptable application for mission-critical work would require significant development from Microsoft.  Unfortunately, the prospects of Microsoft fixing these deficiencies is not likely. With the release of Azure File Sync in 2017, the roadmap for DSF-R is not promising as Microsoft clearly views Azure and Azure File Sync as the migration path for DFS-R.  Not only will DFS-R no longer see needed development to fix these issues, but it will also obviously face end-of-life at some point in the near future with dwindling support until then. The operational risks around continued DFS-R usage will further compound as more Microsoft resources are shifted to Azure.

Better Options to Consider Instead of DFS Replication in Windows Server

For customers looking to address these risks and improve visibility into critical replication processes without migrating everything to Azure, Resilio Connect is a comprehensive solution. It addresses most or all of the deficiencies of DFS-R and it works with the file and storage services and servers you already have while offering a migration path to the cloud at any point in the future.

What is the use of DFS Replication?

Resilio Connect delivers improved visibility, reliable replication, predictable (as well as faster) file propagation times, and much more as detailed in the table below.

What is the use of DFS Replication?
Resilio Connect runs as a file replication service on your Windows Servers and replaces DFS replication (DFSR)

Instead of fighting a losing battle with DFS-R, Resilio Connect solves the problem once and for all, frees up lost productivity and improves daily operations for most mission-critical data replication needs of shared folders and files.

Features Resilio Connect DFS-R
Reliability
Guaranteed replication time
GUI
Efficient error recovery
Multi-threaded
Multi-master
Differential sync engine
Peer-to-peer
File versioning
Object storage support (S3, Azure Blob, others)
10 Gbps replication speed
Bandwidth throttling scheduler
ReFS support

Learn more about Resilio Connect’s DFSR Replacement and how much faster and more reliable it can be. Or signup to discuss your environment, see a demo and start a free trial. 

How is DFS replication implemented?

To replicate folder targets using DFS Replication Click Start, point to Administrative Tools, and then click DFS Management. In the console tree, under the Namespaces node, right-click a folder that has two or more folder targets, and then click Replicate Folder. Follow the instructions in the Replicate Folder Wizard.

What is the purpose of DFS namespace?

DFS Namespaces and DFS Replication are role services in the File and Storage Services role. DFS Namespaces Enables you to group shared folders that are located on different servers into one or more logically structured namespaces. Each namespace appears to users as a single shared folder with a series of subfolders.

What is the importance of optimizing DFS replication?

DFS Replication enables you to replicate folders between multiple servers. To allow efficient use of the network, it propagates only the changes, uses compression, and uses scheduling to replicate the data between the servers.

What port are used by DFS replication?

What is a Distributed File System (DFS)?.