Journal
Ce journal contient 13 entrées.
libcoap: C-Implementation of CoAP
Implémentation en C du protocole CoAP (un protocole REST pour les machines fortement limitées en ressources, pour lequel il existe un mapping avec HTTP), décrit dans la RFC 7252.
En plus du protocole de base, cette librairie implémente les ressources observables (RFC 7641) et la découverte des ressources liées (RFC 6690). Elle implémente aussi certains brouillons, comme l'annuaire de ressources CoAP (https://tools.ietf.org/html/draft-ietf-core-resource-directory-10).
RFC 7252 : https://tools.ietf.org/html/rfc7252
RFC 7641 : https://tools.ietf.org/html/rfc7641
RFC 6690 : https://tools.ietf.org/html/rfc6690
En plus du protocole de base, cette librairie implémente les ressources observables (RFC 7641) et la découverte des ressources liées (RFC 6690). Elle implémente aussi certains brouillons, comme l'annuaire de ressources CoAP (https://tools.ietf.org/html/draft-ietf-core-resource-directory-10).
RFC 7252 : https://tools.ietf.org/html/rfc7252
RFC 7641 : https://tools.ietf.org/html/rfc7641
RFC 6690 : https://tools.ietf.org/html/rfc6690
Three Dead Protocols
Dans le même genre il y a TP, sur le port 17, qui renvoie bêtement un timestamp.
Sinon, cette phrase fait un peu tiquer :
“How does a client talk to a server and how does the server hear it?” Also in the code! It turns out COMPUTERS DO WHAT YOU TELL THEM TO DO.
Justement non, ce n'est pas dans le code, et encore moins dans un code en Python où les interactions clients/serveurs peuvent être simplifiées à l'extrême. Derrière ces bouts de code très simples, il y a toute la mécanique propre aux réseaux qui est est masquée par le système d'exploitation.
Sinon, cette phrase fait un peu tiquer :
“How does a client talk to a server and how does the server hear it?” Also in the code! It turns out COMPUTERS DO WHAT YOU TELL THEM TO DO.
Justement non, ce n'est pas dans le code, et encore moins dans un code en Python où les interactions clients/serveurs peuvent être simplifiées à l'extrême. Derrière ces bouts de code très simples, il y a toute la mécanique propre aux réseaux qui est est masquée par le système d'exploitation.
List of Free Learning Resources - vhf/free-programming-books - GitHub
Histoire de ne plus dormir pendant quelques mois, ce repository héberge une très longue liste de livres de programmation, en libre accès. On y trouve aussi des livres portant sur l'algorithmique, des méthodologie de développement, les bases de données, le data mining, les mathématiques, etc.
Les listes sont organisées par langue (plus de 20 langues) puis par langage ou domaine.
La liste anglaise est vraiment impressionnante :
https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md
Les listes sont organisées par langue (plus de 20 langues) puis par langage ou domaine.
La liste anglaise est vraiment impressionnante :
https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md
IP, TCP, and HTTP
Pour ceux qui chercheraient à démarrer sur des sujets aussi vastes que les protocoles IP (version 4), TCP et HTTP, je trouve cette page assez complète et plutôt claire. Certes, il y aurait encore beaucoup à ajouter, mais c'est un excellent début.
Gossip Algorithms (2008)
Un bon livre sur les algorithmes de "gossiping" (gossip = rumeur), qui servent à propager des messages dans les réseaux pair-à-pair mobiles par exemple.
Ces types de réseaux sont des ensembles non structurés de machines disposant d'une ou de plusieurs liaisons sans fil, et qui communiquent entre elles de manière opportuniste lorsqu'elles sont à proximité. La structure du réseau (routes, propagation des messages, etc.) émerge alors au fur et à mesure des interactions.
Evidemment, de nouveaux problèmes apparaissent avec ce type de réseaux : problèmes de routage, mobilité, communication sporadique, etc.
D'où le grand nombre de techniques et d'algorithmes spécifiques à ces réseaux.
Le livre est en accès libre, mais je fais une sauvegarde ici :
http://benjaminbillet.fr/media/gossipbook.pdf
Ces types de réseaux sont des ensembles non structurés de machines disposant d'une ou de plusieurs liaisons sans fil, et qui communiquent entre elles de manière opportuniste lorsqu'elles sont à proximité. La structure du réseau (routes, propagation des messages, etc.) émerge alors au fur et à mesure des interactions.
Evidemment, de nouveaux problèmes apparaissent avec ce type de réseaux : problèmes de routage, mobilité, communication sporadique, etc.
D'où le grand nombre de techniques et d'algorithmes spécifiques à ces réseaux.
Le livre est en accès libre, mais je fais une sauvegarde ici :
http://benjaminbillet.fr/media/gossipbook.pdf
Bitcoins the hard way: Using the raw Bitcoin protocol
Un excellent article qui détaille en profondeur le fonctionnement du protocole Bitcoin. C'est assez impressionnant, le protocole inclut même une sorte de mini-langage interpreté pour traiter les transactions.
Mémo autohébergement - Phyks.me
Un mémo très complet sur l'auto-hébergement.
Gestion de Pannes : l'algorithme des Généraux Byzantins
Un récapitulatif très clair et très bien écrit sur le problème des Généraux Byzantins :
Imaginons que plusieurs divisions de l'armée Byzantine campent autour de la cité ennemie, chacune d'entre elle étant dirigée par son propre général. La seule façon de communiquer dont ils disposent est l'utilisation de messagers. Après avoir observé l'ennemi, ils doivent se mettre d'accord sur un plan d'action commun. Le problème est que certains de ces généraux peuvent être des traîtres, qui tentent d'empêcher les généraux loyaux de se mettre d'accord.
Les généraux doivent donc disposer d'un algorithme pour garantir que tous les généraux loyaux se mettent d'accord sur le même plan d'action, et ce sans se préoccuper de ce que les traîtres choisissent de faire.
Imaginons que plusieurs divisions de l'armée Byzantine campent autour de la cité ennemie, chacune d'entre elle étant dirigée par son propre général. La seule façon de communiquer dont ils disposent est l'utilisation de messagers. Après avoir observé l'ennemi, ils doivent se mettre d'accord sur un plan d'action commun. Le problème est que certains de ces généraux peuvent être des traîtres, qui tentent d'empêcher les généraux loyaux de se mettre d'accord.
Les généraux doivent donc disposer d'un algorithme pour garantir que tous les généraux loyaux se mettent d'accord sur le même plan d'action, et ce sans se préoccuper de ce que les traîtres choisissent de faire.
Lexique de Termes et Acronymes Réseaux et Télécoms
Un travail impressionnant (un PDF de 376 pages) de listing et d'explication des termes propres aux réseaux et aux télécommunications, avec toutes sortes de détails, de schémas et de descriptions aidant à la compréhension. Le tout en français.
http://lexique.reseaux.free.fr/Fichiers/Lexique%20de%20Termes%20et%20Acronymes%20Reseaux%20&%20Telecom.pdf
http://lexique.reseaux.free.fr/Fichiers/Lexique%20de%20Termes%20et%20Acronymes%20Reseaux%20&%20Telecom.pdf
The sound of the dialup, pictured
Vous vous souvenez sans doute des bruits horribles qu'émettaient nos bons vieux modems RTC lors d'une connexion ? Voilà un exemple de handshake, avec spectrogramme et explications détaillées.
L'image en grand : http://i.imgur.com/Q3lKIr1.jpg
Et une description ici : http://www.windytan.com/2012/11/the-sound-of-dialup-pictured.html
L'image en grand : http://i.imgur.com/Q3lKIr1.jpg
Et une description ici : http://www.windytan.com/2012/11/the-sound-of-dialup-pictured.html
Sigfox : One network, A billion dreams - SigFox
SigFox est une entreprise toulousaine qui prépare l'installation d'un réseau sans fil émettant sur de très basses fréquences (Ultra Narrow Band) dans le but d'accroître significativement la portée des antennes (100 à 200km). Le débit est très faible, de 10 bits/s à 1 kbit/s, mais le coût pour les utilisateurs l'est aussi, de l'ordre de 3€/ans. Avec une telle infrastructure, de nombreux objets communicants pourront s'échanger des informations sur de très longues distances. Pour des capteurs embarqués, par exemple, quelques bits suffisent pour représenter une mesure.
Deprecated Linux networking commands and their replacements
Pour nous, les "vieux" de l'informatique qui utilisons encore ifconfig, arp, route, netstat et iwconfig.
C'est fini tout ça, et voilà une page pour se remettre à jour ;)
C'est fini tout ça, et voilà une page pour se remettre à jour ;)
Distributed Hash Tables | Linux Journal
Comprendre rapidement, mais dans le détail, les Distributed Hash Table (DHT) et leur fonctionnement.
Voir aussi : http://fr.wikipedia.org/wiki/Table_de_hachage_distribu%C3%A9e
Voir aussi : http://fr.wikipedia.org/wiki/Table_de_hachage_distribu%C3%A9e
Ce journal est basé sur Ginger, un gestionnaire de lien minimaliste développé dans le cadre d'un stage de perfectionnement. Pour plus d'informations, consulter le wiki consacré à mes projets personnels.