Untuk kesederhanaan, saya akan menggambarkan ini menggunakan pengaturan rumah pintar yang khas sebagai referensi, tetapi tidak ada yang benar-benar diperbaiki oleh aplikasi ini. Topologi tingkat tinggi sama-sama cocok untuk aplikasi pemantauan pertanian yang mencakup beberapa kilometer dengan ribuan atau sensor, melacak ruang parkir di kota, atau manajemen pencahayaan di gedung kantor.
Saya akan menangani masalah kira-kira dalam lapisan hierarki perangkat, yang mungkin berhubungan dengan meningkatnya kompleksitas instalasi, atau menarik dalam skenario kasus penggunaan tertentu. Berikut adalah diagram umum saya yang mencakup seluruh jaringan.
Tingkat
simpul Node individual dalam diagram saya adalah lampu yang terhubung WiFi dengan sakelar override fisik lokal. Node sering memiliki fungsi sensor dan kontrol, dan sejumlah kecil komputasi / penyimpanan lokal. Idealnya, simpul dapat bertindak secara mandiri. Node dapat mengambil kendali dari switch lokal, langsung melalui LAN (jika memiliki WiFi / Bluetooth), atau dari hub lokal atau cloud. Suatu node akan sering memelihara koneksi TCP yang persisten dengan hub atau cloud.
Satu lokasi biasanya berisi beberapa node, dengan fungsi yang berbeda, menggunakan berbagai opsi konektivitas. Rumah pintar mungkin mengumpulkan data suhu, aktivitas, dan video indoor / outdoor. Sensor jarak jauh dapat menggunakan koneksi yang berbeda ke internet. Node biasanya menggunakan mikrokontroler , seringkali pada frekuensi clock rendah.
Level Hub Di rumah pintar, mungkin ada beberapa hub (satu untuk setiap vendor perangkat), agregasi atau hierarki. Hub dapat digabungkan dalam router, atau berdiri sendiri. Hub bahkan tidak perlu aktif di jaringan (selain untuk meneruskan paket). Namun, hub mungkin bertanggung jawab untuk menyampaikan perintah ke sebuah node - perintah yang berasal dari node lain yang terhubung secara lokal atau dari server jarak jauh. Hub mungkin menerapkan penyampaian data, kompresi atau penyaringan data. Sungguh, hub hanyalah fasilitator. Saat ini, hub adalah bagian pertama dari jaringan yang memiliki kemampuan untuk menyediakan DNS publik, yang membuatnya dapat mempublikasikan informasi struktur jaringan ke sistem lengkap. Seperti yang dijelaskan dalam pertanyaan inihub sering diperlukan untuk menjembatani antara Wired / WiFi TCP-IP ke protokol radio berdaya rendah, seperti zigbee atau bluetooth-energi rendah . Hub biasanya dibangun di sekitar mikroprosesor , dan lebih sedikit daya-dibatasi dari node.
Terminal Roaming Atau dikenal sebagai ponsel cerdas Anda. Ini sering menjadi titik utama interaksi pengguna. Node sederhana dapat menghadirkan seluruh antarmuka pengguna melalui smartphone, begitu node dapat membuat tautan langsung atau termediasi dengan perangkat tertentu. Untuk mencapai hal ini secara mendasar membutuhkan mekanisme untuk membangun kepercayaan / kepemilikan / pasangan. Terminal dapat menetapkan apakah hub itu sendiri ada di jaringan lokal, jika perlu melakukan semua komunikasi melalui server eksternal, atau jika ia dapat mencari alamat IP yang memungkinkan perutean langsung ke hub 'rumah' itu. Skenario terakhir biasanya mengharuskan router dikonfigurasikan untuk penerusan porta.
Layanan cloudAdalah umum bagi layanan cloud untuk melakukan sebagian besar pekerjaan dalam stack, meskipun ini tidak selalu diperlukan (dan tidak semua implementasi akan memerlukan fungsi cloud apa pun). Fitur yang paling berguna yang dapat disediakan oleh server eksternal (ditujukan secara publik) adalah orkestrasi. Setiap node dan elemen perantara dari jaringan biasanya dapat berkomunikasi melalui saluran langsung ke server ini, dan server dapat dengan mudah menyampaikan pesan dari satu perangkat ke perangkat lainnya. Server dapat mengumpulkan data dan menyajikan visualisasi kepada pengguna. Berdasarkan konfigurasi pengguna, itu juga dapat meneruskan informasi ke pengguna lain (akses dan kontrol pemanas dapat diberikan kepada para tamu misalnya, peringatan banjir / kebakaran / intrusi dapat menggunakan opsi jaringan lain untuk menghasilkan peringatan). Cloud juga ditempatkan dengan baik untuk mengambil sumber data lainnya,