Directory User Agent (DUA)
The Directory User Agent is concerned with the first level of abstraction and deals with how the user
interacts with the Directory . The nature of this interaction between the two components has been
standarised . It involves a set of operations that can be performed on the directory by the user of the Directory .
Because of the quantity of operations , a collective term is used and is known as the Directory Abstract Service .
Having said that , this combination of operations is not actually used , but instead it is transformed into a protocol by combining it
with two other OSI services which are
1. Remote Operation Service (ROSE) and
2. Association Oentral Service (ACSE) .
The resulting protocol is known as the Directory Access Protocol (DAP).
Design of DUA
The design of the DUA must of conform to the DAP in order that it will
interwork with the Directory system . The DUA uses the DAP to send Directory requests to a DSA and to receive the reply . Similarly , if the Directory attached DSA cannot service the request from the DUA , it uses the DSP to pass the request to other DSA's in the network .
To understand the design , it helps to break down the DUA into basic
terms . The DUA can be considered as a piece of software that conforms to the standard interface between the
user and the Directory . The fact that the Directory is a multi-user system does not imply that each user must
have their own personal DUA software . The DUA software , when invoked by a user , is acting as the DUA for
that user and the same applies for the other users of the system . Although quite obvious , this fact is very
important when the data caching in the Directory is taken into consideration . The reason to this is that data
that is cached by shared DUA software (on behalf of the user) , cannot be given to a different user without
violating certain access controls on the data . The reason for the data violation being that other users may not
have been giving access . Access control is a very important part of DUA design and implementation .