Mar
05

Google experimenting with search boxes within a search

Google inner search box

What doesn’t seem to realize are the implications of endless searches within searches, which if used maliciously could theoretically lead to the implosion of the as we know it and a possible state, where the through billions of iterative searches becomes self aware and all absorbing.

Affascinante…

[Via ArsGeek]

Nov
30

Qmail finalmente in pubblico dominio

Shhhhh….pare che D. J. Bernstein si sia deciso a rilasciare in pubblico dominio tutti i suoi lavori, passati e a venire. Ciò implica anche l’ottimo Qmail server di posta elettronica noto per la sua , velocità e affidabilità.

La stoffa di Bernstein si vede fino all’ultimo bit di codice, creato per fornire una elaborazione a stadi in cui ogni compartimento tratta il precedente come untrusted, fornendo quindi un ambiente un po’ paranoico, ma decisamente poco vulnerabile a eventuali attacchi.

Il focus sulla è sempre stato, dopo tutto, ciò che ha da sempre attirato l’attenzione dell’autore che finora si è sempre rifiutato di rilasciare i sorgenti in una qualsivoglia licenza che ne permettesse la libera modifica e la sua ridistriuzione con le modifiche applicate.

Questa, quindi, la ragione principale per il fiorire, nel tempo, di decine e decine di patch che ne modificassero i sorgenti: ogni cambiamento doveva finora rimanere confinato in una patch esterna, applicabile a rischio e responsabilità dell’utente.

Il risultato è che, mancando uno sviluppo ufficiale di Qmail da ormai molti anni, i vari programmatori ne hanno esteso le funzionalità di base a colpi di patch esterne, dando origine a un dedalo di modifiche decisamente difficile da gestire: non solo si devono scegliere le patch, ma bisogna applicarle in un ordine preciso, altrimenti le varie modifiche vanno a “pestarsi i piedi” e rendono impossibile la compilazione del programma.

Da ciò, anche, la nascita di progetti come netqmail, ovvero Qmail già fornito di alcune patch. Lodevole, ma non la soluzione migliore. Ormai il codice di base di Qmail risente degli anni, non tanto per le prestazioni o la , ma per le nuove funzionalità apparse sulla scena dopo il suo rilascio e volte a estendere le capacità dei server smtp, vedi SPF per esempio, mai incluse nel codice originale.

Ora, con il rilascio in pubblico dominio di Qmail la speranza che le varie patch confluiscano omogeneamente nel codice principale non sono poi peregrine. Occhio, però, a ciò che Bernstein stesso dice nella pagina dedicata alle informazioni rivolte a chi voglia redistribuire Qmail:

Se siete dei distributori, dovreste iscrivervi alla mailing list qmaildist.

Io pongo il pacchetto qmail (in particolare, qmail-1.03.tar.gz, con MD5 checksum 622f65f982e380dbe86e6574f3abcb7c) in pubblico dominio. Siete liberi di modificare il pacchetto, distribuirne versioni modificate, etc.

Ciò non significa che le modifiche siano incoraggiate! Per favore, prendetevi del tempo per assicurarvi che la vostra distribuzione di qmail supporti esattamente la stessa interfaccia usata da chiunque altro. In particolare, se spostate dei file, per favore introducete dei link simbolici dalle posizioni originali, così che non porterete per leggerezza al mal funzionamento di quegli script che funzionano da ogni altra parte.

Su trovate il video in cui D. J. Bernstein annuncia il rilascio in pubblico dominio dei suoi lavori.

Set
18

E Google non lo trova…

Piccolo esperimento…provate a cercare qualche pagina che contenga un qualsiasi numero tra 1,000,000 to 10,000,000,000. Basta usare l’operatore .. fra i due numeri. Che succede?

google-not-found.png

Provateci anche voi.

[Via Google Blogoscoped]

Lug
31

Ubuntu Dapper + XGL + Compiz + ATI X1600

compiz-1.png

Seguendo il semplice tutorial fornito da Pollycoke, ho provato a installare Xgl e su una Dapper messa in movimento da una scheda grafica ATI X1600, notando con mio sommo dispiacere che l’howto va leggermente modificato per venire incontro alle esigenze specifiche delle ATI. Ora, dato che da qui a due minuti mi scorderò come ho fatto a mettere in piedi il tutto, meglio scrivere questo tutorial modificato in modo da tenermi un bigino utile alla prossima formattazione.

Due o tre considerazioni preliminari:

  • Xgl (X Over OpenGL) è un’architettura X server, sviluppata da Novell, che si avvale delle OpenGL per gestire al meglio il rendering 3D accelerato offerto dalle più recenti schede video.
  • Compiz è un window manager sviluppato da Novell, che sfrutta le OpenGL e le estensioni composite per gestire al meglio le potenzialità grafiche messe a disposizione dal server Xgl.

Ok, here we go!

Prelevare i componenti

Il primo passo consiste nel rendere il più semplice possibile il lavoro, inserendo in

/etc/apt/sources.list

i seguenti repository:


deb http://www.beerorkid.com// dapper main
deb http://xgl..info/ dapper main
deb-src http://xgl..info/ dapper main

Da qui verranno scaricati i pacchetti contenenti il server grafico, il window manager e le librerie e le utility che ci servireanno. Dato che non si tratta di pacchetti ufficiali, la loro firma non verrà accettata, a meno di scaricane la chiave e aggiungerla al keyring usato da apt:

sudo wget http://www.beerorkid.com//quinn.key.asc -O - | sudo apt-key add -

Ora, non rimane che installare i pacchetti necessari a dare un po’ di brio al desktop, iniziando con un aggiornamento della lista ottenuta dai depositi:


sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install xserver-xgl -gnome libglitz-glx1 libgl1-mesa

Configurare GDM

Sarà GDM a occuparsi di lanciare Xgl quando sarà il momento di accedere al sistema, quindi è proprio questo componente che va configurato affinché possa prendersi carico del lavoro.

Se provenite da Kubuntu, vi converrà installare Gnome e quindi accertarsi che GDM sia il display manager predefinito:


sudo apt-get install gnome
sudo dpkg-reconfigure gdm

Installare i driver ATI accelerati

Per poter sfruttare l’accelerazione grafica in 3D delle schede ATI è necessario scaricare i driver proprietari direttamente dal sito del produttore e installarli sul proprio sistema.

Al momento è disponibile la versione 8.27.10, di cui consiglio l’utilizzo, avendo sperimentato diversi crash con la versione 8.25.

Scaricati i driver, non rimane che lanciare l’installer che li racchiude, facendo in modo che generi i pacchetti .deb utili a razionalizzare l’installazione:


sudo chmod +x ati-driver-installer-8.27.10-x86.run
sudo ./ati-driver-installer-8.27.10-x86.run --buildpkg /dapper
Creating directory fglrx-install
Verifying archive integrity... All good.
Uncompressing ATI Proprietary Driver-8.27.10......
==================================================
ATI Technologies Driver Installer/Packager
==================================================
Generating package: /dapper
/tmp/fglrx.E0RA9n /usr/src/ati/fglrx-install
Package /usr/src/ati/xorg-driver-fglrx_8.27.10-1_i386.deb has been successfully generated
Package /usr/src/ati/xorg-driver-fglrx-dev_8.27.10-1_i386.deb has been successfully generated
Package /usr/src/ati/fglrx-kernel-source_8.27.10-1_i386.deb has been successfully generated
Package /usr/src/ati/fglrx-control_8.27.10-1_i386.deb has been successfully generated
Package /usr/src/ati/fglrx-sources_8.27.10-1_i386.deb has been successfully generated
/usr/src/ati/fglrx-install
Removing temporary directory: fglrx-install

Ora vi trovate con una serie di pacchetti, pronti per l’installazione, fra questi, tra l’altro, anche i sorgenti dei moduli del kernel deputati all’accelerazione della scheda grafica.

Installiamo i driver:

sudo dpkg -i *.deb

I sorgenti del modulo fglrx, che si occupa dell'accelerazione 3D della scheda video, sono installati. Non rimane che compilarli ma, volendo semplificare il lavoro, meglio farsi aiutare da un'ottima utility, ovvero module assistant. Installiamola:

sudo apt-get install module-assistant

E ora, un attimo di attenzione. Se avete già utilizzato module-assistant per creare il modulo fglrx in una versione adatta a un driver xorg precedente, semplicemente installare i nuovi sorgenti e lanciare la compilazione non darà i risultati sperati: si rimarrà con il vecchio modulo fra le mani e un errore che viene mostrato solo nel log di Xorg e dal comando

fglrxinfo

che dirà, molto cripticamente, che si stanno utilizzando le libreria Mesa per l’accelerazione grafica non .

E’ necessario, in questo caso, ripulire la directory di compilazione del modulo del kernel. Ma ci sono moduli fglrx compilati sul sistema?


sudo module-assistant fglrx

fglrx-kernel-source (source package not installed):
– Binary package(s) for kernel(s):
+ (2.6.17.3): fglrx-kernel-2.6.17.3_8.27.10-1+10.00.Custom_i386.deb
Beh, direi proprio di si. Nel mio caso, si tratta del pacchetto fglrx nuovo, dato che ho lanciato il comando dopo la sua compilazione e la sua installazione. Nel caso voi abbiate compilato un vecchio modulo fgrlx, troverete indicato il numero di versione corrispondente.

E’ tempo di fare un po’ di pulizia, per evitare problemi di compilazione:

sudo module-assistant clean fglrx

E ora si può passare alla vera e propria compilazione, installazione del pacchetto e rigenerazione delle dipendenze:


sudo module-assistant prepare
sudo module-assistant update
sudo module-assistant build fglrx
sudo module-assistant install fglrx
sudo depmod -a

Con i moduli abbiamo finito, è tempo di mettere le mani sul file di configurazione di Xorg.

Il file di configurazione di Xorg

Dato che Xgl funziona sull’architettura di Xorg, andrà modificato quest’ultimo affinché fornisca l’accelerazione necessaria a sfruttare la ricchezza grafica offerta dal primo. Lasicamo, però, che sia l’utility aticonfig a eseguire le prime modifiche sul file si configurazione di Xorg

/etc/X11/xorg.conf

Semplicemente, basterà lanciare


sudo aticonfig --initial
sudo aticonfig --overlay-type=Xv

Aprite il file di configurazione

/etc/X11/xorg.conf

e assicuratevi che le parti evidenziate siano presenti così come le vedete scritte. In caso contrario, copiate dall’esempio qui riportato, rispettando le sezioni di appartenenza:

# /etc/X11/xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.
# (Type "man /etc/X11/xorg.conf" at the prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg


#Section “InputDevice”
# Driver “wacom”
# Identifier “stylus”
# Option “Device” “/dev/wacom” # Change to
# # /dev/input/event
# # for USB
# Option “Type” “stylus”
# Option “ForceDevice” “ISDV4″ # Tablet ONLY
#EndSection
#
#Section “InputDevice”
# Driver “wacom”
# Identifier “eraser”
# Option “Device” “/dev/wacom” # Change to
# # /dev/input/event
# # for USB
# Option “Type” “eraser”
# Option “ForceDevice” “ISDV4″ # Tablet ONLY
#EndSection
#
#Section “InputDevice”
# Driver “wacom”
# Identifier “cursor”
# Option “Device” “/dev/wacom” # Change to
# /dev/input/event
# # for USB
# Option “Type” “cursor”
# Option “ForceDevice” “ISDV4″ # Tablet ONLY
#EndSection

Se non avete tavolette grafiche o altre amenità del genere, assicuratevi che il blocco evidenziato qui sopra sia commentato. Ciò vi eviterà di osservare una gran quantità di errori nel file di log, relativi a queste periferiche non rilevate, sebbene erroneamente abilitate

Section “ServerLayout”


# InputDevice “stylus” “SendCoreEvents”
# InputDevice “cursor” “SendCoreEvents”
# InputDevice “eraser” “SendCoreEvents”

Per la stessa ragione, va commentato il blocco appena visto.

Identifier “Default Layout”
Screen “Default Screen” 0 0
InputDevice “Generic Keyboard”
InputDevice “Configured Mouse”
InputDevice “Synaptics Touchpad”
EndSection

Section “Files”

# path to defoma fonts
FontPath “/usr/share/X11/fonts/misc”
FontPath “/usr/share/X11/fonts/cyrillic”
FontPath “/usr/share/X11/fonts/100dpi/:unscaled”
FontPath “/usr/share/X11/fonts/75dpi/:unscaled”
FontPath “/usr/share/X11/fonts/Type1″
FontPath “/usr/share/X11/fonts/100dpi”
FontPath “/usr/share/X11/fonts/75dpi”
FontPath “/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType”
EndSection

Section “Module”
Load “bitmap”
Load “ddc”
Load “dri”
Load “extmod”
Load “freetype”
Load “glx”
Load “int10″
Load “type1″
Load “v4l”
Load “vbe”
EndSection

Da non dimenticare l’abilitazione dell’accelerazione grafica…

Section “InputDevice”
Identifier “Generic Keyboard”
Driver “kbd”
Option “CoreKeyboard”
Option “XkbRules” “xorg”
Option “XkbModel” “pc105″
Option “XkbLayout” “it”
EndSection

Section “InputDevice”
Identifier “Configured Mouse”
Driver “mouse”
Option “CorePointer”
Option “Device” “/dev/input/mice”
Option “Protocol” “ExplorerPS/2″
Option “ZAxisMapping” “4 5″
Option “Emulate3Buttons” “true”
EndSection

Section “InputDevice”
Identifier “Synaptics Touchpad”
Driver “synaptics”
Option “SendCoreEvents” “true”
Option “Device” “/dev/psaux”
Option “Protocol” “auto-dev”
Option “HorizScrollDelta” “0″
EndSection

Section “Monitor”
Identifier “Monitor Generico”
HorizSync 28.0 - 72.0
VertRefresh 43.0 - 60.0
Option “DPMS”
EndSection

Section “Device”
Identifier “ATI Technologies, Inc. ATI Default Card”
Driver “fglrx”
Option “VideoOverlay” “on”
Option “OpenGLOverlay” “off”
Option “AGPMode” “4″
Option “AGPFastWrite” “True”
Option “EnablePageFlip” “True”

BusID “PCI:6:0:0″
EndSection

Le opzioni appena viste fanno un po’ di tutto, dal caricamento del driver fglrx a qualche ottimizzazione per aumentare la velocità di calcolo.

Section “Screen”
Identifier “Default Screen”
Device “ATI Technologies, Inc. ATI Default Card”
Monitor “Monitor Generico”
DefaultDepth 24
SubSection “Display”
Depth 1
Modes “1440×900″
EndSubSection
SubSection “Display”
Depth 4
Modes “1440×900″
EndSubSection
SubSection “Display”
Depth 8
Modes “1440×900″
EndSubSection
SubSection “Display”
Depth 15
Modes “1440×900″
EndSubSection
SubSection “Display”
Depth 16
Modes “1440×900″
EndSubSection
SubSection “Display”
Depth 24
Modes “1440×900″
EndSubSection
EndSection


Section “DRI”
Mode 0666
EndSection

compiz-3.png

Fatto questo, è tempo di modificare i file di configurazione di GDM.

GDM

Il primo file a essere leggermente cambiato è proprio

/etc/gdm/gdm.conf

In questo file, cercate nella sezione

[servers]

modificate la riga

0=Standard

in

1=Standard

E commentate tutto ciò che inizia per 0, fino in fondo. In pratica, dovrete avere il seguente blocco:


[servers]
# These are the standard servers. You can add as many you want here and they
# will always be started. Each line must start with a unique number and that
# will be the display number of that server. Usually just the 0 server is
# used.
1=Standard
#1=Standard
# Note the VTAllocation and FirstVT keys on and FreeBSD. Don’t add any
# vt arguments if VTAllocation is on, and set FirstVT to be the first
# vt available that your gettys don’t grab (gettys are usually dumb and grab
# even a vt that has already been taken). Using 7 will work pretty much for
# all distributions. VTAllocation is not currently implemented on
# anything but and FreeBSD. Feel free to send patches. X servers will
# just not get any extra arguments then.
#
# If you want to run an X terminal you could add an X server such as this:
#0=Terminal -query serverhostname
# or for a chooser (optionally serverhostname could be localhost):
#0=Terminal -indirect serverhostname
#
# If you wish to run the XDMCP chooser on the local display use the following
# line
#0=Chooser

## Note:
# is your X server not listening to TCP requests? Perhaps you should look at
# the /DisallowTCP setting!

# Definition of the standard X server.
[server-Standard]
name=Standard server
command=/usr/bin/X -br -audit 0
flexible=true
# Indicates that the X server should be started at a different process
# priority. Values can be any integer value accepted by the setpriority C
# library function (normally between -20 and 20) with 0 being the default. For
# highly interactive applications, -5 yields good responsiveness. The default
# value is 0 and the setpriority function is not called if the value is 0.

#priority=0

# To use this server type you should add -query host or -indirect host to the
# command line.
[server-Terminal]
name=Terminal server
# Add -terminate to make things behave more nicely
command=/usr/bin/X -br -audit 0 -terminate
# Make this not appear in the flexible servers (we need extra params anyway,
# and terminate would be bad for xdmcp choosing). You can make a terminal
# server flexible, but not with an indirect query. If you need flexible
# indirect query server, then you must get rid of the -terminate and the only
# way to kill the flexible server will then be by Ctrl-Alt-Backspace.
flexible=false
# Not local, we do not handle the logins for this X server.
handled=false

# To use this server type you should add -query host or -indirect host to the
# command line.
[server-Chooser]
name=Chooser server
command=/usr/bin/X -br -audit 0
# Make this not appear in the flexible servers for now, but if you wish to
# allow a chooser server then make this true. This is the only way to make a
# flexible chooser server that behaves nicely.
flexible=false
# Run the chooser instead of the greeter. When the user chooses a machine they
# will get this same server but run with “-terminate -query hostname”.
chooser=true
A dire il vero, basterebbe anche solo la modifica da 0 a 1 nella prima riga per impedire che venga lanciato l’Xserver standard, ma meglio andarci con i piedi di piombo fino a quando non avrò sperimentato delle configurazioni ottimizzate.

Ora è il turno del file

/etc/gdm/gdm.conf-custom

Apritelo e inserite le seguenti istruzioni:


[servers]
1=Xgl

[server-Xgl]
name=Xgl server
#la prima riga va bene per schede ATI
#la seconda va bene per schede nVidia
command=/usr/bin/Xgl :1 -fullscreen -ac -accel glx:fbo -accel xv:fbo
#command=/usr/bin/Xgl -ac -accel glx:pbuffer -accel xv:fbo
flexible=true
Il contenuto di questo secondo file dovrebbe eseguire un override sulle impostazioni del primo. In effetti non è così o, almeno, non lo è sempre: senza aggiungere 1=Xgl anche in gdm.conf il gioco non funziona, nel mio caso.

Configurare Gnome

Non rimane che configurare Gnome affinché lanci cgwd, il window decorator e . Pr fare ciò, basterà accedere al menu

Sistema -> Preferenze -> Sessioni

e quindi selezionare l’etichetta

Avvio Programmi

Qui aggiungete queste due stringhe, una alla volta:


cgwd --replace

--replace gconf --sm-disable

Finito. Non rimane che riavviare il sistema e godersi i nuovi effetti grafici con finestre elastiche, ombreggiature diffuse e il famigerato cubo, che potrete ruotare tenendo premuti contemporaneamente

CTRL + ALT + Frecce

oppure, sempre tenendo premuti CTRL + ALT, provate a trascinare il desktop a destra e a sinistra, oppure date un’occhiata all’effetto Exposè, per passare da un’applicazione all’altra, abilitato tramite il tasto

F12

Ma anche ALT + TAB non è da meno…

compiz-2.png

Link:

Pollycoke Ubuntu Dapper + XGL + Compiz Guide
Ubuntu Dapper Installation Guide

Mag
01

SNAP, il nuovo protocollo più veloce dell’ADSL

Ecco il mio primo podcast, semiserio, ovviamente. Lo potete scaricare da qui, oppure ascoltare direttamente online con il riproduttore flash su questa pagina.

[audio:http://www.zarrelli.org/blog/wp-content/uploads/2006/05/2006-05-01-podcast.mp3]

Attenzione: sono 20 minuti per 11 Megabyte.

Di seguito, trovate la traccia utilizzata durante il podcast.

All’inizio fu l’esperimento di Bergen (1999), nel quale venne definito il protocollo “IP over Avian Carriers”, del quale trovate i dettagli nella relativa RFC 2549. A seguito di questa nuova specifica venne introdotta anche una rete B2P (Back to Pidgeons), grazie alla quale, nel 2004, è stato possibile spedire tre piccioni viaggiatori su una distanza di 100 Km., con un payload di 1,3 Gigabit, contenuti in 3 flash card. Esperimento interessante, che ha delineato delle prestazioni indiscutibilmente superiori alla classica ADSL.

Il nuovo protocollo Wi-Fly TCP per le connessioni wireless via piccioni, ha però alcuni limiti:

  1. I piccioni non possono volare attraverso le finestre;
  2. I piccioni non volano nell’oscurità, da cui si deduce che, a seconda della latitudine e del periodo dell’anno, la larghezza di banda si riduce del 50% e oltre su base giornaliera;
  3. Infine, il mezzo di trasporto rilascia deiezioni, il che ne costituisce un correlato strutturale sfavorevole.

Come aggirare i problemi di latenza, larghezza di banda e ingombro strutturale di questo nuovo protocollo? Nel 2005, durante il KinnerNet 2005, camp tenuto in Israele, un gruppo di studiosi, fra i quali vanno ricordati Yossi Vardi (ex chairman di ICQ), Shimon Schocken (computer scientist) and Ami Ben Bassat (divulgatore scientifico), hanno definito un nuovo protocollo chiamato SNAP (SNAil-based data transfer Protocol) un protocollo sempre basato su infrastrutture biologiche, che però fa affidamento su un nuovo tipo di vettore, la lumaca (in inglese snail) e un antico sistema di trasporto, la ruota.

Il protocollo SNAP

La definizione del protocollo SNAP si basa su alcuni presupposti architetturali:

  • Il sistema si basa su un backend costituito da un cocchio, in stile Ben-Hur, con un giogo in legno di balsa, molto leggero, completato da due dischi DVD utilizzati come ruote, ognuno della capacità di 4,7 Gigabyte;
  • Il frontend, cui il backend è connesso tramite dei finimenti, è costituito da una lumaca gigante africana (Achatina fulica), rinomata per essere la lumaca più veloce in tutto il pianeta;
  • Pacchetti di trasporto dati: I dati vengono trasportati in 2 pacchetti paralleli da 4,7 Gigabyte ognuno.

NOTA: La lumaca gigante utilizzata per il frontend appartiene alla famiglia dei GastroPodi. L’acronimo G-pod è da tenere in considerazione per future dedicate al traferimento di musica, mentre G-mail può essere indicato per il trasferimento di email tramite il protocollo SMTP (Snail Mobile Transfer Protocol).

snap.jpg

Risultati

I calcoli dedotti dagli esperimenti compiuti sull’architettura indicata hanno evidenziato che, nonostante la relativa lentezza del mezzo biologico, il sistema SNAP è riuscito a trasferire i dati più velocemente rispetto a ogni altra tecnologia convenzionale a oggi esistente. La seguente tabella renderà evidente il confronto:

Tecnologia Kbps
V.34 modem 28.8
ISDN 128
ADSL 1.500
Piccioni 2.270
SNAP 37.000

Problematiche inerenti il mezzo di trasporto

Motivazionale

A sfavore di questo nuovo protocollo è da porre in risalto la componente motivazionale del mezzo biologico, il quale non è coinvolto scientificamente o professionalmente nell’avanzamento delle tecniche di comunicazione dei dati.

Allo scopo, è stato necessario individuare un metodo di costrizione che consentisse di mettere in movimento il mezzo biologico. Tale strumento è stato individuato, a seguito di un’accurata consultazione delle letteratura scientifica, nell’incentivazione motivazionale dello strumento tramite l’utilizzo di una fresca frasca di Sativa Lactuca, nota anche come lattuga iceberg, d’ora in avanti indicato come LGS (Lettuce base Guidance Sub-system).

Routing

Visto che i dati debbono essere veicolati fra due precisi punti, una sorgente e una destinazione, si è dovuto individuare un mezzo per regolamentare il movimento del mezzo biologico all’inerno di una traiettoria predefinita. Questo risultato è stato raggiunto posizionando LGS al centro del campo sensorio del mezzo biologico, giusto di fronte ai suoi peduncoli, traendola gentilmente lungo il percorso più breve fra la sorgente e la destinazione. Questo particolare compito è stato svolto da Yossi Hod, un membro del gruppo di ricerca, il quale è anche un pilota commerciale dotato di una significativa esperienza di navigazione.

NOTA: Per ora è stato implementato un sistema di routing di tipo PULL ma vi è la possibilità di adottare un router PUSH based, ponendo dietro al mezzo biologico una mistura di aglio e burro fuso: ciò assicurerebbe alla lumaca la giusta spinta motivazionale in avanti. Aglio e burro fuso possono, in alternativa, essere montati sul cocchio stesso.

Denial of service

In alcune zone nel mondo, soprattutto in Francia, le abitudini gastronomiche locale possono dare luogo al rischio di inibire le comunicazioni tramite una tecnica di denial of service (DOS). In particolare, i francesi dovranno scegliere se vogliono avere dei dati ex-cargo, oppure delle escargot.

D’altra parte, una caratteristica peculiare del protocollo SNAP consiste nell’essere assolutamente immune a rischi di denial of server in quelle zone del mondo dalle tradizioni alimentari kosher.

Vantaggi correlati al nuovo protocollo SNAP

Il nuovo protocollo SNAP consente di risolvere elegantemente alcuni problemi inerenti il protocollo Wi-Fly TCP.

Massimizzazione del mezzo

SNAP consente di ottimizzare il rapporto fra la quantità dei dati trasferiti e la massa del mezzo di trasferimento, in maniera maggiore di quanto raggiunto con il protocollo Wi-Fly TCP. Gli sviluppatori hanno seguito il principio di Efemeralizzazione di Buckminster Fuller, facendo di più con meno, tenendo conto che per trasferire tutti i dati sono stati necessari 1 lumaca vapore di potenza.

Latenza

Come riscontrato per l’utilizzo dei piccioni, anche in questo caso la latenza del mezzo è maggiore rispetto quella raggiunta dalle tecnologie più convenzionali. Ciò nonostante, sebbene ci voglia più tempo affinché il primo pacchetto raggiunga la destinazione, su distanze di poche centinaia di chilometri la latenza di un piccione è minore rispetto a quella assicurata da una spedizione di Netflix, Fedex o dalle Poste.

Funzionamento in ore notturne

A differenza di quanto accade per i piccioni, che non volano di notte, le lumache sono attive anche al buio, ottimizzando quindi il transfer rate rispetto al Wi-Fly TCP.

Rilascio di deiezioni

A differenza dei piccioni, le lumache non rilasciano deiezioni sulla testa di chi si trovi sul suo percorso.

Fonte.

Appendice A: Il modello matematico

Dati

b = dimensione dei dati, in bit

s = durata del trasferimento dei dati, in secondi

Tenendo presente questa notazione, il livello di prestazione raggiunto dal sistema può essere espresso con la seguente uguaglianza:

bps = b/s bit per secondo

Dato che ogni DVD contiene 4,7 Gigabyte di dati, è possibile indicare:

b = 4.700.000.000 * 8 bit * 2 dischi = 75.200.000.000

Il sistema basato su protocollo SNAP ha impiegato 34 minuti e 10 secondi per completare il trasferimento dei dati e quindi:

s = 34 * 60 + 10 = 2.030 secondi

Dati alla mano, quindi, è possibile formalizzare la prestazione del sistema utilizzando l’uguaglianza definita in precedenza:

bps = 75.200.000.000 / 2.050 = 36.682.926

NOTA: E’ importante osservare che tutte le misurazioni sono state effettuate da un osservatore a terra. Se venissero prese direttamente su una lumaca in movimento, i tempi risulterebbero ridotti, in accordo con la teoria della relatività di Einstein.

NOTA: La distanza percorsa dal mezzo biologico durante le misurazioni prese nel corso dell’esperimento è di 52 centimetri, il che porta a un interessante transfer rate di 37 Megabit/secondo.

Appendice B: SNAP II

E’ già allo studio una seconda versione del protocollo SNAP, che consenta di ridefinire il punto debole dell’architettura, rappresentato da LGS. In particolare, il sistema LGS richiede ancora l’intervento di un operatore umano, il che risulta ingombrante e dispendioso.

Nella nuova versione del protocollo, LGS verrà ridefinito in modo da funzionare autonomamente, ponendo un’elegante soluzione ai problemi motivazionali riscontrati in SNAP.

Da notare che SNAP II non ha ancora evidenziato una soluzione agli scarsi livello di servizio riscontrati in Francia, paese ad alto rischio di denial of service.

Appendice C: Le leggi della lumaca

IBM: Il mondo avrà bisogno di sole cinque lumache;
DEC: Nessuno vorrà una lumaca a casa propria;
: La nuova lumaca Longhorned (dal lungo peduncolo) è in arrivo;
BillG: Una lumaca a 649 Kbps. sarà più che sufficiente per chiunque;
SUN: La lumaca è la rete.

Appendice D: Musiche utilizzate nel podcast

Le musiche utilizzate nel podcast non sono sottoposti a vincoli SIAE:

Remember the Name (Mystro 1965 Mix).
The Free Software Song.

 
icon for podpress  Standard Podcast: Play Now | Play in Popup | Download
Sopra