/* This is the template for project details pages */ /* The database entry: "type" is one of the following: phd theses, phd semester, master thesis, master semester, bachelor semester "state" is one of the following: available, taken, completed (please upgrade accordingly!!!!!!!!!!) "by" should be filled as soon as the project is taken/completed "completed_dt" is the date when the project was completed (YYYY-MM-DD). "output_media" is the link to the pdf of the project (wiki syntax) "table" must be "projects" => don't touch it! */ ---- dataentry project ---- title : On-line flow measurement for proactive optimization of bandwidth usage contactname: Giovanni Cangiani contactmail_mail: giovanni.cangiani@epfl.ch contacttel: +41 78 600 00 09 contactroom: BC149 type : master semester state : completed created_dt : 2011-09-20 taken_dt : 2011-10-01 completed_dt : 2012-01-16 by : Laurent Fasnacht output_media : :en:projects:master_semester:report_fasnacht_bwopt.pdf|report table : projects ====== template:datatemplates:project ---- Reliable data distribution over the internet is mostly based on TCP (transmission control protocol). With TCP, the rate of data transmission between two nodes decreases as the distance between the two nodes increases. In a globalized internet, it becomes more and more difficult to make optimal use of the broad bandwidth now commonly available in private households. In the case of one-to-many data distribution, large content providers do fix the problem by deploying expensive content delivery networks. The success of novel bandwidth-demanding peer-to-peer applications such as tele-presence and high definition video-conference will have to rely on transmission protocols that make more effective use of the available bandwidth. Forward error correcting codes (FEC) on top of standard UDP protocol have proven to provide reliable and efficient data transmission over long distance and/or lossy networks. In particular, using fountain codes it is possible to saturate any available bandwidth by flooding the connection with an arbitrary number of repair packets. Although optimal for the two peers, this method is not very fair to the users sharing the same link and will end up wasting resources. In fact, the sender transmission rate should not exceed the effective bandwidth linking the two peers. The goal of this project is to develop an efficient method to quickly determine and monitor the actual bandwidth available between two peers in order to make optimal and fair use of it. Measurements will have to be fitted with theoretical models in order to determine the more realistic description of the communication channel at any moment in time during transmission. The computer programs developed for this project will be included in a generic library that is being developed in our laboratory for tunneling network traffic over a transmission channel made reliable and efficient using FEC. The library also provides an easy to use application programming interface (API) that hides to the user all the technicalities including the difficulty of establishing a one-to-one communication channel between nodes that are behind firewalls and NAT routers.