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