Generated by GPT-5-mini| DLM (Distributed Lock Manager) | |
|---|---|
| Name | DLM |
| Title | Distributed Lock Manager |
| Developer | Hewlett-Packard, Oracle Corporation, Red Hat, IBM |
| Released | 1990s |
| Latest release | varies |
| Programming language | C (programming language), C++ |
| Operating system | HP-UX, Linux, Solaris (operating system) |
| License | GNU General Public License, Proprietary software |
DLM (Distributed Lock Manager)
DLM (Distributed Lock Manager) is a coordination service used to serialize access to shared resources across multiple nodes in a cluster. It provides primitives for acquiring, converting, and releasing locks with semantics suited to distributed filesystems, clustered databases, and high-availability services. DLM implementations are integral to systems from Hewlett-Packard clustering to Red Hat's Pacemaker (software) and Oracle Database clusters.
DLM coordinates resource access among nodes in a cluster such as those managed by Veritas, IBM's clustering solutions, and Oracle Real Application Clusters. It exposes lock types and conversion rules enabling clients like OCFS2, GFS2 (filesystem), and Lustre (file system) to enforce consistency. Originating in early clustered file systems and high-availability work at Hewlett-Packard and research labs including SUN Microsystems teams, DLM concepts spread to projects like Linux-HA and Red Hat Cluster Suite.
A typical DLM comprises lock managers on each node, a lock resource namespace, and communication layers built atop protocols such as TCP/IP or specialized interconnects like InfiniBand. Core components include the lock table, request queues, and callback subsystems used by services like Clustered Logical Volume Manager and Corosync. Implementations often integrate with cluster membership services like Pacemaker (software), CLVM, and fencing mechanisms provided by STONITH to ensure correctness during node failures.
DLMs support multiple lock modes (exclusive, shared, null-style) and conversion matrices similar to those in System V IPC semaphore semantics and POSIX advisory locks. Protocols include optimistic and pessimistic locking, two-phase locking variants used in ACID-compliant transaction managers such as Oracle Database and coordination patterns akin to algorithms studied at MIT and Carnegie Mellon University. Conversion callbacks and blocking acquisition paths are coordinated using cluster messaging from projects like OpenAIS and Corosync.
Prominent implementations include the DLM in HP-UX clusters developed by Hewlett-Packard, the kernel DLM used by GFS2 (filesystem) under Red Hat Enterprise Linux, and lock managers inside Oracle Real Application Clusters and Veritas Cluster File System. Research and open-source projects such as Linux-HA, DRBD, and Ceph incorporate locking or distributed coordination subsystems influenced by DLM design. Vendors like IBM and Oracle Corporation provide proprietary variants integrated with storage stacks like SCSI and Fibre Channel frameworks.
Performance depends on lock granularity, network latency over Ethernet, InfiniBand, or proprietary fabrics, and lock contention patterns found in workloads from SAP SE deployments to large-scale Hadoop clusters. Scalability strategies include lock sharding, hierarchical locking used in Google papers on distributed systems, and lease-based designs influenced by Amazon Web Services's distributed coordination services. Benchmarks often compare throughput and latency across cluster sizes using tools and frameworks from SPEC and university research groups such as UC Berkeley.
DLM handles node failures and network partitions via integration with cluster membership and fencing solutions like STONITH and quorum algorithms inspired by work from Leslie Lamport and Ronald Rivest-era distributed systems. Recovery involves lock reclamation, replay of pending requests, and use of persistent storage metadata in systems such as OCFS2 or GFS2 (filesystem) to prevent split-brain scenarios studied in literature from USENIX and ACM conferences.
Access control in DLM deployments leverages operating-system level permissions like those defined by POSIX, role-based controls seen in Red Hat and Oracle management stacks, and authentication via cluster management frameworks such as LDAP or Kerberos. Secure transport for lock coordination can employ IPsec or TLS (protocol) tunnels between nodes to protect integrity and confidentiality in environments managed by vendors like IBM and Hewlett-Packard.
DLMs are used in clustered filesystems (GFS2 (filesystem), OCFS2), database clustering (Oracle Real Application Clusters, PostgreSQL-based clusters), distributed storage like Ceph and GlusterFS, and high-availability orchestrations in OpenStack and Kubernetes ecosystems. They support enterprise workloads from SAP SE to large-scale web services offered by Amazon Web Services and research deployments at institutions such as CERN and Lawrence Berkeley National Laboratory.
Category:Distributed systems Category:Cluster computing Category:File system software