Message Encapsulation Pattern

Lukas Alexander Greßl, Christian Steger, Ulrich Neffe

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review

Abstract

How to change the communication behavior of devices participating in a network with an already defined topology? This question describes the fundamental problem, which the Message Encapsulation Pattern aims to solve. Network participants usually follow a client - server, or peer to peer based communication model. This model uses a dedicated application layer protocol, which defines the message types exchanged by the communicating devices. In client - server based models, the client sends requests to and receives responses from the server, thus constituting a one - way message exchange. This setup can be changed by using a different application layer protocol, or by tunneling the messages of the application layer protocol through an underlying bidirectional protocol layer. With both approaches, a peer to peer communication can be achieved. However, tunneling the existing application layer protocol has the advantage that the application does not need to change its message parsing. This tunneling approach can be found in various domains. It is not only used in the context of Internet services, but can also be found in the communication between the single components of System on Chips (SoCs), or the smart card to terminal interaction. This paper describes, how the Message Encapsulation Pattern works, its advantages and disadvantages, and how it can be used.
Original languageEnglish
Title of host publicationProceedings of the 23rd European Conference on Pattern Languages of Programs
PublisherACM/IEEE
Publication statusPublished - Jul 2018

Fingerprint

Dive into the research topics of 'Message Encapsulation Pattern'. Together they form a unique fingerprint.
  • Message Encapsulation Pattern

    Lukas Alexander Greßl (Speaker)

    4 Jul 20188 Jul 2018

    Activity: Talk or presentationTalk at conference or symposiumScience to public

Cite this