From: Sellakumaran Kanagarathnam (sellak_at_windows.microsoft.com)
Date: Mon Feb 02 2004 - 12:31:31 PST
This paper discusses Grapevine, the distributed, replicated system used
for mail, naming and access control services in the Xerox research
internet. The paper gives a structural overview of the system and major
part of the paper gives observations based on operational experience
with the system.
Grapevine operates in the Xerox research internet. The communications
network comprises of Ethernet local networks, gateways and long distance
links that links PCs and servers. The system is implemented as a Mesa
program that runs on a set of dedicated server computers and there is a
client program called GrapevineUser package and the communication among
the clients and servers is built on internet protocols that provide a
uniform means for addressing any computer attached to any local network
to send individual packets or to use byte streams. Grapevine provides
two kinds of services: message service and registration service and
every grapevine server have both of these services. The message service
provides the mailing system and the registration service provides
naming, authentication, access control and resource location functions
to clients. The second service uses a registration database which has
two types of entries: group entries and individual entries. Individual
entries correspond to users and servers. Group entries correspond to
distribution list, access control list,.. The entries are called RNames
and it represents a two level hierarchy: registry name and the name
within that registry. Registry corresponds to locations, organizations
& applications. The database is replicated and distributed and the
level of distributions is a registry. No registration server contains
all registries and a single registry is replicated in many servers. The
GrapevineUser package is available for several language and operating
environments. The primary clients of Grapevine are various mail system
interface program (Laurel is most widely used). Other clients implement
file server authentication and access controls, RPC bindings and process
controls for an integrated circuit facility.
In a span of nearly two years, the number of servers grew from 5 to 17.
The registration database grew from 1500 individuals, 500 groups to 4400
individuals, 1500 groups. Numbers of messages presented for delivery
grew from 2500/working day to 8500.
I was not able to appreciate the basis for the objective of scalability
of Grapevine: Increase capacity by adding more servers of "fixed power
rather than using more powerful servers". To me this presents a
limitation rather than any advantage. It was interesting to read about
the distribution list problem they encountered. But the proposed change
itself had a limitation of 10000 user size which was very surprising.
The authors then go on to recap the various configuration issues /
decisions that they faced. The issue around the design of synching on
database changes must have been useful information to share at the time
of this paper. It is good to note that high reliability and scalability
(though limited) is inherent in the system.
Overall, it was a good paper to read and many of the practical issues
with distributed, replicated systems and specifically with mail systems
and the design changes around that are good learning.
This archive was generated by hypermail 2.1.6 : Mon Feb 02 2004 - 12:31:34 PST