RINA for Space is a senior design capstone project developed at The Pennsylvania State University, Behrend College, with sponsorship from AdaCore through its GNAT Academic Program. This project explores the use of Recursive InterNetwork Architecture (RINA) and the CCSDS Bundle Protocol to address the challenges of delay-tolerant networking (DTN) in space communication systems.
Traditional IP-based communication protocols struggle to handle high-latency, intermittent, and resource-constrained environments such as deep space. This project simulates a modular, policy-driven alternative using RINA architecture, implemented in Ada, to support reliable and scalable interplanetary data exchange. The system is intended to lay the foundation for communication architectures used in future space missions, where resilience, autonomy, and adaptability are critical.
RINA for Space is a prototype communication system that simulates key aspects of the Recursive InterNetwork Architecture (RINA) integrated with the CCSDS Delay-Tolerant Networking (DTN) Bundle Protocol. It organizes communication into recursive layers of Distributed IPC Facilities (DIFs) representing roles such as Earth, relay, and planetary segments.
Within each DIF, InterProcess Communication Processes (IPCPs) handle flow setup, routing logic, buffering, and retransmissions. The system leverages a Resource Information Base (RIB) to maintain internal state and supports pathfinding mechanisms to simulate routing decisions across the network. These capabilities demonstrate how applications can exchange data over long distances using store-and-forward principles within a flexible, policy-driven framework. Official project summary, poster, and demo video are available on the Penn State Behrend Senior Design Showcase.
Before building the project, ensure the following tools are installed:
- Alire – Ada package manager used to manage dependencies and build the project
- GNAT Ada Compiler – Installed automatically via Alire
- Git – To clone the repository
- Visual Studio Code - Recommended IDE
🛠️ Alire is available for Windows, macOS (x86), and Linux. Visit https://alire.ada.dev for download and installation instructions.
Clone this repository, change directory to the repository:
git clone https://github.com/PSU-Capstone-Team20/RINA_for_Space.git
cd RINA_for_Space
Install dependencies and build the project:
alr build
Run the project and launch and display simulation in the terminal:
alr run
This project includes unit and integration tests written using Ada assertions to validate the behavior of core components such as IPCPs, DIFs, and RIB. To run the tests: Ensure the project is built after alr build.
Run a specific test executable located in the bin/ directory. For example:
bin/test-ipcp
Each test will print output and assertion messages to the console. If an assertion fails, the message will indicate which component or behavior did not meet expectations.
🧪 Tip: You can explore the tests/ directory to view available test files and understand the test coverage.
❓ alr command not found : Make sure Alire is installed and available in your system’s PATH.
- On Unix/macOS: Add the export line provided by the Alire installer to your .bashrc, .zshrc, or .profile.
- On Windows: Ensure Alire’s install path is added to the system PATH environment variable.
❓ alr build fails with dependency errors
- Try updating Alire and re-resolving dependencies:
alr update
alr build
❓ File permissions error on test binaries (Linux/macOS) : Ensure to make test files executable:
chmod +x bin/*
[1] PSOC, “RINA, Recursive Internetwork Architecture,” Nov. 14, 2019. https://www.open-root.eu/IMG/pdf/rina-leaflet_20191115_en.pdf
[2] “AdaCore,” AdaCore, 2024. https://www.adacore.com/
[3] J. Day, Patterns in Network Architecture. Pearson Education India, 2007.
[4] E. Trouva et al., “IS THE INTERNET AN UNFINISHED DEMO? MEET RINA!,” 2010. Accessed: Feb. 26, 2025. https://www.cs.bu.edu/fac/matta/Papers/Internet-unfinished-demo-Meet-RINA.pdf
[5] Consultative Committee for Space Data Systems, “CCSDS Public Documents,” CCSDS. [Online]. Available: https://public.ccsds.org/default.aspx
This project was made possible through the collaborative efforts of our senior design team, with guidance from our mentor at AdaCore and faculty advisors.
Team Members – Penn State Behrend, Class of 2025
Sponsor Project Mentor
Faculty Advisor
-
Naseem Ibrahim, Ph.D. - Chair, Computer Science and Software Engineering. Associate Professor, Computer Science and Software Engineering
-
Pulin Agrawal, Ph.D. - Assistant Professor, Computer Science and Software Engineering
-
Chen Cao, Ph.D. - Assistant Professor, Computer Science and Software Engineering


