It has been a decade since the first version of the Network Data Management Protocol (NDMP) was launched as an effort to solve the problems posed by the backup and recovery of network file servers. Initial work on the standard was spearheaded by Intelliguard Software (subsequently rolled into Legato Software and EMC), which produced storage management software, and Network Appliance, which manufactures network file servers.
The standard was developed to address the fact that network file servers are not able to use the storage device drivers designed for general-purpose computers. They are specialized appliances that connect to a network and are optimized to perform a single set of tasks. Their files are usually mounted by general-purpose computers through protocols such as the Unix/Linux Network File System and Microsoft Windows Common Internet File System.
Without NDMP, there were two choices for backing up network file servers. One was to mount their file systems onto the file system of a computer across the network and do the backup there. The downside was that backup and restore required network and server bandwidth. Moreover, the added complexity made it difficult to use optimized aspects of the network file server, such as Network Appliance's Snapshot capability.
The other option was to write driver software for each type of network file server and locally attached storage system (tape drives, jukeboxes, CD-ROM writers). That required vendors (manufacturers of network file systems and storage systems and/or backup control software houses) to produce multiple driver variants.
The advantage of NDMP is that it establishes a single set of interfaces between the three components involved in a backup or restore operation -- the software controlling the backup or restore, the source medium and the destination medium. When all the components are NDMP-compliant, each manufacturer can concentrate on maximizing the efficiency of its side of the interface.
By 1999, the time for backing up an Oracle database residing on one of Network Appliance's network file servers had been reduced from hours to minutes. Instead of mounting the network file server's files to the computer acting as an Oracle server, the backup was done locally on the network file server and used Network Appliance's Snapshot files, which allow for live backup of a consistent disk image.
The paradigm for NDMP is a client/server architecture in which data producers and consumers are thought of as servers or service providers, and the backup control software, which starts, stops and monitors backup and recovery, is thought of as a client. There is one client per NDMP session. There can be multiple servers. In NDMP documentation, clients are also sometimes called data management applications, and servers or service providers are called data service providers (DSP).
A DSP such as a network file server produces a data stream when it provides data to a storage system for backup. It consumes data when a storage system provides it with data for a restore.