NCSTRL Documentation

Preparation for Dienst Installation

This is information of interest before you download Dienst, the foundation for NCSTRL, - an overview of Dienst, a list of necessary skills for installation, and how to get software update information.

Overview of Dienst

What Dienst is

Dienst is a protocol and server for providing distributed document servers over the World Wide Web. Dienst provides four digital library services: repository services that store and deliver multi-format documents, index services that index meta-information on documents and provide search engines over these indexes, meta services, also called contact services, which provide information for interoperability among servers, and user interface services that provide a human front-end to the three other services. Multiple Dienst servers interoperate to provide a logically uniform collection to the user, even though the physical collection is distributed. Each individual Dienst server "knows" about other sites, and visa-versa, by periodically polling a central meta-server site.

The Dienst system is the foundation for NCSTRL, the Networked Computer Science Technical Report Library, but the protocol in no way depends on or is specialized for this particular collection. Dienst can be used as easily for a distributed library of reports about geologic phenomenon or alternative health options.

Documents served by Dienst are each identified by a universally unique document identifier, or handle. This handle is partitioned into a naming authority and string. Each document has, at a minimum, bibliographic information stored in a tagged format. In addition, a document may have several other representation formats (e.g., PostScript, HTML, TIFF, etc). The formats in which a document is available are either stored in a organized directory sub-tree known as the document database, or on an anonymous FTP site.

How Dienst runs

This release of Dienst only runs on Unix machines. We have developed it on a SPARCstation running SunOS 4.1.3x and tested in on a number of other Unix systems; there is no reason that it should not run on any Unix platform to which perl has been ported. This version of Dienst(4.x) is compatible with both perl4 and perl5. The Dienst system is implemented in two parts: Your Web server (and the perl stub) should run on the same machine as the standalone Dienst server. Running a Dienst system therefore involves two processes, a WWW server, and the Dienst server.

Skills you will need for the installation

To install the software, you will need

To add some of the optional features, or to create more customization, a higher skill level is required.

Overview of the Dienst system installation

This section describes the three pieces of the installation puzzle that function together as Dienst.

A basic Dienst system has three logical parts: the World Wide Web (Web) server, the Dienst server, and the document database.

Web Server <----------> Dienst Server <----------> Document Database

The document database

The document database is a structured collection of documents organized in a sub-tree on your file system. The database is a prerequisite for running Dienst. Every document in your document database is, at least, represented by a bibliographic file (containing meta-information about the document). The document database may also contain representations of the document in multiple formats (e.g. PostScript, TIFF, GIF, etc.).

The Dienst server

A Dienst server is the standalone process that provides searching of and access to your document database. It is also interoperates with other Dienst servers to allow searching of and access to documents the distributed collection.

The Web server

The Dienst protocol, which provides communication with a Dienst server, is encapsulated within HTTP, the World Wide Web protocol. To run the Dienst server you should have a working Web server and configure it to work with Dienst. The Web server and Dienst communicate via the Common Gateway Interface (CGI). The Web server may also provide other Web services. For example, you may already have a running Web server at your site that you can use as a gateway to Dienst. Knowledge of CGI is not a prerequisite for the installation of the server, but may help in its administration.

Software updates

As we continue to work on the Dienst software at Cornell, we occasionally produce new software releases. These releases will contain bug fixes, performance enhancements, or new functionality. There are two ways that you can keep track of these software updates:

Up to the Install and Maintain Dienst Information

NCSTRL Documentation
Any comments or questions?
Contact us at