Widzę kilka pytań dotyczących szczegółów sieci IoT, w tym na przykład na temat przekierowywania portów . Myślę, że warto zapytać o to, co można by uznać za typową architekturę bazową dla ogólnego systemu IoT.
Mamy kilka pytań dotyczących sieci po stronie czujnika, czy sieci kratowe są odpowiednie itp. W przypadku tego pytania mniej mnie to interesuje - można je uogólnić jako połączenia bezprzewodowe krótkiego zasięgu. Nie jestem również szczególnie zainteresowany szczegółami sieci lokalnej między węzłami, z wyjątkiem przypadków, gdy szczegóły wpływają bezpośrednio na ogólną topologię sieci.
Nie szukam wyczerpującego opisu, tylko uchwycenie obecnej normy. Jaka ogólna topologia sieci jest obecnie w typowym użyciu i zapewnia dobry skalowalny model obejmujący co najmniej następujące funkcje:
- sterowanie lokalne, sieciowe
- zdalny dostęp
- węzły czujników w wielu lokalizacjach
- agregacja danych (do uczenia maszynowego itp.)
- udostępnianie danych (zaufani sąsiedzi itp.)
- odporność na awarie (zazwyczaj myślenie WAN)
Nie szukam tutaj wynalazków ani odpowiedzi, które sięgają głęboko do konkretnych przypadków narożnych. Chcę również wykluczyć bezpieczeństwo, chyba że jakikolwiek aspekt topologii jest niezbędny dla dobrego bezpieczeństwa (co, jak zakładam, jest tak oczywiste, że nie należy do powyższej listy funkcji)
źródło
Odpowiedzi:
Dla uproszczenia opiszę to za pomocą typowej konfiguracji inteligentnego domu jako odniesienia, ale aplikacja tak naprawdę nie naprawia niczego. Topologia wysokiego poziomu jest równie odpowiednia dla aplikacji do monitorowania farmy obejmującej kilka kilometrów z tysiącami lub czujnikami, śledzenia miejsc parkingowych w mieście lub zarządzania oświetleniem w budynku biurowym.
Zajmę się tym problemem w przybliżeniu w warstwach hierarchii urządzeń, co może odpowiadać coraz większej złożoności instalacji lub wciągnięciu konkretnych scenariuszy przypadków użycia. Oto mój ogólny schemat obejmujący całą sieć.
Poziom węzła Indywidualny węzeł na moim schemacie to lampa podłączona do WiFi z lokalnym fizycznym przełącznikiem obejścia. Węzeł często ma zarówno funkcje czujnikowe, jak i kontrolne oraz niewielką ilość lokalnych obliczeń / pamięci. Idealnie węzeł może działać autonomicznie. Węzeł może przejąć kontrolę z przełączników lokalnych, bezpośrednio przez sieć LAN (jeśli ma WiFi / Bluetooth) lub z lokalnego koncentratora lub chmury. Węzeł często utrzymuje stałe połączenie TCP z koncentratorem lub chmurą.
Jedna lokalizacja zazwyczaj zawiera kilka węzłów, z różnymi funkcjami, przy użyciu różnych opcji łączności. Inteligentny dom może gromadzić dane dotyczące temperatury wewnętrznej / zewnętrznej, aktywności i wideo. Zdalne czujniki mogą korzystać z różnych połączeń z Internetem. Węzły zwykle używają mikrokontrolerów , często przy niskich częstotliwościach zegara.
Poziom koncentratora W inteligentnym domu może istnieć kilka koncentratorów (jeden dla każdego dostawcy urządzenia), agregacja lub hierarchia. Koncentrator można połączyć w routerze lub autonomicznie. Koncentrator nie musi nawet być aktywny w sieci (poza przekazywaniem pakietów). Koncentrator może być jednak odpowiedzialny za przekazywanie poleceń do węzła - poleceń pochodzących z innych lokalnie połączonych węzłów lub ze zdalnego serwera. Koncentrator może wdrożyć przechowywanie danych, kompresję lub filtrowanie danych. Naprawdę, hub jest tylko facylitatorem. Dzisiaj hub jest pierwszą częścią sieci, która ma możliwość zapewnienia publicznego DNS, co umożliwia publikowanie informacji o strukturze sieci w pełnym systemie. Jak opisano w tym pytaniuhub jest często konieczny do połączenia mostu pomiędzy przewodowym / WiFi TCP-IP a protokołem radiowym małej mocy, takim jak zigbee lub Bluetooth o niskiej energii . Koncentratory są zwykle zbudowane wokół mikroprocesorów i są mniej obciążone energią niż węzły.
Terminale mobilne zwane inaczej smartfonem. Są to często główny punkt interakcji użytkownika. Prosty węzeł może prezentować cały interfejs użytkownika za pośrednictwem smartfona, gdy węzeł może ustanowić bezpośrednie lub pośredniczące połączenie z określonym urządzeniem. Osiągnięcie tego zasadniczo wymaga mechanizmu ustanawiania zaufania / własności / parowania. Terminal może ustalić, czy jego własny koncentrator znajduje się w sieci lokalnej, czy musi wykonywać całą komunikację za pośrednictwem zewnętrznego serwera, czy też może wyszukać adres IP, który umożliwia bezpośrednie przekierowanie do jego „macierzystego” koncentratora. Ten drugi scenariusz zazwyczaj wymaga skonfigurowania routera do przekierowywania portów.
Usługa chmuryUsługa w chmurze często wykonuje większość pracy na stosie, chociaż nie zawsze jest to konieczne (i nie wszystkie implementacje wymagają jakiejkolwiek funkcji chmury). Najbardziej użyteczną funkcją, którą może zapewnić zewnętrzny (publicznie adresowany) serwer, jest aranżacja. Każdy węzeł i element pośredni sieci zazwyczaj jest w stanie komunikować się bezpośrednio z tym kanałem do serwera, a serwer może z łatwością przekazywać wiadomości z jednego urządzenia do drugiego. Serwer może agregować dane i przedstawiać wizualizacje użytkownikowi. W zależności od konfiguracji użytkownika może także przekazywać informacje innym użytkownikom (goście mogą uzyskać kontrolę dostępu i ogrzewania, na przykład ostrzeżenia o zalaniu / pożarze / włamaniu mogą wykorzystywać inne opcje sieciowe do generowania alertów). Chmura jest również dobrze przygotowana do przyjmowania innych źródeł danych,
źródło