• Component

    École Nationale Supérieure d'Électrotechnique d'Électronique d'Informatique d'Hydraulique et des Télécommunications

Objectives

Introduction to distributed programming based on a basic knowledge on local area networks and of TCP-UPD / IP  protocols. Presentation of the client-server model. Introduction to causality, consensus and reliable broadcast.

Read more

Description

The course has two main parts:

- Introduction to the basic concepts of distributed programming, the client-server model, different server realization schemes (sequential, multiple inputs / polling, on-demand, multithreaded)

- Introduction to  distributed algorithms, notion of logical clocks, notion of causal order, of total order, principle and solution of distributed consensus and atomic broadcast.

 

The practical classes enable the students to put into practice these concepts and development techniques,  using  BSD sockets on Linux. An messaging system (a chat)  is first implemented with a client-server approach, a second solution is based on a peer-to-peer approach and  implementated using a reliable broadcast protocol.

Read more

Pre-requisites

Algorithmics, C / C ++ programming, local area networks, operating system principles, Unix.

Read more

Additional information