an overview of ocean

10
An Overview of OCEAN An Overview of OCEAN A Small Introduction by A Small Introduction by Cyrus & Erwin Cyrus & Erwin

Upload: manju

Post on 23-Jan-2016

29 views

Category:

Documents


0 download

DESCRIPTION

An Overview of OCEAN. A Small Introduction by Cyrus & Erwin. Constructed in Layers. Mobility moves stuff Negotiation makes contracts Searching finds things on network. Matching/Searching. Negotiation. Mobility. Mobility. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: An Overview of OCEAN

An Overview of OCEANAn Overview of OCEAN

A Small Introduction by A Small Introduction by

Cyrus & ErwinCyrus & Erwin

Page 2: An Overview of OCEAN

Constructed in LayersConstructed in Layers

Mobility moves Mobility moves stuff stuff

Negotiation Negotiation makes makes contractscontracts

Searching finds Searching finds things on things on networknetwork Mobility

Matching/Searching

Negotiation

Page 3: An Overview of OCEAN

MobilityMobility

Provides ability to checkpoint code & state. Provides ability to checkpoint code & state. Transfer both to different location. Resume Transfer both to different location. Resume executionexecution

Problem has been solved (or there are Problem has been solved (or there are provisions) by several third party vendors. provisions) by several third party vendors. (Globus/ADK/.NET)(Globus/ADK/.NET)

Sama is working on (Java based) OCEAN Sama is working on (Java based) OCEAN specific implementation.specific implementation.

Page 4: An Overview of OCEAN

SearchingSearching

Problem, locating specific resource in Problem, locating specific resource in network.network.

Solutions:Solutions:– Central serverCentral server– Distributed serverDistributed server– Peer 2 PeerPeer 2 Peer

Page 5: An Overview of OCEAN

Search languageSearch language

Extremely simple yet flexible.Extremely simple yet flexible. A resource has a name with a couple of A resource has a name with a couple of

features and typed values. These can be features and typed values. These can be used for matching.used for matching.

<resource name="CPUID"><resource name="CPUID">

<feature name="Vendor“ value="AuthenticAMD"/> <feature name="Vendor“ value="AuthenticAMD"/> <feature name="Stepping" value="2" <feature name="Stepping" value="2" type="numeric" match=">"/> type="numeric" match=">"/> </resource>"</resource>"

Page 6: An Overview of OCEAN

Network engineNetwork engine

OCEAN allows searching using various OCEAN allows searching using various protocols:protocols:– Simple Connectionless Simple Connectionless

» Plum - Currently just minimal functionality to Plum - Currently just minimal functionality to implement Dr Franks Evolution Scheme implement Dr Franks Evolution Scheme

(current focus)(current focus)

– ConnectedConnected» Marco Polo - Cyrus p2p protocol Marco Polo - Cyrus p2p protocol

– Hybrid protocol between Hybrid protocol between connectionless/connected protocol.connectionless/connected protocol.

Page 7: An Overview of OCEAN

Network EngineNetwork Engine

Peer Manager Peer Manager – Contains a List of all PeersContains a List of all Peers– Provides Provides

» Ability to Send a Messages to Active PeersAbility to Send a Messages to Active Peers

» Propagate a Received MessagePropagate a Received Message

» Notify a protocol when incoming socket Notify a protocol when incoming socket connections are madeconnections are made

» Notify a protocol when a message is receivedNotify a protocol when a message is received

Page 8: An Overview of OCEAN

Network EngineNetwork Engine

Abstract Peer InterfaceAbstract Peer Interface– Protocols Extend Peer concept as neededProtocols Extend Peer concept as needed

» Example: MPF Peers Must track certain stats (later) Example: MPF Peers Must track certain stats (later)

» Protocols make the selection of the “Active” Peers Protocols make the selection of the “Active” Peers and make choices to add and remove peers.and make choices to add and remove peers.

Protocols interact with Matchers through a Protocols interact with Matchers through a generic interfacegeneric interface

Page 9: An Overview of OCEAN

Network EngineNetwork Engine

Matcher / Network InterfaceMatcher / Network Interface– Matcher Asking Network to look for matches Matcher Asking Network to look for matches

(Searcher Interface)(Searcher Interface)– Network telling Matcher when a match has Network telling Matcher when a match has

occurred (MatchListener Interface)occurred (MatchListener Interface)– For a seller, the protocol must be able to know For a seller, the protocol must be able to know

if the seller is a match to “search” type of if the seller is a match to “search” type of messages (SellerMatcher Interface)messages (SellerMatcher Interface)

Page 10: An Overview of OCEAN

MPF Evolution Protocol MPF Evolution Protocol OverviewOverview

Track success of peers over time based on successful Track success of peers over time based on successful matches.matches.– For each peer track these vars:For each peer track these vars:

» nTrialsnTrials

» nSucessesnSucesses

– Rating = (nSucesses + success Bias) / (nTrials + trialBias)Rating = (nSucesses + success Bias) / (nTrials + trialBias)

– Decay nTrials and nSucesses over time to ensure new data Decay nTrials and nSucesses over time to ensure new data is weighted more heavilyis weighted more heavily

– Using rating to select which are the best peers, Using rating to select which are the best peers, communicate with top peerscommunicate with top peers