O c e a n
This presentation is the property of its rightful owner.
Sponsored Links
1 / 27

O.C.E.A.N PowerPoint PPT Presentation


  • 153 Views
  • Uploaded on
  • Presentation posted in: General

O.C.E.A.N. Open Computation Exchange and Auctioning Network. Overview. Distributed Computing What is O.C.E.A.N. ? The O.C.E.A.N. Architecture. Future Goals. Distributed Computing. What is Distributed Computing? History Why we need Distributed Computing?

Download Presentation

O.C.E.A.N

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


O c e a n

O.C.E.A.N

Open Computation Exchange and Auctioning Network


Overview

Overview

  • Distributed Computing

  • What is O.C.E.A.N. ?

  • The O.C.E.A.N. Architecture.

  • Future Goals


Distributed computing

Distributed Computing

  • What is Distributed Computing?

  • History

  • Why we need Distributed Computing?

  • Applications of Distributed Computing

  • Projects


O c e a n roots

O.C.E.A.N Roots

  • OCEAN (Open Computation Exchange & Arbitration Network)

    • An evolving open distributed protocol for dynamic exchange of computing resources.

    • Begun at MIT with other MIT/Stanford alums.

    • OCEAN already led to at least 1 company (popularpower.com) & VCs want more.


O c e a n architecture overview

Highly flexible.

Deployable on any arbitrary network of host nodes connected by TCP/IP.

Supports distributed P2P double auctions & job subcontracting.

O.C.E.A.N Architecture Overview


Features of ocean

Features of OCEAN

  • Server and API software freely available.

    • Anyone w. a TCP/IP node can host a worker, auctioneer, or node-listing service.

    • Anyone can write OCEAN applications and/or submit app invocations (jobs) to OCEAN.

  • Uses open, XML-based protocols.

  • Deployable on an internet, intranet or extranet basis.


Potential ocean apps

Potential OCEAN Apps

  • CGI/Animation Rendering.

  • Computational science & engineering(e.g., simulations).

  • Bioinformatics (genetic data processing).

  • Data mining, machine learning.

  • Combinatorial search & optimization.


O c e a n components

O.C.E.A.N. Components

  • Communications/Security

  • Task Spawning and Migration(TSM)

  • Peer List Update Manager(PLUM)

  • Naming

  • Auctioning

    (more)


O c e a n components contd

O.C.E.A.N. Components(contd.)

  • Negotiation

  • Central Accounting Server(CAS)

  • Trader

  • Job Maker API


Communications security component

Communications/Security Component

  • The Security Component interacts with the Accounting, Auction, Negotiation, PLUM, TSM, Communication and Node Configuration components in each OCEAN node.

  • It provides various security services, which include authentication, access control, confidentiality, integrity and non-repudiation.

  • The security mechanism uses symmetric and asymmetric cryptographic techniques to maintain confidentiality of information; CA certificates, digital signatures and message authentication codes (MAC) or hash functions to ensure data integrity and authentication and security managers to implement access control functions and node security.

  • Security layer plays an important role in CAS (Centralized Accounting Server), which contains accounting and transaction information of all OCEAN nodes. It is also responsible for offering secured exchange of financial information between financial networks and the CAS


Security component

Security Component

CAS

Database

Security & Communication Layer

Security and Communication layer of Node 2

Certification Authority

Financial Network

Security and Communication layer of Node 1


Ons ocean naming system

ONS(Ocean Naming System)

  • Provides a unique naming scheme

  • Syntax: ocean://<well qualified dns address>:<port number>/<well qualified dns address>:<portnumber/…. /@<ocean module name>/jobid

  • Implementation provides wrappers to work with parts of names

  • All modules are served by Naming

  • Directory services will be added through JNDI in future


O c e a n

TSM

OCEAN Node 1

Returned name

www.node1.com:400/www.node2.com:[email protected]/jobid

Name sent as a parameter

Security / Communic

ONS

www.node2.com, 100

Destination address, port

Name sent to other

Ocean node

AUCTION

OCEAN Node 2

Jobid

Job

Security / Communic

ONS

Name received from other node

Auction, jobid

www.node1.com:400/www.node2.com:[email protected]/jobid/


Task spawning and migration

Task Spawning and Migration


Tsm architecture

TSM Architecture

  • The TSM obtains Task Sender information from the Trader Layer subsystem and migrates Ocean tasks from the buyer ( Task Sender ) to the seller ( Task Receiver ) through the Communication/Security Layer.

  • Node 1Node 2

Trader

Trader

TSM

Auction

Nego.

TSM

Auction

Nego.

Communication /Security

Communication /Security

Web Server


O c e a n

PLUM

  • The PLUM is acronym for Peer List Update Manager

  • The role of PLUM is to maintain a list of peer’s with which transactions can be performed

  • The PLUM component is present in each OCEAN node.

  • The PLUM is primarily used by Auction component.


O c e a n

PLUM

  • The components PLUM interacts with.

    • The PLUM mainly interacts with Communication and Security component.

  • What the PLUM needs.

    • The PLUM may need some sort of lightweight database or persistence manager.

  • The stages of operation of PLUM.

    • Registration Stage

    • Maintenance Stage

    • Termination Stage


Location

OCEAN node 1

another OCEAN node - potential peer to node 1

Auction

Negotiator

Node config./

maint./oper.

interface

PLUM

PLUM

Security/communic.

Security/communic.

LOCATION


Architecture

Other Node

Other Node

Other Components

PLUM Interfaces

Query

Manager

Configuration PeerEditor Ordering CheckUnique PreferenceChecker BlackList TransferPeerList Adder

Peer List

Peer

Peer

Peer

ARCHITECTURE


Negotiation component

Negotiation Component

  • This is a higher level Component

  • Gets peer list from auction layer and negotiates with the nodes in the peer list

  • Chooses a winning node based on the negotiations

  • Gives the winning node address to the TSM component

  • Improvements:

    • Include multiple simultaneous negotiations with several nodes

    • Include level of negotiation

    • Include history of past negotiations to make better negotiations in the future.


Negotiation examples

Negotiation Examples

contract

Seller

Buyer

Signed contract

1.No Negotiation. The buyer sends the contract and the seller signs the contract and sends it back.

Modify proposal

Buyer

Seller

New proposal

contract

Signed contract

2.Negotiation where the buyer sends a counter proposal and the seller adjusts to meet the new proposal .


Cas central accounting server

CAS (Central Accounting Server)

  • High level component in the OCEAN architecture.

  • Connecting with financial network and local accounting layer through security and communication layer.

  • To maintain OCEAN account in a secure location.

  • To provide a connection between the OCEAN network and real-world financial networks.

  • To communicate critical information to the local accounting system.

  • Implementation using Oracle and JDBC.


O c e a n

CAS

Negotiation Layer

Local Accounting Layer

Financial Network

CAS

Security and Communication Layer


Ocean api

OCEAN API

Functionality

  • Utilitarian functionality.

  • XML Document Generators.

  • Libraries.


Ocean simulator

OCEAN SIMULATOR

Motivation

  • Application produces the proper results.

  • Application does not do anything malicious.

  • Estimate cost of execution in OCEAN.

Design

  • Support OCEAN API.

  • Free Auctions

No Auctioning Required!

  • Nodes as Threads.


Future goals

Future Goals

  • Implement beta version 1 of O.C.E.A.N by the end of fall semester.

  • Deploy O.C.E.A.N. so that it can be tested by various distributed applications simultaneously being developed.

  • Improve the higher layer components like Auction and Negotiation by adding more functionality.


  • Login