networked systems research projects @ mcgill

21
Networked Systems Research Networked Systems Research Projects @ McGill Projects @ McGill Muthucumaru Maheswaran Muthucumaru Maheswaran Advanced Networking Research Lab Advanced Networking Research Lab School of Computer Science School of Computer Science McGill University McGill University Montreal, QC H3A 2A7 Montreal, QC H3A 2A7

Upload: ismet

Post on 05-Jan-2016

40 views

Category:

Documents


1 download

DESCRIPTION

Networked Systems Research Projects @ McGill. Muthucumaru Maheswaran Advanced Networking Research Lab School of Computer Science McGill University Montreal, QC H3A 2A7. Outline. Ongoing Projects Galaxy: A Quality of Service Aware Public Computing Utility RAN: Resource Addressable Network - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Networked Systems Research Projects @ McGill

Networked Systems Research Networked Systems Research Projects @ McGillProjects @ McGill

Muthucumaru MaheswaranMuthucumaru Maheswaran

Advanced Networking Research LabAdvanced Networking Research Lab

School of Computer ScienceSchool of Computer Science

McGill UniversityMcGill University

Montreal, QC H3A 2A7Montreal, QC H3A 2A7

Page 2: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

2

OutlineOutline

• Ongoing ProjectsOngoing Projects– Galaxy: A Quality of Service Aware Public Galaxy: A Quality of Service Aware Public

Computing UtilityComputing Utility– RAN: Resource Addressable NetworkRAN: Resource Addressable Network– Trusted GossipTrusted Gossip– GINI: A Toolkit for User-Level NetworksGINI: A Toolkit for User-Level Networks

• Future Projects:Future Projects:– RASAN: Resource and Service Addressable RASAN: Resource and Service Addressable

NetworkNetwork– ALVIN: Application Layer Virtual InternetworkingALVIN: Application Layer Virtual Internetworking

Page 3: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

3

Motivation for RASANMotivation for RASANRASAN: Resource and Service Addressable RASAN: Resource and Service Addressable

NetworkNetwork• New technology trends:New technology trends:

– Radio frequency IDs Radio frequency IDs (RFIDs)(RFIDs)– Pervasive wireless accessPervasive wireless access– Very low cost/power sensorsVery low cost/power sensors

• Creating new resource and service discovery Creating new resource and service discovery problems. problems.

• Examples of such discovery problems:Examples of such discovery problems:– Locating the best doctors and nurses who should be brought Locating the best doctors and nurses who should be brought

into a team to respond to particular emergency situations, into a team to respond to particular emergency situations, – Locating and allocating resources and services that are Locating and allocating resources and services that are

necessary for conducting disaster reliefnecessary for conducting disaster relief– Logistical scheduling of different typesLogistical scheduling of different types

• New “discovery” problems enabled by the evolution of New “discovery” problems enabled by the evolution of network beyond a system that merely interconnects network beyond a system that merely interconnects clients and servers via a packet switched networkclients and servers via a packet switched network

Page 4: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

4

What is RASAN?What is RASAN?

• RASAN is a real-time large-scale directory RASAN is a real-time large-scale directory service that is targeted to include service that is targeted to include heterogeneous resources (wired, wireless, heterogeneous resources (wired, wireless, sensors, people, etc)sensors, people, etc)

• RASAN Goal:RASAN Goal:– Flexible search (multiple search dimensions)Flexible search (multiple search dimensions)– Minimal overhead Minimal overhead – Fast response timesFast response times– Late binding to determine real-time scenariosLate binding to determine real-time scenarios

Page 5: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

5

What is RASAN…What is RASAN…

• RASAN architecture:RASAN architecture:– Organized in a P2P manner that self-organizes Organized in a P2P manner that self-organizes

with resource arrival and departure eventswith resource arrival and departure events– Allows searches along multiple attribute spaces Allows searches along multiple attribute spaces

for locating resources and servicesfor locating resources and services– Uses space filling curves (SFC) to reduce multi-Uses space filling curves (SFC) to reduce multi-

dimensional search to single dimensional dimensional search to single dimensional problem (used in RAN with success on the problem (used in RAN with success on the Internet for locations)Internet for locations)

– Instead of a single SFC, it uses a hierarchy of Instead of a single SFC, it uses a hierarchy of SFCsSFCs

– Enables multi-resolution searches to reduce error Enables multi-resolution searches to reduce error accumulationaccumulation

Page 6: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

6

RASAN Design RASAN Design RequirementsRequirements• Scalable systemScalable system: Obvious scalability : Obvious scalability

dimension is the number of devices. Others dimension is the number of devices. Others include number of search attributes and include number of search attributes and resource classes.resource classes.

• Dynamic system supportDynamic system support: Resources and : Resources and services can attach and detach from the services can attach and detach from the directory services without prior notice. directory services without prior notice.

• Heterogeneous and multi-resolution searchHeterogeneous and multi-resolution search: : RASAN is meant to search along multiple RASAN is meant to search along multiple attribute dimensions. One way to make the attribute dimensions. One way to make the search efficient is to perform the search in search efficient is to perform the search in progressively increasing resolutions.progressively increasing resolutions.

Page 7: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

7

RASAN Design Req…RASAN Design Req…• Resource efficient implementationResource efficient implementation: Due to its P2P : Due to its P2P

nature, a RASAN kernel would run on each nature, a RASAN kernel would run on each resource. To include resource challenged sensors resource. To include resource challenged sensors into RASAN, the implementation should be able to into RASAN, the implementation should be able to run with limited memory and processing capacities. run with limited memory and processing capacities. Further, resources with restrictive battery Further, resources with restrictive battery capacities should be able to participate in “stub” capacities should be able to participate in “stub” configurations with minimal transit traffic.configurations with minimal transit traffic.

• Operation with localized trustOperation with localized trust: Resource should : Resource should have some credential to establish it identity. have some credential to establish it identity. Localized reputation should be used to evaluate Localized reputation should be used to evaluate “behavior trust”“behavior trust”

• Shared fateShared fate: A resource or service that does not : A resource or service that does not exist need not be indexed by the directoryexist need not be indexed by the directory

Page 8: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

8

RAN discovery substrateRAN discovery substrate

ODC ServiceODC Service

Physical ResourcesPhysical Resources

Location-based discoveryLocation-based discovery

Landmark-aided positioningLandmark-aided positioning

Profile-based discoveryProfile-based discovery

Network positioning Network positioning mechanism, assigning mechanism, assigning coordinates for each node in coordinates for each node in the network delay spacethe network delay space

Resource Addressable Resource Addressable NetworkNetwork• RAN: middle layer between services and RAN: middle layer between services and

resources.resources.• Attribute-based and location-based discovery.Attribute-based and location-based discovery.

Naming the resources Naming the resources based on their based on their attributesattributes

Profile-based namingProfile-based naming

Page 9: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

9

Location Location IDID

Profile IDProfile ID

decides the locationdecides the location

decides the decides the ringring

Type Type ringsrings

RAN OverlayRAN Overlay

NodeNode(LID)(LID)

NodeNode

NodeNode(x,y)(x,y)

NodeNode(PID)(PID)

PBN/PBN/Hilbert Hilbert

indexingindexing

LAPLAP

Hilbert Hilbert indexinindexin

gg

Resources with the same Resources with the same profile ID form a ringprofile ID form a ring

Route pointers in the Route pointers in the nodes creates the overlay nodes creates the overlay structurestructure

Neighborhood pointersNeighborhood pointers connect the ringsconnect the rings

Page 10: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

10

Network PositioningNetwork Positioning

• Network positioningNetwork positioning: assigning coordinates : assigning coordinates for the nodes in a virtual Cartesian space, for the nodes in a virtual Cartesian space, from which real network delay can be from which real network delay can be predicted. predicted.

xx

yy

(x(x11, y, y11))

(x(x22, y, y22))

ll1212

InterneInternett

Cartesian Cartesian spacespace

ll1212 ≈ √[(x ≈ √[(x11-x-x22))22+(y+(y11-y-y22))22]]

Distance prediction:Distance prediction:

Page 11: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

11

Landmark Aided PositioningLandmark Aided Positioning

• Landmark aided positioning Landmark aided positioning (LAP): the (LAP): the network positioning scheme for RAN.network positioning scheme for RAN.– Using a set of Using a set of landmarkslandmarks..– Normal nodes:Normal nodes:

• Select a subset of the total landmarks and ping them.Select a subset of the total landmarks and ping them.• Run optimization algorithm to position themselves to Run optimization algorithm to position themselves to

minimize the total error in distance prediction.minimize the total error in distance prediction.

• Two phases of LAP:Two phases of LAP:– Landmark positioningLandmark positioning: : positioning the positioning the

landmarks.landmarks.– Node positioningNode positioning: : positioning the normal nodes.positioning the normal nodes.

• Simplex and Spring algorithms.Simplex and Spring algorithms.

Page 12: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

12

Location-based DiscoveryLocation-based Discovery• Finding a resource at specific coordinate/range:Finding a resource at specific coordinate/range:

– Multidimensional search.Multidimensional search.– Chose Chose Hilbert curveHilbert curve as the data structure. as the data structure.

• Hilbert curve:Hilbert curve:

– A space filling curve.A space filling curve.– Preserving proximity.Preserving proximity.– Hierarchical Hilbert index Hierarchical Hilbert index location IDlocation ID (LID). (LID).

Page 13: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

13

Location-based Discovery Location-based Discovery (cont…)(cont…)

• Routing table for location-based discovery.Routing table for location-based discovery.– Non-zero error in pings justifies fixed length LIDs.Non-zero error in pings justifies fixed length LIDs.– Ring pointersRing pointers ensuring connectivity; ensuring connectivity; jump pointersjump pointers

enhancing route complexity.enhancing route complexity.• Average search hop complexity = Average search hop complexity = h h (approx. level) (approx. level) O(1)O(1)..

Routing table at node with LID = 2.3.3.1.0Routing table at node with LID = 2.3.3.1.0

Page 14: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

14

Profile-based DiscoveryProfile-based Discovery

• Discovery systems implements naming Discovery systems implements naming schemes:schemes:– Label-based namingLabel-based naming (LBN): DNS, IP Address. (LBN): DNS, IP Address.

• Scalable, but not flexible.Scalable, but not flexible.

– Description-based namingDescription-based naming (DBN): LDAP. (DBN): LDAP.• Flexible, but with high overhead due to information Flexible, but with high overhead due to information

maintenance, complex matching algorithms.maintenance, complex matching algorithms.

• Introducing Introducing profile based namingprofile based naming (PBN): (PBN):– Labels popular attribute-value combinations.Labels popular attribute-value combinations.

• Combines the goods of LBN and DBN.Combines the goods of LBN and DBN.• Can not discover all the attribute-value combinations.Can not discover all the attribute-value combinations.• Trading off flexibility (performance) for scalability.Trading off flexibility (performance) for scalability.

Page 15: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

15

Profile-based DiscoveryProfile-based Discovery (cont…)(cont…)

Profile 1: {Intel/AMD, ≤ 512MB} : 0.*Profile 1: {Intel/AMD, ≤ 512MB} : 0.*Profile 2: {Intel with 1GB}Profile 2: {Intel with 1GB} : 1.0 : 1.0Profile 3: {Intel/AMD, > 1GB}Profile 3: {Intel/AMD, > 1GB} : [1.1,1.2] : [1.1,1.2]

description spacedescription space

profile spaceprofile space

profilesprofiles

descriptiondescription 11

22

33

Profile Profile IDsIDs

•Profile-based routing table is very similar to location-based routing table.Profile-based routing table is very similar to location-based routing table.

Profile-based Profile-based naming:naming:

Page 16: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

16

The Galaxy ArchitectureThe Galaxy Architecture

• The following diagram shows a proposal for The following diagram shows a proposal for Galaxy architecture:Galaxy architecture:

Resource Pool (RP)

Resource Addressable Network (RAN)

Galaxy Services

Galaxy Applications

Se

curi

ty

Ga

laxy

Mid

dle

wa

re

ResourceBroker

Galaxy Resource Management System

ResourceBroker...

Service Level, Trust,Incentive Management

Resource Broker

Page 17: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

17

Trust and Incentive Trust and Incentive ManagementManagement• Public resources remain under control of Public resources remain under control of

local agents whose behavior may change local agents whose behavior may change randomlyrandomly

• resource sharing in hostile and friendly environmentsresource sharing in hostile and friendly environments

• Challenges in trust management in a PCUChallenges in trust management in a PCU– Internet-scaleInternet-scale

• manage vast pool of distributed resourcesmanage vast pool of distributed resources

– cross boundary; autonomous cross boundary; autonomous • span across administrative domainsspan across administrative domains• handle localized policies; varied level of trust handle localized policies; varied level of trust

requirementrequirement• reliable exchange of peer behaviorreliable exchange of peer behavior• ensure fair resource exchange; resource participationensure fair resource exchange; resource participation

Page 18: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

18

GRMS Trust Management GRMS Trust Management ModelModel

Resource Brokers (RBs)

Resource Peers (RPs)RB1

A

RP2A

RB2A

RP3A

RP1B

RB1B

RP1A

RP2B

Domain A

Domain B

Page 19: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

19

Trust HierarchyTrust Hierarchy

RB1B

RP1B

RP1A

• Hierarchy: Hierarchy: locallocal, , globalglobal trusttrust

• Helps to reduce Helps to reduce overhead needed for overhead needed for computing trustcomputing trust– scalable; flexible; scalable; flexible;

localized policinglocalized policingRP1

A global trust

local trust

domains are notconnected in

hierarchy

Page 20: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

20

PCU Operations for PCU Operations for AllocationAllocation

RB1A

RB1B

RP1B

RP1A

2. resource discovery (via RAN)

4. resource negotiation

6. resource rewarding

RP1A

5. resource access

1. resource request

Requestor

3. resource reply

Provider

Page 21: Networked Systems Research Projects @ McGill

Advanced Networking Research Laboratory,School of Computer Science,McGill University, Montreal, QC, Canada.

21

Negotiation: Trust Negotiation: Trust EvaluationEvaluation

RB1A

RB1B

RP1B

RP1A

REP_DBA = reputation of

Domain B as measured by Domain A

RB1A computes RP1

B ’s global trust GT_ RP1

B = LT_RP1B x REP_DB

A

Domain A

Domain B

Domain C

RP1A

Requestor

Provider

Resource access is authorized if RB1

A considers GT_RP1B

value as trustworthy

RB1B recommends RP1

B to RB1

A based on RP1B ’s

local trust LT_ RP1B

Security/fairness mechanismsensure that RBs and RPs do not collude or lie to each other

4. resource negotiation