ArticleslgStudy

science

Message Abstraction Layer

Message Abstraction Layer is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Message Abstraction Layer rather than just read about it. In short: The Spacecraft Monitoring & Control (SM&C) Working Group of the Consultative Committee for Space Data Systems (CCSDS), which sees the active participation of 10 space agencies and of the Space Domain Task Force of the Object Management Group (OMG), is defining a service-oriented architecture consisting of a set of standard end-to-end services between functions resident on board a spacecraft or based on the ground, t…

Message Abstraction Layer — main illustration
Message Abstraction Layer — illustration

Key takeaways

  • Message Abstraction Layer belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Message Abstraction Layer to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Message Abstraction Layer from memory before moving on to harder problems.

Reference excerpt

The Spacecraft Monitoring & Control (SM&C) Working Group of the Consultative Committee for Space Data Systems (CCSDS), which sees the active participation of 10 space agencies and of the Space Domain Task Force of the Object Management Group (OMG), is defining a service-oriented architecture consisting of a set of standard end-to-end services between functions resident on board a spacecraft or based on the ground, that are responsible for mission operations. The CCSDS Message Abstraction Layer (MAL) provides message abstraction and generic service patterns to the Mission Operation (MO) services defined in the CCSDS Mission Operations Services Concept.

Service Layering A key feature of the MO Service Framework is the layering of services. While there are a range of potential services identified corresponding to different types of mission operations information that are exchanged within a system (status parameters, control actions, orbital data, mission timelines, etc.), these application level services are implemented in terms of a smaller set of generic interaction patterns that allow current status to be observed, operations to be invoked and bulk data transferred. This has two key benefits: it is inherently extensible, as new services can be overlaid on the existing common services; and the investment made in MO applications is further isolated from the implementation technology. Technology adapters allow the underlying communications infrastructure to be changed (or bridged) with minimal impact on the applications themselves. This improves long-term maintainability, as missions often outlive the ground technology used to deploy them initially. The layers of the Mission Operations Service Framework are:

The Mission Operations (MO) Layer The Common Services Layer The Message Abstraction Layer (MAL) A message transport layer The interface between each layer is defined in the CCSDS standards and therefore implementations of the each layer can be replaced without change to other software.

Message Abstraction To provide implementation language and message transport independence all operations of a service must be defined by a language/platform/encoding agnostic specification. The MAL defines this set of basic data types and how they must be used to build up the messages that make up the operations of a service. This only then has to be mapped once, in an MO standard, to a specific implementation language or transport encoding to apply to all services that are defined in terms of the MAL. In addition to the patterns of interaction and the abstract API the MAL provides support for the following: – generic concepts, such as domain, session and zone; – generic facilities such as access control (authentication and authorisation) and Quality of Service.

Patterns of interaction An operation of a service can be decomposed to a set of messages exchanged between a service provider and consumer and form a pattern of interaction. Analysis of the services given in reference shows that there are a limited number of these patterns of interaction that can be applied to all currently identified services. Standardising a pattern of interaction, which defines the sequence of messages passed between consumer and provider, makes it possible to define a generic template for an operation of a service. The MAL defines this limited set of generic interaction patterns (templates) that must be used by services defined in the MO service framework. Each operation of a service is defined in terms of one of the MAL interaction patterns. By defining a pattern and stating that a given operation is an example of that pattern, the operation definition can focus on the specifics of that operation and rely on the standard pattern to facilitate this. For example, an operation ‘doFoo’ may be defined that is an example of a pattern called ‘SUBMIT’. This operation has two parts, the pattern of messages that are exchanged (the ‘SUBMIT’ pattern) and the meaning of those messages and what ‘doFoo’ does. By defining the pattern as a standard (‘SUBMIT’) the service specification that defines ‘doFoo’ only need define the meaning of the messages and what the operation does. The MAL defines this set of patterns.

Advantages A benefit of implementing multiple services over a message abstraction layer is that it is easier to bind these to different underlying technologies and protocol encodings. All that is required is an ‘adapter’ layer between the MAL and the underlying protocol to enable all services over that technology. Hence the same service can be implemented over ground-based network technologies and middleware, or it could even be carried across the space link itself. The services themselves provide the ‘plug-and-play’ interface for applications, allowing them to be integrated and deployed wherever is appropriate for the mission. There are no performance overheads as the MAL layer is conceptual and can be optimized out using code generators.

Disadvantages The MAL will not support features of the underlying protocol beyond the "least common denominator" defined in the MAL. Messaging features (e.g. threading model, QoS, etc.) are limited to a simpler subset that represent the intersection of all of the underlying middleware options. However, feature of an underlying protocol may be selected through configuration. An adapter layer between MAL and the underlying protocol, plus specifications for language bindings, are still required. Implementations must adhere to these specifications for interoperability. Thus MAL takes on the characteristics of becoming new middleware standard in itself. The MAL adapters and the MAL language binding specifications must be maintained as the underlying middleware standards for the plug-ins evolve. However, the use of the MAL removes any direct dependence of the application on the protocol technologies and therefore it is possible to isolate any evolution to lower adapter layers. MAL precludes the use of service contracts as the centerpiece defining a data-driven service architecture.

Implementations Two independent implementations are required by CCSDS procedures, these have been implemented by ESA and CNES. Both Agencies are working towards releasing under open source licences.

References

Worked examples

Example 1 — a first encounter with Message Abstraction Layer

Start with the simplest possible case. Write down what Message Abstraction Layer claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Message Abstraction Layer before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Message Abstraction Layer ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Message Abstraction Layer

In research
Message Abstraction Layer appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Message Abstraction Layer in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Message Abstraction Layer is common in secondary-school and first-year university syllabi. It links to neighbouring topics Consultative Committee for Space Data Systems, Space standards, so understanding it makes those chapters shorter.
In everyday life
Look for Message Abstraction Layer outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Message Abstraction Layer in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Message Abstraction Layer means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Message Abstraction Layer out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Message Abstraction Layer in simple terms?

The Spacecraft Monitoring & Control (SM&C) Working Group of the Consultative Committee for Space Data Systems (CCSDS), which sees the active participation of 10 space agencies and of the Space Domain Task Force of the Object Management Group (OMG), is defining a service-oriented architecture consis…

Why does Message Abstraction Layer matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Message Abstraction Layer?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Message Abstraction Layer.

Tags

  • Consultative Committee for Space Data Systems
  • Space standards

Keep exploring