|
|
1.1 ! root 1: \chapter {Overview} ! 2: ! 3: \section {Introduction} ! 4: ! 5: QUIPU is a Public Domain implementation of the OSI Directory as ! 6: specified in CCITT X.500 Recommendations / ! 7: ISO DIS 9594 for Directory Services \cite{ISO.Directory} ! 8: \cite{CCITT.Directory}. ! 9: It is intended to provide an environment for experimentation and for early ! 10: pilots using Standardised Directory Services. QUIPU is currently aligned to ! 11: the CCITT X.500 Recommendations (unofficial version). This is expected to ! 12: be technically identical to the ISO IS. The latest available ISO version is ! 13: the DIS. ! 14: ! 15: This document describes the design of QUIPU 5.0, and looks at some ! 16: extensions which are planned for QUIPU 6.0. ! 17: The reader who is only interested in the first aspect, should be careful to ! 18: note those aspects (clearly marked) which are not yet implemented. ! 19: This document is intended to complement ! 20: the ISODE Manual \cite{QUIPU.Manual}, which describes how to operate QUIPU, and how ! 21: to interface applications to it. ! 22: Familiarity with the OSI ! 23: Directory specifications is assumed \cite{CCITT.Directory}. ! 24: ! 25: ! 26: QUIPU fully implements both of the OSI Directory Protocols, and a number of ! 27: extensions. ! 28: The highlights of the QUIPU Directory Service ! 29: Implementation are: ! 30: ! 31: \begin {itemize} ! 32: \item ! 33: Use of memory structures to provide fast access, without use of ! 34: complex keying techniques. ! 35: \item ! 36: Activity scheduling within the DSA to allow for multiple accesses. ! 37: \item ! 38: General and flexible searching capabilities. ! 39: \item ! 40: A mechanism to provide non-local access control. ! 41: \item ! 42: A mechanism to provide external schema management. ! 43: \item ! 44: A sophisticated approach for management of distributed operations and ! 45: replication. ! 46: \end {itemize} ! 47: ! 48: The current implementation provides a DSA, and a procedural interface to the ! 49: Directory Abstract Service and the associated Directory Access Protocol ! 50: (DAP), which will enable other applications to use the Directory. ! 51: ! 52: \section {General Aims} ! 53: ! 54: To understand the rationale behind some of the decisions, it is ! 55: useful to consider the original aims of the QUIPU project. ! 56: These ! 57: can then be mapped onto a number ! 58: of more technical considerations: ! 59: ! 60: \begin {itemize} ! 61: \item To produce an implementation which followed the ! 62: emerging standards. This is an aim in itself. ! 63: ! 64: \item Flexibility, to enable the system to be used ! 65: for experimentation and research into problems relating to directory ! 66: services. ! 67: ! 68: \item To provide a vehicle for experimentation in the area of ! 69: distribution and replication. ! 70: ! 71: \item To provide some level of real usage. ! 72: This sort of work is useless if entirely confined to the laboratory. ! 73: It is important that it is capable of use for some level of experimental ! 74: service. However, it is not consciously designed to evolve into a full ! 75: fledged product. ! 76: \end {itemize} ! 77: ! 78: As the work has evolved, the following goals have emerged as ! 79: additional to the original ones listed above: ! 80: ! 81: \begin {itemize} ! 82: \item To provide a public domain the OSI Directory implementation as a part of ! 83: the ISODE package. ! 84: ! 85: \item To provide integrated support for the ISODE Applications. ! 86: ! 87: \item To be used as a part of the initial pilot Directory Service in ! 88: the UK Academic Community and in other pilots. ! 89: \end {itemize} ! 90: ! 91: ! 92: \section {Technical Goals} ! 93: ! 94: The major goals of the QUIPU Directory Service are: ! 95: ! 96: \begin {itemize} ! 97: \item Full support of the Directory Access Protocol and Directory System ! 98: Protocols \cite{CCITT.Directory}. ! 99: \item ! 100: Support of the majority of the service elements specified in the OSI Directory. ! 101: \item ! 102: Full interworking with other OSI Directory implementations. ! 103: \item ! 104: Very full searching and matching capabilities, beyond the minimum ! 105: required by the OSI Directory. ! 106: \item ! 107: Provision of a system which has potential for very high distribution. ! 108: ! 109: \item Support of distributed operations in a manner which is full ! 110: conformant with respect to non-QUIPU systems, and provides additional ! 111: functionality for QUIPU systems. ! 112: ! 113: \end {itemize} ! 114: ! 115: The following areas were not intended as goals in the initial system. ! 116: Some discussion is given as to how these areas might be tackled in ! 117: future versions. ! 118: ! 119: \begin {itemize} ! 120: \item ! 121: The QUIPU Directory is not intended for very large scale ! 122: systems (i.e., Millions and tens of Millions of entries per DSA or hundreds ! 123: of megabytes of data per DSA). ! 124: ! 125: \item ! 126: Substantial data robustness is not required: there is no need to employ ! 127: complex data backup techniques, such as replicated hardware. ! 128: \item ! 129: The security aspects of the OSI Directory were initially omitted, as not ! 130: required by the general aims. ! 131: At this point, there is no reason why this aspect should not be ! 132: integrated. ! 133: ! 134: \end {itemize} ! 135: ! 136: \section {Further QUIPU documents} ! 137: ! 138: ! 139: The following documents are available: ! 140: ! 141: \begin {itemize} ! 142: \item This document, which describes the design of QUIPU \cite{QUIPU.Design}. ! 143: ! 144: \item The QUIPU Manual, which describes how to use QUIPU \cite{QUIPU.Manual}. ! 145: ! 146: \item A paper on the original design, which is mainly of historical interest ! 147: \cite{ECW87.INCA}. ! 148: ! 149: \item A paper presented at the 1988 IFIP 6.5 conference, which gives a ! 150: general overview \cite{QUIPU.IFIP}. ! 151: ! 152: \item A paper presented at Esprit Conference Week 1988, which describes the ! 153: distributed operations \cite{QUIPU.Distributed}. ! 154: \end {itemize} ! 155: ! 156: All of these papers, except the third, are distributed online with QUIPU. ! 157: ! 158: \section {Acknowledgements} ! 159: ! 160: QUIPU was developed in the Department of Computer Science at University ! 161: College London, under the {\ae}gis of the INCA (Integrated Network ! 162: Communication Architecture) project, which was project~395 ! 163: of Esprit (European Strategic Programme for Research into ! 164: Information Technology). ! 165: The partners of INCA (GEC plc, Olivetti, ! 166: Nixdorf AG, and Modcomp GmbH) are acknowledged for releasing the first ! 167: version of this ! 168: software into the Public Domain. ! 169: ! 170: Continued funding of QUIPU as Openly Available Software is provided by the ! 171: Joint Network Team. ! 172: ! 173: Colin Robbins, Alan Turland, Alastair Hickling, Marshall Rose, Stella Page, ! 174: and Mike Roe have all made useful comments on this document. ! 175: ! 176: QUIPU 5.0 was implemented ! 177: primarily by Colin Robbins and Alan Turland. Additional acknowledgements ! 178: for implementation efforts ! 179: are given in the manual \cite{QUIPU.Manual}. ! 180: ! 181: \section {Pronouncing QUIPU} ! 182: ! 183: It is clearly important to distinguish QUIPU verbally as well as in writing. ! 184: The official pronunciation of QUIPU is {\em kwip --- ooo}. ! 185: ! 186: \section {Why QUIPU} ! 187: ! 188: QUIPU was originally developed as a part of the INCA project. ! 189: The Inca of Peru did not have writing. Instead, they stored information on ! 190: strings, carefully knotted in a specific manner and with coloured thread, and ! 191: attached to a larger rope. ! 192: These devices were known as ``Quipus''. ! 193: The encoding was obscure, and could only be read by selected trained people: ! 194: the Quipucamayocs. ! 195: The Quipu was a key component of Inca society, as it contained information ! 196: about property and locations throughout the extensive Inca empire. ! 197: ! 198: ! 199:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.