Internet communication has become a commodity or a necessity in many different scenarios, be it WWW browsing or gaming at home, cloud or intranet access from a mobile, high-performance computing and networking at the data center, or monitoring and reporting with wireless sensors. Each of these settings results in vastly differing and constantly evolving requirements for the protocols that are the basis for this communication. Despite this heterogeneity, today we still design and engineer communication systems, and in particular their protocol stacks, in a fixed, static manner with little regard for adaptability and evolvability. Consequently, applications, services, and users cannot directly benefit from improvements in protocol engineering and research as this depends on re-deploying the complete communication system.
One approach to address this challenge is to compose protocol stacks from components automatically and dynamically, not manually, incorporating the requirements of any given usage scenario. Research in this area has validated this approach but the existing solutions depend on dedicated protocol implementations and unnecessarily restrict the composition options. This leads again to a lack of adaptability to the evolutionary changes that protocol components are exposed to as protocols are improved.
This thesis introduces an evolvable protocol platform (EPP) which overcomes these limitations. Within this platform, components from existing protocol frameworks are described with regard to their functionality, their interface properties, and their dependencies. Given this description and a set of communication requirements, they are then composed into a protocol stack. The composition process ensures that their interfaces and dependencies match and that the stack in its entirety provides the properties and services specified by the initial requirements. If several such stacks can be constructed, they are then ranked based on contextdependent quality and performance criteria. Thus, this ranking determines the protocol stack that best matches a usage scenario under given communication requirements. Finally, this stack is instantiated and provided to the application.
The main contributions of EPP are threefold. First, we present a component metamodel that allows to model several existing protocol frameworks. This model captures the structural and functional properties of components, i.e., how components may be combined and which functionalities and services emerge from these combinations. Models are represented in OWL knowledge bases to gain a high degree of extensibility. Second, EPP introduces a composition algorithm for protocols: it evaluates a component model to construct protocol stacks that conform to a set of communication requirements, as might be specified by an application. Third, we discuss an efficient ranking method for protocol stacks based on multi-criteria decision making to break ties between multiple conforming stacks.
Together, these mechanisms can contribute to an overall communication architecture for the future Internet, such that it can evolve naturally in concert with the everchanging demands of devices, applications, networks, and users.