A summary of protocol machine terminology

By Stewart Gebbie <stewart@resystems.io>

In many systems there is the need for information to be transferred from one computational region within the system to another computational region.

Obviously, information is a abstract notion that is eventually underpinned by some lower level interaction. But, for our purposes, we can ignore these details here a now.

Even so, the movement of this information needs to be coordinated. That is, the induction of state change in different computational regions of the system needs to be coordinated, and in built systems this is generally achieved via protocol machines (PMs).

Taken from: Patterns in Network Fundamentals by John Day

A few useful terms include:

  • Phases of communication progression:
    • Enrolment - managing the information necessary to later create instances of communication.
      • Registration - the step by which information about protocol facilities is made available to different parts of the system, for later instantiation.
      • Activation - the signalling that a given protocol is permitted to be used in subsequent communication.
    • Establishment - the creation of protocol machines for communication, together with the synchronsiation of policies needed.
    • Transfer - the actual reciprocal operation of the protocol machines, by which information is transfered
  • Policy - the shared information that parameterises a protocol machine mechanisms in order to render a given function.
  • Mechanism - the machinery of the protocol that implements the logic, as parameterised by the policy.
  • Levels of relationships between system elements
    • Association - a weak relationship with minimal shared state.
    • Flow - a relationship with shared state by without support for feedback.
    • Connection - a relationship with shared state that can make use of feedback mechanisms.
    • Binding - a tightly coupled interaction with a high degree of shared state (possibly through the direct use of shared memory, for example).
  • Layers:
    • (N+1)-PM - an upper level protocol machine (and its peers in the same layer), making use of the N-PM.
    • N-PM - the nth level protocol machine (and its peers at the same level) that is the current focus of attention and analysis.
    • (N-1)-PM - a lower level protocol machine (and its peers in the same layer) that is used by the N-PM.
  • Acronyms:
    • PM - Protocol Machine
    • FSM - Finite State Machine
    • PDU - Protocol Data Unit
    • SDU - Service Data Unit
    • PCI - Protocol Control Information (header and trailer)