Our current research projects by area


Network performance and reliability


Failures are common in computer networks (either data centers, ISPs or cloud provider WANs). If this was not enough, whenever a failure happens, performance requirements of business critical applications are usually violated. These failures are diverse in nature, and range from equipment failures (e.g., a link failure or routing issue) to misconfigurations and other human-related problems (e.g., accidents, bugs, bad capacity planning or maintenance failures). In the last few years our group has been working to detect, explain and recover from failures as quickly as possible in large scale computer networks. In particular, we have focused on recent programmable network architectures (e.g., SDN/OpenFlow and P4). Also, we have been working closely to ensure that these networks can operate at high-speeds, despite the growing complexity of their control/data plane programs. Our list of active projects include:




IoT / Edge computing


Today we are literally surrounded by connected things. Smart homes, farms, cities, they are everywhere. Although these devices do not present much processing capacity, their applications often require extremely low latencies to work properly. Also, there are many additional constraints in these environments such as a limited energy budget or the huge amount of devices to configure/manage. Our group works to create more flexible and efficient IoT networks by: (i) developing new IoT device configuration/communication protocols based on programmable networking concepts; and (ii) intelligently offloading tasks to edge-based resources. See below some of our current projects:



Security


Security is always a primary concern whenever stakeholders deploy a new production system/application. In particular, distributed systems (e.g., IoT and cloud-based systems) are uniquely problematic because of their increased attack surface. As a result, we see new attacks on these systems literally every day. Our group is investigating how programmable networks can offer better support to secure distributed applications. More specifically, we look for network-based enhancements to both state-of-the-art and traditional security mechanisms, acting on the border between networking and security research. We are also involved in exploring the potential of AI/ML techniques to attack/defend distributed systems/applications. Find some of our projects below: