582615: Overlay and P2P Networks, Spring 2013
Pair work (groups of two people). Four exercises and one turbo challenge. Doing the exercises awards you overlay exercise points (OEPs). There are three exercise packages, each worth 20 OEPs. 5 OEPs will buy you one point in the exam. The theoretical maximum for the exercises is 60 OEPs. Doing all the exercises will grant you 12 points in the exam.
Clarifications session: Friday 18.1.2013 at 14:15 in D122 (you ask questions about the questions)
Exercise deadline: Thursday 24.1.2013 at 16:00 (you return the answers by email)
Exercise deadline: Friday 25.1.2013 at 12:00 (you return the answers by email)
Publication of the correct answers: Friday 25.1.2013 at 14:15 in D122 (we go through the correct answers together)
Your friend who has not taken the overlay course wants to know whether or not overlays are useful. He is really stubborn and wants to use the bare Internet. You of course have taken the course and happen to know that overlay networks are the perfect match for all the use cases your friend keeps going on about.
The book and the lectures contain some spoilers, but you could do some Googling as well if you wish.
The TCP/IP stack contains some loose layering where protocols are assigned to different layers. Similar layer models have been presented for overlay networks.
Check lecture slides for stack pictures.
BitTorrent uses torrent files as the main method for addressing content. Some of the information available in the torrent file is contained in a structure named info, while some information is kept outside the info structure. The specification mentions info_hash in multiple places. It is a hash value over the info structure.
The specification at http://wiki.theory.org/BitTorrentSpecification might help you.
There are two key strategies that affect the operation of BitTorrent content dissemination. One of the strategies is used to manage connections between nodes. The algorithm implementing the default connection strategy is called "choke". The other strategy is used to decide the order for retrieving parts of the content. The algorithm implementing the default download order strategy is called "rarest first". One goal of such strategic algorithms is to ensure that actions taken by misbehaving nodes do not harm the network, but rather contribute to efficient operation instead.
You can find descriptions for the rarest first and choke algorithms in the scientific paper "Rarest first and choke algorithms are enough" published by Arnaud Legout, G. Urvoy-Keller and P. Michiardi at ACM SIGCOMM conference in 2006. At the time of writing it was available from http://conferences.sigcomm.org/imc/2006/papers/p20-legout.pdf.
We have decided to accept submissions for the turbo challenge as separate submissions until 16:00 on Thursday 31.1.2013.
Just name your answer file to match the following pattern snumber1-snumber2-ex1-tc.extension
and use "Overlay Exercise I TC" as the email subject line.
We will go through the turbo challenge answer during the Exercise Package II clarifications session on Friday 1.2.2013 at 14:15 in D122.
Disclaimer: The turbo challenge presented below is extremely hard and does not grant you extra points. However a decent solution for the turbo challenge may award some compensation for lack of points in other assignments.
You have managed to convince your friend. He is now all into overlay networks. He works day and night to build his own start-up. Together with the other founder they have decided to build a content delivery network (CDN) based on content dissemination techniques used in BitTorrent. Your friend fell in love with the performance of the new seed state modification (lets call it nssm) done to the choke algorithm in BitTorrent 4.0.0, but he still has some trouble with the specifics of the algorithm.
The material from assignment 4 might help you.