Communication with choices

This thesis introduces the Multi-Domain Communication Model (MDCM) and the Flexible Stack Architecture (FSA) to add choices back into communication. Although human communication is an interactive process with an abundance of choices, flexibility and adaptability are somehow lost in communication systems and their protocol stacks. MDCM defines a communication model that supports choices, and a set of guidelines to make them. There are two levels of such choices. The first level chooses the mechanisms and algorithms for selection and resolution. The second level chooses the next layer protocol, the next hop gateway, and the corresponding source and destination identities from resolution results. FSA implements the communication model defined by MDCM and provides a flexible infrastructure to facilitate choice of mechanisms and algorithms. MDCM augments conventional protocol layering to integrate next layer selection, forwarding, and resolution into a simple, recursive model. It defines what a communication layer does and how one protocol layer relates to another through next layer selection and identity resolution. This thesis further explores selection guidelines based on the semantic requirements of transmission characteristics and endpoint identities. MDCM is also applied to the current Internet stack model, and this analysis suggests several extensions to improve the existing architecture. FSA defines a node infrastructure to realize the approach of MDCM. FSA extends the existing protocol stack architecture to enable per-protocol next-layer selection and allows protocols and resolution mechanisms to be dynamically plugged in and selected during runtime. This flexibility allows FSA to support experiments with new protocols and mechanisms, to instantiate new network architectures, and to enable advanced features such as backtracking and session binding. An FSA prototype with pluggable IPv6 protocol modules is also implemented. The UDP benchmark measurement of the prototype shows no detectable performance impact. MDCM and FSA achieve architectural flexibility within a well-defined structure and result in an open, extensible infrastructure for communication protocol stacks. They form a foundation to accommodate complex policy and multiplicity in communication formats and media, providing the choices that communication systems have lacked.