\input trademark

\documentstyle[blackandwhite,small] {NRslides}

\title {The QUIPU Directory Service}

\author {S.E. Kille \\
Department of Computer Science \\
University College London}

\date {October 1988}
\raggedright

\begin {document}

\maketitlepage

\begin {bwslide}
\ctitle {What is QUIPU}

\begin {itemize}
\item QUIPU is an implementation of the OSI Directory
\begin {itemize}
\item CCITT Recommendations  X.500 Series
\item ISO DIS 9594
\end {itemize}
\item Written in `C' and runs on the \unix/ operating system
\item For research and experimental usage
\item Developed under the ESPRIT Integrated Network Architecture Project
(INCA)
\item Openly Available as a part of the ISODE package
\end {itemize}
\end {bwslide}

\begin {bwslide}
\ctitle {Why QUIPU}
\begin {itemize}
\item Requirement for Directory Service is becoming increasingly apparent:
\begin {itemize}
\item Message Handling Systems
\item OSI Applications
\item White Pages Service
\end {itemize}

\item Experience with such services restricted to:
\begin {itemize}
\item Simpler systems, such as the DARPA Domain System
\item Centralised databases
\end {itemize}

\item Need to have system to facilitate experimentation, with the following
characteristics:
\begin {itemize}
\item Available ASAP
\item Flexible
\end {itemize}

\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {The QUIPU DUA}

\begin {itemize}
\item `C' procedural interface
\begin {itemize}
\item Follows the Directory Abstract Service (X.511)
\item Designed for ease of use
\item Access to the full service
\end {itemize}

\item ASN.1 handling code generated by use of PEPY (from ISODE)

\item Suitable for integration into:
\begin {itemize}
\item User Interfaces
\item Applications
\end {itemize}

\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {User Interfaces}

\begin {itemize}
\item QUIPU primarily oriented towards provision of Directory Services

\item QUIPU 4.0 did not have a user interface

\item QUIPU 5.0 will have
\begin {itemize}
\item ``DISH'' (DIrectory SHell) --- an MH-like interface to the OSI
Directory
\item Support for displaying user photographs
\item ``widget'' --- a prototype interface which provides simple windows on
a terminal
\end {itemize}

\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {The QUIPU DSA}
\begin {itemize}
\item The QUIPU DSA holds all its data in main memory
\begin {itemize}
\item Straightforward to implement
\item Does not restrict queries which can be resolved
\item High performance for small volumes of data
\item Can be simply extended to moderate scale (of order $10^{4}$ entries
for a DSA on a small machine).
\item Addition of searching techniques is straightforward
\end {itemize}

\item Data is loaded from master format on disk

\item Startup is slow --- therefore a static process handles multiple queries

\item Updates are written back to disk (relatively slow)

\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {Entry Data Blocks (1)}
\begin {itemize}
\item  Distribution of Data is based on the concept of Entry Data Block (EDB)
\begin {itemize}
\item Not a part of X.500
\item Can be viewed externally in terms of X.500
\item Is basis for QUIPU Distributed Operations
\end {itemize}

\item EDB contains all information on a set of sibling entries
\end {itemize}
\end {bwslide}

\begin {bwslide}
\ctitle {Text Encoding}
\begin {itemize}
\item QUIPU uses a textual representation of common Directory Objects
\item Defined in BNF
\item Object Identifiers 
\item Attributes 
\item Relative Distinguished Names
\item Names
\end {itemize}
\end {bwslide}


\begin {bwslide}
\ctitle {Entry Data Blocks (2)}
\begin {itemize}
\item Uses \unix/ directory hierarchy to parallel the X.500 
Directory Information Tree
\begin {itemize}
\item \unix/ directory has name of Relative Distinguished Name
\item directory contains EDB file
\item directory contains attributes not held in memory (e.g. photos)
\item Multiple files used to ensure robust update
\end {itemize}


\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {Example EDB File}
\begin{tabbing}
Surname= \= \kill \\
MASTER\\
VERSION example \\
CN=\>Colin Robbins \\
CN=\>C J Robbins \& Colin John Robbins \\
ObjectClass= {OID}OrgnisationalPerson \& \\
\>{OID}QuipuObject \\
Phone=\>3702 \\
Surname=\> Robbins \\
Room=\>209 \\
Photo=\>\{ASN\}038207b40014880016fd... \\
\# Hide the photograph attribute \\
Acl=\>\{ACL\} others \# none \# attribute \# photo \\[2ex]
CN=\>Steve Kille \\
ObjectClass= {OID}OrgnisationalPerson \& \\
\>{OID}QuipuObject \\
Phone=\>7294 \\
Surname=\>Kille \\
Room=\>G24 \\
\# Owner can modify entry, and other people read it. \\
Acl=\>\{ACL\} others \# read \# entry \& \{ACL\} self \\
\>\# write \# entry \# \\
\# Prevent non UCL people reading ``my children''. \\
Acl=\>\{ACL\} prefix \# C=GB@O=UCL@OU=CS  \\
\>\# read \# child \\
Acl=\>\{ACL\} others \# none \# child \\
\end{tabbing}

\end {bwslide}

\begin {bwslide}
\ctitle {Support of X.500}
\begin {itemize}
\item QUIPU 4.0 supports
\begin {itemize}
\item Directory Abstract Service and Directory Access Protocol, except for
strong authentication aspects.
\item Non-standard distributed operations, including chaining and DSA
referral
\item Most X.500 Attributes and Object Classes
\item Correct OSI usage
\end {itemize}
\item QUIPU 5.0 will support
\begin {itemize}
\item Directory System Protocol
\item Standard Distributed Operations
\item The common X.400 Attributes and Object Classes
\end {itemize}

\end {itemize}
\end {bwslide}

\begin {bwslide}
\ctitle {Access Control}

\begin {itemize}
\item Access Control is needed for many real applications
\item Beyond the scope of the current version of the OSI Directory standards
\item QUIPU provides non-standard access control
\item Design Aims
\begin {itemize}
\item High functionality
\item No change to Directory Protocols
\item Acceptable storage overheads
\item Reasonably intuitive
\end {itemize}

\item Single Access Control Attribute, with detailed structure giving access
categories for:
\begin {itemize}
\item Entry
\item Attribute
\item Subordinate Access
\end {itemize}

\item Used as ``road map'' for distributed operations
\end {itemize}
\end {bwslide}

\begin {bwslide}
\ctitle {Schemas}
\begin {itemize}
\item QUIPU has knowledge about selected attribute syntaxes,
to optimise performance and to give correct functionality.

\item Many other attribute syntaxes can be handled as ``raw ASN.1''

\item Structure rules are beyond the scope of the current OSI Directory
Standards

\item QUIPU defines a ``Tree Structure'' Attribute
\begin {itemize}
\item Enables manager to control shape of tree
\item Enable user to determine shape of tree
\end {itemize}

\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {Distributed Operations}
\begin {itemize}
\item QUIPU manages its own distributed operation
\item All DSAs named within QUIPU
\begin {itemize}
\item Presentation Address of DSA
\item Which EDBs the DSA has copies of
\item Wildlife Description
\end {itemize}

\item Each EDB has master and slave copies marked by special attributes in
parent entry
\item Navigation can proceed by chaining or DSA referral

\item Bootstrap
\begin {itemize}
\item Master or Slave copy of root EDB
\item Superior Reference
\end {itemize}

\item Replication by ad hoc copying of EDBs
\end {itemize}
\end {bwslide}



\begin {bwslide}
\ctitle {Pilot Usage}

\begin {itemize}
\item A QUIPU based pilot experiment is being established
\begin {itemize}
\item  UCL (UK) --- Giant Tortoise / Vicuna / Condor
\item CSIRO (Australia) --- Anaconda
\item TWG (US) --- Piranah
\end {itemize}
\item Participation is encouraged
\begin {itemize}
\item Beta test based on QUIPU 4
\item Pilot based on QUIPU 5.0
\end {itemize}

\item Mailing list ``quipu@cs.ucl.ac.uk''
\begin {center}
\begin {tabbing}
Surname=quipu; \\
Org Unit=CS; \\
Organisation=UCL; \\
PRMD=UK.AC; \\
ADMD=Gold 400; \\
C=GB; \\
\end {tabbing}
\end {center}
\item Send to ``quipu-request'' to be added
\end {itemize}
\end {bwslide}


\begin {bwslide}
\ctitle {Availability of QUIPU}
\begin {itemize}
\item Distributed with ISODE 4.0 in July 1988
\item Available by Internet FTP and FTAM from Delaware
\item Available by NIFTP and FTAM from UCL
\item Available by post from Pennsylvania U, UCL, CWI and CSIRO
\end {itemize}

\end {bwslide}

\end {document}
