Change search
ReferencesLink to record
Permanent link

Direct link
A Domain Specific Approach to Network Software Architecture: Assuring Conformance Between Architecture and Code
Örebro University, School of Science and Technology.
Halmstad University, School of Information Science, Computer and Electrical Engineering (IDE), Halmstad Embedded and Intelligent Systems Research (EIS), Embedded Systems (CERES).
2009 (English)In: Fourth International Conference on Digital Telecommunications, 2009. ICDT '09, Piscataway, N.J.: IEEE , 2009, 127-132 p.Conference paper (Refereed)
Abstract [en]

Network software is typically organized according toa layered architecture that is well understood. However, writingcorrect and efficient code that conforms with the architecture stillremains a problem. To overcome this problem we propose to usea domain specific language based approach. The architecturalconstraints are captured in a domain specific notation that can beused as a source for automatic program generation. Conformancewith the architecture is thus assured by construction. Knowledgefrom the domain allows us to generate efficient code. In addition,this approach enforces reuse of both code and designs, one ofthe major concerns in software architecture. In this paper, weillustrate our approach with PADDLE, a tool that generates packetprocessing code from packet descriptions. To describe packets weuse a domain specific language of dependent types that includespacket overlays. From the description we generate C librariesfor packet processing that are easy to integrate with other partsof the code. We include an evaluation of our tool.

Place, publisher, year, edition, pages
Piscataway, N.J.: IEEE , 2009. 127-132 p.
Keyword [en]
Network Software Architecture
National Category
Telecommunications Engineering and Technology Computer Science
Research subject
Computer and Systems Science
URN: urn:nbn:se:oru:diva-15278DOI: 10.1109/ICDT.2009.4ISI: 000274805500026ScopusID: 2-s2.0-70449602416ISBN: 978-0-7695-3695-8OAI: diva2:410960
©2009 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.Available from: 2011-04-15 Created: 2011-04-15 Last updated: 2011-04-15Bibliographically approved
In thesis
1. A domain-specific language for protocol stack implementation in embedded systems
Open this publication in new window or tab >>A domain-specific language for protocol stack implementation in embedded systems
2011 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Embedded network software has become increasingly interesting for both research and business as more and more networked embedded systems emerge. Well-known infrastructure protocol stacks are reimplemented on new embedded hardware and software architectures. New requirements of modern applications and devices require to implement newly designed or revised protocols. However, implementing protocol stacks for embedded systems remains a time-consuming and error-prone task due to the complexity and performancecritical nature of network software. It is even more so when targeting resource constrained embedded systems: implementations have to minimize energy consumption, memory usage etc., while programming efficiency is needed to improve on time-to-market, scalability, maintainability and product evolution. Therefore, it is worth researching on how to make protocol stack implementations for embedded systems both easier and more likely to be correct within the resource limits.

In the work presented in this thesis, we take a language-based approach and aim to facilitate the implementation of protocol stacks while realizing performance demands and being aware of energy consumption and memory usage within the constraints imposed by embedded systems. We give background on DSL implementation techniques, investigate common practices in network protocol development to determine the potential of domain-specifi languages (DSLs) for embedded network software, and propose a domain-specifi embedded language (DSEL), Protege (Protocol Implementation Generator), for declaratively describing overlaid protocol stacks. In Protege, a high-level packet specification is dually compiled into an internal data representation for protocol logic implementation, and packet processing methods which are then integrated into the dataflow framework of a protocol overlay specification. Constructs for finite state machines allow to specify protocol logic in a concise manner, close to the protocol specification style. Protege specifications are compiled to highly portable C code for various architectures.

Four attached scientific papers report our main results in more detail: an embedded implementation of the data description calculus in Haskell, a compilation framework for generating packet processing code with overlays, the domain-specific language Protege in overview (including embedding techniques and runtime system features), and a real-world case study implementing an industrial application protocol.

Place, publisher, year, edition, pages
Örebro: Örebro universitet, 2011. 63 p.
Örebro Studies in Technology, ISSN 1650-8580 ; 49
National Category
Engineering and Technology Computer Science
Research subject
Computer and Systems Science
urn:nbn:se:oru:diva-15249 (URN)978-91-7668-795-6 (ISBN)
Public defence
2011-06-08, Högskolan i Halmstad, Wigforssalen, Halmstad, 10:15 (English)
Dimiter Driankov is the Director of Applied Autonomous Sensor Systems center (AASS), Örebro UniversityAvailable from: 2011-04-13 Created: 2011-04-13 Last updated: 2012-03-23Bibliographically approved

Open Access in DiVA

fulltext(276 kB)44 downloads
File information
File name FULLTEXT01.pdfFile size 276 kBChecksum SHA-512
Type fulltextMimetype application/pdf

Other links

Publisher's full textScopus

Search in DiVA

By author/editor
Wang, Yan
By organisation
School of Science and TechnologyEmbedded Systems (CERES)
TelecommunicationsEngineering and TechnologyComputer Science

Search outside of DiVA

GoogleGoogle Scholar
Total: 44 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Altmetric score

Total: 31 hits
ReferencesLink to record
Permanent link

Direct link