Welkom op mijn website

Mijn naam is Sander Vrijders. Ik ben masterstudent industrieel ingenieur informatica aan de Hogeschool Gent. Deze website laat geïnteresseerden toe kennis te maken met mijn masterproef.

Doelstelling, probleemstelling en gedetailleerde omschrijving van de opdracht die minimaal moet worden verwezenlijkt

Openflow is een nieuwe technologie die toelaat om switches vanop afstand te controleren. Dit door een welbepaalde actie op te leggen voor elk pakket dat toekomt op een switch. Deze acties worden vanop afstand door een controller opgelegd aan elke switch.

Hiervoor worden er in de controller modules ingeladen, die op elke mogelijke gebeurtenis reageren. Indien er bijvoorbeeld een pakket via de switch moet worden verzonden, waarvoor er nog geen actie bestaat, kan de controller reageren en bijvoorbeeld beslissen om voortaan dat pakket slechts langs één enkele interface van de switch voort te sturen.

Bittorrent is een protocol om peer-to-peer (gebruiker tot gebruiker) veel gegevens uit te wisselen, dat gebruik maakt van een tracker die de downloads coördineert. De tracker zelf levert enkel info (zoals het ip-adres, de poort, ...) aan de verschillende seeders en leechers. Bittorrent is dus een gedecentraliseerd protocol. Seeders zijn clients die alle data op hun computer hebben staan. Leechers hebben slechts een deel staan, en willen dus de rest downloaden.

Indien men bittorrent verkeer via normale MAC learning switches stuurt, kan er een deel van de bandbreedte verloren gaan, omdat bepaalde wegen niet optimaal gebruikt worden.

Het doel van deze masterproef is een module te schrijven voor de controller, die bittorrentverkeer optimaliseert.

Optimalisatie kan mogelijk zijn in de vorm van snelheid. Alle bittorrent cliënts ontvangen dan alle data zo snel mogelijk. Men kan ook er voor zorgen dat een bepaalde cliënt als eerste alle data zo snel mogelijk ontvangt, zodanig dat er vanaf dan twee seeders zijn, en dus meer stabiliteit.

Optimalisatie is er ook in de vorm van netwerkbelasting. Aangezien bittorrent namelijk een zeer intensief netwerkprotocol is, kan er voor gezorgd worden dat niet alle beschikbare netwerk resources naar bittorrent gaan.

Problemen die opgelost moeten worden

Een efficiënt algoritme opstellen, implementeren en evalueren om het netwerkverkeer te optimalizeren.

Technologieën die aan bod komen

Openflow switches, NOX controller, Linux, C++. De switches draaien namelijk in Linux in user context. De module voor de NOX controller zal geschreven worden in C++. Een andere mogelijke keuze was Python.

Mogelijke uitbreidingen en opties

Verschillende soorten optimalisatie nastreven.

Vernieuwende aspecten (tov de opleiding)

Uitdieping van de kennis over C++. Leren werken met een nieuw protocol, namelijk Openflow.