Da settimane mesi sto debuggando, build dopo build, l’implementazione dello stack TCP/IP interno di uno dei nostri prodotti, in particolare problemi riguardo la chiusura anomala delle socket in presenza del linger time che si presenta solo in certi tipi di rete cellulare e anche problemi a livello applicativo, soprattutto FTP e HTTP.
Io uso un dominio .com, ho sfruttato l’offerta di aruba che offre domini .it, .com e .cloud con gestione DNS e email a 0.99 all’anno.
Il problema di questa implementazione e’ che perdi il vantaggio di avere sum types nel linguaggio: il compilatore ti dice (tramite warning o errore) quali casi non hai gestito nel tuo codice.
Se il linguaggio non lo supporta faccio a meno. E’ uno dei motivi per cui quando posso uso F# o Rust.
La settimana scorsa mi è arriva la prima edizione di TCP/IP Illustrated: Volume 1 in copertina rigida del leggendario W. Richard Stevens, le sue spiegazioni sono sempre chiare e intuitive.
Pur avendo studiato Reti di Calcolatori all’università, non ho mai fatto un vero e proprio deep-dive sul TCP/IP.