Computer Laboratory

Part II, III and ACS Projects

I'm interested in advising anybody wanting to do a Part II, Part III or ACS project in networked systems, especially in the following areas:

  • High performance networking
  • Rack-scale and Edge computing
  • Reconfigurable and programmable systems and devices
  • Interconnects and Memory interfaces
  • Network measurements

These are some project ideas that I've put together (****as of Summer 2017, Summer 2018 to be updated soon****). The knowledge required for the project varies, as some of the projects are software oriented, while others are hardware oriented. The groupings are only loose and many of the projects could be adapted to suit any course stage. Please contact me for more information. If you have your own ideas for a project that you'd like to do with me, then it would be great to hear them so please also get in touch.

Part II Projects

Rapid Prototyping of Network Services in C#

Due to their performance and flexibility, FPGAs are an attractive platform for the execution of network functions. Making FPGA programming accessible to a large audience of developers, however, has been a challenge for a long time. The Emu framework describes a new standard library for an FPGA hardware compiler that enables developers to rapidly create and deploy network functionality. Emu allows for high-performance designs without being bound to particular packet processing paradigms. Furthermore, it supports running the same programs on CPUs, in Mininet, and on FPGAs.
The goal of this project will be to build a large library of functions for Emu and to provide an easy to use software evaluation environment for users.

[1] Nik Sultana, Salvator Galea, David Greaves, Marcin Wojcik, Jonny Shipton, Richard Clegg, Luo Mai, Pietro Bressana, Robert Soule, Richard Mortier, Paolo Costa, Peter Pietzuch, Jon Crowcroft, Andrew W Moore, Noa Zilberman, Emu: Rapid Prototyping of Networking Services, Usenix Annual Technical Conference (ATC), July 2017.

Pre-requisites: This project requires basic knowledge of computer networks and C#.

Visualising the Network Profiles of Datacentre Applications

Running an application in a datacentre, we have one important goal: performance. While improving the performance of datacentre applications is the focus of many works, understanding dynamic networking effects on application performance is still in its infancy. Network Profiles is a methodology for characterizing application's performance from a network perspective, using a network appliance developed by our team.
The goal of this project is to provide a control and management user interface to the orchestration system running the applications and network appliance, and to visualise the network profiles generated by the appliance.

Pre-requisites: This project requires basic knowledge of computer networks.

Power Analysis of Rack-Scale Systems

Rack-scale computing is an emerging technology in networked systems, replacing the server as the basic building block in enterprises and data cen tres ICT infrastructure. Rack-scale computing provides superior performance compared with rack enclosures fitted with stand-alone servers, providing scal able high performance networked systems. Power efficiency is of utmost importance to rack-scale computing: the power budget of the system is bounded by rack enclosure (typically 10kW-20k W), thus any increase in performance must still retain the same system power consumption. We are building an apparatus for the evaluation of rack-scale systems implementation at scale. This project will focus on the instrumentation of the system for power consumption measurement and analysis, mainly thro ugh the instrumentation existing on the NetFPGA SUME platform.

[1] NetFPGA
[2] Noa Zilberman, Yury Audzevich, Adam Covington, Andrew W. Moore. NetFPGA SUME: Toward Research Commodity 100Gb/s, IEEE Micro, vol.34, no.5, pp .32,41, Sept.-Oct. 2014
[3] Rack-scale Computing (Dagstuhl Seminar 15421 )

Pre-requisites: This project requires basic knowledge of Verilog.

Part III/ACS Projects

Rack-scale Fabric Topologies

Rack-scale computers contain hundreds to thousands of compute nodes, requiring a scalable and flexible interconnect topologies. The objective of this projects is to study aspects of fabric topologies within rack-scale computers and make recommendations on efficient rack-scale fabric topologies. As emerging rack-scale fabric architectures (e.g. [1][2]) differ significantly in their nature, existing simulation tools are inappropriate. This project will develop a flexible and scalable rack-scale fabric modelling tool and evaluate the performance of different rack-scale fabric topologies.

[1] Sergey Legtchenko, Nicholas Chen, Daniel Cletheroe, Antony Rowstron, Hugh Williams, and Xiaohan Zhao. XFabric: A Reconfigurable In-Rack Network for Rack-Scale Computers. NSDI 2016.
[2] Bob Alverson, Edwin Froese, Larry Kaplan and Duncan Roweth . Cray XC Series Network. Cray Inc, 2012.

The Networking of Data Science

Data science has become part of our everyday life, even if we are not aware of it. Networked applications that process huge amounts of data run in the cloud and affect not only social networks and online shopping, but also finance, security and science. Due to the nature of data science applications, they usually run within data centres, and the knowledge of these application's behavior is limited to data centre operators. As data centre operators keep their data confidential, very little information was published (e.g. [1],[2]). In the lack of such ground truth, academic research is limited in its ability to develop novel system and networking solutions that fit the age of data science.
This project aims to create network profiles for different data science applications: from common key-value store to academic big-data projects (e.g. SKA - the square kilometer array), gathering ground truth data from application running in a local data centre. The outputs of this project will be used to model and assess new data centre architectures, directing future designs.

[1] Theophilus Benson, Aditya Akella and David Maltz. Network Traffic Characteristics of Data Centers in the Wild. Proceedings of the Internet Measurement Conference (IMC), 2010.
[2] Berk Atikoglu, Yuehai Xu, Eitan Frachtenberg, Song Jiang, and Mike Paleczny. Workload analysis of a large-scale key-value store. SIGMETRICS 2012.