Multi-Domain Communication Model

This blog post is review of paper "A Unified Model for End Point Resolution and Domain Conversion for Multi-Hop, Multi-Layer Communication, Yu-Shun Wang et. al that presents an architectural model called the Multi-Domain Communication Model (MDCM) to describe the relationship between protocol layers, network hops and regions of multi-hop, multi-layer communication systems.


The current Internet has routing and forwarding only at the IP layer. Anything above or below IP is either end-to-end or point-to-point communication. Routing at layers above and below IP is being explored for advanced services or alternative infrastructures. Peer-to-peer services, content-based routing, inter-planetary networks and proxy service redirections adopt routing at layers above IP. At the other end of the spectrum, MPLS (Multi-Protocol Label Switching) or ATM, and other multi-hop layer 2 topologies introduce routing at infrastructures under IP. These examples introduce new multi-hop, routable domains into the existing communication systems, resulting in stacking of multi-hop routing domains.
MDCM provides a new way of thinking for designing such systems. Domains in MDCM supersede the concept of protocol layers. It not only defines the relationship between a new domain and layers above and below, just like the protocol stack, but also provides a pragmatic way of defining both intra-domain and inter-domain information exchange. The intra-domain information exchange determines the forwarding behavior and the topology among entities at the same layer, while the interdomain information exchange is closely related to the resolution of identities across domains.


Before MDCM, there were two communication models:

• Shannon’s model : Shannon’s model,  used to analyze signal transmission, effects of noise in the channel, and how “information” is derived from such a signal. It assumes that the source and destination are known and fixed. This simple model corresponds to a Physical domain in MDCM, concerning how a message makes forward progress.

• Protocol stack model : Protocol stacks define the relationship between different protocol layers according to their functionality. It treats communication as point-to-point processes. The multi-hop aspect of communication is introduced by the concept of routing and forwarding, which concatenates hops of protocol stacks together to form a multi-hop system. Routing and forwarding mechanisms define the topological relationship between nodes within a single protocol layer. They operate within a single layer and do not affect the relationship with other protocol layers.Protocol stacks define the syntactic transformation of information. Each protocol layer embeds various control information onto the message by encapsulating protocol headers, trailers, or options. This rules out any operations that do not result in encapsulation or de-capsulation of protocol headers or trailers, further limits the scope of protocol stacks in describing communication processes, such as IP forwarding in the Internet.


MDCM in the paper is defined as a single name space encompassing the source and destination connected by a physical or logical channel in the context of current instance of communication. Domain are the fundamental block in the framework of MDCM. Domains can take any form such as a segment of physical media, a layer in a protocol stack, a hop in the network or a namespace. Domain names server serve as names for Internet resources such as computers, networks, and services. A domain name represents an Internet Protocol (IP) resource. Individual Internet host computers use domain names as host identifiers, or host names.

Components of a Domain

• Channel : In context of Physical domains they are physical paths between nodes and in the context of other domain they are logical connections between source and destination.
• Name Space : A name is a linguistic object that singles out a particular entity from among a collection of entities in a domain unambiguously. Collection of all such names in the domain forms the name space for that domain. A name space can be ordered and hierarchical or random.
• Source and Destination : These are domain specific entities. In the inter-domain communication these are entry and exit points of a domain. In the intra-domain communication these are just the source and destination of the message.
• Message : These define “first-person” view of MDCM.A unit of information sent along a channel in a specific domain is a message for that domain. These may include signals, cells, packets, segments, sessions and connections.

Types of Domain
• Transit Domains : These domains correspond to intermediate hops and regions in a multi-hop communication setting. They change the nature and scope of communication from end-to-end at the higher domain into a single hop.
• Protocol Layer Domains : These domains are synonymous to protocol layers in the stack model responsible for vertical syntactic transformation across domains through encapsulation and de-capsulation. Physical domains are special case of protocol layer domains because horizontal transformation of information also takes place in such domains.The main difference between Protocol Layer Domains and Transit Domains is that Protocol Layer make vertical, syntactic transformation across domains while the Transit Domain are responsible for horizontal progress within the same domain.


MDCM architecture defines the multi-domain communication by a series of operations on a specific set of entities. These operations are recursive in nature.
Operations in MDCM
MDCM in operation point of view is described through a specific set of functions. Every function operates on one or more of the following domain specific entities and transform one or more of these into corresponding entities of another domain :
Δ : Domain
S : Source
D : Destination
I : Message (Payload)
Communication is defined through a function C(Δ,S,D,I). It return values of all the functions that are in general ignored although they can be used to check for success or failure of the operation of that function. Goal of a communication in a domain is to deliver information from source to destination and if successful, exit the current domain and return to previous one. If communication can’t make forward progress in a particular domain then it will search and transform to next domain to continue. This recursive terminates if the destination reached is the final destination in the original domain.Since communication has to pass from multiple domains, auxiliary functions are needed to realize the operations to facilitate inter-domain transformation of core entities described before.

Inter-domain communication progresses as follows :
1. Transform Message : Upon entering a new domain, information from previous domain is to be converted into appropriate format of current domain. This operation is denoted by “formatting” function – I’ = F (Δ, S, D, I)
2. Progressing within a domain : If the current location is D then communication in current domain exits successfully and is handed down to upper layer domain. If the current domain itself is top-layer domain the entire communication is said to be successful. If it is not the destination then it is checked if current domain is a physical domain between source and destination then message is immediately transferred through this domain using propagation operation P(Δ,S,D,I’).
3. Moving to next domain : If progressing within the same domain fails then a set of new domains is searched using search function S(Δ,S,D,I’). This is similar to moving to the next layer in the protocol stack. A new domain Δ’ is selected and the entities source (S) and destination (D) from previous domain are transformed into corresponding S’ and D’ of next domain. This is realized through resolution operation denoted as : (S’, D’) = R(Δ, Δ’ S, D, I’)
Resolution functions are very important in MDCM and are one of the most important aspects when designing and introducing new domains to existing systems.Now the communication proceeds in the next domain with transformed entities Δ’, S’, D’ and I’.

Applications and Related Work

Similar Network Architectures
Currently several different network architectures are designed using concepts similar to MDCM. Several new system designs can also be described as new domains in MDCM.Region-Based Architecture: Region is a similar concept as domains which represents a partition of network with consistent control state and knowledge. This model differs from MDCM in two aspects. First it has a membership notion associated with regions and secondly the operations defined are only for inter-region progression. In contrast with this, MDCM defines more generic operations as well like searching and selecting a domain. Some context based architectures achieve end-toend communication through a chain of contexts which in turn establishes a virtual layer to interconnect heterogeneous networks.
Unlike MDCM, these architectures are state-sensitive.Role-Based Architecture: This architecture is in striking contrast with conventional protocol stack model. Layered encapsulation is replaced by roles arranged in the form an unordered heap. If hop-to-hop forwarding is defined as a role then forwarding/routing aspects of MDCM are included in this architecture. But MDCM is indifferent to differences between processing as layered encapsulation or RBA style heap headers.

TCP/IP Stack Analysis
MDCM complements the TCP/IP protocol stack model with layers and hops of the protocol stack being analogous to the domains of MDCM. Every domain except for transport and IP Hop domains encapsulates the source and destination identities in the header of the message. IP Hop domain is an example of non-encapsulating Transit Domain which uses the same protocol (IP) as its parent domain, IP domain. Hence, encapsulating packet with an additional header will result in additional processing overhead without changing the communication behaviour.
Whereas in case of Transport domain, omission of end point identifiers such as DNS names creates a gap between the Web domain and the IP domain which makes IP addresses both the end point identifiers for Transport domain connections and locators at the IP domain. This is under the assumption that each hosts having a single static IP address will not be an issue. However, with multi-homing and mobility becoming more prevalent, change in IP addresses is the need which is not supported in this architecture.

Resolution Functions
Resolution functions in MDCM resolve the source and destination identities in the current domain to their corresponding entities in the next domain. Almost all resolution functions are specific to the domains they bridge together. As a result, most research regarding resolution mechanisms and protocols was either part of the “new” architectures involving new domains or namespaces, or linking existing namespaces that were not previously connected. DNS, ARP, and BGP are among the most common resolution functions currently used in the Internet.


The review defines the concept of domains as the main logical construct for communication, and describes the components and operations with regard to domains. MDCM integrates routing or forwarding behavior and traversing protocol stacks under a single framework and emphasizes the importance of resolution functions in the process. It is a very flexible model capable of describing a wide range of communication systems and also bridges different stages and aspects to form a complete description of any communications.The future work on MDCM aims to fully define the supporting functions of MDCM, propose a symbolic representation of the model, perform semantic analysis, and build a node-level prototype of the framework.