Matter использует IPv6 для операционной связи и использует адресацию IPv6 Unicast и Multicast для доступа к своим узлам и группам соответственно.
Низкое энергопотребление
Некоторые узлы Matter подключены к сети и имеют энергетические бюджеты, которые позволяют им постоянно держать радиомодули включенными. Другие типы узлов, например датчики, должны работать от батареи в течение многих лет, используя радиомодули в сетях с низким энергопотреблением, таких как Thread. Архитектура прокси-сервера вместе со Thread спящими конечными устройствами позволяет узлам с полным питанием обеспечивать функциональность как на уровне сети, так и на уровне приложений, что изолирует их дочерние узлы от энергоемких транзакций.
Фундаментальный аспект Matter заключается в том, что он работает как в сетевых средах с высокой пропускной способностью, таких как Wi-Fi и Ethernet, так и в средах с низкой задержкой и низкой пропускной способностью, таких как Thread. Если бы все пакеты Multicast из сети Wi-Fi передавались в сеть Thread, это привело бы к перегрузке сети и, возможно, к ее отказу. Thread предназначен для работы с IPv6 в ячеистых сетях с низким энергопотреблением и малой задержкой, а не для передачи данных с высокой пропускной способностью. Хотя время задержки при пинге ICMPv6 в локальной сети Thread обычно не превышает нескольких десятков миллисекунд RTT, общая пропускная способность ограничена 250 кбит/с на физическом уровне IEEE 802.15.4. С учетом повторной передачи пакетов и служебных данных максимальная пропускная способность составляет около 125 кбит/с. Другими словами, на порядки меньше, чем Wi-Fi.
Размер фреймов на физическом уровне IEEE 802.15.4 составляет 127 байт, но самый большой (и типичный) максимальный размер пакета (MTU) IPv6 в Thread – 1280 байт. Поэтому пакеты IPv6 часто приходится разбивать на несколько кадров PHY. Этот процесс описан в документе RFC4944.
Чтобы узнать больше, ознакомьтесь с разделом IPv6 Addressing в руководстве Thread на сайте openthread.io.
Пограничные маршрутизаторы
Как узлы могут сосуществовать в обеих транспортных средах, находясь в одной связанной группе? Хотя обе сети используют одни и те же учетные данные на уровне приложения, Matter технологии связи у них разные. В этом случае для подключения к сети требуется Thread Border Router (TBR). Пограничные маршрутизаторы – это тупиковые маршрутизаторы IPv6.
Тупиковые маршрутизаторы обеспечивают связь между тупиковыми и обычными сетями. Тупиковая сеть – это сеть "последней мили", которая обеспечивает внешнее подключение для своих участников, но не служит транзитным сетевым путем между другими сетями. Обычно тупиковые сети Matter основаны на Thread. Дополнительную информацию о тупиковых сетях можно найти в проекте RFC.
Поэтому пограничные маршрутизаторы должны обеспечивать связь между тупиковой сетью и смежной инфраструктурной сетью, то есть локальной сетью Wi-Fi или Ethernet. Они пересылают только пакеты, относящиеся к сети Thread.
Для этого Thread и смежным инфраструктурным сетям назначаются разные префиксы IPv6. Таким образом, BR пересылает только одноадресные пакеты в префикс IPv6 Thread или из него.
Пограничные маршрутизаторы также отвечают за:
- автоматически настраивает префиксы и маршруты IPv6 для Thread и смежных инфраструктурных сетей, чтобы хосты по обе стороны TBR могли обмениваться данными.
- публикация пакетов обнаружения mDNS DNS-SD от имени узлов Thread, чтобы их можно было обнаружить в смежной инфраструктурной сети.
Подробную информацию можно найти в руководстве по OpenThread Border Router (OTBR).
Многоадресная рассылка IPv6
Групповые сообщения также важны, поскольку они позволяют одновременно управлять несколькими узлами Matter через Multicast. Чтобы направлять этот трафик в сеть Thread, в Matter и Thread используется Unicastсхема адресации IPv6 на основе префиксовMulticast, определенная в RFC 3306.
Этот метод позволяет выбирать целевые узлы пакета Multicast на основе их общего префикса IPv6 Unicast.
Например, адрес Matter Multicast может выглядеть так:
FF35:0040:FD<Fabric ID>00:<Group ID>
В таблице 1 показано, как формируется этот адрес.
| Bits | Описание |
| 12 бит | 0xFF3 |
| 4 бита | 0x05
Область действия: локальный сайт. |
| 8 бит | 0x00
зарезервировано |
| 8 бит | 0x40
Указывает на 64-битный префикс. |
| 8 бит | 0xFD
Обозначает префикс ULA. |
| 56 бит; | Идентификатор связанной группы |
| 8 бит | 0x00 |
| 16 бит | Идентификатор группы |
Дополнительную информацию можно найти в разделе Multicast руководства по Thread и в самом RFC.
При формировании IPv6-адресов Multicast в них также включаются верхние 56 бит идентификатора Fabric ID. Важно, что область действия Multicast находится в пределах фабрики, а адреса Unicast используются совместно фабриками. У узлов с несколькими сетями может быть несколько адресов Multicast, определяющих перекрывающиеся группы узлов в каждой сети.
Порты
Для многоадресной рассылки Matter использует порт 5540.