[Ninux-Wireless] [ninux-dev] Pop Routing GSoC

Saverio Proto zioproto a gmail.com
Mer 7 Set 2016 15:15:59 CEST


Puoi pubblicare questa email quasi esattamente cosi com'e' sul blog di Ninux ?

Saverio

Il 7 settembre 2016 15:12, Gabriel <gabriel a autistici.org> ha scritto:
> Eccomi di nuovo qua, alla fine sono stato selezionato per partecipare a
> GSoC e ho terminato con successo il lavoro.
>
> Abbiamo deciso di scrivere un demone C (PRINCE) che si occupasse di
> parsare il NetJSON e calcolare centralità e timer ottimizzati.
> Per la centralità è stata usata la libreria di cui avevo accennato. E'
> scritta in C++ (con le Boost), ma l'ho utilizzata in C usando delle
> bindings.
>
> Purtroppo abbiamo accantonato l'idea di far funzionare anche OLSR e ci
> siamo concentrati solo su OONF. In ogni caso, se qualcuno volesse, manca
> solo da implementare il plugin per OLSRd che riceva i timer e aggiorni
> la configurazione.
>
> Ho eseguito dei test misurando il tempo di esecuzione su una Picostation
> M2HP e i risultati non sono affatto male. Per una rete di 100 nodi,
> impiega circa 8s.
>
> Sto continuando a lavorare al progetto e il prossimo passo dovrebbe
> essere re-implementare la libreria C++ in C e scrivere un plugin per
> quagga/ospf.
>
> Se qualcuno volesse approfondire qua ci sono i 3 articoli scritti
> inglese per il blog di FreiFunk
>
> http://blog.freifunk.net/gabriele-gemmi
>
>
> Gabriel
>
> @Nemesis: Se vuoi puoi inserire prince tra le implementazioni di NetJson
>
>
>
> On 14/03/2016 16:50, Gabriel wrote:
>> Ciao a tutti, sto preparando l'application per partecipare al GSoC 2016
>> con FreiFunk.
>> Se non aveste visto i progetti [1], è stato proposto un progetto per
>> sviluppare un plugin di OLSR che implementi il "PopRouting" teorizzato
>> in questo paper[2].
>>
>> L'idea è modificare i timer per i messaggi di HELLO e TC a seconda della
>> centralità (Beetweenes Centrality) del nodo. Quindi un nodo molto
>> centrale emetterà messaggi più velocemente di un nodo foglia o comunque
>> poco connesso.
>>
>> Una tesista di UniTN ha già sviluppato una libreria C/C++ basata sulle
>> LibBoost che calcoli la centralità a partire da un json del grafo.
>>
>> Integrare la libreria direttamente dentro OLSRd non sembra un ottima
>> idea, dato che il calcolo della centrality è abbastanza oneroso in
>> termini di CPU.
>>
>> Pensavo di creare un demone stand-alone che si scarichi la topologia da
>> Jsoninfo o direttamente Netjson plugin, calcoli la BC  e risputi tutto
>> su HTTP (magari potremmo inserire la BC in uno dei campi opzionali di
>> NetJson Graph).
>>
>> Il plugin per OONF (OLSR2) dovrebbe solo tirare giù la topologia con BC
>> dal demone, calcolare il nuovo timer e settarlo nella conf.
>> Con OONF dovrebbe essere possibile cambiare la configurazione e
>> refreshare il demone senza doverlo riavviare.
>>
>> Sviluppare un plugin anche per OLSRd dovrebbe essere abbastanza
>> semplice, ma non sono sicuro si possano modificare i valori dei timer
>> senza riavviare tutto.
>>
>> Suggerimenti? Idee?
>>
>> Grazie! Gabriel
>>
>> [1]: https://wiki.freifunk.net/Ideas#Implementing_Pop-Routing
>>
>> [2]:
>> https://ans.disi.unitn.it/users/maccari/assets/files/publications/INFOCOM2016.pdf
>>
>> _______________________________________________
>> ninux-dev mailing list
>> ninux-dev a ml.ninux.org
>> http://ml.ninux.org/mailman/listinfo/ninux-dev
>
>
> _______________________________________________
> ninux-dev mailing list
> ninux-dev a ml.ninux.org
> http://ml.ninux.org/mailman/listinfo/ninux-dev
>



Maggiori informazioni sulla lista Wireless