Network Data Management Protocol (NDMP)
What is Network Data Management Protocol (NDMP)?
Network Data Management Protocol (NDMP) is an open protocol to control data backup and recovery communications between primary and secondary storage in a heterogeneous network environment. Simply put, the protocol is meant for network-based backup for network-attached storage (NAS).
The objective of NDMP is to address problems associated with backing up networks of heterogenous and/or dedicated file servers using backup applications. It specifies a common architecture to backup these servers and enables them to communicate directly to a network-attached tape device for backup or recovery operations.
Addressing NAS challenges
NAS devices, which are dedicated file servers, are not connected to networks through a central server, so they must have their own operating system (OS). Furthermore, they do not host applications such as backup Software agents and clients. Consequently, administrators must mount every NAS volume using either Network File System or Common Internet File System from a network server that does host a backup software agent. This cumbersome method increases network traffic and degrades performance.
NDMP enables heterogeneous network file servers to communicate directly to a network-attached tape device for backup or recovery. It uses a common data format that is written to and read from the Drivers for various devices.
Common architecture and universal agent
NDMP specifies a common architecture to back up network file servers. It also helps create a common or universal agent for all network-attached file servers.
A centralized program can use this agent to back up data on file servers running on different platforms.
Separate data path and control path
NDMP separates the data and control paths, making it easy for admins to locally back up network data and manage it from a central location. As a result, it enables localized backups and disaster recovery and minimizes demands on network resources.
Client-server architecture
NDMP facilitates communication between agents on file servers and centralized backup software. These communications are defined using a series of interfaces or External Data Representation-encoded messages exchanged over a bidirectional TCP/IP connection.
NDMP architecture uses a client-server model, where the backup software is the client to the NDMP server. The server is a virtual state machine that is established for every connection between the NDMP host and the client.
The need for and benefits of NDMP
Comprehensive and cost-effective enterprise storage management systems that back up and restore data in a secure manner for all OSes are in demand by enterprises. These organizations also need a way to catalog and control this data. The emergence of NAS and dedicated file servers make it difficult to achieve these objectives.
Before Network Data Management Protocol
Before the availability of NDMP, storage management and backup vendors had to adapt their architecture to the supported OS. They also had to port to and track multiple platforms and OS releases. Filers were particularly challenging because they had to be backup-ready. Together, this resulted in implementations with too many OS dependencies.
After Network Data Management Protocol
NDMP helps address these challenges. Using this network-based protocol, administrators can back up enterprise data using NAS and other backup devices. It also supports centralized control of enterprise network data management and minimizes network traffic. Additionally, NDMP helps simplify the management and protection of critical data, and it provides low-level control of tape devices and Small Computer System Interface (SCSI) media changers.
Challenges that NDMP addresses
Here are common challenges that organizations encounter when it comes to their storage environments:
- Data is spread across multiple hardware and OS platforms.
- They use heterogenous NAS or dedicated file servers.
- Data storage requirements are increasing.
- The enterprise storage environment has become more complex.
- Spending for comprehensive and efficient data management tools is increasing.
- Backup of NAS over the network is time-consuming and resource-intensive.
These challenges necessitate scalable enterprise backup solutions that meet enterprise performance requirements, provide vendor support and comply with multiple platforms. When using these types of products, NDMP simplifies the management, backup and protection of distributed data.
For server vendors
Server vendors are required to support a range of backup media devices and backup software applications. To accomplish this, they often invest in multiple application programming interfaces to ensure interoperability of their servers with backup hardware and software. These additional efforts lead to long and wasteful development and support cycles, which prevent them from developing new server features.
For NAS vendors
NAS appliances are optimized for a single function -- i.e., file service -- and do not have a general-purpose OS to port a backup software solution. As a result, data backup and restoration over the network are slow, interfering with enterprise network performance.
For backup software vendors
Like server vendors, backup software vendors must also ensure interoperability and compatibility between various platforms and versions to maximize data transfer performance. This requires ongoing technical work, which may extend product development timelines, delay product feature enhancements and impact the quality of customer support.
How Network Data Management Protocol helps
NDMP helps vendors address product challenges because it defines a common backup architecture. When vendors are NDMP-compliant, it ensures customers that they are aligned with this well-defined protocol.
NDMP also enables users to centrally manage and protect data in a plug-and-play heterogeneous environment. The protocol ensures interoperability and eliminates the need for widespread vendor support. Finally, NDMP-compliant vendors can focus their development efforts on product upgrades and improvements.
Server-side implementation of NDMP
Server vendors implement NDMP by including a set of interfaces in the OS code. These interfaces include the following.
Connect Interface | Enables client-side authentication and negotiates the protocol version being used. |
Configure Interface | Enables the backup software to discover the NDMP server configuration. |
Data Interface | Deals with the format of backup data and initiates backups and restorations. |
Tape Interface | Provides complete tape drive control. |
SCSI | Enables low-level control of SCSI devices. |
Backup software-side implementation of NDMP
Backup software vendors also implement NDMP using a set of interfaces, including the following.
Notify Interface | Notifies the backup software about the NDMP server. |
File History Interface | Enables the NDMP server to make entries in the file history of the software to facilitate later file retrieval. |
Logging Interface | Provides messages used by the operator to monitor backup progress and perform diagnostics. |
Backup device-side implementation of NDMP
Since the NDMP environment does not require device drivers, backup software vendors only need to be compliant with SCSI standards.
See storage network backup of file servers, backup standards guide a data protection strategy and the tiers of disaster recovery explained. Also, explore tips to protect NAS device backups; challenges of NAS mirror backup; and tips, tricks and market options for NAS backups to cloud.