Internet è una rete in evoluzione. Gli ISP agiscono come agenti autonomi che competono per fette di mercato con l'obiettivo di instradare quanto più traffico possibile e cooperano per la raggiungibilità di tutte le destinazioni di Internet. Scopo del tirocinio è quello di fornire un generatore di reti Internet-like basato sulla comprensione e sulla modellazione delle dinamiche economiche di Internet. Il generatore va confrontato con altri noti in letteratura che non considerano gli aspetti economici.
Competenze da acquisire: basi di BGP, tipologie di contratti e di routing interdomain tra ISP, parametri di analisi di reti scale-free.
Precondizioni: reti di calcolatori 1 e 2, buona capacità di programmare in C.
Consigliato: conoscenza di bgp
persona di riferimento: Pizzonia
Nell'ambito delle reti ci si pone il problema di effettuare il monitoraggio della qualita' del servizio rispetto a parametri come delay (one way e round trip), jitter, packet loss, bandwidth. La soluzione a tale problema deve avere un costo adeguato alle prestazioni. Il costo deve essere il minimo possibile per accessi xDSL (ad esempio fino a 1 MB). Si puo' spendere invece di piu' per accessi molto piu' veloci. Inoltre il monitoraggio puo' essere statistico (sopportando un certo margine di errore) o esatto.
Si richiede di fare uno studio di fattibilita' (corredato dei costi di produzione) di uno o piu' sistemi che coprano lo spettro di esigenze descritto. E' possibile che l'attivita' richieda esperimenti sul campo e/o analisi teoriche delle tecniche scelte.
competenze da acquisire: tecniche per il monotiraggio del traffico
Prerequisiti: reti di calcolatori, linux, architetture hw/sw
persona di riferimento: Pizzonia
L'email è per molti uno strumento di comunicazione particolarmente importante. Chi usa l'email per lavoro si trova tutti i giorni a dover classificare varie decine di emails nelle proprie cartelle (che possono essere anche centinaia). Questa attività è noiosa e prona a errori. Molti di voi conoscono e usano le tecnologie anti-spam che sono sostanzialmente dei classifcatori automatici di email. L'idea è di applicare la tecnologia dei classificatori automatici al problema della classificazione di email al fine di equipaggiare il mailer con un suggeritore. Scopo della tesina è di fare uno studio di fattibilità sulla creazione di un plugin per uno dei mailer più diffusi (es outlook, thunderbird o mozilla) che sia in grado di suggerire uno o più folders, tra quelli presenti, in cui l'email può essere classificata con un solo click (con un bottone a fianco al subject).
Competenze da acquisire: tecniche di classificazione automatica (classificatori baesyani)
Prerequisiti: Capacità di programmazione in C++ e scripting vari
Persona di riferimento: Pizzonia
Preparazione di esperienze meidante l'uso di Netkit (www.netkit.org) per la sicurezza delle reti. L'obiettivo della tesina e' quello di produrre del materiale didattico (slides + scripts netkit) relativo alle configurazioni piu' comuni relative alla sicurezza delle reti (firewall, proxy, dmz, ecc.). Il lavoro ha lo scopo di adattare, per l'attuale versioen di Netkit, una o più delle esperienze pubblicate al seguente URL http://www.tic.fdns.net/tic/html/lab.html
Competenze da acquisire: tecniche di base sulla configurazione di reti sicure
Prerequisiti: reti di calcolatori 1 e 2, sistemi operativi 1, linux
Consigliato: un minimo di esperienza con Netkit
Persona di riferimento: Pizzonia
Linux è un sistema operativo complesso. Questa tesina prevede di approfondire le conoscienze della struttura del kernel Linux mediante reverse engineering. Il prodotto della tesina sarà documentazione contenente diagrammi UML e descrizioni sintetiche delle principali strutture dati del sistema operativo Linux. Il punto di partenza sono i libri che descrivono il kernel stesso e il codice dell'attuale versione del Kernel.
Riferimenti:
Daniel P. Bovet, Marco Cesati - Understanding the Linux Kernel. O'Reilly.
Jonathan Corbet, Alessandro Rubini - Linux Device Drivers - O'Reilly (Under GNU Free Documentation License)
Competenze da acquisire: conoscenza approfondita del kernel Linux
Precondizioni: Analisi e Progettazione del Software (Unified Modelling Language), ottima capacità di comprensione di programmi in C, buona conoscenza di Linux (da untente)
persona di riferimento: Pizzonia