1 / 27

O.C.E.A.N

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. O.C.E.A.N Open Computation Exchange and Auctioning Network

  2. Overview • Distributed Computing • What is O.C.E.A.N. ? • The O.C.E.A.N. Architecture. • Future Goals

  3. Distributed Computing • What is Distributed Computing? • History • Why we need Distributed Computing? • Applications of Distributed Computing • Projects

  4. 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.

  5. 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

  6. 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.

  7. Potential OCEAN Apps • CGI/Animation Rendering. • Computational science & engineering(e.g., simulations). • Bioinformatics (genetic data processing). • Data mining, machine learning. • Combinatorial search & optimization.

  8. O.C.E.A.N. Components • Communications/Security • Task Spawning and Migration(TSM) • Peer List Update Manager(PLUM) • Naming • Auctioning (more)

  9. O.C.E.A.N. Components(contd.) • Negotiation • Central Accounting Server(CAS) • Trader • Job Maker API

  10. 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

  11. 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

  12. 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

  13. TSM OCEAN Node 1 Returned name www.node1.com:400/www.node2.com:100/@auction/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:100/@auction/jobid/

  14. Task Spawning and Migration

  15. 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 1 Node 2 Trader Trader TSM Auction Nego. TSM Auction Nego. Communication /Security Communication /Security Web Server

  16. 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.

  17. 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

  18. 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

  19. Other Node Other Node Other Components PLUM Interfaces Query Manager Configuration PeerEditor Ordering CheckUnique PreferenceChecker BlackList TransferPeerList Adder Peer List Peer Peer Peer ARCHITECTURE

  20. 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.

  21. 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 .

  22. 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.

  23. CAS Negotiation Layer Local Accounting Layer Financial Network CAS Security and Communication Layer

  24. OCEAN API Functionality • Utilitarian functionality. • XML Document Generators. • Libraries.

  25. 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.

  26. 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.

More Related