The goal of the tutorial is to provide the audience with an introduction to the concepts, motivation and state of the art of the Recursive InterNetwork Architecture (RINA), one of the most promising alternatives to TCP/IP. This tutorial is split into two parts: the first one will be dedicated to the theory and concepts behind RINA, while the second will explain real-world use cases that motivate its deployment and introduce the RINA stack under development by the FP7 IRATI and PRISTINE projects. To conclude the session a live demonstration of the IRATI prototype will be carried out.

The first part will start by exploring the lessons to be learned from the past. Most of the shortcomings of the Internet architecture stem from early design decisions that were made at the infancy of computer networking. The talk will briefly examine these decisions and their consequences for today’s Internet. The tutorial will proceed with an introduction to RINA, guiding the audience through the concepts and theoretical underpinnings of RINA. It will start with an overview of the architecture, explaining how recursion generalizes to all forms of distributed computing. The talk will then analyze how RINA deals with naming and addressing, routing, data transfer, flow allocation, security and network management. The first part will conclude looking at other alternatives to TCP/IP and analyzing how they compare to RINA.

The second part will initially focus on RINA deployment considerations. The goal of this initial talk is to provide answers to the questions of “how can RINA be deployed?” by introducing a few scenarios that motivate RINA adoption. The lecture will also address some of the different ways in which RINA could be seamlessly deployed interoperating with the current systems and technologies. Having examined deployment scenarios, it will be time to concentrate on implementation strategies. RINA can be implemented in multiple ways for different target hardware platforms in a variety of operating environments. This tutorial will mainly focus on the RINA implementation of the IRATI project, currently also being extended by the PRISTINE project. It will give an overview of the software architecture and design decisions, glancing at the engineering problems and solutions applied to provide the first full-fledged RINA prototype. The last lecture will be devoted to presenting and explaining the various experiments that the IRATI project has been carrying out with the RINA prototype using the infrastructure provided by the OFELIA project.