URL-адреса Eddystone, SSDP і mDNS підтримують Physical Web

Зміст
URL-адреса Eddystone, SSDP і mDNS підтримують Physical Web

Вступ до Physical Web

Маяки підходять для всіх типів прикладних сценаріїв, які потребують зв’язку між повсякденними об’єктами та їх середовищем. Фізична мережа допомагає користувачам оптимально використовувати надані можливості. У цій статті, ми розповімо, як працює фізична мережа, і немає сумніву, що URL-адреса Eddystone відіграє важливу роль під час роботи Eddystone.

В 2014, Google представив свій відкритий проект Physical Web з метою ще тіснішого зв’язку віртуального світу з реальним. Автобусні зупинки, туристичні пам'ятки, предмети повсякденного вжитку або товари з супермаркету – в принципі, усі вони тепер можуть самостійно надсилати повідомлення на смартфони через маяки. Основою такого зв'язку є Bluetooth Low Energy (СТАЛИ) радіотехніка. Якщо предмет був оснащений маячком, він може надсилати повідомлення на смартфони, які підтримують BLE, наприклад, інформування про затримки, спеціальні пропозиції або дні кампанії.

У цьому контексті, фізична мережа забезпечує, між іншим, що користувачам не потрібно всюди встановлювати нові програми, але може переглядати новини в єдиному інтерфейсі. Його можна використовувати майже у всіх випадках, коли користувачі зацікавлені в інформації про своє середовище або коли необхідна взаємодія між ними та розумними об’єктами.. Щоб отримати краще уявлення про такі сценарії, три короткі приклади застосування.

Розумна автобусна зупинка: Автобусна зупинка неподалік могла повідомляти людям, які чекали, через їхні смартфони, коли прийде наступний автобус. В цьому випадку, фізичний веб-датчик BLE надсилає URL-адресу, яка веде на веб-сайт автобусної зупинки. Щоб відрізнити їх від інших, URL-адреса міститиме ідентифікаційний код зупинки.

Взаємодія з торговими автоматами: Торговий автомат із підключенням до Інтернету надсилає URL-адресу, за якою клієнти можуть отримати доступ до веб-сайту за допомогою функції оплати торгового автомата, якщо вони не мають із собою готівки. URL-адреса містить маркер, який динамічно змінюється після кожної покупки. Машина та веб-сайт, відкритий на смартфоні, підключаються до внутрішнього сервера провайдера за допомогою одного токена. Після оформлення покупки, сервер надсилає запит торговому автомату на видачу куплених товарів. Фізична мережа використовується для передачі URL-адреси на смартфон. Усі інші кроки відбуваються в Інтернеті, як зазвичай. Наприклад, так звані веб-сокети можна використовувати для двонаправленого зв’язку між машиною або веб-сайтом і сервером.

Моніторинг побутової техніки: Фізичну мережу також можна використовувати для контролю та моніторингу побутових приладів, таких як пральна машина. Кожен пристрій надсилає URL-адресу, яка посилається на IP-адресу, і доступ до неї можливий лише за умови підключення до локальної мережі. Видимість URL-адреси може бути обмежена пристроями в мережі, якщо замість BLE використовуються такі методи виявлення мережі, як mDNS і SSDP.

Фізична мережа або окремі програми

На відміну від інших інформаційних пропозицій (напр. інформація про розклад або туристична асоціація), де користувачі повинні встановити власну програму для кожного постачальника, фізична мережа інтегрує URL-адресу Eddystone, передану маяками, як пошуковий запит на сторінці. Тож користувачі можуть знаходити смарт-об’єкти у своєму середовищі лише за допомогою однієї програми та безпосередньо взаємодіяти з ними. Ще одна перевага: проактивні сповіщення не надсилаються. Користувач бачить список об'єктів у своїй зоні лише за бажанням.

На додаток до BLE, MOKOSmart, в якому працює автор, пропонує метод надсилання та отримання URL-адрес у локальних мережах, які базуються на простому протоколі виявлення служб (SSDP). За допомогою ССДП, можна обмежити видимість надісланої URL-адреси Eddystone у локальних мережах і таким чином підвищити безпеку з’єднання.

Physical Web доступний як проект за ліцензією Apache на MOKOSmart і включає реалізації для таких платформ, як Android, iOS, і Node.js. Фізичні веб-програми для Android та iOS доступні в Apple App Store і Google Play Store. Усі програми слід розуміти як прототипи, які дозволяють розробникам експериментувати з фізичною мережею на ранній стадії. В майбутньому, він має бути доступний на інших мобільних пристроях, крім смартфонів.

URL-адреса eddystone

Як працює фізична мережа?

Фізична мережа вважається розширенням Інтернету. Як і всі веб-технології, він відкритий для всіх і кожен може розвивати його далі. Оскільки система заснована на відображенні URL-адрес, він децентралізований і ніким не контролюється. URL Eddystone може вести до простих інформаційних сторінок, до більш складних, інтерактивних веб-програм або навіть рідних програм. Фізичний Інтернет можна порівняти з пошуком в Інтернеті:

Користувач викликає список об'єктів поблизу себе.
Відобразиться список URL-адрес.
Користувач вибирає один.
URL-адреса з’явиться у вікні браузера.
З технічної точки зору слід враховувати наступні аспекти:
1. Надіслати відгук
2. історія
3. Збережено
4. Спільнота

• Надсилання та отримання URL-адрес: Існує багато способів надсилання URL-адрес. Наразі фізична мережа підтримує передачу через BLE, mDNS, та SSDP (докладніше про це в наступному розділі).
Отримати основну інформацію з веб-сайтів: Фізичний веб-клієнт збирає знайдені URL-адреси та надсилає їх разом із усією відповідною інформацією (напр. сила сигналу) до веб-сервісу. Це, по черзі, викликає основну інформацію, наприклад назву, опис, і значок веб-сайту та повертає результати пошуку клієнту. Реалізація прототипу веб-сервісу доступна в репозиторії GitHub проекту.

• Відображення результатів: Рейтинг важливий, коли мова заходить про відображення багатьох пристроїв, які надсилають URL-адреси з цього регіону. Фізичний веб-клієнт може сортувати за силою сигналу, особисті переваги та інші критерії. Система повинна попередньо відсортувати спам. Так як у пошукових систем така ж проблема, їхній підхід можна використовувати для фізичної мережі. На дисплеї результатів, користувач натискає на об’єкт списку, і браузер відкриває відповідний веб-сайт.

• Як вже згадувалось, фізична мережа наразі знає три способи надсилання та отримання URL-адрес. Вони засновані на двох різних процесах: Bluetooth Low Energy і виявлення мережевих служб. Теоретично, інші методи можуть бути додані в майбутньому. Наприклад, розробники можуть використовувати технологію аудіо водяних знаків для вбудовування URL-адреси в аудіосигнал. В цьому випадку, фізичний веб-клієнт повинен бути розширений, щоб мати можливість отримувати аудіосигнали та декодувати URL-адреси, що містяться в них.

Ble Bluetooth і Eddystone

Перший проект фізичної мережі ВИКОРИСТОВУЄ BLE для надсилання URL-адреси до відповідного пакету. Технологія дуже енергоефективна, особливо якщо продукт, який його використовує, працює в режимі передачі (режим BLE без підключення), як у випадку фізичної мережі. Невеликі пристрої BLE можуть надсилати URL-адресу Eddystone за допомогою однієї клітинки кнопки протягом майже двох років.

URL-адреса Eddystone є одним із основних будівельних блоків Physical Web. Як специфікація протоколу, Eddystone визначає формат повідомлення Bluetooth з низьким енергоспоживанням для безконтактних маяків на основі основної специфікації Bluetooth. У ньому описано різні типи кадрів, які маяки можуть використовувати окремо або в комбінації: Eddystone-UID, Eddystone-TLM, і вищезгадану URL-адресу Eddystone, який є єдиним, що стосується фізичної мережі.

Повідомлення Eddystone складається з двох основних типів даних у блоці рекламних даних (нашої ери): UUID і служба даних. Обидва типи використовують 16-бітний універсальний унікальний ідентифікатор (UUID) що відповідає стандартам Bluetooth. Сервісом UUID, зарезервованим для Eddystone, є 0xFEAA. Це забезпечує ефективний механізм, крос-платформне фонове сканування, яке дозволяють як Android, так і iOS. Наступні байти блоку AD містять дані, характерні для кадру. Перший байт визначає тип кадру. Зараз використовуються лише чотири старші біти. Чотири нижніх зарезервовані для подальшого використання і повинні мати значення 0000.

Кадр Eddystone UID надсилає унікальний 16-байтовий ідентифікатор маяка, який складається з 10-байтового ідентифікатора простору імен і 6-байтового ідентифікатора екземпляра. Хоча ідентифікатор простору імен можна використовувати для групування певного набору маяків, ідентифікатор екземпляра корисний для ідентифікації пристроїв у групі.

Якщо ви подивитеся на концепцію Eddystone UID, він працює подібно до iBeacons, представлених Apple у 2013. Пакет iBeacon містить 16 байтів, близьких до UUID, 2-байтовий основний домен, і 2-байтовий вторинний домен. Пакети iBeacon містять 16-байтовий безконтактний UUID, 2-байтове головне та 2-байтове другорядне поля. Proximity UUID можна використовувати для ідентифікації організації або програми, наприклад компанії. Основні та додаткові поля дозволяють більш детально призначити ідентифікатор, визначений UUID, як і у випадку з гілкою. Зараз Eddystone-TLM надсилає телеметричну інформацію, наприклад стан батареї, температуру пристрою та кількість пакетів, надісланих маяком.

Кадр URL-адреси Eddystone надсилає зменшену версію URL-адреси, згенеровану кодуванням. Стиснення дає змогу передавати більше даних за допомогою обмеженого рекламного пакету. Формат першого 11 байтів (байтів 0 через 10) повідомлення Eddystone є однаковим для всіх типів кадрів. Як встановлюються наступні байти (починаючи з байта 11), однак, залежить від типу рами:

• Байт 11 визначає тип кадру. Його значення для URL-фреймів Eddystone становить 0x10.
• Байт 12 визначає потужність TX. Це 8-розрядне ціле число зі знаком, як описано в характеристиках Bluetooth рівня потужності передачі

Виявлення мережевих служб

Окрім маяків BLE та URL-адреси Eddystone, Методи виявлення мережі, такі як SSDP і mDNS, пропонують можливість передачі URL-адрес. Ви також можете надсилати URL-адреси на пристрої в локальних мережах. Метод має дві переваги перед BLE: Спочатку, лише користувачі, які ввійшли в локальну мережу, можуть бачити URL-адреси, і друге, немає обмеження на довжину URL-адреси, як у BLE.

Використання Network Discovery для фізичної мережі має сенс у ситуаціях, коли безпека та конфіденційність відіграють ключову роль. Прикладом може бути зона «розумного дому», якщо доступ до пристроїв повинен бути обмежений лише для людей з однієї родини.

Простий протокол виявлення служб (SSDP) це мережевий протокол для реклами та виявлення служб і пристроїв у локальних мережах. Він утворює рівень виявлення універсального протоколу plug-and-play (UPnP) і допомагає оприлюднити нещодавно додані пристрої, визначені як контрольні точки. Це також дозволяє шукати пристрої та певні служби.

Такі функції базуються на двох типах повідомлень SSDP. Спочатку, є рекламне повідомлення, яке пристрій надсилає, щойно його додають до мережі. Повідомлення на стандартну багатоадресну адресу та порт 239.255.255.250:1900 це ssdp: живий. Контрольні точки прослуховують порт, щоб отримувати повідомлення SSDP і таким чином мати можливість виявляти нові пристрої та служби. До того, як пристрої UPnP зникнуть з мережі або стануть недоступними, вони повинні надіслати повідомлення ssdp: до побачення з тією ж груповою адресою та відповідним портом.

З іншої сторони, є функція виявлення, в якій SSDP дозволяє контрольним точкам знаходити цікаві пристрої та служби навіть у мережі. В цьому випадку, контрольна точка надсилає пошуковий запит на багатоадресну адресу та порт 239.255.255.250:1900. Пристрої UPnP, які підтримують запитані послуги, надсилають одноадресну відповідь на адресу контрольної точки, яка надіслала запит. Формат відповіді схожий на повідомлення SSDP типу ssdp: живий.

Physical Web підтримує SSDP для надсилання та отримання URL-адрес у локальних мережах. Fraunhofer FOKUS розробив концепцію та реалізацію відповідного механізму. Реалізація включає інтеграцію SSDP у фізичну веб-програму для Android та iOS для отримання URL-адрес через протокол. В додаток, кросплатформний інструмент на основі Node.js доступний для надсилання URL-адрес таким же чином.

При використанні SSDP, фізичний веб-пристрій, підключений до локальної мережі, надсилає наступний ssdp: живе повідомлення, як тільки воно стане доступним у мережі:

ПОВІДОМИТИ * HTTP / 1.1 ХОСТ: 239.255.255.250:1900
КЕШ-КОНТРОЛЬ: max-age = секунди до закінчення терміну дії реклами
МІСЦЕЗНАХОДЖЕННЯ: URL-адреса веб-сторінки для розміщення реклами
NT: урна: physical-web-org: пристрою: Базовий: 1
НТС: ssdp: живий
СЕРВЕР: ОС / версія UPnP / 1.0 продукт / версія
УСН: UUID реклами
Метод NOTIFY у першому рядку вказує, що це рекламне повідомлення. У той час як заголовок LOCATION визначає фізичну веб-URL, яка надсилається, заголовок NT визначає тип пристрою, що у випадку фізичної мережі є urn: physical-web-org: пристрою: Базовий: 1. Ssdp: активне значення заголовка NTS вказує на те, що фізичний веб-пристрій доступний. Захист також важливий від маніпуляцій, щоб запобігти отриманню користувачем неправдивої інформації про стан поштової скриньки, заголовок USN надає унікальне ім’я, яке можна використовувати для ідентифікації пристрою. Фізичні веб-клієнти, що працюють на смартфонах або планшетах, прослуховують багатоадресну адресу та порт 239.255.255.250:1900 і фільтрувати фізичні веб-повідомлення SSDP, перевіряючи значення заголовка NT. Потім ви можете проаналізувати повідомлення SSDP і прочитати значення заголовка LOCATION, який містить надіслану URL-адресу.

Фізичні веб-пристрої повинні надіслати такий ssdp: перед зникненням з мережі:

ПОВІДОМИТИ * HTTP / 1.1 ХОСТ: 239.255.255.250: 1900
NT: урна: physical-web-org: пристрою: Базовий: 1
НТС: ssdp: бувай
УСН: UUID реклами
ssdp: bye-bye пояснює, що відтепер фізичний веб-пристрій більше не доступний. Значення заголовка USN залишається таким же, як і в ssdp: живе повідомлення. Клієнти фізичної мережі, які отримують таке повідомлення, шукають URL-адресу, пов’язану з USN, а потім видаляють її зі списку.

 

Написано --
Нік Хе
Нік Хе
Нік, досвідчений менеджер проектів у нашому R&D відділення, приносить багатий досвід MOKOSMART, раніше працював інженером проекту в BYD. Його експертиза в R&D привносить всебічні навички в управління проектом IoT. З суцільним фоном, що охоплює 6 років в управлінні проектами та отримати такі сертифікати, як PMP та CSPM-2, Нік чудово координує роботу відділів продажів, інженерія, тестування, і маркетингові групи. Проекти пристроїв IoT, у яких він брав участь, включають Beacons, Пристрої LoRa, шлюзи, і розумні розетки.
Нік Хе
Нік Хе
Нік, досвідчений менеджер проектів у нашому R&D відділення, приносить багатий досвід MOKOSMART, раніше працював інженером проекту в BYD. Його експертиза в R&D привносить всебічні навички в управління проектом IoT. З суцільним фоном, що охоплює 6 років в управлінні проектами та отримати такі сертифікати, як PMP та CSPM-2, Нік чудово координує роботу відділів продажів, інженерія, тестування, і маркетингові групи. Проекти пристроїв IoT, у яких він брав участь, включають Beacons, Пристрої LoRa, шлюзи, і розумні розетки.
Поділіться цією публікацією
Розширення ваших можливостей на зв’язку Потрібно з MOKOSmart loT Device Solutions!