The openknowledge kernel i e coding openknowledge
This presentation is the property of its rightful owner.
Sponsored Links
1 / 18

The OpenKnowledge Kernel (i.e. coding OpenKnowledge) PowerPoint PPT Presentation


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

George Anadiotis , Vrije Universiteit Amsterdam, The Netherlands Paolo Besana , University of Edinburgh, UK David de la Cruz , IIIA-CSIC, Barcelona, Spain David Dupplaw , University of Southampton, UK Spyros Kotoulas , Vrije Universiteit Amsterdam, The Netherlands

Download Presentation

The OpenKnowledge Kernel (i.e. coding OpenKnowledge)

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


The openknowledge kernel i e coding openknowledge

George Anadiotis, Vrije Universiteit Amsterdam, The Netherlands Paolo Besana, University of Edinburgh, UKDavid de la Cruz, IIIA-CSIC, Barcelona, Spain

David Dupplaw, University of Southampton, UK Spyros Kotoulas, Vrije Universiteit Amsterdam, The Netherlands

Adrian Perreau de Pinninck, IIIA-CSIC, Barcelona, Spain

Ronny Siebes, Vrije Universiteit Amsterdam, The Netherlands

The OpenKnowledge Kernel(i.e. coding OpenKnowledge)


Openknowledge system

OpenKnowledge System

  • Peer-to-peer network for distributed application sharing and execution.

    • Peers can search and download programs from other peers.

    • Developers can publish applications and their interaction specifications.

  • Provides a framework to execute and coordinate the programs in each peer.

  • Anyone with a computer and internet access may join the system.

  • No central organization.


Openknowledge kernel

OpenKnowledge Kernel

  • The kernel is the software that gives users access to the OK System.

  • It can be downloaded and installed on any computer.

  • It is open source software.

  • The kernel glues together the services needed to achieve the OK System’s functionality.

  • It implements the protocols for downloading and managing applications.

  • It implements a peer-to-peer communication layer.


Interaction models

Interaction Models

  • Interactions between peers are represented by protocols, based on Lightweight Coordination Calculus (LCC).

  • LCC is an executable specification language adapted for peer-to-peer workflows.

  • LCC is based on process calculus: protocols are declarative scripts written in a Prolog-like language.

    • It uses roles and constraints on message sending to enforce social norms.

    • The basic behaviours are to send or to receive messages.

    • More complex behaviours are expressed using connectives: then creates sequences, or creates choices.


Example interaction model

Example Interaction Model


The openknowledge kernel i e coding openknowledge

OKCs

  • They are plug-ins.

    • They can be downloaded and installed on any peer.

    • Implement the functionality of roles in an interaction model.

    • Developed by users, stored in the system and downloaded by users.

    • Are subscribed by users to play a role in an interaction model (i.e. solve contraints in LCC).


Discovery service

Discovery Service

  • A peer-to-peer network responsible for storing and discovering:

    • Interaction Models

    • OKC descriptions

    • OKC implementations

    • OKC instance advertisements (i.e. Subscriptions)

    • Coordinator advertisements

  • Push and pull-based.


Bootstraping an interaction

Bootstraping an interaction

  • The discovery service selects a coordinator and sends it an Interaction Model, together with a list of OKCs that are advertised for the roles.

  • A mutual exclusion mechanism is used to handle the interaction bootstrap.

    • To bootstrap, the coordinator sequentially contacts the managers of the OKCs, asking if they want to take part in the interaction:

      • If enough participants want to take part, the coordinator starts the interaction.

      • else, the process is aborted.


Coordination

Coordination

  • LCC Protocols are executed by coordinator peers.

  • Some peers volunteer to be coordinators.

  • For each interaction, there exists one coordinator.

  • The coordinator creates a local proxy for each of the roles in the protocol.

  • The local role proxies parse the LCC clauses of the corresponding roles:

    • They can send messages to the other proxies.

    • They can wait for the reception of messages from other proxies.

    • They can ask the remote OKCs to solve a constraint in the protocol.


Graphical user interface

Graphical User Interface

  • The OK system’s functionality is accessed through a graphical user interface with the following windows:

    • Main - IM and OKC search fields and result panel, OKC subscription, local peer information.

    • IM Modeling - IM editing (LCC and a semantic description), and IM publishing.

    • OKC Creation - IM viewing, role constraint information, semantic description editing, OKC packaging and publishing.


Main window

Main Window

For all users


Interaction model publishing window

Interaction Model Publishing Window

For developers


Okc creation window

OKC Creation Window

For developers


System architecture

System Architecture


Kernel architecture

Kernel Architecture


Currently working on

Currently Working on

  • Moving from version 0 to version 1.0beta.

    • Two-step peer negotiation

    • Including ontology mapping modules

    • Dynamic peer recruitment for interactions

    • Adding trust and reputation modules

    • Integration of rich discovery mechanisms

    • Revamping the communication layer


Future work

Future Work

  • Distributing the coordination task.

  • Implementation of interpreters for other languages (e.g. BPEL).

  • Interaction model composition.


Questions

Questions

?


  • Login