Je fais un projet en utilisant un Arduino et un module ESP8266 exécutant le firmware esp-link - ce qui me donne la possibilité d'utiliser MQTT pour contrôler l'Arduino. J'avais plutôt regardé quelque chose comme un module XBee - mais ils sont sacrément chers par rapport à l'ESP8266! ( Si vous ne savez pas ce qu'est ESP8266 ou MQTT, ne vous inquiétez pas - il suffit de savoir qu'il utilise TCP sur Wi-Fi ).
Les paquets MQTT sont minuscules, donc le débit du réseau Wi-Fi ne sera jamais un problème. Mais, la latence et la fiabilité sont des facteurs importants. Le système MQTT utilise TCP, il devrait donc être suffisamment fiable - mais je ne suis pas sûr de la latence.
J'ai le choix d'utiliser une connexion 802.11b, .11g ou .11n pour le réseau utilisé par l'ESP8266. Y a-t-il quelque chose dans l'une de ces normes qui fait que l'un a une latence plus faible que les autres? Avec quoi devrais-je m'attendre à avoir les meilleures performances pour les paquets très petits et peu fréquents?
Réponses:
Tout d'abord, vous faites quelque chose de TRÈS bien que beaucoup de concepteurs et d'utilisateurs IoT ne font pas: vous considérez le fait que le fonctionnement doit être fiable et lié à la latence. Tout le monde ne le fait pas, et c'est pourquoi de nombreux appareils IoT sont vraiment mauvais.
Le choix de la norme entre 802.11 b / g / n n'influencera pas vraiment votre latence. Je suppose que nous avons des latences limites <10 ms, car tout cela "fonctionnera dans 99,5% des cas avec un bon matériel WiFi".
Si vous êtes dans un scénario lié à la latence, vous ne le ferez certainement pas
Si vous avez besoin de fiabilité, en revanche, vous ne devez pas
Donc, tout d'abord, définissez quelles sont vos exigences de latence et vos exigences de fiabilité. Vous devez avoir un morceau de papier qui dit
Ensuite, vous pouvez regarder les limites théoriques des systèmes, puis regarder les limites pratiques des implémentations de ceux qui correspondent à cela.
la source