You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

Overall architecture and components

Mantychore is implemented with the OSGi specification and works with Fuse Service Mix 4.3. Fuse works as a Service platform which implements the OSGi specification. It provides a set of libraries and tools to allow easier development of Fuse components.

The figure  show a typical architecture

(small I large version)

The picture shows how a Mantychore user connect to the Server and how Mantychore connects with its devices.

The Mantychore software is multiplatform. To set up a Mantychore architecture, you need:

  • A Computer which it is going to act as a Server. It will have Fuse Service Mix installed along with the the Mantychore components.
  • Configure SSH to enable access to the routers (see compatible devices).

There are two types of Mantychore client:

  • GUI Client. A desktop program has implemented with RCP.
  • Web site. With Ajax and  RAP, it is implemented  a site which simulates the GUI client

When a new router is added in the Mantychore Server, it is added as a resource which its properties and capabilities (this follows the IaaS paradigm). In this picture you can see how a Mantychore resource manages its resources:

(small I large version)

For the last version of Mantychore, the modules and components which form Mantychore are:

  • Resource. This is a representation of a router. It representes a a set of capabilities or features that are available.
  • Capabilities. This is a router feature. It includes a set of actions related with this feature. For instance, IP operations (interface configuration, static route configuration) are represented in the IP Capability.
  • ActionSet. This component is a set of operations which a router understands and carry out. With these operations, using named commands, an action can provide a complete configuration for a topic. For example, the action of configureing an IPv4 address in an interface.
  • CommandSet. this is a representation of a command which a model router can understand. It implementes an operation that can be sent through the transport layer (using SSH for example).
  • QueueManager, this is a queue implementation for the above actions.
  • Protocol. This module is the implementation of a protocol which it is used to connect with a device. The ProtocolSessionManager calls these components to manage protocols.
  • ProtocolSessionManager. This manages the available Protocol components used by actions. It includes a set of protocols which will be available to each resource allowing it to connect to a device.

    Check meaning is preserved here


  • EventManager. This is responsible for receiving and publishing events and notifications.
  • Commons. Common classes which other components will be able to use.
  • No labels