3. Protokollmodell (Protocol Model)
Das von diesem Protokoll übernommene allgemeine Modell ist eines, bei dem Clients Protokolloperationen gegen Server ausführen. In diesem Modell übermittelt ein Client eine Protokollanfrage, die die auszuführende Operation beschreibt, an einen Server. Der Server ist dann für die Durchführung der notwendigen Operation(en) im Verzeichnis verantwortlich. Nach Abschluss einer Operation gibt der Server typischerweise eine Antwort mit entsprechenden Daten an den anfragenden Client zurück.
Protokolloperationen sind im Allgemeinen unabhängig voneinander. Jede Operation wird als atomare Aktion verarbeitet und belässt das Verzeichnis in einem konsistenten Zustand.
Obwohl Server verpflichtet (required) sind, Antworten zurückzugeben, wann immer solche Antworten im Protokoll definiert sind, gibt es keine Anforderung an synchrones Verhalten seitens der Clients oder Server. Anfragen und Antworten für mehrere Operationen können im Allgemeinen zwischen einem Client und einem Server in beliebiger Reihenfolge ausgetauscht werden. Bei Bedarf kann synchrones Verhalten durch Client-Anwendungen gesteuert werden.
Die in diesem Dokument definierten Kernprotokolloperationen können auf eine Teilmenge des abstrakten X.500 (1993) Verzeichnisdienstes [X.511] abgebildet werden. Es gibt jedoch keine Eins-zu-Eins-Zuordnung zwischen LDAP-Operationen und X.500 Directory Access Protocol (DAP)-Operationen. Server-Implementierungen, die als Gateway zu X.500-Verzeichnissen fungieren, müssen möglicherweise mehrere DAP-Anfragen stellen, um eine einzelne LDAP-Anfrage zu bedienen.
3.1. Operation and LDAP Message Layer Relationship (Beziehung zwischen Operation und LDAP-Nachrichtenschicht)
Protokolloperationen werden auf der LDAP-Nachrichtenschicht ausgetauscht. Wenn die Transportverbindung geschlossen wird, werden alle nicht abgeschlossenen Operationen auf der LDAP-Nachrichtenschicht abgebrochen (wenn möglich) oder ohne Übertragung der Antwort abgeschlossen (wenn ein Abbruch nicht möglich ist). Außerdem darf (MUST NOT) der Client nicht davon ausgehen, dass nicht abgeschlossene Aktualisierungsoperationen erfolgreich waren oder fehlgeschlagen sind, wenn die Transportverbindung geschlossen wird.