Projects

The list of possible topics for the current academic year are the following (more can be added if needed):

#1. Exploring the Intel Smart Edge Open solution

The Intel Smart Edge Open (https://www.intel.com/content/www/us/en/developer/tools/smart-edge-open/overview.html , previously known as OpenNESS, https://www.openness.org/)  is a recent initiative to facilitate the development of applications and network functions for the edge with cloud-like agility. From the project presentation, it is made by a cloud-native software toolkit that enables highly optimized and performance edge platforms across a heterogeneous network.  This project aims at exploring what is Intel Smart Edge Open, what it does, and hand-on examples of this software toolkit running in a real (lab) environment.

Student: XXX; tutor: Fulvio Risso


#2. Enabling low-latency applications on modern datacenters: a view on the RDMA technology

RDMA (Remote Direct Memory Access) is a technology that allows multiple systems (e.g., servers) to exchange data in main memory without involving software network stacks, by relying on specialized network adapters with custom hardware support. RDMA enables true zero-copy networking and, as a result, can achieve much faster data rates and lower latency than what would otherwise be possible using traditional software-driven stacks. This makes it ideal for applications such as scientific HPC or AI clusters, where the technology is currently dominating the market. However, many RDMA platforms are available, ranging from InfiniBand, to iWarp, RoCEv2, or the upcoming Ultra Ethernet, and more. Among the expected outcomes of this project are: (i) gaining familiarity with the multiple implementations of RDMA, and learning about what differentiates them; (ii) investigating and experimenting with the software landscape in place for interacting with RDMA adapters, such as the "provider" abstraction, libibverbs, or higher-level user-space libraries for accessing RDMA functionality; (iii) learn about the software implementations of RDMA available in the Linux kernel, like "rxe" and "siw", as well as how they interact with the traditional network stack: can they be more than compatibility layers?

Student: XXX; tutor: Davide Miola, Fulvio Risso


#3. White label programmable switches with SONiC: capabilities and Linux kernel speed-ups

Many hyperscalers now adopt "white box" switches in their datacenters, namely "no-well-known-name" switches powered by merchant silicon  (e.g., Marvell, Broadcom, Intel), which appear to be competitive compared to the ones provider by traditional network manufactures (e.g., Cisco, Huawei, etc.). However, the "hardware" switch must be associated with an operating system: here, SONiC (driven by Microsoft) is becoming a solid alternative with a large number of supported switches.

This project aims at familiarizing with a SONiC-supported switch, the Edgecore DCS204 (formely AS7726-32X), (1) installing the operating system, (2) testing the most common configurations (e.g., bridging, routing, VLANs), (3) understanding the level of programmability (e.g., turning on/off and configuring features through a software API instead of the command line) and (4) analyzing the level of integration with the Linux kernel, in terms of offloaded functions (e.g., routing/bridging configured with vanilla Linux command, while running on the hardware; packet capture with tcpdump, etc.), and in particular with respect to the eBPF subsystem.

Student: XXX (s123456); tutor: Davide Miola, Fulvio Risso