C'e' un evento avvenuto nella rete internet il 12 agosto, di cui i giornali non hanno parlato. Alcuni hanno detto che "per questioni tecniche il nostro giornale non e' raggiungibile", ma pochi hanno spiegato cosa fosse successo. Tutti abbiamo avuto dei fastidi nel routing , e alcuni di questi fastidi continuano anche oggi, MA nessuno ne sta parlando.
Di che cosa si tratta? Trovate qualcosa qui: http://en.wikipedia.org/wiki/512K
Si tratta del solito problema di "limiti arbitrari posti ad minchiam" per lucrare sul cliente.
Ricordate il "bug del millennio", quello per cui nei BIOS dei computer non si potevano scrivere date superiori al 2000? Qualcuno aveva trattato i bios come se fossero porte. Quanto deve essere alta una porta? Beh, visto che un essere umano e' alto in media <2 metri, allora facciamole di due e venti.
Aha. Makes sense.
Adesso immaginate che il trend di crescita dell'umanita' sia di aumentare l'altezza media, e immaginate che nel 2100 tutte le porte degli edifici siano inutilizzabili e la gente inizi a sbatterci la testa.
Questo e' piu' o meno il problema dei "limiti arbitrari posti ad minchiam", ovvero un modo di pensare per cui si dice: ehi, ma nessuno di questi computer sara' ancora li' nel 2000. Che senso ha fare una data con tutti questi bit? 2000 bastano e avanzano!
Poi quando si fa IPv4 si dice "ehi, ma seriamente, pensate che avremo piu' di 4 miliardi di IP sul pianeta? Andiamo, ma state scherzando?" Risultato: si esaurisce lo spazio di indirizzamento e si migra faticosamente (e costosamente) verso IPv6. Costi enormi, perche' guarda caso prima i dispositivi IPv6 non venivano proposti e la tematica era dimenticata, e oggi che c'e' urgenza si cerca di lucrarci sopra.
Quello raggiunto il 12 agosto 2014 e' un altro limite arbitrario. Internet e' divisa in AS, autonomous systems. Le rotte tra gli AS, la mappa, viene propagata attraverso un canale specifico, che non mi fa di discutere, perche' non e' davvero importante nel discorso come funzioni BGP. (lo sara' al prossimo Limite Arbitrario Posto ad Minchiam, non vi preoccupate).
Ma il guaio e' che qualcuno, nel disegnare i dispositivi, ha detto: ok, siccome facciamo pagare 8MB di memoria come se fossero l'imene d'oro di Ipazia, come facciamo a farci stare il router che gestisce la rete?
Semplice: poiche' abbiamo stabilito un Assurdo Limite Hardware (AHL) per ottenere una Scatola Nera Brevettata Proprietaria Costosissima (SNBPC) , per farlo funzionare col massimo della necessita' del cliente di comprarne More Of The Same (MOTS) , anche quando Il Costo Non e' Giustificabile (ICNG) e allora dovremo porre un Limite Arbitrario Posto ad Minchiam (LAPM).
Questa mentalita' proviene dalla cultura americana: un paese che si chiama "U.S.A." fara' naturalmente un uso smodato di acronimi , credo sia fisiologico, ma specialmente (ed e' quello di cui stiamo parlando) , qualcuno ha avuto la geniale idea di dire "512K rotte bastano ed avanzano".
Ovvero, per collegare tra loro gli esistenti AS, sarebbero bastate 512K "strade" possibili.
Ovviamente la soluzione era piu' semplice: usando hardware normale, meno costoso (al grammo) del Leggendario Improbabile Clitoride di Marilyn Manson (LICMM) , e usando dischi grandi, e la normale memoria al costo di mercato, costruire un computer che gestisca un database di piu' di mezzo milione di righe non e' complicatissimo, nel 2014.
Ma se (ogni riferimento a Cisco e' puramente casuale) si intende vendere al cliente il minimo indispensabile ,e poi chiedere cifre tipiche del periodo di Cheope per ogni altra funzionalita' aggiuntiva, e parliamo di funzionalita' incredibili tipo "cancella un file in modo che sparisca davvero" o "scrivi una stringa dentro un file in modo che ci rimanga" , allora succede che si vendono dispositivi che, per funzionare, hanno bisogno di LAPM, Limiti Arbitrari Posti ad Minchiam.
Siccome cioe' vendiamo hardware di dimensione insufficiente rispetto al bisogno del cliente, a meno che il cliente non abbia il portafogli di Zuckerberg moltiplicato per Bill Gates, dovremo poi limitare il software per adattarlo ad un hardware piccolo perche' troppo costoso per il cliente.
Siccome cioe' vendiamo hardware di dimensione insufficiente rispetto al bisogno del cliente, a meno che il cliente non abbia il portafogli di Zuckerberg moltiplicato per Bill Gates, dovremo poi limitare il software per adattarlo ad un hardware piccolo perche' troppo costoso per il cliente.
Per poi far pagare (ovviamente) il supporto, che ti da' la patch che permette, nel 2014, di gestire una base dati piu' grande di 512K linee. Per la cronaca, una base dati di 512K linee la gestivate in Clipper nel 1995.
Sia chiaro: Cisco e' in buona compagnia, perche' quando si parla di quel tipo di equipaggiamento, la moda di "fai pagare a peso d'oro OGNI funzionalita', compresa la forza di gravita' e la legge di Maxwell" e' molto diffusa.
Ora, che cosa e' successo nel 512K day?
E' successo che la topologia della rete ha richiesto la propagazione di piu' di 512K rotte, o se preferite, destinazioni possibili. I vari CPE (Computing Path Engine) hanno iniziato a non avere TUTTE le possibili rotte, e ha cominciato ad avvenire un fenomeno strano: alla partenza i router calcolavano una rotta, con le mappe (incomplete) a loro disposizione. Tale rotta pero' non era davvero possibile per un altro calcolatore, che invece , avendo 512K rotte (ma non le stesse) ne calcolava di diverse.
Il risultato sono stati dei loop fastidiosissimi nei casi di reti multihomed, oscillazioni del traffico abbastanza preoccupanti, IX e DNS stracarichi.
Questo ha prodotto (e sta producendo) un certo numero di fastidi anche oggi. In realta' adesso le grandi case stanno fornendo le patch per il problema del 512K rotte , ovviamente - oh, sfiga - ai clienti sotto contratto , quindi il problema verra' superato, ma rimane il punto chiave.
QUANTI MALEDETTI LAPM (Limiti Arbitrari Posti ad Minchiam) ABBIAMO ANCORA IN GIRO PER I ROUTER CHE GESTISCONO LA RETE?
In quanti modi le case produttrici, pur di venderci dispositivi Proprietari Brevettati Costosi Inespandibili Chiusi (PBCIC) , hanno dovuto limitare le possibilita' del loro prodotto? Cambiare un disco con uno piu' grande? OVVOVE! Serve un hard disk CERTIFICATO con il nostro BRAND, che e' un disco normale che costa 100 volte tanto , altrimenti finisce il contratto di assistenza, che il 99.9% delle volte serve a fornire patch che superarino limiti dovuti al fatto che nel 2014 vi vendiamo macchine con 40Mb di memoria nvram, tanto non potete metterci un normale disco perche' altrimenti decade il contratto che vi serve perche'.....perche' serve un hard disk CERTIFICATO con il nostro BRAND, che e' un disco normale che costa 100 volte tanto , altrimenti finisce il contratto di assistenza, che il 99.9% delle volte serve a fornire patch che superarino limiti dovuti al fatto che nel 2014 vi vendiamo macchine con 40Mb di memoria nvram, tanto non potete metterci un normale disco perche' altrimenti decade il contratto che vi serve perche'.....perche' serve un hard disk CERTIFICATO con il nostro BRAND, che e' un disco normale che costa 100 volte tanto , altrimenti finisce il contratto di assistenza, che il 99.9% delle volte serve a fornire patch che superarino limiti dovuti al fatto che nel 2014 vi vendiamo macchine con 40Mb di memoria nvram, tanto non potete metterci un normale disco perche' altrimenti decade il contratto che vi serve perche'.....
Come architetto, la mia opinione a riguardo e': mandateli a cagare.
SMETTETE DI CONSIDERARE I COMPONENTI DI RETE COME MACCHINE CHE VENGONO DA UNA DIMENSIONE ECONOMICA DIVERSA RISPETTO A QUALSIASI ALTRO SERVER DEL VOSTRO DATACENTER. Un router e' un cazzo di calcolatore, e l'hardware che usa deve costare quanto QUALSIASI ALTRO calcolatore, e il software deve costare quanto QUALSIASI ALTRO software mission critical di pari SLA. Idem per il supporto. E la manutenzione deve essere possibile agli stessi costi e con gli stessi metodi di item management di QUALSIASI altro pezzo di hardware.
Comprate hardware sul mercato al solito prezzo di mercato. Fate un contratto di assistenza ai normali prezzi di mercato. Riempiteli di schede Ethernet , SDH, FC, e/o di quel che vi pare, al prezzo di mercato.. Installateci OS e hypervisor che preferite, OSS o meno. Metteteci sopra uno dei tanti OTTIMI software free per fare BGP e tutto quanto. Gli stessi che i furboni vi rivendono a peso d'oro col proprio brand. Metteteci uno strafottilione di CPU, memoria e storage. USate software senza limiti arbitrari se non l'hardware STARDARD che usate.
E non e' strano, perche' oggi le aziende come Cisco vendono anche soluzioni per il cloud, con USC e tutto quanto, e quindi hardware. Ditemi voi: perche' le componenti di rete dovrebbero avere una ratio economica diversa? Perche' devo poter espandere all'infinito storage e memoria quando parliamo di un cloud, e mi ritrovo con un limite da mezzo milione di record se parliamo di rete?C'e' uno speciale tipo di memoria associativa? Ottimo. Perche' non scala come qualsiasi altra cosa vendete?
E quando inizierete a dire al venditore "spiacente, ho gia' risolto con un harware di Pippo e OS di Caio e Applicativo di Sempronio" , vedrete che salteranno fuori degli sconti mai visti prima. Eccessivo? No.
Perche' non serve farlo sempre. Ma nel momento in cui lo fate UNA volta, gli mandate un messaggio chiaro: "ne avremmo pienotte le pallotte". E quando inizieranno a temere che prodotti che chiamano con disprezzo "low range" possano assalire la loro torre di avorio, vedrete che cambieranno musica.
E non e' strano, perche' oggi le aziende come Cisco vendono anche soluzioni per il cloud, con USC e tutto quanto, e quindi hardware. Ditemi voi: perche' le componenti di rete dovrebbero avere una ratio economica diversa? Perche' devo poter espandere all'infinito storage e memoria quando parliamo di un cloud, e mi ritrovo con un limite da mezzo milione di record se parliamo di rete?C'e' uno speciale tipo di memoria associativa? Ottimo. Perche' non scala come qualsiasi altra cosa vendete?
E quando inizierete a dire al venditore "spiacente, ho gia' risolto con un harware di Pippo e OS di Caio e Applicativo di Sempronio" , vedrete che salteranno fuori degli sconti mai visti prima. Eccessivo? No.
Perche' non serve farlo sempre. Ma nel momento in cui lo fate UNA volta, gli mandate un messaggio chiaro: "ne avremmo pienotte le pallotte". E quando inizieranno a temere che prodotti che chiamano con disprezzo "low range" possano assalire la loro torre di avorio, vedrete che cambieranno musica.
Certo, ai romani , che mediamente erano alti 1.65, una porta di due metri e venti faceva strano. Ma oggi diventa sempre piu' sensata, in alcuni paesi.
Ecco, vi sembrera' strano avere 10TB per le rotte. Ma tra due mesi no.
E se qualcuno pensa implementare una tabella da piu' di 512K rotte/destinazioni nel 2014 debba costarmi qualcosa come 150K euro/anno di licenza di supporto a router, beh, onestamente, con 512K per cliente ci sta dentro qualcuno che me la scrive prima e meglio con un btree su un sistema derivato da un OSS. Ogni riferimento a Juniper e' volutamente voluto.
E magari non metto nella merda mezza internet solo perche', secondo me, "mezzo milione di rotte bastano per chiunque". Dare la colpa a Verizon perche' ha splittato degli AS per farne tanti piu' piccoli non ha nemmeno senso: stavano cercando di ottimizzare. La colpa e' di chi ha concepito macchine con un Limite Arbitrario Posto ad Minchiam.
E ne avremmo pienotte le pallotte.
E ne avremmo pienotte le pallotte.