Title: Networked Systems Research Projects @ McGill
1Networked Systems Research Projects _at_ McGill
- Muthucumaru Maheswaran
- Advanced Networking Research Lab
- School of Computer Science
- McGill University
- Montreal, QC H3A 2A7
2Outline
- Ongoing Projects
- Galaxy A Quality of Service Aware Public
Computing Utility - RAN Resource Addressable Network
- Trusted Gossip
- GINI A Toolkit for User-Level Networks
- Future Projects
- RASAN Resource and Service Addressable Network
- ALVIN Application Layer Virtual Internetworking
3Motivation for RASAN
- RASAN Resource and Service Addressable Network
- New technology trends
- Radio frequency IDs (RFIDs)
- Pervasive wireless access
- Very low cost/power sensors
- Creating new resource and service discovery
problems. - Examples of such discovery problems
- Locating the best doctors and nurses who should
be brought into a team to respond to particular
emergency situations, - Locating and allocating resources and services
that are necessary for conducting disaster relief - Logistical scheduling of different types
- New discovery problems enabled by the evolution
of network beyond a system that merely
interconnects clients and servers via a packet
switched network
4What is RASAN?
- RASAN is a real-time large-scale directory
service that is targeted to include heterogeneous
resources (wired, wireless, sensors, people, etc) - RASAN Goal
- Flexible search (multiple search dimensions)
- Minimal overhead
- Fast response times
- Late binding to determine real-time scenarios
5What is RASAN
- RASAN architecture
- Organized in a P2P manner that self-organizes
with resource arrival and departure events - Allows searches along multiple attribute spaces
for locating resources and services - Uses space filling curves (SFC) to reduce
multi-dimensional search to single dimensional
problem (used in RAN with success on the Internet
for locations) - Instead of a single SFC, it uses a hierarchy of
SFCs - Enables multi-resolution searches to reduce error
accumulation
6RASAN Design Requirements
- Scalable system Obvious scalability dimension is
the number of devices. Others include number of
search attributes and resource classes. - Dynamic system support Resources and services
can attach and detach from the directory services
without prior notice. - Heterogeneous and multi-resolution search RASAN
is meant to search along multiple attribute
dimensions. One way to make the search efficient
is to perform the search in progressively
increasing resolutions.
7RASAN Design Req
- Resource efficient implementation Due to its P2P
nature, a RASAN kernel would run on each
resource. To include resource challenged sensors
into RASAN, the implementation should be able to
run with limited memory and processing
capacities. Further, resources with restrictive
battery capacities should be able to participate
in stub configurations with minimal transit
traffic. - Operation with localized trust Resource should
have some credential to establish it identity.
Localized reputation should be used to evaluate
behavior trust - Shared fate A resource or service that does not
exist need not be indexed by the directory
8Resource Addressable Network
- RAN middle layer between services and resources.
- Attribute-based and location-based discovery.
ODC Service
Naming the resources based on their attributes
Profile-based naming
Network positioning mechanism, assigning
coordinates for each node in the network delay
space
Landmark-aided positioning
Physical Resources
9RAN Overlay
Location ID
Neighborhood pointers connect the rings
Hilbert indexing
decides the location
LAP
decides the ring
PBN/Hilbert indexing
Type rings
Profile ID
Resources with the same profile ID form a ring
Route pointers in the nodes creates the overlay
structure
10Network Positioning
- Network positioning assigning coordinates for
the nodes in a virtual Cartesian space, from
which real network delay can be predicted.
Internet
l12
Distance prediction
l12 v(x1-x2)2(y1-y2)2
y
(x2, y2)
Cartesian space
(x1, y1)
x
11Landmark Aided Positioning
- Landmark aided positioning (LAP) the network
positioning scheme for RAN. - Using a set of landmarks.
- Normal nodes
- Select a subset of the total landmarks and ping
them. - Run optimization algorithm to position themselves
to minimize the total error in distance
prediction. - Two phases of LAP
- Landmark positioning positioning the landmarks.
- Node positioning positioning the normal nodes.
- Simplex and Spring algorithms.
12Location-based Discovery
- Finding a resource at specific coordinate/range
- Multidimensional search.
- Chose Hilbert curve as the data structure.
- Hilbert curve
- A space filling curve.
- Preserving proximity.
- Hierarchical Hilbert index ? location ID (LID).
13Location-based Discovery (cont)
Routing table at node with LID 2.3.3.1.0
- Routing table for location-based discovery.
- Non-zero error in pings justifies fixed length
LIDs. - Ring pointers ensuring connectivity jump
pointers enhancing route complexity. - Average search hop complexity h (approx. level)
? O(1).
14Profile-based Discovery
- Discovery systems implements naming schemes
- Label-based naming (LBN) DNS, IP Address.
- Scalable, but not flexible.
- Description-based naming (DBN) LDAP.
- Flexible, but with high overhead due to
information maintenance, complex matching
algorithms. - Introducing profile based naming (PBN)
- Labels popular attribute-value combinations.
- Combines the goods of LBN and DBN.
- Can not discover all the attribute-value
combinations. - Trading off flexibility (performance) for
scalability.
15Profile-based Discovery (cont)
Profile-based naming
profiles
profile space
description
1
2
3
Profile IDs
description space
Profile 1 Intel/AMD, 512MB 0. Profile 2
Intel with 1GB 1.0 Profile 3 Intel/AMD,
gt 1GB 1.1,1.2
- Profile-based routing table is very similar to
location-based routing table.
16The Galaxy Architecture
- The following diagram shows a proposal for Galaxy
architecture
17Trust and Incentive Management
- Public resources remain under control of local
agents whose behavior may change randomly - resource sharing in hostile and friendly
environments - Challenges in trust management in a PCU
- Internet-scale
- manage vast pool of distributed resources
- cross boundary autonomous
- span across administrative domains
- handle localized policies varied level of trust
requirement - reliable exchange of peer behavior
- ensure fair resource exchange resource
participation
18GRMS Trust Management Model
Resource Brokers (RBs)
RB1B
Resource Peers (RPs)
RB1A
RB2A
RP2B
RP1B
RP3A
RP2A
Domain B
Domain A
19Trust Hierarchy
- Hierarchy local, global trust
- Helps to reduce overhead needed for
computing trust - scalable flexible localized policing
-
RB1B
local trust
RP1B
global trust
RP1A
domains are not connected in hierarchy
20PCU Operations for Allocation
RB1B
RB1A
RP1B
RP1A
21Negotiation Trust Evaluation
RB1A computes RP1B s global trust GT_ RP1B
LT_RP1B x REP_DBA
RB1B recommends RP1B to RB1A based on RP1B s
local trust LT_ RP1B
Domain C
RB1B
RB1A
REP_DBA reputation of Domain B as measured by
Domain A
RP1B
RP1A
Provider
Resource access is authorized if RB1A considers
GT_RP1B value as trustworthy
Security/fairness mechanisms ensure that RBs and
RPs do not collude or lie to each other
Domain B
Requestor
Domain A