• No results found

Implications of hierarchical name resolution and name space in dynamic distributed networks

N/A
N/A
Protected

Academic year: 2020

Share "Implications of hierarchical name resolution and name space in dynamic distributed networks"

Copied!
246
0
0

Loading.... (view fulltext now)

Full text

(1)

ĂśCL

Implications o f Hierarchical Name Resolution and

Name Space in Dynamic Distributed Networks

Ph.D. Thesis

M aria Paula A lv e s Pereira Q uintela

D ep a rtm e n t o f E lectronic a n d E lectrical E ngineering, U niversity C ollege London,

Torrington Place, London, W C IE 7JE, U nited K ingdom

(2)

ProQuest Number: U641850

All rights reserved

INFORMATION TO ALL USERS

The quality of this reproduction is dependent upon the quality of the copy submitted.

In the unlikely event that the author did not send a complete manuscript

and there are missing pages, these will be noted. Also, if material had to be removed,

a note will indicate the deletion.

uest.

ProQuest U641850

Published by ProQuest LLC(2015). Copyright of the Dissertation is held by the Author.

All rights reserved.

This work is protected against unauthorized copying under Title 17, United States Code.

Microform Edition © ProQuest LLC.

ProQuest LLC

789 East Eisenhower Parkway

P.O. Box 1346

(3)

A b stract

M obility support is an emerging design consideration tliat poses challenging problems for all

protocol layers o f computer and com m unications networks. Nam ing systems gain a special

importance in a dynamic environment, because a network resource unique identifier has to be

dissociated from its address. This dissertation investigates the consequences and im plications of

designing a distributed naming system and its ability to support a dynamic and evolving

environment. The objective is to adopt a distributed approach so tliat scalability is introduced but

tlie extra com plexity due to the distribution o f the data is m inim ized by the use o f sim ple

state-independent transactions, where the atomicity property is relaxed, making tlie system naturally

robust and capable o f self-m anagement. The idea is to test tlie level o f distribution such a system

can support by im posing com plete independence am ong tlie system ’s nodes. Tliis thesis presents a

general name resolution protocol, called REM US (Routing Enquiiy M echanism s Utilizing

Strategy), designed according to the described strategy. Its applicability has been immediately

recognized by industry and the system is now patented [1]. REM US is capable o f resolving any

name scheme rehably and efficiently. It does not assum e any special organization to the name

syntax or the encoding o f any information into the name. Hence. REM US provides the general

service o f resolving a unique identifier into its associated data independently o f how the umque

identifier has been assigned to the network resources. A general name resolution protocol such as

REMUS is required in heterogeneous distributed environments like the Internet. The Internet is an

ever evolving and expanding computing environment witli local independent administrative

control, hence it needs s)stem s that are flexible and general enough to accom modate changes.

REM US can be tuned to resolve specific name schem es according to tlie associated applications so

tliat its performance is optimized, or it can be used as a unifying resolution protocol, encom passing

(4)
(5)

Acknowledgements

I would like to express my sincere appreciation to Dr. Mark Wilby for his experienced guidance

tliroughout tlie course o f my study and research. I am deeply indebted to liim for initially

proposing the hierarcliical control mechanism on vvliich tliis research is based and providing

crucial support throughout tlie evolution o f this work, at tlie expense o f his own com m itments and

liis other areas o f work. I would also like to tliank Dr. Mark Searle who provided me with tlie

necessary support towards the conclusion o f this study.

I especially acknowledge the help and support o f my husband, w ho always believed in my

abilities, w hich made me think much harder and be much more persistent in my work. My sweetest

tlianks goes to my little daughter Tabatha for providing me with constant inspiration and whose

sim ple way o f interpreting the world is immensely wise, having shed light on crucial points o f my

work. I carmot thank my parents and parents-in-law enough for supporting me all tlie way through

(6)

L ist o f Figures

2.1 R ecursive name resolution 20

2.2 Iterative name resolution 20

2.3 Transitive name resolution 21

2.4 Terminal and personal mobility definitions 25

2.5 GSM and IS-41 updating procedure 31

2.6 G SM call delivery procedure 32

2.7 M ob ile IP entities and their relationships 41

2.8 D N S name space 42

2.9 U R N resolution framework 47

3.1 R EM US Hierarchical database structure 54

3.2 R EM US basic update mechanism 55

3.3 Order o f packet delivery 56

3.4 Retrieval mechanism for objects with multiple instances 56

3.5 Parallel liierarchical trees 62

3.6 Binary tree network topology 67

3.7 Flow diagram o f basic control mechanism for user de-registration 68

3.8 F low diagram o f basic control mechanism for database updates 69

3.9 Flow diagram o f basic control mechanism for data retrieval 69

4.1 Exam ple o f data loss detection and recovery 74

4.2 Exam ple o f incom plete location change request 81

4.3 Child node reconnection and direct link establishment 84

4.4 Restoration on demand 87

4.5 Exam ple o f first node in com m on between the paths o f the two packets 91

4.6 Exam ple o f contention problem 92

4.7 Problem due to subsequent re-configurations: case 1 93

4.8 Problem due to subsequent re-configurations: case 2 93

4.9 Link failure 98

4.10 Node failure 99

4.11 Joining two existing networks 103

4.12 Introduction o f intermediate nodes 104

4.13 Introduction o f a new local exchange 105

(7)

4.15 Flood fill scalability: case 1, approach, sub-network contains only old location 110

4.1 6 Flood fill scalability: case 2, second approach 1 11

4 .1 7 Main flow diagram for location change requests 119

4.1 8 Main flow diagram for call requests 120

4.19 Main flow diagram for stamp packets 121

4.20 Main flow diagram for resetting packets 121

6.1 Country represented as 7/ x A / square location areas 13 2

6.2 Quaternary tree matched to 4x4 country 135

6.3 Scalability results: switch throughput 140

6.4 Scalability results: end-to-end delay 140

6.5 Recovery results: average end-to-end delay for location change and call requests 143

6.6 R ecovery results: average end-to-end delay requests that detected an error 144

6.7 R ecovery results: standard deviation for average end-to-end delay 144

6.8 Recovery results: average throughput o f location cliange and call requests 145

6.9 Recovery results: contribution o f call retry rate to call request throughput at local exchanges 146

6.10 Recovery results: standard deviation o f average local exchange throughput 146

6.11 Recovery results: average local exchange tlu-oughput o f flood fill packets 147

6.12 Recovery results: comparison between detection and correction according to error rate 148

6.13 Recovery results: time interval between detection and correction according to error rate 148

6.14 Recovery results: variation o f average packet waiting time according to error rate 148

6.15 R ecovery results: variation o f average percentage o f delayed packets according to error rate 149

6.16 Recovery results: location change request tliroughput for different hierarchical levels 150

6.17 Recovery results: node capacity according to error rate for different liierarchical levels 150

6.18 Recovery results: average packet w aiting time at input buffer for different hierarchical levels 151

6.19 Recovery results: average percentage o f packets processed that have to wait to be processed 152

6.20 Recovery results: variation o f percentage o f unsuccessful first call attempts witli error rate 152

6.21 Recovery results: total percentage o f corrupted database entries according to error rate 153

6.22 Recovery results: number o f errors present in the system against simulation time 154

6.23 Recovery results: difference betw een detection and correction rates against number o f errors 155

6.24 Recovery results: number o f errors present in the system against ratio o f error to request rate 156

6.25 Recovery results: variation o f error rate with simulation time 158

6.26 Recovery results: variation o f total detection rate with simulation tim e 158

6.27 Re-configuration results: average end-to-end delay according to node serv ice tim e 1 6 1

6.28 Re-configuration results average end-to-end delay for requests that detected an error 162

6.29 Re-configuration results: percentage o f packets tliat detected an error x node service time 162

(8)

6.31 Re-configuration results; average re-configuration rate plotted against node service time 163

6.32 Re-configuration results: interval between error detection and correction x node service time 164

6.33 Re-configuration results: error detection and correction rates versus node service time 164

6.3 4 R e-configuration results: load variation according to each node initial hierarchical level 165

6.35 Re-configuration results: average percentage o f delayed packets versus node service time 165

A .l jV'/'^plot 175

A .2 Variation o f X*: according to for 0 < ^ < root 179

A .3 log 4 plot 184

C. 1 Probability o f simultaneous error detection x fraction o f corrupted database entries 194

C.2 Probability o f simultaneous error detection x reconnected ch ild ’s hierarchical level 195

C.3 Probability o f simultaneous error detection x number o f local exchanges 196

D. 1 Tim e domain representation o f contention problem 198

D .2 Contention probability x number o f entries at ex- child at re-configuration time, ea sel 205

D.3 Network diagram for case 1 206

D .4 Contention probability x total country population, case 3 207

D .5 Network diagram for case 3, expanding tlie network by joining networks together 207

D .6 Variation o f contention probability according to A c 208

D .7 Variation o f contention probability according to the immediate restoration rate 210

D .8 Variation o f contention probability according to 211

D .9 Variation o f contention probability according to movement rate per user 212

E. 1 Control m echanism for location change requests for local exchanges under normal operation 214

E.2 Control m echanism for location change requests for local exchanges as reconnected children 215

E.3 Control mechanism for location change requests for tlie root node under nonnal operation 216

E.4 Control mechanism for location cliange requests for the root node acting as old parent node 217

E.5 Control m echanism for location change requests for the root o f two newly Joined networks 217

E.6 Control m echanism for location change requests for intermediate nodes in nonnal operation 218

E.7 Control mechanism for location change requests for intermediate nodes as old parent nodes 218

E.8 Control m echanism for location change requests for intermediate nodes as ex-children 219

E.9 Control m echanism for call requests for local exchanges imder normal operation 219

E. 10 Control mechanism for call requests for local exchanges acting as reconnected child nodes 220

E. 11 Control m echanism for call requests for tlie root node in normal operation and as new root 221

E. 12 Control mechanism for call requests for the root node acting as old parent node 222

(9)

E. 14 Control mechanism for call requests for intennediate nodes acting as old parent nodes 223

E. 15 Control m echanism for call requests for intennediate nodes acting as reconnected children 224

E. 16 Control m echanism for stamp packets for local exchanges 224

E. 17 Control mechanism for stamp packets for tlie root node in nonnal operation and as new root 225

E. 18 Control mechanism for stamp packets for tlie root acting as old parent node 226

E. 19 Control mechanism for stamp packets for intermediate nodes in normal operation 227

E.20 Control m echanism for stamp packets for intermediate nodes acting as old parent nodes 227

E.21 Control mechanism for resetting packets for nodes acting as reconnected children 228

F. 1 Validation plot: location change request switch throughput 234

F.2 Validation plot: call request switch throughput 234

F.3 Validation plot: location change request switch tliroughput 236

F.4 Validation plot: call request switch tliroughput 236

(10)

List o f T ables

4.1 Load distribution among network’s hierarcliical levels for location change requests 119

4.2 Load distribution am ong network’s hierarcliical levels for call requests 120

4.3 Load distribution am ong network’s hierarchical levels for stamp packets 120

4.4 Load distribution am ong network’s hierarcliical levels for resetting packets 120

6.1 Input parameters for plots in figures 6.3 and 6.4 141

6.2 Input parameters for plots in Section 6.2.2 143

6.3 Num ber o f nodes at each hierarchical level 150

6.4 Input parameters for plots in Section 6.2.3 161

C. 1 Input parameters for plot in figure C. 1 194

C.2 Input parameters for plot in figure C.2 195

C.3 Input parameters for plot in figure C.3 196

D. 1 Input parameters for case 1 205

D .2 Input parameters for case 2 206

D .4 Input parameters for case 3 206

D .4 Input parameters for and Ar^ dependencies 208

D .5 Input parameters for r dependency 209

D .6 Input parameters ior k dependency 211

F. 1 Validation results; location change requests switch throughput 235

F.2 Validation results: call requests switch throughput 235

F.3 Validation results: location change requests switch throughput 236

F.4 Validation results: call requests switch throughput 237

(11)

Chapter 1

Introduction

M obility support lias become an em erging design consideration for all protocol layers o f computer

and com m unications networks due to recent advances in tlie w ireless commmiication teclm ology

and due to the expanding area o f personal communication. Both factors are fuelling the

developm ent o f new control m echanism s capable o f supporting higlily dynam ic environments, in

w hich the bindings between terminal and location and between user and terminal are no longer

constant in time. Previous studies [1][2][3] have shown tliat a dynamic enviromnent represents a

significant load increase upon the signalling network and network databases, and that this increase

in load is dependent upon the data management strategies adopted.

The grow ing popularity o f the Internet as a communications medium and o f the World W ide Web

as an on-line distributed database means that a vast amount o f resources (files, objects, services,

pieces o f equipment, etc.) can be made available to an ever-expanding number o f users. In such an

environment, not only can the users and terminals becom e mobile, but also tlie network resources

can migrate to different parts o f the network. This represents a liighly dynamic environment, in

w hich resources are accessed, added, updated and moved constantly according to variations in

demand. M obility support is a major consideration in tlie design o f applications and services for

the Internet, so that the protocols are able to support this evolving environment.

In computer and communication networks, in order to make the network resources available, or to

use the resources that have been made available, it is necessary to be able to identify and locate the

resource in question. Tliis task is performed by the naming system s, w hich define how names are

assigned and resolved. In static environments, the definitions o f name, address, location and route

tend to m erge with each other according to the way the systems and protocols are designed. A

more extensive discussion o f the issue is given in [4] [5]. The classical definitions [Ă´] :

> name indicates what we seek,

> address indicates where it is, and

> route tells how to get tliere,

are ambiguous in various points. In a static environment, in w liich tlie location o f the network

resources does not change, the naming function is often merged witli tlie addressing and routing

functions. For exam ple, in the addressing system o f tlie Internet, the address does two things, first

it identifies the addressed object (destination host or network attaclunent point), i.e. tlie classical

naming function, secondly it indicates the destination and aides in routing tlie packet to it, i.e. tlie

(12)

often encoded into the name, as in area dialling codes (for fixed telephony) and network address

parts {e.g. network.subnet.host, in tlie Internet). Altliough the name is tlie entire list, each

com ponent contains information about location. Furtliennore, tlie route to a particular location,

tliough many routes may exist between two points, is just another way o f view ing tlie address o f

tliat location. Wlien tlie objects witliin a network becom e mobile, naming systems gain a special

im portance because tlie naming function has to be dissociated from tlie addressing and routing

functions since the location o f the named resource is no longer constant in time.

W itli increasing demands for mobility support in today’s com puting environments, tracking the

location o f m obile users and system ’s entities (hosts, network resources, etc.) is a problem o f

considerable research and commercial interest. The reason for this interest is because, in dynamic

distributed networks, the real-time use o f remote resources is essential. This means tliat the

network performance is dependent on the adopted name resolution system as it determines the

delays in locating tlie required resources. In computing environments such as the Internet, there is

a vast amount o f services being offered with different characteristics to satisfy different

requirements and specifications. There is the need for a mechanism for the advertising and

discovery o f services given the required attributes. Such a mechanism should be able to support a

highly dynam ic environment in which tlie service attributes and the server properties are frequently

b eing changed and updated.

With respect to naming systems, there are two main approaches to the problem, centralized and

distributed. The centralized approach, in wliich tlie information for name resolution is kept at fixed

central locations, although sim ple to implement and maintain, suffers from two serious problems;

scalability and robustness. Centralized solutions inevitably create potential points o f congestion

since tlie position o f central look-up tables is hard to optim ize and, being fixed, carmot be adapted

to variations in signalling traffic. As the network is expanded, tlie fact tliat tlie signalling has to be

re-directed to a fixed point in the network means that the signalling across the system is

proportional to tlie system size and hence is not scaleable. From the reliability point o f view ,

congestions and hardware failures can cause central databases to becom e isolated with serious

consequences to the operation o f the network.

In order to make the system scaleable, some level o f distribution has to be introduced. A

distributed strategy allow s the sharing o f signalling load across the network. The placement o f the

databases can be optim ized so that the signalling traffic due to database transactions is minimized.

With respect to robustness, the distribution o f the data makes tlie network more reliable, as the

nodes fail independently affecting only parts o f the system, which can be b>q)assed by w

ell-designed protocols. However, tlie cost o f introducing scalability and robustness is tlie need for a

more com plex protocol capable o f managing tlie communication and guciranteeing data

(13)

In this dissertation tlie benefits and consequences o f tlie distributed strategy are studied in detail. It

demonstrates tlie feasibility o f a com pletely distributed protocol in wliicli a high level of

concurrency is allowed. And how such characteristics can be explored to render a robust, flexible

and evolvable system.

1.1 C on tribu tion

This thesis investigates the consequences and implications o f designing a distributed naming

system and its ability to support a dynamic and evolving environment. Tlie objective is to adopt a

distributed approach so that scalability is introduced but tlie extra com plexity due to tlie

distribution o f tlie data is m inimized by the use o f sim ple state-independent transactions tliat make

the system naturally robust and capable o f self-management. The idea is to test the level o f

distribution such a system can support by im posing com plete independence among the system ’s

nodes.

This dissertation presents a general name resolution protocol, called REM US (Routing Enquiry'

M echanism s U tihzing Strategy), designed according to tlie described strategy. Its applicability has

been immediately recognized by industry and the system is now patented [7]. REM US is capable

o f resolving any name scheme reliably and efficiently. It does not assum e any special organization

to the name syntax or the encoding o f any information into the name. Hence, REM US provides the

general service o f resolving a unique identifier into its associated data independently o f how the

unique identifier has been assigned to the network resources. A general name resolution protocol

such as REM US is required in heterogeneous distributed enviromnents like tlie Internet. The

Internet is an ever evolving and expanding computing enviromnent witli local independent

administrative control, hence it needs systems that are flexible and general enough to

accommodate changes. REMUS can be tuned to resolve specific name schem es according to tlie

associated applications so tliat its perfonnance is optimized, or it can be used as a unify ing

resolution protocol, encom passing existing and future naming systems.

REM US main characteristics are listed below:

> Distributed system, adopting a com pletely distributed strategy.

> Hierarcliical organization o f the data.

> State-independent transactions.

> Asynchronous node operation.

> N odes have lim ited knowledge on system ’s topology and size.

> Robustness.

> M aximization o f switch tluoughput.

> Scalability.

> Maintainability.

(14)

> Legacy support and integration.

> M obility support.

> Flexibility (evolvable system).

The design strategy is that by making die nodes follow a simple set o f instructions and operate

independendy from each other, die system can be made to behave in an apparently intelligent way.

This means the system is able to detect inconsistencies, restore its database and re-configure its

topology to bypass congestions and node/link failures. If, on top o f that, die system is able to

monitor its own status and take decisions based on that, it becomes capable o f m anaging itself

w ithout the need for external intervendon. In order to preserve the system ’s distributed nature, the

transactions were made state-independent, i.e. no information is kept by ongoing transactions and

transaction atomicity is not imposed. Simple consistency checks are introduced to the basic node

functionahty so that reliabihty is provided without the need to introduce com plex monitoring

m echanism s. The objective is to m axim ize throughput, thereby improving performance. A system

diat is scaleable, robust and that can be easily re-configured and expanded with limited effect to its

operation is sim ple to manage and maintain and is capable o f adapting to evolving requirements.

1.2 O utline

This dissertation is organized as follows. Chapter 2 presents formal definitions for naming

system s, discusses the main design strategies and presents som e exam ples o f applications that

require som e level o f mobility support. This chapter also summarizes recent proposals for the

described applications and for the introduction o f mobility support into existing w ell-established

naming system s. The general mechanisms o f REMUS are outlined in Chapter 3. The system's main

characteristics are discussed in detail, together with tlie system ’s design strategy and basic control

mechanism. Chapter 3 also gives a brief description o f the personal mobility service, as this service

has been used as the underlying application for testing tlie feasibility and performance o f tlie

system ’s m echanism s.

The recovery m echanism s are discussed in Chapter 4, it explains how tlie system's basic control

m echanism s can be expanded in order to detect data inconsistencies and re-configure its topology

to bypass overloaded parts o f the network or hardware failures, and then be able to restore and

rebuild the network databases. The full protocol is described and the reasons for each design

decision are discussed in detail. Chapter 5 discusses how tlie system can be given the ability to

monitor its own signalling load in order to decide when and how to reconfigure so that tlie network

topology is optim ized according to the current usage pattern. The objective is to introduce

monitoring and decision-m aking mechanisms able to modify tlie network topology dynam ically in

response to changes in signalling traffic. This chapter also discusses methods for finding the

optimmn placement o f databases in a signalling tree so as to minimize tlie transactions average

(15)

In order lo evaluate the system's performance and to study the introduction o f the recovery

mechamsms, the system was simulated for the particular application o f the personal mobility

service. A brief description o f the simulation model and design and the obtained results and

relevant discussions are presented in Chapter 6. The first set o f results demonstrates tlie system's

scalability. The second set shows the feasibility o f the adopted recovery m echanism s and how tlie

system responds to different error rates. The third and final set o f results demonstrates the

feasibility o f the re-configuration procedure and how the system supports re-configuration under

different loading conditions. Chapter 7 presents a summary o f the project’s findings and outlines a

(16)

Chapter 2

Naming Systems

N am ing is one o f the most important and probably one o f the most frequently overlooked areas o f

computer science and communications. The remarkable growth in the telecom m unications

industry, from telegraphs to telephones to computer networks, has alleviated the problem o f being

able to com m unicate with another person or o f retrieving remote resources, provided that you

know how to reach them. The system and the users have to be able to identify and locate the

necessary resources {i.e. information, users, computer, objects, methods, services) in order to

perform the required operations. The naming service provides the principal m echanism through

w hich users and objects within the system locate other objects that they intend to use and make

requests of.

In a static environment, in which the location o f the network resources does not change, the

naming function is often merged with the addressing and routing functions. For exam ple, in the

addressing system o f the Internet, the address does two things, first it identifies the addressed

object (destination host or network attachment point), i.e. the classical naming function, secondly it

indicates the destination and aides in routing the packet to it, i.e. the classical addressing and

routing functions. In fixed networks, as the location is static, the address is often encoded into the

name, as in area dialling codes (for fixed telephony) and network address parts {e.g.

network.subnet.host, in the Internet). Although the name is the entire list, each com ponent contains

information about location. Besides, the route to a particular location, though many routes may

exist between two points, is just another way o f view ing the address o f that location.

A s m obility is introduced into the system, the relationship between network resource name and

location becom es dynam ic and hence the naming function has to be separated from the addressing

and routing functions. The impact o f mobility in computer and communications networks is

subject to extensive research mainly on the areas o f m obile computing and m obile telephony.

Many different naming system s and standards exist and are being independently developed or

expanded to cope with m obile network resources. The introduction o f mobility support into

existing naming system s means the existing infrastructure has to be used, im posing extra

constraints and requirements. In a large-scale distributed system, applications often have to deal

with a variety o f name schemes. The integration o f legacy naming systems to tlie w ide range o f

existing system s is also an important area o f study. As tlie network grows, so do its

(17)

essential. This means that tlie network performance is strongly dependent on the adopted naming

system as it determines the delays in locating the required resources.

The first four sections define wliat a naming system is and discuss the main design strategies.

Section 2.5 tlien presents tlie main applications for naming system together witli the specific

requirements for each application, focusing on tliose that require som e level o f mobility support.

The existing solutions for the described applications and recent proposals for tlie introduction o f

mobility into existing w ell-established naming systems are then discussed in Section 2.6. A

summary o f the chapter is presented in Section 2.7.

2.1 D efin ition s

This section summarizes the basic naming concepts, it defines each component out o f w liich a

naming system is built. Tlie terminology adopted is the one used in the A N SA Arcliitecture Report

ARM. 1003.01 [8]. For a full description o f the naming concepts and definitions, the reader is

referred to the mentioned document.

A nam e is a linguistic entity that singles out a particular entity from am ong a group o f entities (an

entity is defined as anything that may be o f interest). It consists o f a string o f sym bols (bits or

characters) that identifies an object [9]. There are two types o f names (although the distinction is

rarely made):

> attributive nam e is a name w hose resolution returns the entity in question, or provides a name

for the entity in a different nam ing co n text (defined below ). If tliis new name can be used to

access the entity, this new name is an address,

> invocation nam e is a name w hose resolution causes an action to be perfonned.

A naming system consists o f

> a nam ing dom ain, which defines the set o f distinguishable entities tliat can be named,

> one or more nam e sets (set o f names that are considered valid in a particular naming system),

each associated with a n am ing convention (tliat defines the acceptable forms o f names) used in

a part o f the naming system,

> a set o f n a m in g contexts, that determine what actual names have been chosen for the entities in

the n am ing dom ain, i.e. it defines a set o f b indings o f names to entities.

> a na m in g netw ork, that places restrictions on the extent to w hich entities can be named from

each o f tlie nam in g contexts. The n am ing netw ork can be seen as a directed graph, where each

vertex denotes a nam ing context and each edge denotes a b inding with a context.

> One or more nam e resolution proto co ls, that determine the entity associated with the name in

(18)

The n a m in g system is said to be com posed o f the nam e assignm ent stra teg y or nam e schem e and

tlie n a m e resolution p ro to c o l [10]. The n am e schem e is generally defined as tlie procedure for

creating and assigning unique identifiers {i.e. unique names) to tlie network resources. N am e

reso lu tio n is defined as tlie action o f isolating a particular entity from amongst a group o f entities,

given a name and an entity (and by implication a nam ing context and nam ing conventions).

Therefore, to resolve a name is to determine tlie entity associated witli the name in a given context.

The resolution p ro to c o l is the network service that resolves the name into the associated piece o f

data (usually resource physical location, description o f resource characteristics, authentication

information, etc.).

The nam e assig n m en t strategy and tlie resolution p ro to co l can be made independent from one

another. H ow ever, by encoding som e information {e.g. name server at which search should start),

the resolution mechanism can be speeded up. The name assignm ent strategy and how much

information (if any at all) should be encoded into the name are very much dependent on the

application, as each application imposes its own requirements and restrictions on the system.

A nam e b in d in g (name-to-entity association) is always defined relative to a n am ing context. In the

naming context each name is unique. Different names can be bound to an object in the same

n a m in g co n text (in w hich case they are called aliases) or different nam ing con texts (in which case

tliey are called synonym s) at the same time. Not all names in a nam e se t have to be bound to an

entity. N am es that are unbound but nevertlieless used are unresolveable. A nam e space is that part

o f a n a m in g netw o rk within which a single nam ing convention is used. Within a particular nam e

space, all names are drawn from one nam e set.

A naming system provides location transparency if the name is independent o f the entity current

location. When the path name reflects the physical structure o f tlie system, location transparency is

not present. Location transparency im plies that the entity can migrate to different locations without

having its name modified.

2.2 N am e R esolution

The general techniques identified for name resolution [9] are listed below.

> A lg o rith m clustering. Names are clustered onto name servers depending on the value that

results from applying a hash function to them. The resulting name server is independent o f

name structure or crurent object location. This means this teclinique can result in a ver>'

inefficient system in which an object might have its current location stored by a name server

located at the other extreme o f the network. This is the technique used by tlie Handle System

(19)

> Syn ta ctic clustering. This is the most com m on form o f clustering and is based around the

structure o f the name itself. For example, liierarchical name system s as in the Internet or tlie

telephone numbering plan for tlie fixed telephone network.

> A ttrib u te clustering. A more generalized form o f syntactic clustering, where the grouping of

names is based on tlie attributes tliose names possess. For exam ple, for the current m obile

telephone system s, the names are assigned a HLR according to tlieir hom e base location (HLR

identifier is encoded in the terminal’s directory number - M SISDN ). In this case, tlie attribute

used for determining the way names are grouped is static. However, the attribute can be

dynam ic as in the case o f REM US (Routing Enquiry M echanism U tilizing Strategy), the name

resolution system developed in this tliesis (see Chapter 3). In the REM US case, the grouping

is determined according to the objects current location. Hence, as the object’s current location

changes, so does the set o f name servers containing information about it.

N am e servers can cooperate in three different w ays to resolve names [9].

> R ecursive. The request migrates from server to server so tliat names are constantly being

resolved in new contexts. The migration process is carried out until a name server containing

the required information is found. The request response follow s the same chain o f name

servers as it is returned to the enquiring chent (see figure 2.1). Hence the servers are forced to

store return addresses for each ongoing lookup. The consequence is that tlie service degrades

rapidly as the number o f concurrent transactions increases. This is one o f the two strategies

used by the D om ain Name System (D N S), see Section 2.6.3 (the other one is the iterative

strategy, see below ). However, tliis strategy tends to be avoided due to the incurred overhead.

N am e w N am e N am e N am e

ag en t s erv er s e rv e r s erv er

F igure 2.1 : R ec u rsiv e nam e re so lu tio n .

> Iterative. The enquiring client retains control o f the name resolution process. Each name

server contacted returns the current state o f the resolution together with the address o f the next

server to be contacted (a referral, as in tlie main strategy used in D N S - Dom ain Nam e

System, see Section 2.6.3). A lot o f the work in this case is performed by the enquiring client,

as shown in figure 2.2.

s erv er Name N am e

s erv er N am e

N am e

N am e a g en t

(20)

> Transitive. This procedure is similar lo the recursive procedure, in w hicli tlie request migrates

from name server to name server until tlie name can be resolved. However, unlike tlie

recursive procedure, tlie request response is returned straight to tlie client (refer to figure 2.3)

without tlie need to follow the sam e chain o f servers on the way back. This is tlie adopted

procedure for REM US (see Chapter 3).

N am e ag en t

N am e

N a m e

N am e

F ig u re 2.3: T ra n sitiv e nam e re so lu tio n .

2.3 N am ing System s D esign Strategies

There are tw o m ain approaches for the design o f name schem es [8] ;

> global nam e schem e — in w hich an entity name is tlie same no matter who uses tlie name,

w hen and from where,

> context relative name scheme — in which each name is bound to an entity in a particular

naming context.

The global name schem e can present elegant technical solutions in system s under the control o f a

sin gle authority. It is sim ple to use and implement, the names can be used from anywhere in the

system , im plying that the context in w hich names are resolved is invariant. However, global

naming does not provide a general solution to the naming problem in a large evolving distributed

system that may span many organizations. The problems encountered are;

> the difficulty in administrative authorities reaching an agreement for a unique absolute naming

system and in com m itting them selves to adhere to it,

> the need for a single centrahzed name allocation autliority,

> the difficulty in enforcing the global name scheme,

> as the system evolves, the maintenance o f a single system -wide context becom es

unmanageable.

Global nam ing can only work in som e specialized circumstances, in closed system s or in system s

tliat are strictly controlled by a single administration. The alternative to global naming is a context

relative nam e scheme. It allows the existence o f independent administrative domains in a

decentralized management structure, in which each administrative domain can coincide with a

naming context. This renders a flexible, adaptable and scaleable naming organization that can

respond to an evolving distributed network. Context relative naming permits tlie co-existence o f

(21)

Ihc need for Iranslalion and integration o f the different name schemes. This task can be performed

by a resolution protocol capable o f mapping tlie different name sets. REM US, the name resolution

protocol presented in tliis tliesis, is a general system capable o f integrating and resolving different

name schem es. This issue is furĂĽier discussed in Chapter 3.

With respect to the name resolution service, tliere are also two main approaches centralized and

distributed. In a centralized system, tlie information is kept in central look-up tables and all updates

and enquiries need to be referred back to tliem. Whereas, for the distributed approach, tlie

information and data location knowledge are distributed across the w hole network. Due to the

conflicting requirements o f any existing system, tlie naming implementations often adopt one

policy but incorporate characteristics o f the other to try and improve perform ance'. A centralized

strategy does not require the overhead o f a com plex resolution protocol, the processes o f updating

and retrieving information are straightforward and no data inconsistencies arise. However, for

large, highly intercormected, dynamic networks the centralized approach can im pose prohibitive

delays w ithin the system. The central databases can represent serious bottlenecks and it is very

difficult to optim ize tlieir position to suit demand, incurring unnecessary com m unication

overheads. With respect to security, centralized systems are less vulnerable to non-autliorized

access. H owever, robustness is a problem. If the central databases are cut o ff from the system due

to node or link failures, the consequences are serious. In order to avoid the network com ing to a

halt, back-up copies o f the central databases have to be kept at different sites. To keep the back-up

copies consistent, all updates must be transmitted to tlie back-up sites. It is necessary to find tlie

optimum rate at which updates should be forwarded to tlie back-up sites so that tlie back-up copies

are kept reasonably up-to-date without compromising tlie system s performance, this means extra

com plexity and signalling overhead to the system.

Opposed to that, in a distributed approach the name resolution protocol ceases to be a sim ple table

look-up to becom e more o f a searching mechanism. By distributing the data location know ledge

across the network, the signalling load generated due to attempts to retrieve and update the

recorded data is automatically shared over the system. The usage pattern can detennine the way

tlie data records are distributed across the network so tliat tlie system can be optim ized and

bottlenecks avoided. Witli respect to robustness, it is a much more reliable system , as nodes fail

independently, affecting only parts o f the network tliat can be bypassed by w ell-designed protocols

[12]. H ow ever, a management m echanism becom es an essential part o f the system, adding extra

com plexity. A distributed system allow s incremental growth witli minimum degree o f impact on

tlie operation o f the system. The name resolution protocol has to be able to keep tlie data consistent

and up-to-date across tlie network, w hile allow ing efficient data retrieval. Consistency is

particularly problematic if congestions or link/node faihnes occur, isolating parts o f tlie network

(22)

for som e indcfinile period o f time. Name resolution protocols should be able to cope with such

problems. By distributing tlie data w e are trading tlie sim plicity o f the centralized approach witli

tlie efficien cy and low delays o f the distributed strategy.

REM US, tlie name resolution protocol presented in this tliesis adopts a com pletely distributed

strategy and represents a testbed for investigating tlie consequences and implications o f designing

a distributed naming system and its ability to support a dynamic and evolving environment. The

objective is to adopt a distributed approach so that scalability is introduced but the extra

com plexity due to the distribution o f the data is minimized by the use o f sim ple state-independent

transactions that make the system naturally robust and capable o f self-management. The idea is to

test the level o f distribution such a system can support by im posing com plete independence am ong

the system ’s nodes. This issue is further discussed in Chapter 3.

2.4 D yn am ic N am ing System s

When the nam e binding (name-to-entity association) is not static, tlie resolution protocol has to be

able to update its records dynamically. If the named entities (e.g. users, terminals, objects, services,

etc.) are m obile, then the resolution system has to be able to keep track o f tlie entities current

location.

The basic characteristic o f mobility is to allow network resources to change location and a

subscriber to be connected to the network via an access and a terminal tliat can change along the

time, without any impact on the services provided to this subscriber or to any other subscriber

registered in the network [5]. This means tliat regardless o f the terminal he uses, liis location and

the location o f the network resources he w ishes to access, the subscriber is able to make use o f tlie

network as if he were using his own terminal from home and as if tlie network resources were

static.

M obility im poses som e extra requirements on top o f the application-specific ones. The name

schem e and the resolution protocol have to be designed so that the resources can be updated,

m oved and replicated transparently to the users, i.e. without having to modify the resource name

and without any significant impact on tlie network performance. For tliis to be achieved, the

naming system has to be scaleable (i.e. tlie network can be reduced or expanded without

significantly affecting its performance), robust (i.e. congestions or hardware failures in parts o f the

network should not prevent the naming system from operating) and capable o f dealing with a high

rate o f queries and updates (in order to support resource and user mobilit>' as w ell as high network

access rate).

The impact o f mobility in computer and communications network is subject to extensive research

(23)

focuses on the impact o f mobility on naming system s and how mobility support can be introduced.

The follow in g sections present tlie main applications tliat require dynamic naming system s and

som e recently proposed solutions to the described applications.

2.5 A pplications

Nam ing system s are necessary in many services, each application has its own characteristics and

requirements. Some o f the factors that determine wliich approach should be adopted for the name

schem e and resolution protocol are given below;

> network size,

> number o f network resources,

> network usage pattern:

â–  rate o f requests for data retrieval,

â–  rate o f updates o f resources associated data (e.g. resources location changes),

â–  percentage o f local and inter-domain requests,

> required perfonnance - QoS (Quality o f Service) requirements,

> administrative control strategy (centralized or distributed).

This section discusses som e naming system applications and their specific requirements. It

concentrates on applications that require the design o f dynam ic naming system s or the introduction

o f mobility support into existing systems.

2.5.1 Term inal and Personal M obility Services

Terminal mobility represents tlie ability to change the routing address attached to tlie terminal, it is

defined as [16].

“The ability o f a terminal to access telecom m unication seivices from different

locations and w hile in motion, and the capability o f the network to identify and

locate that tenninal.”

Personal mobility refers to tlie ability to change the relationsliip between a subscriber and tlie

terminal he uses to access the network services, again [16] defines it as

“T he ability o f a user to access telecom m unication services at any terminal on the

basis o f a personal identifier, and the capability o f the network to provide those

services according to the user's service profile.”

Further comparison o f tliese two kinds o f mobility can be found in [16]. Figure 2.4 shows the

relationships between user, terminal and network for tlie terminal and personal mobility services.

(24)

information as w ell as subscriber profile or tenninal profile information. It relies on two key

procedures:

> registration o f the current location in tlie database system {i.e. registration o f the association o f

a tenninal identity with a routing address or association o f a subscriber identity with tenninal

identity),

> retrieval o f routing information from the database system using the subscriber identification or

tlie terminal identification.

These procedures may in turn require other procedures such as authentication, profile checking,

etc. and optionally the transfer o f profile subsets to the visited area so that handling o f outgoing

requests are sim plified. This is part o f the service profile m anagement defined in [16] as the ability

to access and manipulate the user’s service profile. A user’s service profile consists o f tlie

information required to provide service to the user, including list o f specific services the user may

invoke and how incom ing and outgoing calls should be handled.

^ s ta tic ^

term in al <^ ---â–şs ta tic ^ n e tw o rk

^ sta tic ^

te rm in a l

^ d yn a m ic ^

--- â–ş n etw o rk

^ d y n a m ic ^

te rm in a l

^ s ta tic ^

<--- â–ş n e tw o rk

^ d y n a m ic ^

term in al ^ d y n a m ic ^ n e tw o rk

no m obility

term inal m obility

personal m obility

personal & term inal

m obility

Fig u re 2.4: T e rm in al an d perso n al m o b ility d e fin itio n s [17].

The adopted name schem e for tlie terminal mobility service in current m obile system s (G SM /lS-41

standards) is briefly outlined in Section 2.6.1. The personal mobility service has not yet been

implemented in large-scale systems. It is assumed that it w ill be provided on top o f the terminal

mobility service as part o f UM TS (Universal M obile Telecom m unications System), tlie tliird

generation for m obile networks [18]. Therefore two accesses to a naming system are necessary:

one to retrieve the identifier o f the terminal the subscriber is currently attached to, and a second

look-up to retrieve the current location o f this terminal. Proposals for enhancements and extensions

to the GSM /IS-41 system s [19] in order to improve their current performance so that personal

mobility can be supported are briefly discussed in Section 2.6.1.

The main requirements for tlie personal and terminal mobility services are listed below.

> scalability — the system design has to allow for an ever-increasing number o f subscribers

(m obile telephony has proven to be very popular, experiencing a remarkable growth since its

introduction [20] [21]),

> robustness — in an expanding network, with a high amount o f data and services distributed

(25)

cannot exist witliout m echanisms for detecting inconsistencies and recovering from

congestions and hardware failures,

> maintainability — due to tlie reasons listed in tlie previous items, the adopted naming system

has to be easy to maintain and manage,

> performance — this application requires very high switch tliroughput and low end-to-end

delays, customers are not prepared to face long delays, and competition in tliis area is fierce,

efficiency is a major requirement.

> provision o f service profile management — the data management aspects o f the problem (size

o f user profile, optimum file location, replication strategy, signalling load generated due to file

transfers, etc.).

2.5.2 Internet Protocol (IP) A ddresses

Because IP addresses encode both a network and a host on tliat network, they do not specify a host

but a connection to a host [22]. The main disadvantage is that if a host m oves from one network to

another, its network address must change. H ow ever the Internet suite o f protocols refers to tlie

hosts addresses and hence if the m obile host changes its address when it m oves, the TCP

(Transmission Control Protocol) connection breaks. However, if the old address is retained by the

mobile host, then the routing system fails to forward packets to its new location, unless

host-specific routes are propagated throughout most o f the Internet routing fabric.

In order to make this operation transparent to the user, anotlier level o f abstraction is needed in

which the host IP address is made independent from the network access point [23] [24]. This level

o f abstraction can be provided:

1) by the introduction o f a naming system that is made responsible for resolving the host IP

address into its current network attachment point. There are two main disadvantages to this

approach:

> When the Internet suite o f protocols was initially developed, it was implicitly assumed

that the name to address binding remained static. Thus, instead o f referring to hosts

through names, protocols were developed that referred to hosts through their addresses.

H ence in order to use a naming system to introduce this level o f abstraction, the Internet

protocols w ould have to be changed, particularly the transport layer protocol, TCP.

> The currently adopted Internet naming system, the Dom ain Nam e System (D N S), was

designed to work in a static environment and hence does not naturally support mobility.

Further discussions on D N S are presented in Section 2.6.3.

2) at tlie network layer, by the enhancement o f the current IP protocol. M obile IP, a protocol

intended for TCP/IP networks in general and the Internet in particular, has received a great

deal o f attention. The IETF (Internet Engineering Task Force) has been working towards a

specification for M obile IP. The strategy adopted by this proposed system is described in

(26)

The essential requirements are:

> scalability — given the huge size o f tlie Internet, its potential for further growth and the

popularity o f m obile data terminals, tliis is an important requirement,

> robustness — if the capability to deal witli failures and congestions is not present, tlien if

problems occur packets w ill be lost and tire transport layer connection (TCP connection)

might break.

2.5.3 Internet Hosts H igh-level Nam es and H ost-to-IP A ddress Resolution

U sers find names easier to use and remember tlian cumbersome network addresses. H ence a

naming system is needed to assign high-level names to Internet hosts, and store, maintain and

translate the name to address mapping. The naming system has to take into account the Internet

characteristics [22]:

> virtual network interconnecting a high number o f disparate, independent physical networks,

> local independent administrative control,

> large number o f hosts and an exponential network growing rate,

> distributed system,

> requests for data retrieval are mainly local,

> low update rate (however, with the developm ent o f m obile com puting, tlie update rate has tlie

potential to becom e high).

The minimum set o f requirements should include:

> scalability — for the same reasons as in Section 2.5.2,

> robustness — the naming system should continue operating even when faced with

congestions or hardware failures in parts o f the network,

> sub-networks should have autonomy to manage their ow n name space.

The D N S (Dom ain Nam e System) is the current adopted implementation. A brief overview o f

D N S characteristics and recent proposals to introduce som e level o f mobility support into it are

given in Section 2.6.3.

2.5.4 Library

Information stored in a library very often is kept at different geograpliical sites. If it is a static

environment (i.e. the data sources are kept at fixed locations) tlie data retrieval is trivial. However,

popular pieces o f information frequently have to be copied and moved to different locations to

avoid overloading parts o f the network (due to multiple simultaneous requests to access and

retrieve them). Further, the popularity o f pieces o f information varies with time, and hence the

environment is dynamic, having to be constantly adapted to the demand pattern. Therefore, a data

management m echanism is needed over tliis distributed dynam ic environment to update and find

Figure

Figure 2.1 : Recursive name resolution.
Figure 2.5: C'iSM and IS-41 updating procedure I'iie terminal is registered at a new \  i,R as tlie user enters its associated
Figure 2.6: GSM  call delivery procedure. The HLR holding the record of the subscriber is determ ined by the analysis o f the lirst digits o f the directory number, called M SISDN (because it is part o f the sam e num bering plan as ISDN numbers)
Figure 2.8: DNS name space.
+7

References

Related documents

Tynan, for his part, follows the shifts in Deleuze’s thought between Difference and Repetition and Logic of Sense to Anti-Oedipus, focusing on the relationship to Marx’s Capital

Objective1.To sell and service espresso machines in all states of Australia by accepting java estate tender and to look for warehouse opportunity in other high volume

A multivariate analysis of covariance (MANCOVA) was used to determine differences in discounting and STI risk behaviors -- sexual initiation, lifetime sexual partners, and

DHS employees assigned abroad and performing section 428(e) functions may, as deemed appropriate by the Secretary of Homeland Security, provide the rating and/or reviewing

Now we are ready to prove the subelliptic Rellich type inequality on G.. Hardy type inequalities with multiple singularities on G In this section we obtain the analogue of the

Single berth Over head storage Hanging Locker Day head access Central vac system Reading Light Full Shower.

In a recent research study conducted by the San Jose University, standard and/or alternative designed computer keyboards were tested to determine if they increase or decrease

As the use of laptops and other mobile computing devices rose in the enterprise, the company expanded its product offerings to include laptop and desktop management with