The FINS Framework: Design and Implementation of the Flexible Internetwork Stack (FINS) Framework

This paper describes the Flexible Internetwork Stack (FINS) Framework, an open-source tool to enable implementationbased experimental research in computer networking. The FINS Framework uses a module-based architecture that allows cross-layer behavior and runtime reconfiguration of the protocol stack. The FINS Framework is general enough to enable experimental setups under various network architectures (e.g., MANET, infrastructure, mesh) and to accelerate prototyping solutions for evolving areas (e.g., cognitive networks, cross-layer design, context-aware applications). Version 1.0 of the framework makes use of existing physical and data link layer functionality, while enabling modifications to the stack at the network layer and above, or even the implementation of a clean-slate, non-layered protocol architecture.

Protocols, stubs for communicating with intact layers, and management and supervisory functions are implemented as FINS Framework modules, interconnected by a central switch. This paper describes the FINS Framework architecture, presents an initial assessment along with experiments enabled by the tool, and documents an intuitive mechanism for transparently intercepting socket calls that maintains efficiency and flexibility. Performance testing shows that the FINS Framework is capable of supporting experiments requiring IEEE 802.11g hardware speeds and operating in varying networking architecture and experimental scenarios on both Ubuntu laptops and Android devices.