What is Microsoft DFS and why is it useful?

We are used to the notion of virtualization in our modern computing infrastructure. Virtual memory has been a fundamental concept in many operating systems for years; virtual disks, virtual machines, and virtual networks are all commonplace in today’s IT environments.

Virtualized access to networked file systems has been available for many years via Microsoft’s Distributed File System (DFS), although few IT shops take advantage of this powerful technology.

The advantages of using a virtualization layer between clients and file servers are numerous, including better organization of a company’s file shares, increased flexibility for storage administrators, and efficient solutions to several business critical problems such as load balancing access to file shares and providing disaster recovery methods for file shares.

Microsoft introduced DFS as an add-on to Windows NT 4.0, and DFS has been included as a free subsystem in all versions of Windows since Windows 2000. DFS consists of a server component, included in all versions of Windows Server, and a client component, included in all versions of Windows.

DFS works with the Server Message Block (SMB) protocol, sometimes referred to as Windows networking. The SMB protocol is also commonly referred to as the Common Internet File System (CIFS). Microsoft’s DFS does not work with non-SMB file networking protocols such as NFS or HDFS.

With DFS, the storage administrator creates a hierarchical namespace of links that point to his company’s file shares. These shares can be hosted by any SMB-compatible device, including Windows Servers, network attached storage devices from numerous vendors, and even Samba shares. The organization of the DFS namespace can be whatever makes sense for the company. For example, shares can be grouped by business unit, by geographic location, or both. A well designed DFS namespace makes it much easier for users to find shares in the company’s networked infrastructure.

Once a company’s users have switched from using hard-coded share paths to locating those shares via the DFS namespace, the storage administrator has considerable flexibility in managing the physical storage in his infrastructure. For example, if he needs to migrate a group of home folders to a new device with more capacity, he can copy the files as a background task; when the files are synchronized and he is ready to cut over to the new device, the storage administrator simply re-targets the appropriate DFS link(s) to point to the new share(s) and the users are automatically redirected to the new device the next time they access the DFS namespace.