<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article  PUBLIC '-//OASIS//DTD DocBook XML V4.4//EN'  'http://www.docbook.org/xml/4.4/docbookx.dtd'><article><articleinfo><title>DART</title><revhistory><revision><revnumber>6</revnumber><date>2008-12-14 17:29:14</date><authorinitials>ClauzClauz</authorinitials><revremark>Ripristinata la revisione 4.</revremark></revision><revision><revnumber>5</revnumber><date>2008-12-14 17:28:28</date><authorinitials>ClauzClauz</authorinitials><revremark>Ripristinata la revisione 3.</revremark></revision><revision><revnumber>4</revnumber><date>2008-12-05 12:53:09</date><authorinitials>151.53.150.127</authorinitials></revision><revision><revnumber>3</revnumber><date>2008-03-24 20:11:00</date><authorinitials>OrazioPirataDelloSpazio</authorinitials></revision><revision><revnumber>2</revnumber><date>2008-03-24 20:07:12</date><authorinitials>OrazioPirataDelloSpazio</authorinitials></revision><revision><revnumber>1</revnumber><date>2008-03-24 19:48:07</date><authorinitials>OrazioPirataDelloSpazio</authorinitials></revision></revhistory></articleinfo><section><title>DART</title><para>Approccio: Dynamic Addressing </para><para>Linee guida: </para><itemizedlist><listitem><para>I cambiamenti locali devono essere il più circoscritti possibile </para></listitem><listitem><para>La Responsabilità è ugualmente distribuita su ciascun nodo </para></listitem><listitem><para>Zero-Configuration dei nodi </para></listitem></itemizedlist><para>Ogni nodo è dotato di un <emphasis role="strong">identificatore</emphasis> (uguale per tutta la durata della vita del nodo) e di un <emphasis role="strong">indirizzo di routing</emphasis> mutevole nel tempo. </para><para>Il mapping <emphasis role="strong">identificatore</emphasis> ed <emphasis role="strong">indirizzo di routing</emphasis> viene fatto attraverso funzioni di lookup implementate sullo stile delle <ulink url="http://it.wikipedia.org/wiki/Tabella_di_hash_distribuita">Distributed Hash Tables</ulink> perciò ogni volta che un nodo acquisisce o modifica il proprio indirizzo di routing, pubblicherà in rete l'associazione indirizzo di routing-identificatore. </para><para>Gli <emphasis role="strong">indirizzi di routing</emphasis> sono stringhe da l bits.  I diversi indirizzi presenti in rete possono essere visti come un albero tale che: </para><itemizedlist><listitem><para>i Nodi della rete sono le foglie dell'albero stesso </para></listitem><listitem><para>Nodi con indirizzo vicino sono vicini fisicamente nella rete </para></listitem><listitem><para>Dato un indirizzo è possibile identificare un &quot;sibling sub-tree&quot; di livello k come composto dall'insieme degli indirizzo aventi i primi l-k-1 bit in comune con l'indirizzo dato </para></listitem><listitem><para>Ogni nodo ha una entry nella tabella di routing corrispondente ad ogni ogni &quot;sibling sub-tree&quot; (quindi ha un numero di rotte che cresce come il log_2 del numero dei nodi) </para></listitem></itemizedlist><para>Procedura Appena un nodo si connette alla rete riceve gli aggiornamenti sulle rotte dei suoi vicini e pubblicherà a sua volta inizierà a pubbicare le sue. Una volta connesso alla rete, un nodo sceglierà un indirizzo coerente con il sotto-albero fornito dai vicini dei vicini e tale per cui esiste uno spazio di indirizzi vuoto dei suoi vicini per quell'indirizzo. Le rotte sono propagate in maniera loop-free utilizzando l'albero stesso attraverso un campo travel-log che accompagna il pacchetto oltre al classico meccanismo del time-to-live dei pacchetti. </para><para>Maggiori informazioni </para><itemizedlist><listitem><para><ulink url="http://www.ieee-infocom.org/2004/Papers/23_3.PDF">Scalable Ad Hoc Routing: The Case for Dynamic Addressing</ulink> </para></listitem><listitem><para>Confronto tra DART e <ulink url="http://www.nnx.me/DART/Netsukuku#">Netsukuku</ulink>: <ulink url="http://marc.info/?l=netsukuku&amp;m=122727538907730&amp;w=2"/> </para></listitem></itemizedlist></section></article>