10 likes | 116 Views
Perceived space: names recognized by the naming scheme. names that are popular in the client queries. Description-based naming. 1. 2. Popular Space. 0.3.1. Profiled-based naming. 3. 2. consists of the names of the resources in the system. 3. 0. Populated Space. 3. 0. 2. 1.
E N D
Perceived space: names recognized by the naming scheme names that are popular in the client queries Description-based naming 1 2 Popular Space 0.3.1 Profiled-based naming 3 2 consists of the names of the resources in the system 3 0 Populated Space 3 0 2 1 Possible Space 0 1 consists of all possible names Profiling Pentium 4, 256MB Resource descriptions Pentium 4, 3GHz, 512MB, 100GB memory {Pentium, 3GHz, 512MB} Pentium, >3GHz CPU Pentium, 2.8GHz, 80GB Client query descriptions Pentium 4, 2.8GHz, 256MB, 80GB speed Pentium 3, 1GHz, 256MB, 40GB • Landmarks: just any peer who shows stable characteristics. • They run distributed spring algorithm to find their Cartesian positions. 1 Profile Adaptation Failed queries 2 Other nodes pings the landmarks and use a centralized spring algorithm to find their positions. 2nd Level Approx. 3rd Level Approx. asymmetric construction Resource Addressable Network (RAN) An Adaptive Peer-to-Peer Substrate for Internet-Scale Service Platforms RAN Concept & Design Profile-based Naming Description-based naming • Adaptive, self-organizing, scalable, P2P resource naming and discovery mechanism for large scale service infrastructures. • Resources are identified by their attributes such as processor type, speed, memory, or hard disk size. • E.g.: INS, database records. • Highly flexible mechanism. • As any combination of attributes is possible, the perceived space of a description-based scheme expands to possible space. Conceptual View • Adaptive: naming scheme changes with the trends in user queries. • Self-organizing: each node in the system is involved in constructing and managing the overlay structure. • Scalable: the route and message complexities are log proportional to the system size. • P2P: participating nodes are of similar functionalities, preserving their autonomies. • RAN nodes are managed along two axes: • Attributes of the managed resources Managed with profile-based naming • Location of the resources Managed with location-based naming Label-based naming Profile-based naming • Resources are identified by unique labels. • E.g.: DNS, human names. • Discovery is fast. • But, to address all the nodes, its boundary falls well into the possible space. • Combination of the other two schemes: identify the popular attribute combinations and label them. • Naming scheme adaptive to client queries; Boundary of the perceived space boundary is adjusted between popular space and populated space. • Not all resources are labelled – less managing overhead with a probability of false miss; trading off efficiency for scalability. Location-based Naming Landmark-aided Positioning • Landmark-aided positioning (LAP) is used to map the resources in the system onto a Cartesian space. • The Cartesian distance between resources is designed to be proportional to the network delay between them. Spring Algorithm • Nodes are considered to be connected to each other with springs. • The ping distances are assumed to be the natural length of the springs. • The algorithm is a heuristic optimization to minimize the total force exerted on the springs. • Each popular attribute forms an axis of a Cartesian space. • Each resource description maps on to a point in this Cartesian space. • A Hilbert curve is fit into this space to map these resource description points to Hilbert indices creating type IDs (TID). • Number of type IDs in the system is restricted. Resources that do not belong to any recognized type ID is mapped to the closest type ID using Hilbert curve’s proximity property. • Profile-adaptation can increase the resolution of the Hilbert curve or change the axes structure. • The positions are mapped to Hilbert index based location IDs (LID). RAN Architecture RAN Operation • RAN resources creates an overlay structure based on these two naming schemes. • Resources belongs to the same type ID form separate type rings. • Resources in a type ring are positioned with their location IDs. • Type rings are stacked in the order of their type IDs. • Routing tables in the nodes create these connections. • RAN initializes with a service provider (SP) and a set of pre-installed landmarks. • The first node joining the RAN becomes the RAN. • SP provides new nodes joining RAN with • The RAN core software; and • Name of an existing RAN node (entry node). • A new node calculates its LID using the list of landmarks provided by the entry node. • The entry node routes the join request from the new node using the new node’s LID as the target; Destination becomes the join-point. • The new node adapts routing entries from the join-point; ring pointers are duly created/modified. • Jump pointer section gets filled with the time by monitoring the messages passing through. • Nodes’ join/leave or failure affects only a portion of a ring and handled by the nodes in the region. • Landmarks form a virtual type ring and any stable node can join this ring to become landmarks. Type rings Type ID Location ID Routing in RAN • Two routing tables in each node to discover resources along location and type. • Ring pointerscreates the rings pointing to the left and right neighbours. • Jump pointers enable routing strides to different Hilbert regions providing log N route complexity. • Ring pointer section is always complete, but jump pointer section is lazily filled with time. Location-based routing table of a node with LID 2.3.3.1 Hilbert Space Filling Curve • Space filling curve (SFC) is a curve the passes through all the points in a bounded space. • Hilbert curve is a SFC that is mathematically defined and can be constructed at different levels of approximation. • Useful characteristics of the Hilbert curve: • Mapping of points from multi-dimensional to one-dimensional space. • Mapping preserves the proximity characteristics. • Can be constructed recursively: possibility of asymmetrical and hierarchical name space. Advanced Networking Research Laboratory, School of Computer Science, McGill University Montreal, Quebec, Canada. ANRL Advanced Networking Research Lab