--- a/bsc-projects-12.html Mon Sep 10 05:32:09 2012 +0100
+++ b/bsc-projects-12.html Tue Sep 11 11:40:36 2012 +0200
@@ -313,21 +313,28 @@
<li> <H4>[CU6] Implementation of a Distributed Clock-Synchronisation Algorithm developed at NASA</H4>
<p>
<B>Description:</B>
- This
+ There are many algorithms for synchronising clocks. This
<A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">paper</A>
- describes a new synchronisation algorithm for clock that communicate by exchanging
- messages.
+ describes a new algorithm for clocks that communicate by exchanging
+ messages and thereby reach a state in which (within some bound) all clocks are synchronised.
+ The point of this project is to implement this algorithm and simulate networks of clocks.
</p>
<B>Literature:</B>
- The project implements the algorithm presented
- <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">here</A>.
+ There is a wide range of literature on clock syncronisation algorithms.
+ Some pointers are given in this
+ <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">paper</A>,
+ which describes the algorithm to be implemented in this project. Pointers
+ are given also <A HREF="http://en.wikipedia.org/wiki/Clock_synchronization">here</A>.
</p>
<p><B>Skills:</B>
- In order to implement a simulation of this algorithm, you need to tackle
+ In order to implement a simulation of a network of clocks, you need to tackle
concurrency. You can do this for example in the programming language
- <A HREF="http://www.scala-lang.org/">Scala</A>.
+ <A HREF="http://www.scala-lang.org/">Scala</A> with the help of the
+ <A HREF="http://akka.io">Akka</a> library. This library enables you to send messages
+ between different <I>actors</I>. <A HREF="http://www.scala-lang.org/node/242">Here</A>
+ are some examples that explain how to implement exchanging messages between actors.
</p>
</ul>