Distributed network algorithms play a major role in many networked systems, ranging from computer networks (such as sensor networks, peer-to-peer networks, software-defined networks, datacenter networks, networks on chip) to social and even biological networks. Over the last decades, researchers have started developing a formal framework to reason about the fundamental mechanisms under-lying distributed network algorithms, and to devise efficient distributed protocols. However, today, many basic distributed graph problems such as the distributed construction of spanners continue to puzzle researchers. Moreover, new applications like distributed graph analytics or new constraints introduced by wireless, powerline or software-defined networks, continue raising fundamental re-search challenges.
The goal of this course is two-fold:
- First, we will introduce the fundamental formal models and methods used to reason about the correctness and performance of distributed network algorithms. In particular, we will teach essential algorithmic and analytic techniques which, after the course, are a useful toolbox and allow the students to develop and study their own distributed network algorithms.
- Second, we complement the theoretical lectures with practical case studies, which show the various application domains of distributed network algorithms.
Internationally acclaimed academics, researchers and practitioners with proven knowledge, experience, and demonstrable ability in teaching, consultancy, research, and training in the field of Distributed Computing will deliver lectures and discuss potential research problems in the course. The course is planned as per the norms set by Global Initiative of Academic Networks (GIAN), an initiative by Govt. of India for Higher Education.
Objectives :The primary objectives of the course are as follows:
- Introduce formal models for distributed network algorithms.
- Introduce essential algorithmic techniques to devise efficient algorithms and analyze them (randomization, approximation, online algorithms).
- Provide students with a set of tools to become independent researchers in the field.
- Highlight open research directions.
- Highlight interesting application domains (parallel computing, datacenters, software-defined networks, social networks, ad-hoc networks, etc.)