Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added changes from V1

...

This developer page shall be used to collect architecture, design, and project information for the development of the Qpid Management Framework. It will become the basis for a distilled, user-oriented set of documentation.

Changes from

...

Version 1

  • Broker participation in QMF is no longer mandatory. In QMFv1, the broker provides two essential services for QMF: Agent registration and Schema caching. In QMFv2, the need for agent registration has been removed. Schema caching remains a valuable optimization but is not required in QMFv2.
  • Message body formats are based on AMQP maps. In QMFv1, message bodies were formatted as packed binary data (using the AMQP type encodings). In QMFv2, message bodies are AMQP maps and are therefore easily extended without causing backward compatibility problems. Another benefit of the map-message format is that all messages can be fully parsed when received without the need for external schema data. In QMFv1, messages cannot be decoded unless the schema for the data is already known.
  • Federation is supported. In QMFv1, messages cannot be transferred over federation links between brokers. Each broker represents its own isolated QMF domain. In QMFv2, agents and consoles can connect to any broker in a federated network and interact with other agents and consoles anywhere in the network.
  • Agent and Object identification is more flexible. Agent and object identification in QMFv1 uses fixed-length binary data fields. In QMFv2, variable-length strings are used. QMFv2 agents choose their own globally unique identifiers (either through configuration or by embedding a UUID into the ID). Managed objects are identified by the ID of the owning agent plus a unique (to the agent) string identifying the object.
  • Agents no longer publish data globally. Global publishing of data by agents causes security and scaling issues. In QMFv2, the global publish is replaced by subscription queries where a console establishes a subscription and receives periodic updates about changes to data in its field of interest. The benefits are that the query can be authorized based on an authenticated user-id and that data is not generated if there are not consoles interested in receiving that data.

Architecture

Protocol

QMF Map Message Protocol

...