A Language-Based Approach to Protocol Stack Implementation in Embedded Systems
Abstract: Embedded network software has become increasingly interesting for both researchand business as more and more networked embedded systems emerge.Well-known infrastructure protocol stacks are reimplemented on new emergingembedded hardware and software architectures. Also, newly designed orrevised protocols are implemented in response to new application requirements.However, implementing protocol stacks for embedded systems remains a timeconsumingand error-prone task due to the complexity and performance-criticalnature of network software. It is even more so when targeting resource constrainedembedded systems: implementations have to minimize energy consumption,memory usage and so on, while programming efficiency is needed toimprove on time-to-market, scalability, maintainability and product evolution.Therefore, it is worth researching on how to make protocol stack implementationsfor embedded systems both easier and more likely to be correct withinthe resource limits.In the work we present in this thesis, we take a language-based approachand aim to facilitate the implementation of protocol stacks while realizingperformance demands and keeping energy consumption and memory usagewithin the constraints imposed by embedded systems. Language technologyin the form of a type system, a runtime system and compiler transformationscan then be used to generate efficient implementations. We define a domainspecificembedded language (DSEL), Implementation of Protocol Stacks (IPS),for declaratively describing overlaid protocol stacks. In IPS, a high-level packetspecification is dually compiled into an internal data representation for protocollogic implementation, and packet processing methods which are thenintegrated into the dataflow framework of a protocol overlay specification.IPS then generates highly portable C code for various architectures from thissource. We present the compilation framework for generating packet processingand protocol logic code, and a preliminary evaluation of our compiled code.
This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.