stringtranslate.com

Red de malla Bluetooth

Bluetooth Mesh es un estándar de redes de malla para computadoras basado en Bluetooth Low Energy que permite la comunicación de muchos a muchos a través de la radio Bluetooth. Las especificaciones de Bluetooth Mesh fueron definidas en las especificaciones Mesh Profile [1] y Mesh Model [2] por el Bluetooth Special Interest Group (Bluetooth SIG). Bluetooth Mesh fue concebido en 2014 [3] y adoptado el 13 de julio de 2017. [ 4] ( 13 de julio de 2017 )

Descripción general

Bluetooth Mesh es un estándar de red en malla que funciona según el principio de red de inundación . Se basa en los nodos que retransmiten los mensajes: cada nodo de retransmisión que recibe un paquete de red que

se puede retransmitir con TTL = TTL - 1. El almacenamiento en caché de mensajes se utiliza para evitar la retransmisión de mensajes vistos recientemente.

La comunicación se realiza en mensajes que pueden tener hasta 384 bytes de longitud, cuando se utiliza el mecanismo de Segmentación y Reensamblaje (SAR), pero la mayoría de los mensajes caben en un segmento, es decir, 11 bytes. Cada mensaje comienza con un código de operación, que puede ser de un solo byte (para mensajes especiales), 2 bytes (para mensajes estándar) o 3 bytes (para mensajes específicos del proveedor).

Cada mensaje tiene una dirección de origen y una de destino, que determinan qué dispositivos procesan los mensajes. Los dispositivos publican mensajes en destinos que pueden ser objetos individuales, grupos de objetos o cualquier cosa.

Cada mensaje tiene un número de secuencia que protege la red contra ataques de repetición.

Cada mensaje está cifrado y autenticado. Se utilizan dos claves para proteger los mensajes: (1) claves de red, asignadas a una única red en malla, (2) claves de aplicación, específicas para una determinada funcionalidad de la aplicación, por ejemplo, encender la luz o reconfigurarla.

Los mensajes tienen un tiempo de vida (TTL). Cada vez que se recibe y retransmite un mensaje, el TTL se reduce, lo que limita la cantidad de "saltos" y elimina los bucles infinitos.

Arquitectura

Bluetooth Mesh tiene una arquitectura en capas, con múltiples capas como se muestra a continuación.

Tipos de nodos

Los nodos que admiten diversas funciones se pueden formar en una topología de red de malla particular.

Límites teóricos

Se desconocen los límites prácticos de la tecnología Bluetooth Mesh. Algunos límites que están incorporados en la especificación incluyen:

Modelos de malla

A partir de la versión 1.0 de la especificación Bluetooth Mesh, [2] se han definido los siguientes modelos estándar y grupos de modelos:

Modelos de fundación

Los modelos de base se han definido en la especificación principal. Dos de ellos son obligatorios para todos los nodos de la malla.

Modelos genéricos

Sensores

Tiempo y escenas

Iluminación

Aprovisionamiento

El aprovisionamiento es un proceso de instalación del dispositivo en una red. Es un paso obligatorio para crear una red Bluetooth Mesh.

En el proceso de aprovisionamiento, un proveedor distribuye de forma segura una clave de red y un espacio de dirección único para un dispositivo. El protocolo de aprovisionamiento utiliza el intercambio de claves Diffie-Hellman de curva elíptica P256 para crear una clave temporal para cifrar la clave de red y otra información. Esto proporciona seguridad frente a un espía pasivo. También proporciona varios mecanismos de autenticación para proteger la información de la red frente a un espía activo que utiliza un ataque de intermediario durante el proceso de aprovisionamiento.

Una clave exclusiva de un dispositivo, conocida como "clave de dispositivo", se deriva de un secreto compartido de curva elíptica entre el proveedor y el dispositivo durante el proceso de aprovisionamiento. El proveedor utiliza esta clave de dispositivo para cifrar los mensajes de ese dispositivo específico.

La seguridad del proceso de aprovisionamiento se ha analizado en un artículo presentado durante la conferencia IEEE CNS 2018. [5]

El aprovisionamiento se puede realizar mediante una conexión GATT Bluetooth o publicidad utilizando el portador específico. [1]

Terminología utilizada en las especificaciones del modelo de malla Bluetooth y del perfil de malla

Implementaciones

Aprobado ("calificado") por Bluetooth SIG

Implementaciones de software libre y de código abierto

Las implementaciones de software libre y de código abierto incluyen lo siguiente:

Véase también

Referencias

  1. ^ ab "Especificación de perfil de malla Bluetooth®" (descarga en PDF) . Sitio web de tecnología Bluetooth . 2017-07-13 . Consultado el 2017-07-18 .
  2. ^ ab "Especificación del modelo de malla Bluetooth®" (descarga en PDF) . Sitio web de tecnología Bluetooth . 2017-07-13 . Consultado el 2017-07-18 .
  3. ^ "¿Limitación de alcance? ¿Qué limitación de alcance? Introducción a las redes en malla | Sitio web de tecnología Bluetooth". blog.bluetooth.com . Archivado desde el original el 2016-04-09 . Consultado el 2017-07-06 .
  4. ^ "Bajo consumo energético: Mesh | Sitio web de tecnología Bluetooth". www.bluetooth.com . Archivado desde el original el 1 de septiembre de 2017. Consultado el 18 de julio de 2017 .
  5. ^ Adomnicai, A.; Fournier, JJA; Masson, L. (30 de mayo de 2018). "Amenazas a la seguridad del hardware contra las redes Bluetooth Mesh". Conferencia IEEE sobre seguridad de las comunicaciones y las redes (CNS) de 2018. págs. 1–9. doi :10.1109/CNS.2018.8433184. ISBN 978-1-5386-4586-4. Número de identificación del sujeto  52004479.
  6. ^ "QD ID 98880 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  7. ^ "QD ID 98856 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  8. ^ "QD ID 99282 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  9. ^ "QD ID 101318 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  10. ^ "QD ID 101726 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  11. ^ "QD ID 102243 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de noviembre de 2017 .
  12. ^ "QD ID 106544 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de marzo de 2018 .
  13. ^ "QD ID 106546 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de marzo de 2018 .
  14. ^ "QD ID 104143 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de marzo de 2018 .
  15. ^ "QD ID 109370 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de abril de 2018 .
  16. ^ "QD ID 110168 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de abril de 2018 .
  17. ^ "QD ID 110202 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 5 de abril de 2018 .
  18. ^ "QD ID 110569 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 3 de mayo de 2018 .
  19. ^ Systems, eZ. "SDK nRF5 para Mesh/Bluetooth Low Energy/Products/Home - Soluciones inalámbricas de consumo ultrabajo de NORDIC SEMICONDUCTOR". www.nordicsemi.com . Consultado el 3 de mayo de 2018 .
  20. ^ "QD ID 115668 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de septiembre de 2018 .
  21. ^ "QD ID 116029 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de septiembre de 2018 .
  22. ^ "QD ID 115860 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 15 de septiembre de 2018 .
  23. ^ "QD ID 119229 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 7 de noviembre de 2018 .
  24. ^ "QD ID 119268 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 7 de noviembre de 2018 .
  25. ^ "QD ID 116593 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 21 de diciembre de 2018 .
  26. ^ "QD ID 122442 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 21 de diciembre de 2018 .
  27. ^ "QD ID 123056 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 21 de diciembre de 2018 .
  28. ^ "QD ID 124137 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 24 de enero de 2019 .
  29. ^ "QD ID 127926 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 14 de abril de 2019 .
  30. ^ "QD ID 127646 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 14 de abril de 2019 .
  31. ^ "QD ID 129750 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 6 de mayo de 2019 .
  32. ^ "QD ID 130160 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 6 de mayo de 2019 .
  33. ^ "QD ID 133403 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 19 de junio de 2019 .
  34. ^ "QD ID 128410 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 19 de junio de 2019 .
  35. ^ "QD ID 129291 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 27 de agosto de 2019 .
  36. ^ abc "QD ID 131934 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 27 de agosto de 2019 .
  37. ^ "QD ID 128246 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 27 de agosto de 2019 .
  38. ^ "QD ID 134454 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 27 de agosto de 2019 .
  39. ^ "QD ID 137436 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 27 de agosto de 2019 .
  40. ^ "QD ID 139259 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 12 de marzo de 2020 .
  41. ^ "QD ID 144808 | Launch Studio - Detalles de la lista". launchstudio.bluetooth.com . Consultado el 1 de junio de 2020 .
  42. ^ "Historia de BlueZ". BlueZ . 7 de septiembre de 2019.
  43. ^ "index : bluez.git – Pila de protocolos Bluetooth para Linux – Marcel Holtmann". kernel.org . 1991. Archivado desde el original el 2019-09-05 . Consultado el 2019-09-05 .
  44. ^ "index : bluez.git – Pila de protocolos Bluetooth para Linux – Marcel Holtmann". kernel.org . 1999. Archivado desde el original el 2019-09-05 . Consultado el 2019-09-05 .
  45. ^ "BlueZ » Blog Archive » Release of BlueZ 5.47". www.bluez.org . Consultado el 27 de octubre de 2017 .
  46. ^ "Detalles del producto calificado". Bluetooth SIG . Archivado desde el original el 2019-09-05 . Consultado el 2019-09-05 .
  47. ^ "apache/mynewt-core/LICENSE". GitHub . 2018-06-04. Archivado desde el original el 2019-09-05 . Consultado el 2019-09-05 .
  48. ^ "RN-1.2.0 - Apache Mynewt - Apache Software Foundation". cwiki.apache.org . Consultado el 2 de julio de 2018 .
  49. ^ "zephyrproject-rtos/zephyr/blob/master/LICENSE". GitHub . 2020-03-21. Archivado desde el original el 2019-09-05 . Consultado el 2020-03-21 .
  50. ^ "Notas de la versión de Zephyr Kernel 1.9.0". docs.zephyrproject.org . Consultado el 21 de marzo de 2020 .