• Aucun résultat trouvé

PerforInance Analysis

5.2 A Model for Name Server Interaction

5.2.1 N arne servers and clients

A name service consists of N servers, NS1 ... NSN, distributed throughout an internet.

At any point in time, some fraction of these servers will be accessible; the others may have crashed or become detached from the network. SF represents the current set of name servers whose data is inaccessible because of some failure; SF C {NS1 , ••• , NS N} has cardinality F.

The various name server clients are enumerated 1 ... U. The term "client" may refer to a specific program, hosL network. or some combination thereof. fu general, clients are distinguished by their location in the internet relative to the name servers and by the particular objects they reference.

XEROX PARe. CSL-85-1. FEBRUARY 1985

CHAPTER 5. PERFORMANCE ANALYSIS 79

A name service client need only know the location of a single name server, presumably the closest one, to make use of the name service. Name service operations are assumed to be performed iteratively: if the prinlary name server, N Smain, is unable to resolve a name, then it returns the location of a more knowledgeable colleague. Several iterations may be necessary to perform an operation for some naming conventions and management strategies.

5.2.2 The network

The round trip transmission cost between client u and name server i is given by Cui.

Observe that Cui strongly depends on the sites at which the client and server are executing.

It varies according to the number of gateways traversed and the speeds of the intermediate transmission lines. The number of bytes transferred is assumed to have a negligible influence on the communication cost since name server queries and responses are generally quite small.

This is a very simple static measure of the cost of communication between clients and servers. In particular, variations due to network congestion are ignored. While such a model may be reasonable for widely distributed environments with slow speed lines and many gateways, it certainly would not suffice for local area networks. The model does not include the cost of communication between servers since an iterative style of name resolution is assumed.

5.2.3 The database

The name service database is strictly partitioned into K database objects. In the de-generate case, each database entry is a separate object. The database objects, db1 ... db K, correspond to indivisible units of storage. That is, either the complete database object is stored at a given name server or none of it is.

Each name server has authority over some subset of the database partitions. Typically, no single name server stores the complete database. The set Sk contains those name servers that store object dbk; Sk, for k

=

1 ... K, is a subset of {N S 1, . . . , N S N}. In other words,

Sk is the list of authoritative nalne servers for dbk .

For each name server, ~ denotes the cost of executing a database operation at N S i. For simplicity, this cost, which could depend on such things as the overall size of the database maintained by N S i and the kind of database facilities employed, is assumed to be fixed over time. In particular it does not account for variations in the load at the server. Moreover, no distinction is made between different types of database operations.

XEROX PARC. CSL-85-L FEBRUARY 1985

clients generally perform different name service operations on sets of objects with varying frequencies. Client u's reference mix is represented by rul ... ruK. That is, rule is the percentage of name server accesses performed by client u to the database partition dble.

Note that the ruk's characterize a client's log£cal access patterns.

Physical access patterns, the fraction of accesses to individual name servers by each client, are dependent on both the frequency of accesses to the name service database entries (ruk for k = 1 ... K) and the mapping of data to storage sites (Sle for k = 1 ... K). The local£ty of reference is the degree to which local name servers are accessed more frequently than distant servers. Locality in the physical access patterns is desirable since local servers can be accessed Illore cheaply than distant name servers. The amount of locality achievable in practice depends on the distribution of clients that are interested in a particular name server entry.

5.2.5 Operation costs

For a given name server, N S i , Cui specifies the cost of accessing that nanle server remotely from client u. This cost includes both the communication and processing costs.

Hence, Cui is the sum of di and Cui.

For a particular operation 0 E {lookup, update}, Louie represents the total cost of per-forming operation 0 by client u on information in database object dbk • For a centralized name service with a single server, NSmain, Louk would be simply Cumain. However, for a distributed service, Lou.k includes the cost of locating the desired data; this name resolution cost may involve retrieving configuration data from one or more name servers. Louie is often denoted as simply Luk in cases where the particular operation is clear from context or where Llookup ule

=

Lupdate uk·

The cOIuplete cost of operating on nanle server infornlation, such as performing a name lookup, varies per client according to the client's location relative to the various name servers and the client'8 reference mix. The expected value of this cost for client u, denoted by E( Lu ), is weighted according to the client's reference mix:

K

E(Lu)

= L

TukE(Lu.k}. (5.1)

/c--:-l

Deriving an optimal configuration would involve minirnizing the sum of the expected costs for all clients.

XEROX PARe. CSL-85-1. FEBRUARY 1985

CHAPTER 5. PERFORMANCE ANALYSIS

N S 1 ... N S N def

=

set of name servers 1

. . . =

U def name server c lents l'

dbl ... db K ~f name server database objects Sk d~ set of authoritative name servers for dbk r uk ~ fraction of client u ~ s accesses to dbk

def f . . . h NS f l'

Cui == cost 0 communIcatIng WIt i rom C lent u

di ~f cost of performing an operation at N 8 i

Cui def = Cui

+

di

S F ~f set of failed name servers

Figure 5.1: Name service model parameters.

5.2.6 Summary

81

This section advanced a model for distributed name services. The parameters of the model, which characterize the name service's configuration, are summarized in Figure 5.1.

When applying this model to study a proposed name service configuration, system adminis-trators have control over N, dbk, and 8k. The parameters, di , rub and Cui, to a large extent, should be measured or projected. The communication costs, Cui, however, also depends upon the placement of servers. which can be controlled.

Clients and system designers are primarily interested in the expected name service op-eration cost E(Lu), which is a function of these parameters. Studying the effects of various configuration choices can be accomplished by varying a parameter. while holding the others constant. and observing changes in the expected cost. Typically. the cost values for the parameters are specified in units of tirne so that Lu gives an expected level of performance.

Alternative measures of cost. such as dollars. could also be used.