Jesteśmy na wczesnym etapie planowania projektu IoT.
Jednym z problemów, z którym borykamy się, jest to, w jaki sposób nasz serwer internetowy może uzyskać dostęp do każdej jednostki naszego projektu IoT i wdrażać aktualizacje kodów, wiadomości ... itd.
Martwię się o to, ponieważ oczywiście każda jednostka IoT znajduje się we własnej sieci WiFi, która jest zamknięta z założenia.
W jaki sposób nasz serwer, niezbędny element naszej konfiguracji, nazywa wszystkie swoje „dziećmi” w ramach ich odpowiednich zamkniętych sieci?
remote-access
sisko
źródło
źródło
Odpowiedzi:
Wygląda na to, że powinieneś szukać kompletnej platformy do zarządzania urządzeniami IoT - istnieje zbyt wiele skomplikowanych aspektów skalowalności, bezpieczeństwa, udostępniania i aktualizacji oprogramowania układowego, aby było to rozsądne, aby spróbować opracować ją od zera. Wybierz platformę, która wykorzystuje otwarte standardy.
Aby odpowiedzieć na twoje pytanie bardziej bezpośrednio, każdy punkt końcowy zazwyczaj otwiera bezpieczne połączenie TLS z serwerem w chmurze (używając czegoś takiego jak CoAP, LWM2M lub MQTT w zależności od celu połączenia), więc połączenia są prawie zawsze inicjowane z punktu końcowego. Tylko w przypadku IPv6 lub szczególnie szczególnych przypadków użycia chmura może inicjować połączenie bez żadnej pomocy ze strony punktu końcowego.
źródło
Jednym dobrym sposobem na dostęp do urządzeń rozproszonych w sieciach prywatnych jest użycie MQTT do komunikacji. W MQTT serwer publikuje wiadomości na tematy, a urządzenia mogą je subskrybować, a tym samym otrzymywać powiadomienia o pojawieniu się nowych treści na dany temat.
W Internecie dostępne są rozwiązania , które możesz wybrać albo wdrożyć własne.
Główną ideą jest stworzenie tematu dla np. „Aktualizacji oprogramowania układowego”, a albo łącze albo sam pakiet pojawia się jako odpowiedź. Wiadomości MQTT do oznaczania wiadomości jako przeczytanej powodują, że aktualizacja odbywa się tylko raz.
źródło