Edit this page

Features

ApacheDS v1.0 Features

The Apache Directory Server is an embeddable LDAP server implemented in pure Java. It has several features that make it unique among LDAP servers. Some of these featurea are as follows:

  • Designed as an LDAP and X.500 platform; plugable components and subsystems make ApacheDS extremely modular and ideal for experiments with various aspects of the LDAP protocol.
  • The server's frontend is completely separable from its backend and vice-versa making it very flexible for implementing virtual directories, proxy servers and gateways to X.500 directories.
  • Several backends can be implemented and plugged into the server's partition nexus. The server supports a BTree based partition out of the box but any backing store can be used to implement a partition as long as it conforms to interfaces.
  • The server exposes aspects of administration via a special system backend. LDAP can be used to manage these concerns through the system naming context at ou=system.
  • Both the backend subsystem and the frontend are separable and independently embeddable.
  • The server contains a server side JNDI LDAP provider as the facade for the entire backend subsystem. JNDI operations are directly translated by this provider into operations against the nexus and the target partitions storing server entries.
  • The server's networking code, MINA (Multipurpose Infrastructure for Network Applications) was designed for pluggable protocol providers, of all sorts and not just LDAP. MINA gives ApacheDS the ability to handle large amounts of concurrency.
  • The server uses the Twix tools and APIs for ASN.1 BER encoding and decoding. These tools are designed for a very small encoding and decoding footprint as well as for use in non-blocking servers. The chunking nature of the BER codec makes the server very efficient while handling encoding and decoding making it more resistant to DoS attacks.
  • LDAP Stored Procedures and Triggers are scheduled for the next major version of ApacheDS.
  • LDAPv3 compatible certified by the OpenGroup

Comparing ApacheDS, Fedora Directory Server and OpenLDAP

General

  ApacheDS Fedora DS OpenLDAP OpenDS
Website http://directory.apache.org http://directory.fedora.redhat.com http://www.openldap.org http://www.opends.org/
License Apache License 2.0 GNU General Public License OpenLDAP Public License Common Development and Distribution License
Documentation minimal extensive sufficient ?
Code Java C/C++ C/C++ Java
Backed by organization Apache Software Foundation RedHat OpenLDAP Foundation Sun
Origin genuine Netscape DS (Michigan university) Michigan university genuine
Admin Gui no yes no ?
Installation Installer Installer Package/build ?

Technical

  ApacheDS Fedora DS OpenLDAP OpenDS
Back-End JDBM and custom Berkeley DB Berkeley DB and others ?
Multiple Back-Ends yes yes yes ?
Replication Multi-Master (2 masters) ... soon Multi-Master (up to 4 masters) Single-Master ?
Referrals yes yes yes ?
Schema Compilation dynamic/gui dynamic/ldap ?
Attribute Encryption no yes no ?

OpenDS project has not been evaluatedso far, so the '?' just express our ignorance...