E.3.1 – Evaluación de tecnologías WPAN para entornos críticos

2 de diciembre de 2015

Línea de I+D en Comunicaciones Instituto Tecnológico de Informática

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Resumen

El Instituto Tecnológico de Informática cuenta con un Plan de Actividades de carácter no económico (PROMECE) que tiene como objetivo general potenciar las líneas de investigación en las que trabaja el Instituto, enmarcadas dentro del ámbito de las Tecnologías de la Información y las Comunicaciones (TIC). Dentro de la Línea de I+D en Comunicaciones, se trabaja en el diseño e implementación de soluciones de redes de comunicaciones e Informática industrial para telecontrol, tele-monitorización, sensores y eficiencia energética, abordando los retos que generan las redes heterogéneas, los sistemas inalámbricos ad hoc, WSN y en general el Internet de las Cosas (IoT) y (M2M). El presente documento resume las tareas realizadas para la validación de las tecnologías WPAN en aplicaciones con altos requisitos de en términos de robustez, fiabilidad, latencias, etc; en entornos adversos (ruido, interferencias, pérdidas) como los industriales. Para ello se realiza un análisis de las tecnologías existentes, una selección de pila de comunicaciones candidata para las pruebas, su implementación en hardware real y las pruebas de validación.

Abstract

Instituto Tecnológico de Informática has a non-economic Activities Plan (PROMECE) whose general objective is to strengthen the research lines in which the Institute works, within the scope of Information and Communication Technologies (ICT). Within the Communications R&D Line, we work on the design and implementation of solutions based on communication technologies and industrial computing for telecontrol, telemonitoring, sensors and energy efficiency, facing challenges such as heterogeneous networks, ad hoc Wireless systems, WSN and in general the (IoT) and Machine to Machine (M2M). This document summarizes the tasks carried out to validate the WPAN technologies for applications with high requirements in terms of hardiness, reliability, latency, etc. in harsh environments (noise, interferences, losses) such as the industrial. This includes the analysis of existing technologies, the selection for the candidate protocol stack, its implementation in real hardware and the validation tests.

2

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Este documento está bajo una Licencia Creative Commons Atribución-NoComercial- SinDerivar 4.0 Internacional. Se permite libremente copiar, distribuir y comunicar públicamente esta obra siempre y cuando se reconozca la autoría y no se use para fines comerciales. No se puede alterar, transformar o generar una obra derivada a partir de esta obra.

Los derechos de autor de todas las marcas, nombres comerciales, marcas registradas, logos e imágenes pertenecen a sus respectivos propietarios.

3

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

ÍNDICE

1. Introducción ...... 8 1.1 Descripción del trabajo ...... 8 1.2 Estructura del documento...... 9 2. Análisis y selección de tecnologías de comunicaciones inalámbricas de corto alcance (WPAN)...... 10 2.1 IEEE 802.15 Working Group para WPAN ...... 11 2.1.1. IEEE 802.15.1 / Bluetooth ...... 12 2.1.2. IEEE 802.15.4 ...... 17 2.1.3 IEEE 802.15.4e ...... 22 2.2. Otras tecnologías WPAN ...... 28 2.2.1. RFID ...... 29 2.2.2. IEEE 1902.1 / RuBee ...... 31 2.2.3. Comunicaciones ópticas ...... 33 2.2.4. Comunicaciones sónicas ...... 34 2.3. Selección de tecnología base ...... 34 3. Diseño de pila de comunicaciones orientada a IP ...... 37 3.1 Capa de Red ...... 37 3.2 Capa de Transporte ...... 40 3.3 Capa de Aplicación ...... 41 3.4 Modelo de Información ...... 45 4. Implementación de la pila de comunicaciones ...... 45 4.1 Hardware ...... 45 Zolertia Z1...... 45 OpenMote-CC2538 ...... 46 Seed Eye 47 OPENLAB 802.15.4 radio ...... 48 4.2 Software ...... 48 OpenWSN ...... 48 49 4.3 Selección de equipos y software: ...... 50

4

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

5. Pruebas y evaluación ...... 51 5.1 Evaluación de protocolo MAC, topologías y encaminamiento ...... 51 5.1.1 Caso 1 ...... 51 5.1.2 Caso 2 ...... 54 5.1.3 Caso 3 ...... 56 5.2 Evaluación de protocolo de aplicación publish/subscribe y modelo de datos ...... 59 5.2.1 Modelo de datos ...... 59 5.2.2 Casos de prueba sobre MQTT ...... 60 5.2.3 Resultados ...... 63 6. Validación y patentado de tecnologías o herramientas ...... 63

5

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

ÍNDICE DE FIGURAS Y TABLAS

Figura 1: Agrupación de tecnologías inalámbricas según su rango de alcance ...... 8 Figura 2. Pila de protocolos de IEEE 802.15.1 ...... 14 Figura 3 Ejemplo de scatternet, con nodos funcionando como maestros (M), esclavos(S) y aparcados (P)...... 15 Figura 4 Formato de paquete en Bluetooth ...... 16 Figura 5 Mapa espectral y modulaciones para IEEE 802.15.4...... 18 Figura 6 Estructura de la trama a nivel físico...... 18 Figura 7. Ejemplo de topologías en estrella y peer-to-peer...... 20 Figura 8. Estructura de la supertrama MAC...... 21 Figura 9. Formato de la trama general MAC...... 22 Figura 10. Formato de direcciones 802.15.4 ...... 22 Figura 11. LLDN está diseñado para topologías en estrella ...... 24 Figura 12. Orden y utilización de los slots en una supertrama LLDN, visto en [5] ...... 24 Figura 13. Estructura de la supertrama ...... 25 Figura 14. IEEE 802.15.4e detailed time slot according to the standard ...... 26 Figura 15. Mecanismo de salto de frecuencia en TSCH ...... 27 Figura 16. Enlaces TSCH con el mapeo slot/canal correspondiente ...... 28 Figura 17. Frecuencias de trabajo de los sistemas RFID ...... 29 Figura 18. Utilización de las tecnologías RFID según sectores ...... 29 Figura 19. Bloques de un sistema RFID típico (fuente: National Instruments 2010)...... 30 Figura 20. Mapa de memoria de una etiqueta RuBee ...... 32 Figura 21. Ubicación de la banda de luz visible en el espectro electromagnético ...... 33 Figura 22. Comparativa entre ZigBee, WiFi y Bluetooth ...... 35 Figura 23. Comparación de cabeceras antes y después de la compresión...... 39 Figura 24. Diagrama funcional de la arquitectura "sockets de Internet" ...... 40 Figura 25. MQTT example of message exchange...... 43 Figura 26 ejemplos de mensajes MQTT ...... 44 Figura 27. Hardware Zolertia Z1 ...... 46 Figura 28 Openmote CC2538 ...... 47 Figura 29 SEED EYE hardware ...... 47 Figura 30 OpennLab Raspberry Pi 802.15.4 ...... 48 Figura 31. Captura del simulador de redes de OpenWSN OS ...... 49 Figura 32. Captura del simulador de redes WSN de Contiki ...... 50 Figura 33. Topología física caso 1 ...... 51 Figura 34. Planificación TDMA en caso 1 ...... 52 Figura 35. Grafo inicial de la red caso 1 ...... 52 Figura 36. Degradación de enlaces en simulador, caso 1 ...... 53 Figura 37. Nuevo grafo de la red tras degradación de enlace, caso 1 ...... 53

6

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 38. Topología de red física, caso 2 ...... 54 Figura 39. Planificación TDMA en caso 2 ...... 54 Figura 40. Salida de la consola mostrando paquetes de control intercambiados ...... 55 Figura 41. Captura de analizador de tráfico con intercambio de paquetes en la red...... 55 Figura 42. Topología de red física, caso 3 ...... 56 Figura 43. Planificación temporal de cada nodo, caso 3 ...... 56 Figura 44. Grafo de topología lógica de la red, caso 3 ...... 57 Figura 45. Capturas del simulador, mostrando estadísticas de cada nodo de la red ...... 59 Figura 46. Paquetes recibidos según pérdidas de canal para Test 6 ...... 63

Tabla 1. Otras tecnologías inalámbricas, propietarias o sin normalizar...... 10 Tabla 2. Tabla de tecnologías base IEEE 802.15...... 11 Tabla 3 Normas de la ETSI sobre dispositivos SRD ...... 12 Tabla 4 Rango de alcance de Bluetooth según clase ...... 13 Tabla 5 Tasa de transferencia según versión ...... 13 Tabla 6 Descripción de algunos parámetros TSCH ...... 27 Tabla 7 Pila de protocolos seleccionada ...... 37 Tabla 8. Lista de tipos de mensaje MQTT ...... 45 Tabla 9. Resumen de plataformas HW y SW empleadas...... 50 Tabla 10. Test MQTT configuración 1 ...... 60 Tabla 11. Test MQTT configuración 2 ...... 61 Tabla 12. Test MQTT configuración 3 ...... 61 Tabla 13. Test MQTT configuración 4 ...... 61 Tabla 14. Test MQTT configuración 5 ...... 62 Tabla 15. Test MQTT configuración 6, con ruido variable ...... 62 Tabla 16. Resumen de resultados pruebas MQTT ...... 63

7

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

1. Introducción

1.1 Descripción del trabajo

Entre los diversos criterios de clasificación para las redes de sensores se encuentra el de su extensión o alcance sobre un área geográfica. En el caso de esta línea de investigación, se estudian las redes WPAN, empleadas para cubrir áreas a nivel local (redes de sensores en edificios, en hogares, oficinas, zonas urbanas, etc.).

Estas redes de sensores para áreas locales o metropolitanas generan un nuevo paradigma de comunicaciones: se tiene un elevado número de sensores en un área geográfica pequeña (alta densidad de nodos), por lo que las comunicaciones se optimizan si los sensores crean enlaces de comunicaciones entre ellos mismos, generando una malla que cubre todos los sensores de la red, y dando conectividad de todos ellos con la central operativa que debe recibir esta información, en lugar de generar largos enlaces punto a punto entre cada sensor y la central. Puesto que las distancias necesarias para realizar comunicaciones serán de pocos metros, la tecnología de radio necesaria puede simplificarse, lo necesario para que dos sensores puedan comunicar entre sí y redirigir los mensajes de sus sensores vecinos. De esta forma se optimiza el hardware necesario, reduciendo el coste por unidad y el consumo energético de los equipos.

Figura 1: Agrupación de tecnologías inalámbricas según su rango de alcance Para entornos locales pueden encontrase las tecnologías conocidas como WLAN (Wireless Local Area Network), de alcance medio, y las WPAN (Wireless Personal Area Network) de alcance medio-bajo. Las tecnologías WLAN, como por ejemplo la familia 802.11 b/g/n (conocido habitualmente como WI-FI) están orientadas a sistemas residenciales, sustituyendo el cableado general de áreas locales (LAN). En este entorno de aplicación, los equipos disponen de conexión a la red eléctrica por lo que no se prioriza la eficiencia energética, sino la fiabilidad y velocidad de transmisión. Alcanzan distancias de hasta varios kilómetros y tasas de velocidad desde los 11 Mbps hasta los 300 Mbps. Estas razones conllevan que los equipos WLAN necesiten una mayor complejidad hardware para satisfacer sus necesidades computacionales, con un coste por equipo más elevado y un consumo elevado para redes de sensores, incluso en los últimos desarrollos de variantes de bajo consumo, como Ultra-Low Power Wifi-n.

8

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

La distancia entre sensores y las necesidades funcionales de las redes de sensores hacen que el uso de la tecnología WPAN sea más adecuado a nivel de recursos. También se utiliza la terminología LoWPAN (Low power Wireless Personal Area Networks) para este tipo de redes, puesto que los dispositivos que las forman están claramente orientados al bajo consumo energético.

1.2 Estructura del documento

El documento presenta el trabajo realizado mediante la siguiente estructura:

- Un análisis de las tecnologías de comunicaciones WPAN, que nos permitirá escoger los mejores candidatos para su posterior implementación y testeo. - El diseño de la pila de comunicaciones completa, especificando los protocolos de cada capa de la pila OSI. - Implementación de la pila escogida en una red prototipo de laboratorio., software y hardware escogido. - Pruebas y evaluación de tecnologías. - Resultados del proyecto que validan las opciones escogidas, y resultados que conlleven la posibilidad de registro de resultados, estándares o patentes.

9

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

2. Análisis y selección de tecnologías de comunicaciones inalámbricas de corto alcance (WPAN).

A continuación, se presenta un estado del arte y su orientación a redes de sensores, con el objetivo de evaluar la viabilidad de estas tecnologías para el sistema de radio (capa física + capa MAC) de la red de sensores bajo estudio. A pesar de que las tecnologías WPAN están compuestas de estas dos capas, en apartados posteriores se especificarán protocolos para el resto de capas por separado, para completar la pila en función de la tecnología WPAN seleccionada.

Es importante remarcar que el estudio se basa en tecnologías no propietarias, normalizadas y estandarizadas por organismos reconocidos. Las tecnologías propietarias pierden la capacidad de interoperar con otros sistemas a nivel global, dependen de la capacidad de mantenimiento de la empresa que lo creó y generalmente no permiten modificaciones externas. Aun así, en la tabla 1 se muestra un breve resumen de algunas de las tecnologías WPAN más destacables que no han sido tratadas en este documento.

Tecnología Frecuencia Velocidad Topologías Aplicaciones Propietario Z-Wave 868 MHz 9600 mesh Automatización Zensys 900 MHz baud y control (mantenido por 40 kbps remoto, Z-Wave contadores Alliance) energéticos. Baja latencia. ANT 2.4 GHz 1 Mbps p2p, estrella, Redes de Dynastream árbol, mesh sensores Innovations Inc. ONE-NET 868 MHz 230 kbps p2p, estrella Automatización, Libre, sin 900 MHz y multi-salto seguridad y normalizar. con redes de repetidores. sensores. INSTEON 900 MHz 2880 bps mesh Automatización SmartLabs, Inc. del hogar. EnOcean 868 MHz 120 kbps star Automatización EnOcean GmbH, del hogar y mantenido por redes de EnOcean sensores. Alliance Internet 0 Se abstrae 9600 p2p Conexión de En estudio por del medio baud cualquier la comunidad a utilizar equipo de científica. sensorización o Originario de automatización MIT. a Internet Tabla 1. Otras tecnologías inalámbricas, propietarias o sin normalizar.

10

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

2.1 IEEE 802.15 Working Group para WPAN

Proyecto Tasa datos Rango Configuración Otros 802.15.1 1 – 24 Mbps 1, 10 ó 100 m 8 disp. en estrella por Autenticación, (Bluetooth) según clase piconet, agrupaciones en encriptación, voz scatternet. 802.15.3 22, 33, 44 y 20 – 50 m 256 dispositivos activos por QoS, Multimedia 55 Mbps típico piconet y agrupación de 802.15.3a 110 - 480 10 m nominal piconets. Baja potencia de (UWB) Mbps emisión 802.15.4 20, 40 y 1 – 100 m Topología en estrella o Elevada duración 250kbps según mallada. Hasta 65.536 de baterías configuración dispositivos.

Tabla 2. Tabla de tecnologías base IEEE 802.15. El comité de estandarización IEEE 802 del “Institute of Electrical and Electronics Engineers” dispone de un grupo de trabajo para la estandarización de tecnologías WPAN, denominado IEEE 802.15. Este grupo se diseña para abarcar un abanico de aplicaciones que incluyen el control y monitorización industrial; la seguridad pública, como la detección y determinación de la localización de personas en lugares de desastres; medición en automóviles, como el monitoreo de la presión neumática en las llantas; tarjetas o placas inteligentes; agricultura de precisión, como la medición del nivel de humedad del suelo, pesticida, herbicida, niveles de pH; y automatización del hogar, como control de periféricos, calefacción, ventilación, iluminación, cerraduras, etc. El IEEE 802.15 se originó a raíz del diseño de la tecnología Bluetooth en 1994, con su primer estándar publicado bajo el IEEE 802.15.1 en el año 2002. A partir de aquí se han desarrollado 7 subgrupos, del 1 al 7, de los cuales 5 incorporan definiciones de tecnologías. Inicialmente se definieron tres clases de WPANs según su tasa de datos, consumo de energía y calidad de servicio (Low-Rate con 802.15.4, Medium-Rate con 802.15.1, y High-Rate con 802.15.3). A éstos se añadieron posteriormente los grupos 802.15.6 (orientado a redes corporales, con bajas frecuencias) y 802.15.7 (para comunicaciones con luz visible en espacio libre). Las tecnologías RF detalladas en este punto se agrupan dentro de las SRD (Short Range Devices) de la ETSI, que especifica un régimen regulatorio más relajado que otras tecnologías radio gracias a su corto alcance y potencias de emisión. En las normas publicadas define su correcto diseño para compatibilidad electromagnética con otros dispositivos, las condiciones para su uso de frecuencias libres, y su compatibilidad con la directiva “Radio and Telecommunications Terminal Equipment” (R&TTE) para poder comercializarse en el mercado europeo. Estándar No. Título del estándar EN 300 220-1 Short Range Devices (SRD); Radio equipment to be used in the 25 MHz to 1 000 MHz frequency range with power levels ranging up to 500 mW EN 300 220-2 Short Range Devices (SRD); Radio equipment to be used in the 25 MHz to 1 000 MHz frequency range with power levels ranging up to 500 mW; Part 2: Harmonized EN covering essential requirements under article 3.2 of the R&TTE Directive

11

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

EN 300 330-1 Short Range Devices (SRD); Radio equipment in the frequency range 9 kHz to 25 MHz and inductive loop systems in the frequency range 9 kHz to 30 MHz; Part 1: Technical characteristics and test methods EN 300 330-2 Short Range Devices (SRD); Radio equipment in the frequency range 9 kHz to 25 MHz and inductive loop systems in the frequency range 9 kHz to 30 MHz; Part 2: Harmonized EN under article 3.2 of the R&TTE Directive

EN 300 440-1 Short Range Devices (SRD); Radio equipment to be used in the 1 GHz to 40 GHz frequency range; Part 1: Technical characteristics and test methods

EN 300 440-2 Radio equipment to be used in the 1 GHz to 40 [61.5] GHz frequency range Part 2: Harmonized EN under article 3.2 of the R&TTE Directive EN 301 489-1 Electromagnetic Compatibility (EMC) standard for radio equipment & services; Part 1: Common technical requirements EN 301 489-3 ElectroMagnetic Compatibility (EMC) standard for radio equipment and services; Part 3: Specific conditions for Short-Range Devices (SRD) operating on frequencies between 9 kHz and 40 GHz EN 301 489-9 ElectroMagnetic Compatibility (EMC) standard for radio equipment and services; Part 9: EMC Requirements for Cordless Audio

Tabla 3 Normas de la ETSI sobre dispositivos SRD

2.1.1. IEEE 802.15.1 / Bluetooth

2.1.1.1. Introducción Bluetooth nació en 1994 de la mano de Ericsson como una tecnología abierta para reemplazar al cable de datos entre dispositivos, una alternativa inalámbrica para RS-232. En su versión inicial tuvo problemas graves de interoperabilidad entre fabricantes, que terminaron tras su ratificación por IEEE como estándar 802.15.1. IEEE 802.15.1 es una solución WPAN para tasas medias (inicialmente hasta 1 Mbps) con el objetivo de gestionar tareas de periféricos (conexiones permanentes entre un maestro y distintos esclavos) y para realizar intercambios (teléfonos móviles, PDAs, etc). El rango de alcance es bajo (hasta 100 metros). En seguridad, Bluetooth implementa confidencialidad, autenticación y cifrado Actualmente el estándar se encuentra en la especificación 4.0 (Junio 2010), que incluye 3 protocolos: el Bluetooth clásico, Bluetooth de Bajo Consumo y Bluetooth de alta velocidad.

2.1.1.2. Capa física Bluetooth utiliza saltos de frecuencia (hasta 1600 por segundo) entre 79 canales situados en el rango 2402-2480 MHz, de 1 MHz de ancho. La versión 1 utiliza modulación GFSK (en las primeras revisiones) y AFH (a partir de la 1.2), que mejora el salto de canales marcando aquellos que tienen más ruido para no utilizarlos. En la versión 2 se utiliza una combinación de GFSK y PSK con dos variantes: π/4-DQPSK (hasta 2 Mbps) y 8DPSK (hasta 3 Mbps). Esta modulación permite triplicar la tasa de transferencia a costa de aumentar el consumo energético. Sin embargo, para una misma cantidad de bytes a transmitir, este aumento de velocidad reduce el tiempo de la transmisión, y por tanto el consumo, aproximadamente a la mitad del consumido por dispositivos con versión 1.x. La

12

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

versión 3 alcanza velocidades teóricas de 24 Mbps, pero utiliza para ello un enlace 802.11. El enlace Bluetooth sigue manteniendo su tasa de 3 Mbps y se utiliza para la gestión de la comunicación. El orden de los paquetes se garantiza mediante números de secuencia.

Clase Potencia Máxima Permitida Rango (aprox.) mW dBm Class 1 100 20 ~ 100 metros Class 2 2.5 4 ~ 10 metros Class 3 1 0 ~ 1 metro

Tabla 4 Rango de alcance de Bluetooth según clase Versión Bluetooth Tasa transferencia (max) Throughput max. para aplicaciones Version 1.2 1 Mbps 0.7 Mbps Version 2.0 + EDR 3 Mbps 2.1 Mbps (Enhaced Data Rate) Version 3.0 + HS (High Speed) 24 Mbps Alrededor de 24 Mbps Version 4.0 24 Mbps Alrededor de 24 Mbps

Tabla 5 Tasa de transferencia según versión

2.1.1.3. Capa MAC Bluetooth utiliza direcciones de 48 bits, aunque en general no se muestran públicamente, sino que se utilizan alias para reconocer los dispositivos (configurables por el usuario). Para realizar las distintas funcionalidades para las que fue diseñado, Bluetooth dispone de una serie de protocolos, agrupados en:  protocolos de “reemplazamiento del cable”  protocolos de “control telefónico”  protocolos adoptados  protocolos del núcleo Los protocolos obligatorios para toda implementación Bluetooth son: LMP, L2CAP y SDP.  LMP (Link Management Protocol): Se implementa en el controlador, y se utiliza para controlar el enlace de radio entre dos dispositivos.  L2CAP (Logical Link Control & Adaptation Protocol): Multiplexa varios canales lógicos sobre una misma conexión física, y prové capacidad de segmentación y re-ensamblado de paquetes. En el modo básico, L2CAP aporta paquetes con un payload de hasta 64KB, con 672 bytes de MTU por defecto, y 48 bytes como el MTU mínimo. En el modo de “Retransmisión mejorada” se asegura un canal fiable mediante comprobaciones de CRC y retransmisiones. En el modo “Streaming” se genera una comunicación sencilla, sin retransmisiones ni control de flujo, aportando un canal no fiable. La fiabilidad en la comunicación se puede garantizar de forma adicional mediante la interfaz BDR/EDR de la capa física, configurando el número de retransmisiones y el temporizador de vaciado de paquetes en cola.  SDP (Service Discovery Protocol): Se encarga de descubrir los protocolos soportados por otros dispositivos y sus parámetros asociados, es decir, los perfiles Bluetooth. Cada

13

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

servicio está identificado por un Identificador Universal Único (UUID) de 128 bits, de los cuales los primeros 16 bits se reservan para los servicios oficiales. Adicionalmente, los protocolos HCI y RFCOMM tienen un soporte casi universal.  HCI (Host/Controller Interface): Protocolo de comunicación entre el host (p. ej., un PC o un teléfono móvil) y el integrado Bluetooth, de forma que pueda cambiarse alguno de los dos elementos con una mínima adaptación. Habitualmente la conexión entre el host y el integrado Bluetooth es mediante USB o UART. Cuando la funcionalidad Bluetooth se integra en el mismo procesador del equipo (p.ej., auriculares), el HCI es opcional.  RFCOMM ( Emulation): Protocolo de reemplazo del cable, que crea una interfaz serie virtual. Permite la transmisión binaria de forma fiable y emula las señales de control de EIA/TIA-232. Esta característica se utiliza en muchas aplicaciones Bluetooth debido a su sencillez y a la gran cantidad de información disponible sobre su API. Además, las aplicaciones que utilizan puerto serie para sus comunicaciones pueden ser portadas fácilmente a RFCOMM. Otros protocolos importantes son BNEP, que encapsula paquetes de otros protocolos en una red Bluetooth; AVCTP, para control remoto de dispositivos multimedia mediante comandos AV/C; AVDTP, para la distribución de música; TCS BIN, para la gestión de llamadas de voz y datos orientadas a bit entre dispositivos Bluetooth; y protocolos adoptados como PPP, TCP/IP/UDP, OBEX o WAE/WAP.

Figura 2. Pila de protocolos de IEEE 802.15.1 Los dispositivos Bluetooth disponen de un modo de descubrimiento, en el cual muestran de forma pública y bajo pedido la siguiente información: - Nombre del dispositivo - Clase del dispositivo - Lista de servicios compatibles - Información técnica (fabricante, características, especificación Bluetooth, offset del reloj…). Para proteger la información personal del dispositivo, o incluso su control remoto, debe realizarse un proceso de emparejado que requiere la introducción de una clave o PIN en ambos dispositivos, y la aceptación de los privilegios deseados para esa conexión. También se permite

14

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

la conexión con dispositivos previamente emparejados que se encuentren en su rango de alcance. Todo este proceso es conocido como Pairing/Bonding.

Bluetooth es una tecnología basada en maestro-esclavo. Un maestro puede comunicar con hasta 7 dispositivos esclavos, formando una piconet con topología de estrella. A partir de la especificación Bluetooth 1.2, varias piconets pueden interconectarse a través de dispositivos funcionando como bridges, constituyendo lo que se conoce como scatternet. Estos roles pueden intercambiarse dinámicamente con negociaciones entre equipos. Cada piconet tiene su maestro, y se diferencia del resto de piconets por un timing y secuencia de salto propia, que hace que no coincidan en el mismo canal físico en el mismo instante de tiempo. Por tanto, un maestro sólo podrá ser maestro de una piconet (su reloj sincroniza a toda su red) mientras que un esclavo puede ser esclavo en varias piconets (mediante multiplexación en el tiempo), momento en el que se dice que está en una scatternet. La norma realiza una definición resumida de las necesidades de scatternet, por lo que en la actualidad existen una gran variedad de protocolos para generar y mantener esta topología, que aportan características muy diferentes en cuanto a rendimientos y tamaños de red.

Figura 3 Ejemplo de scatternet, con nodos funcionando como maestros (M), esclavos(S) y aparcados (P). La transmisión se realiza por slots temporales: el maestro transmite en los slots impares y recibe de los esclavos en los pares. Este orden siempre se mantiene, y los paquetes pueden ocupar 1, 3 o 5 slots. El cambio de un esclavo a otro se realiza mediante Round-Robin, y la comunicación con varios dispositivos simultáneamente solo se realiza con la emisión de un Broadcast del maestro a sus esclavos. De esta forma, la operación típica de Bluetooth es conectar un maestro con varios esclavos y mantener una comunicación de intercambio de datos. Los procedimientos para su operación son: - Inquiry Procedure (descubrimiento de dispositivos cercanos)

15

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

- Extended Inquiry Response (información extendida del dispositivo durante el descubrimiento) - Paging Procedure (proceso para el establecimiento de conexión) - Connected Mode (existe una conexión lógica entre el maestro y el esclavo, los dispositivos están ligados) - Sniff Mode (en momentos de inactividad, un esclavo pasa a realizar actividad en otro canal, o entra en modo de bajo consumo) - Parked State (el dispositivo permanece conectado a la piconet, pero su slot físico pasa a tener restricciones de uso) - Role Switch Procedure (intercambio de roles entre dispositivos) - Enhanced Data Rate (extiende la capacidad de los paquetes Bluetooth para mejorar el throughput, soportar múltiples conexiones, y reducir el consumo energético). A su vez, un dispositivo Bluetooth puede actuar según distintos perfiles, como Puerto Serie (la citada emulación del modo EIA/TIA-232), Personal Area Networking (formando una red ad hoc con un punto de salida), o Salud (conectividad y transmisión de información médica entre dispositivos médicos). Un paquete Bluetooth tiene un tamaño variable de hasta 343 bytes que ocuparía el máximo de 5 slots. El paquete se divide en tres zonas:  Códigos de acceso: 72 bits, utilizados para sincronización, compensación del offset, paginado y solicitudes. Hay tres tipos de códigos de acceso: de canal (CAC), de dispositivo (DAC) y de petición (IAC). El CAC identifica una piconet de forma unívoca, el DAC se utiliza para paginado y respuestas, y el IAC para propósitos de peticiones y descubrimientos.  Cabecera: 54 bits, contiene información de ACKs, numeración de paquetes, control de flujo, dirección esclava y control de errores. Dispone de campos para la dirección del dispositivo (3 bits), el tipo de código (4 bits), control de flujo, ack/nack (1 bit), número de secuencia, y control de error de cabecera (8 bits).  Carga: hasta 2745 bits, con un campo de voz, de datos, o ambos. Si existe el campo de datos, también habrá un campo de “Cabecera de Carga”.

Figura 4 Formato de paquete en Bluetooth

2.1.1.4. Bluetooth Low Energy Mientras que las especificaciones Bluetooth 2.0 EDR y Bluetooth 3.0 HS se basan en un aumento del throughput en la comunicación, Bluetooth 4.0 (BLE o Bluetooth de baja energía) tiene como objetivo la comunicación entre dispositivos que no necesitan capacidades de streaming y altas tasas de datos, inicialmente redes de sensores, con un alcance de hasta 10 metros. Ya no son posibles los enlaces directos entre esclavos (peer to peer), teniendo que comunicar a través del maestro, y un esclavo no puede enlazar con 2 maestros simultáneamente. El intercambio de roles tampoco está permitido. Por tanto, se pierde la

16

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

topología scatternet, quedando sólo en topología de estrella, con una tasa máxima de 1 Mbps. El número de esclavos depende de la implementación, y el consumo se reduce a la mitad respecto al Bluetooth Clásico (de 30 mA a 15 mA), permitiendo largos periodos de sueño, despertando sólo cuando necesiten enviar datos. A Nivel MAC, se utiliza un esquema FDMA (de 40 canales) y TDMA, y para la seguridad utiliza AES-128.

2.1.2. IEEE 802.15.4

2.1.2.1. Introducción IEEE 802.15.4 aparece como una solución WPAN para tasas bajas (alrededor de 250 Kbps) para aplicaciones industriales, residenciales y médicas con consumos muy reducidos, y unos requisitos de coste bajo. Aporta flexibilidad a la red, permitiendo la utilización de redes adhoc auto-gestionadas en dispositivos fijos y móviles.

2.1.2.2. Capa física IEEE 802.15.4 está diseñado para trabajar sobre tres bandas UHF, que definen el número de canales disponibles y la velocidad máxima de la comunicación:  2.4 - 2.4835GHz Ghz, válida a nivel global, 16 canales, 250Kbps  902.0 - 928.0MHz, sólo para América, 10 canales, 40Kbps  868 - 868.6MHz, sólo para Europa, 1 canal, 20Kbps Las frecuencias más bajas tienen una mayor permeabilidad a los obstáculos del terreno y menos pérdidas de propagación, lo que permite un mayor alcance para una misma energía. Además, estas bandas están menos saturadas que las de 2.4 GHz (debido a la gran cantidad de dispositivos que funcionan a esta frecuencia), pero en caso de interferencia, la banda europea no dispone de más canales para realizar un cambio y evitarlas. Sin embargo, la banda de 2.4 permite una mayor velocidad, menor latencia en las comunicaciones y mayor disponibilidad de canales en caso de interferencia. Además, las antenas en 2.4 GHz son más pequeñas y permiten mayor integración. La sensibilidad en recepción se marca en -85dBm para 2.4GHz y -92dBm para las bandas de 868/915MHz. El aumento de sensibilidad para las frecuencias bajas se consigue gracias a su menor tasa de transferencia, lo que a su vez hace que el rango de alcance para estas frecuencias sea mayor. La potencia máxima de transmisión debe cumplir las regulaciones locales en cada caso. En Europa, este máximo se encuentra en 100mW (20dBm).

17

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 5 Mapa espectral y modulaciones para IEEE 802.15.4. La trama física de 802.15.4 se divide en tres zonas: el SHR, que se utiliza para la sincronización de reloj y enganche del stream de datos con el receptor, y tiene un tamaño de 5 bytes; el PHR, que es la cabecera de la trama, contiene información sobre el tamaño de la misma y ocupa 1 byte; y la carga útil, con tamaño variable de hasta 128 bytes. Este tamaño proporciona un óptimo funcionamiento para aplicaciones de sensorización, pero limita otro tipo de aplicaciones (como el uso nativo de IP sobre 802.15.4).

Figura 6 Estructura de la trama a nivel físico. Para la correcta gestión del canal, la capa física implementa una serie de herramientas: - Detección de energía (ED), inicialmente pensado para su uso por el algoritmo de selección de canal. Es una estimación de la potencia de señal recibida en el canal bajo estudio. Este proceso no realiza ningún intento de identificar o decodificar las señales del canal. La duración del ED es de 8 periodos de símbolo. El resultado de esta operación se reporta como un entero de 8 bits (entre 0x00 y 0xFF). El valor mínimo indica que se ha registrado una potencia menor a 10dB sobre la sensibilidad del receptor. A partir de ahí el rango mínimo con el que debe trabajar el ED es de 40dB. El mapeado de potencia recibida en dBs al entero que genera el ED se realiza de forma lineal con una precisión de ±6dB.

18

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

- Indicador de calidad del enlace (LQI), una caracterización de la fuerza y/o calidad del paquete recibido. Como métodos pueden emplearse el ED, una estimación de la señal- ruido (SNR), o una combinación de ambos. El resultado se reporta como un entero de 8 bits (entre 0x00 y 0xFF), y sus límites vienen determinados por las señales de menor y mayor calidad detectables por el receptor. La capa física, al recibir una trama, entregará a la capa superior su carga útil o PSDU (ver figura 6), la longitud de esta carga, y el LQI. - Aviso de canal libre (CCA), para mejorar la coexistencia con otras redes inalámbricas. Se realiza de acuerdo a uno de los siguientes tres métodos: o Energía sobre límite. CCA informa que el medio está ocupado si detecta que el nivel de energía supera el límite del ED. o Detección de portadora. CCA informa que el medio está ocupado si detecta que hay una portadora con las características de modulación y esparcimiento de IEEE 802.15.4. No importa por tanto el nivel detectado por ED. o Detección de portadora con energía sobre límite. Se detectará el medio como ocupado si se cumplen los dos anteriores. - Selección de canal. Además de una asignación estática, el estándar también permite la selección dinámica de canal, según los resultados de las herramientas anteriores. La revisión 802.15.4a incluye una modificación de la capa física para la utilización de UWB (Ultra Wide Band), con significativos beneficios para aplicaciones de localización (que aporta precisiones de hasta 1 metro).

2.1.2.3. Capa MAC La capa MAC está diseñada para obtener un consumo muy bajo, permitiendo a la vez proporcionar baja latencia a aquellos servicios que sea necesario. Las principales tareas de las que es responsable son la gestión de beacons o balizas, el acceso al canal, la gestión del slot garantizado (GTS), validación de tramas, entrega de reconocimientos, asociación y desasociación. En IEEE 802.15.4, cada dispositivo tiene un rol determinado a priori, que acota y determina su funcionamiento en la red. Los roles definidos son: • Dispositivo de funcionalidad completa (full-function device - FFD), con mayores necesidades energéticas y de proceso, que puede actuar como: o Coordinador de red de área personal (PAN) o Coordinador o Dispositivo • Dispositivo de funcionalidad reducida (reduced-function device - RFD), para aplicaciones extremadamente sencillas que requieren bajas cantidades de datos. Pueden tener largos periodos de sueño y activarse sólo para enviar sus datos. Sólo comunican con un FFD. Existen 2 topologías de red para la comunicación entre dispositivos:  Topología en estrella, donde un FFD actúa como coordinador de la red (PAN) al que se asociarán dispositivos FFD y RFD. La comunicación se realiza entre dispositivo y

19

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

coordinador. Cada red se diferencia por su identificador PAN, que será único en el rango de alcance de la red. Una ventaja de esta topología es que es necesario que haya un elemento permanentemente alimentado (el coordinador PAN), y el resto puede utilizar esquemas de sueño prolongado, reduciendo significativamente el consumo. Sus aplicaciones más inmediatas son la automatización del hogar, equipos informáticos, juegos y juguetes.  Topología peer-to-peer, donde aún existe la figura de un FFD como coordinador de la PAN, pero las comunicaciones se realizan directamente entre los dispositivos, pudiendo comunicar con aquel que esté en su rango de alcance. Las transmisiones quedan direccionadas con el identificador PAN y el uso de direcciones cortas. La topología peer- to-peer permite formaciones más complejas mediante su implementación en capas superiores, como el uso de topologías mesh con múltiples saltos para enrutar un paquete entre cualquier par de dispositivos, mayor fiabilidad y enrutamiento multi- camino; o el uso de redes en forma de árbol. Una red de este tipo es adhoc, auto- organizada y se recupera automáticamente de cambios de topología. Las aplicaciones típicas son control y monitorización industrial, redes de sensores inalámbricas, o gestión de bienes y personas.

Figura 7. Ejemplo de topologías en estrella y peer-to-peer. Adicionalmente, mediante la norma IEEE 802.15.5 se añade la topología mesh a IEEE 802.15.4, que basa su resolución en una estructura de árbol con un elemento base como cabeza de árbol. Cada dispositivo tiene un listado de todos sus hijos. Si el destino aparece en su lista, lo envía por la rama correspondiente, y si no lo envía a su padre. Este proceso se repite hasta que llega a la cabeza de árbol, que, si no conoce el dispositivo, lo dará por destino inalcanzable. Por lo tanto, la solución mesh aportada por 802.15.5 para LR-WPAN combina un enrutado en árbol y enrutado de estado de enlace, constituyendo el protocolo Meshed Adaptive Robust Tree (MART). Se utiliza una solución distinta para conseguir ahorro energético según la movilidad de la red: en redes dinámicas se utiliza AES (asynchronous energy saving), mientras que en redes estáticas se utiliza SES (synchronized energy saving), que optimiza la latencia extremo a extremo. El funcionamiento de las comunicaciones se establece en dos modalidades: con beacons (supertramas con periodo de contención (CSMA/CD), GTS y periodo de inactividad) o sin beacons.

20

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 8. Estructura de la supertrama MAC. Al funcionar con beacons, el coordinador define la estructura de una supertrama, cuya extensión estará delimitada entre dos beacons consecutivos (ver figura 8), de forma que los dispositivos puedan sincronizarse con esta estructura. La supertrama tiene un tiempo de actividad y un tiempo de sueño, lo que define su “duty cycle”. Cuanto mayor sea el tiempo de sueño (menor duty cicle), menor será el consumo energético de los nodos. La parte activa se divide en una zona de acceso por contención (CAP) y otra libre de contienda (CFP). Los dispositivos que deseen lanzar un paquete al medio deberán competir por su acceso al medio durante el periodo CAP con un esquema CSMA-CA ranurado. Aquellos dispositivos que requieran una baja latencia y un servicio garantizado pueden utilizar la zona CFP, en la que el coordinador puede asignar slots fijos (GTS) a dispositivos, tal y como se haría en un esquema de acceso al medio TDMA. La parte activa tiene 16 slots, y pueden reservarse hasta 7 slots GTS. Los GTS sólo pueden utilizarse para la comunicación entre dispositivo y coordinador, se asignan cuando se necesitan y se desasignan tras su uso, según una cola FIFO. En el funcionamiento sin beacons, el coordinador no emite beacons y las transmisiones se realizan mediante CSMA-CA no ranurado. En esta estructura no hay slots garantizados (GTS), y la sincronización se lleva a cabo realizando consultas de datos al coordinador. La transferencia de datos en una PAN está completamente controlada por los dispositivos implicados, no por el coordinador, lo que aporta el principio de conservación de energía. Todos los dispositivos que deseen comunicar dentro de una PAN deben iniciar un proceso de asociación con el coordinador, que determinará si es viable según los recursos disponibles. La desasociación puede llevarse a cabo tanto por el coordinador como por el dispositivo interesado. El formato de la trama MAC está dividido en tres grupos:  MHR, que contiene el control de trama, el número de secuencia e información de direccionamiento.  Una carga MAC de longitud variable, que contiene información específica del tipo de trama. Los ACK no contienen carga útil.  MFR, que contiene el FCS para comprobar la integridad de la trama. IEEE 802.15.4 define cuatro estructuras de trama (beacon, datos, ACK y comando MAC), que derivan de este formato general.

21

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 9. Formato de la trama general MAC. Para el direccionamiento de los dispositivos a nivel MAC se utilizan dos esquemas distintos: formato corto de 16 bits o formato IEEE de 64 bits. Las direcciones de 64 bits identifican de forma unívoca a cualquier dispositivo de forma universal. En la figura 9 puede observarse que la dirección de 64 bits realmente es una agrupación de la dirección corta de 16 bits y el identificador PAN de la red. Una vez que la red está formada, es posible utilizar las direcciones cortas, que permiten formar redes de hasta 65.534 nodos.

Figura 10. Formato de direcciones 802.15.4

2.1.3 IEEE 802.15.4e

Sobre la anterior especificación 802.15.4, la revisión de la norma en el amendment IEEE 802.15.4e realiza unas modificaciones en capa MAC que mejoran significativamente su funcionamiento, aportando un mayor soporte al mercado industrial y algunas compatibilidades con las normas de WPAN chinas. Se orienta principalmente a dotar a la comunicación de mayor robustez y fiabilidad, adecuando su uso en redes críticas o con requisitos temporales estrictos. Las principales mejoras se pueden resumir en: TDMA: para aportar determinismo, mejor utilización del ancho de banda - Channel hopping: mejora robustez contra interferencias y coexistencia con otros dispositivos inalámbricos. - Mejoras en GTS: soporte para comunicación peer to peer, aumento de la longitud del slot, aumento del número de slots. - Seguridad: opciones adicionales como clave asimétrica - Baja latencia: reduce el tiempo de entrega extremo a extremo para aplicaciones como control.

2.1.3.1 Capa MAC El 6 de febrero de 2012, la Junta de la Asociación de Normas IEEE aprobó el documento del estándar “IEEE 802.15.4e: Mejoras en MAC” para su publicación.

22

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

De acuerdo con el estándar IEEE 802.15.4e, la intención de esta enmienda es mejorar y añadir funcionalidad a la capa MAC definida en el IEEE 802.15.4-2006 para a) dar mejor soporte a los mercados industriales y b) aportar compatibilidad con las modificaciones propuestas por normas WPAN chinas.

La norma introduce diferentes nuevos modos de MAC para adaptarse a diferentes aplicaciones, y otras características para mejoras generales de protocolo, como salto de frecuencia (cannel hopping), la comunicación multicanal, o acceso ranurado (tipo TDMA) con ranuras dedicadas o compartidas (características, por otro lado, tomadas de otras normas industriales tales como WirelessHART o ISA100.11.a).

Los modos contemplados en esta norma, y su campo de aplicación, se pueden resumir en:

• Identificación por Radio Frecuencia Blink (BLINK): Identificación de personas u objetos, localización y seguimiento (similar a RFID)

• Adaptación Asíncrona multicanal (AMCA): aplicaciones donde se requieren grandes instalaciones (por ejemplo, la automatización de procesos / control, monitorización de infraestructura, etc.).

• Extensión Determinista y síncrono multicanal (DSME): aplicaciones industriales y comerciales con requisitos de latencia y fiabilidad estrictas.

• Red determinista de baja latencia (LLDN): aplicaciones que requieren requerimiento de baja latencia (por ejemplo, la automatización industrial, control de robots).

• Tiempo ranurado con Channel Hopping (TSCH): Aplicaciones tales como la automatización de procesos.

De estos modos, LLDN y especialmente TSCH pueden considerarse los más interesantes para nuestro testbed, por las características y posibilidades de optimización que ofrece.

Modo LLDN Este modo se orienta procesos industriales y de automatización, robots de automoción, máquina de fresado / torneado / robots, etc. Se dirige a las redes que requieren una latencia muy baja y determinista (es decir, 5-50 ms). Como se basa acceso temporal ranurado (TDMA), hace que la latencia sea predecible y limitada, con ancho de banda garantizado. Está diseñado para redes pequeñas y para operar en topología de estrella, lo que hace de este modo adecuado para varios de los casos de uso en industria.

23

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 11. LLDN está diseñado para topologías en estrella LLDN utiliza supertramas conformadas por intervalos o “slots” de tiempo, para proporcionar el determinismo en el acceso de canal. Los tipos de slot presentes en una supertrama temporal son: - Beacons o balizas, para la sincronización con el coordinador y otros nodos WSN. Estas balizas también llevan ACKs para transmisiones de supertrama anteriores. - Intervalos de gestión (opcionales) - Intervalos de transmisión: éstos deben ser de la misma longitud, e incluyen los intervalos de tiempo de enlace ascendente (uplink) y los intervalos de tiempo bidireccionales (enlace ascendente / descendente, o de transmisión y recepción). Además, pueden ser intervalos de tiempo dedicados, cuando sólo el propietario del slot tiene derechos de acceso; o intervalos de tiempo compartidos, en cuyo caso los nodos utilizan CSMA-CA (es decir siguen el esquema MAC de 802.15.4) para acceder al canal durante ese slot compartido. - Grupo de Reconocimiento (GACK), configurado para permitir la retransmisión de paquetes perdidos en slots de transmisión. El GACK es enviado por el coordinador, reconociendo aquellos nodos que transmiten con éxito, y permite retransmisiones de los nodos fallidos antes del final de supertrama.

Figura 12. Orden y utilización de los slots en una supertrama LLDN, visto en [5]

Modo TSCH Este modo es adecuado para redes multi-salto, y se basa en TDMA combinado con comunicación multicanal y salto de frecuencia. Esto no sólo mantiene la latencia predecible y delimitada, sino también:

24

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

- Permite una mayor capacidad de la red (los slots no sólo se comparten en el dominio del tiempo, sino también en el dominio de la frecuencia, por lo que los nodos se pueden comunicar al mismo tiempo, es decir en el mismo slot utilizando diferentes canales) - Mejora de la fiabilidad mediante la reducción de interferencias y efectos de desvanecimiento.

Figura 13. Estructura de la supertrama The detailed temporal structure of an IEEE802.15.4e TSCH time slot can be seen in figure 9. Slot parameters are not defined in the standard, yet some parameters can be derived by other specifications such as bit rate and maximum packet size. Note that in figure 9, the specific values shown are standard’s proposals, although they can be altered according to application requirements. La estructura temporal detallada de un slot temporal IEEE802.15.4e TSCH puede verse en la Figura 14. Los parámetros de configuración temporales del slot no están definidos en el estándar, sin embargo, algunos parámetros se pueden derivar de otras especificaciones tales como la velocidad y el máximo tamaño de paquete. Téngase en cuenta que en la figura 14, los valores específicos que se muestran son las propuestas de la norma, a pesar de que pueden ser alterados de acuerdo a los requisitos de aplicación.

25

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 14. IEEE 802.15.4e detailed time slot according to the standard Otros valores pueden ser derivados: El tamaño máximo de paquete es 127 Bytes, de donde se extrae: - 25 Bytes para cabeceras. - 102 Bytes of Payload máximo Para redes en la banda de 2.4 GHz: - Transmisión de un paquete ≈ 4 ms (tsMaxTX 4.256 ms) - ACK TX ≈ 1 ms (tsMaxACK 2.4 ms) (Téngase en cuenta que los tamaños máximos de paquete y banda de la red en realidad están definidos por la norma, mientras que los 9 parámetros temporales de la figura son sólo recomendaciones para un rendimiento adecuado de la red). Algunos parámetros importantes se describen en la siguiente tabla: Parametro Descripción TsCCAoffset Offset (tiempo de espera) antes de realizar CCA. De manera similar al CSMA (donde el offset es al azar e incremental). TsCCA: El tiempo dedicado a comprobar si el canal está libre para evitar colisiones TsRXTX Retardo introducido por la radio cuando se cambia de RX a TX. Siendo el TsTXoffset recomendado 2120, este retraso obtiene algunos valores típicos de: TsT offset = TsCCAoffset + TsCCA + TsRXTX = 2120us ↓ TsRXTX = 192us

26

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

TsRXwait En el receptor (suponiendo que no tiene nada que transmitir, por lo que no se realiza CCA), el tiempo entre el final de la ranura dedicada a CCA y el comienzo del paquete TX que espera el receptor antes de pasar al modo de suspensión (es decir, si no hay nada recibido antes de ese tiempo, se apaga, evitando así que espera en escuchando un slot entero si no va a recibir nada). TsACKwait Similar a TSRXwait, pero referido al transmisor esperando recibir un ACK (y si no recibe ACK, el tiempo para reintento deben ser manejado según convenga) Tabla 6 Descripción de algunos parámetros TSCH El mecanismo para la asignación de canales en cada slot para aprovechar el salto de frecuencia y las características de transmisión en múltiples canales es proporcionado por el estándar. Este mecanismo se puede ver en detalle en la figura 15 a continuación (ASN significa número absoluto de slot, se utiliza para evitar repeticiones de canal en slots sucesivos):

Figura 15. Mecanismo de salto de frecuencia en TSCH Mediante el uso de este mecanismo y un planificador, los nodos pueden establecer vínculos TSCH, que son enlaces punto a punto entre dispositivos en un slot especifico con un desplazamiento de canal o cannel offset específico. La figura 16 muestra un ejemplo, para un slot y cannel offset dados, la comunicación está disponible entre dos nodos (identificados por una letra).

27

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 16. Enlaces TSCH con el mapeo slot/canal correspondiente El estándar describe cómo la capa MAC ejecuta una planificación, pero no especifica cómo se construye la planificación, dejándola abierta para su implementación. Para redes con bajo número de nodos y unos requisitos fijos (no espera ninguna variación en el número de nodos, el cambio de ubicación de nodos, etc.), la planificación se puede programar en los nodos de forma predefinida al cargar su firmware, pero para una red más densamente poblada y de condiciones variables, la búsqueda de mecanismos de planificación dinámica adecuados depende de los desarrolladores, y es un aspecto de estudio para desarrollos futuros. La planificación puede seguir dos paradigmas de acuerdo con el modo operación: - Planificador centralizado: generalmente el coordinador WSN es responsable de la creación y el mantenimiento de la planificación. - Planificación distribuida: cada nodo escoge de forma autónoma cuándo transmitir / escuchar. Se pueden encontrar trabajos recientes con respecto a esta programación dinámica para WSN, por ejemplo, la presentada en [6]. Este modo se dirige a topologías de red que no sean estrellas, incluidas las redes multi-salto, así que es un candidato adecuado para los casos de uso en donde los requisitos de escenario incluyen distancias y áreas a cubrir más grandes. El comportamiento determinista introducido por el TDMA permite limitar en gran medida los problemas de retardo y jitter, y salto de frecuencia beneficia directamente al rendimiento y la tolerancia a las interferencias. Esta norma supone entonces un buen punto de partida para nuevas implementaciones, o como base para nuevos protocolos basados en la norma.

2.2. Otras tecnologías WPAN Además de las tecnologías base en RF estandarizadas por el comité IEEE 802.15, existen otras cuyo objetivo es la comunicación de elementos a distancias cortas, que pueden ser consideradas o aportar nuevas ideas a las anteriores.

28

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

2.2.1. RFID RFID (Radio Frequency IDentification) es una tecnología de comunicaciones punto a punto para la identificación de personas, animales o bienes, con objeto de pagos, registro, sensorización o posicionamiento. Es una tecnología abierta, mantenida por el AutoID Center y con estándares de diversas organizaciones como la International Organization for Standardization (ISO), la International Electrotechnical Commission (IEC), ASTM International, la Alianza DASH7 y EPCglobal. RFID utiliza una arquitectura maestro-esclavo mediante lectores y etiquetas inteligentes. La tecnología puede funcionar en diversas bandas de frecuencia, dependiendo de la aplicación final (material, rango de alcance, finalidad).

Frecuencia Alcance Beneficios Desventajas Aplicaciones LowFID < 20 cm - Aceptado en todo el - Baja velocidad de - Id animal. mundo. lectura. - Id barriles. 125 KHz - Funciona cerca del - Etiquetas de mayor - Cerraduras y llave metal. tamaño. automática. - Funciona en ambientes - Más vulnerable a EMI. - Libros de biblioteca. hostiles. HighFID < 1.5 m - Aceptado en todo el - Baja velocidad de - Seguimiento a nivel de mundo. lectura. artículo. 13.56 MHz - Funciona en ambientes - No funciona cerca de - Equipaje en aerolíneas. hostiles. metal. - Acceso a edificios. UltraHighFID 10 m - Alta velocidad de datos. - Frecuencia dependiente - Seguimiento a nivel de - Tamaño reducido de las del país. cajas, pallets y 433 MHz etiquetas. - No funciona en entornos contenedores. 860 MHz húmedos. - Seguimiento de 928 MHz - Problemas con etiquetas camiones y trailers. muy juntas. MicroFID 30 m - Velocidad de datos muy - Frecuencia dependiente - Control de accesos alta. del país. (vehículos). 2.4 GHz - Tamaño de etiqueta - Desarrollo de sistemas 5.8 GHz muy pequeño. más complejo. - Menos vulnerable a EMI. - No funciona en ambientes hostiles. Figura 17. Frecuencias de trabajo de los sistemas RFID

Figura 18. Utilización de las tecnologías RFID según sectores

29

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Las frecuencias bajas (LF) y altas (HF) tienen validez a nivel mundial, mientras que las ultra- altas (UHF) y las microondas dependen de las normativas de cada país. Los diversos estándares existentes normalizan su uso y la información que contienen, contemplando para ello el uso de diversas frecuencias o solamente una de ellas. Por ejemplo, EPC define un protocolo para identificación única de productos, que se posiciona como la versión de los códigos de barra para RFID, y su posible futuro, y no dispone de descripción para LowFID. Las etiquetas pueden clasificarse en tres tipos: activas, pasivas y semi-activas. Las pasivas no utilizan ninguna fuente de energía interna, captan energía de la señal del lector mediante inducción, que alimenta su circuito interno y se modula para responder. Las activas disponene de fuente de energía y, además de obtener un mayor alcance y fiabilidad en las comunicaciones, permiten incorporar sensores y realizar funciones de data-logger. Las etiquetas activas también se utilizan para tareas de localización (RTLS), principalmente en la banda de microondas. Finalmente, las semi-activas utilizan batería para funciones de sensorización y data-logger, y la comunicación la realizan aprovechando la energía de la señal del lector. En general, la etiqueta contiene una pequeña memoria con un código que identifica el elemento, que tras ser leído será cotejado con una BBDD para obtener su información relacionada. Hay memorias más grandes, donde almacenar información adicional, aunque supone problemas de confidencialidad. Existen distintos mecanismos de seguridad, según la complejidad y el tipo de etiqueta. La memoria puede ser de sólo lectura o regrabable, según la aplicación.

Figura 19. Bloques de un sistema RFID típico (fuente: National Instruments 2010). Su aplicación en sanidad se está intensificando en los últimos años con tecnologías pasivas HF y UHF, tanto para identificación de pacientes como para gestión de farmacias, implantes o equipamiento médico. Otras aplicaciones típicas son:  Pago sin contacto  Control de accesos  Trazabilidad de bienes, personas y animales  Documentos de viaje reconocibles por máquinas  Redes de sensores  Logística en aeropuertos. Las redes de sensores es el nuevo sector en el que intenta penetrar la tecnología RFID. La primera generación son las etiquetas de identificación, la segunda generación los sistemas de localización (RTLS), y la tercera generación las redes de sensores. Estos sistemas se encuentran en una versión muy temprana, y se basan en 802.15.4 para estas tareas, que incluyen topologías

30

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

de estrella, árbol o lineales. Otra opción con interesantes capacidades de aplicación es la fusión de WSN y RFID, donde los sensores inteligentes son a la vez lectores de tarjetas, ampliando la implicación en el mundo real de este tipo de redes.

2.2.2. IEEE 1902.1 / RuBee Las tecnologías enumeradas hasta ahora utilizan señales RF de campo lejano, por lo que su comportamiento sigue las leyes clásicas de radiación electromagnética. El estándar IEEE 1902.1 es una interesante alternativa que trabaja en la banda de 131 KHz hasta una distancia típica de 30 metros. Esta relación entre la longitud de onda y la distancia de uso provoca que su dinámica de funcionamiento sea en campo cercano, una región donde las relaciones del campo electromagnético son más complejas y aparecen fuertes componentes inductivas y capacitivas. De esta forma, RuBee es un estándar que utiliza el campo magnético en lugar del eléctrico para transmitir la información (comunicación inductiva), lo que le aporta una fortaleza singular para trabajar en ambientes agresivos y le permite transmitir y recibir de múltiples antenas adyacentes sin interferencia y de forma síncrona. Esta cualidad mejora el ancho de banda y elimina cualquier sensibilidad angular, características de otros sistemas RF.

Al contrario que RF, las ondas de RuBee no tienen reflexiones y no se bloquean con la presencia de metales, líquidos o personas. No requiere línea de visión y su funcionamiento está aprobado para todo tipo de instalaciones seguras, incluidas las áreas con alto riesgo de explosión. Aunque las aplicaciones de RuBee son similares a las de RFID, RuBee no utiliza el sistema de reflejar la energía recibida, sino que su funcionamiento es más similar a otras tecnologías como Bluetooth o 802.15.4. El envío de datos se realiza bajo petición de otro nodo, en comunicaciones peer-to-peer dentro de la red, pero a una velocidad mucho más baja (6-8 paquetes por segundo), con una tasa de 1.200 baud. El consumo es muy reducido y la tecnología está diseñada para su uso en redes de sensores, control, actuadores e indicadores.

El estándar 1902.1 define la capa física, con las especificaciones de codificación y direccionamiento de dispositivos. Este estándar puede suponer una alternativa complementaria a las capas físicas de otras tecnologías (RFID, WiFi, 802.15.4,…) que aporta diversas ventajas como son:  Bajo consumo: el uso de frecuencias bajas y tasas de transferencia baja permite el uso de integrados de muy bajo coste y consumo. Una etiqueta RuBee puede funcionar durante 15 años con baterías de litio de bajo coste, que es a la vez el tiempo de vida esperado de la batería.  La etiqueta viaja con los datos: la información está almacenada en el chip de la etiqueta y el lector no necesita consultar una base de datos ni utilizar un sistema TIC para llegar a ella. En el caso de RFID, su rango es más limitado, se requiere más energía y los tiempos de escritura son mayores.  Seguridad humana: una estación base de RuBee genera una radiación eléctrica de nanovátios (entre 40 y 50 nW), puesto que la mayor parte de la energía es magnética (unos 900 miligauss), y ésta no se absorbe por los tejidos vivos.

31

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

 Intrínsecamente seguro: el bajo campo magnético que genera una estación base no es capaz de calentar sustancias explosivas o generar chispas. Es la única tecnología inalámbrica en obtener una Safe Separation Distance (SSD – Distancia de Separación de Seguridad) de 0 por el Departament de Energía estadounidense, lo que significa que una estación base puede instalarse sobre los mismos explosivos.  Seguridad y privacidad: a diferencia de otras tecnologías como RFID o los protocolos IEEE 802, el rango de escucha (aquel al que puede interceptarse la conversación utilizando medios ilimitados) es igual al rango de alcance de la etiqueta o dispositivo RuBee, lo que en muchos casos provoca que el atacante debe ser visible. Además, el hardware de los equipos permite el uso de mecanismos de seguridad y encriptación, por lo que se utiliza habitualmente en lugares donde se requiere alto nivel de seguridad.  Rango volumétrico controlado: mediante la variación de tamaño de antenas de lazo cerrado, RuBee es capaz de leer sistemas dentro de un volumen que puede variar desde el tamaño de un huevo hasta 900m2.  Precio: el uso de frecuencias bajas hace que el hardware de estos equipos sea más económico y pueda utilizar electrónica estándar, en lugar de los basados en microondas.

Figura 20. Mapa de memoria de una etiqueta RuBee La mayoría de etiquetas RuBee utilizan un controlador de 4 bits, con 512 Bytes de memoria estática. Utilizan direcciones programables IP de 32 bits con máscaras de red de 32 bits, y direcciones físicas (MAC IP) de 32 bits, no modificables. Según la etiqueta, existen otras áreas pre-asignadas para sensores opcionales, estado de baterías, funciones de diagnóstico, registros de tiempo y fecha, etc. Los restantes 412 Bytes de memoria se destinan al usuario.

32

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

El estándar 1902.2 se encarga de la definición de la capa de enlace de datos, aportando la funcionalidad necesaria para el funcionamiento de RuBee en sensorización, localización en tiempo real, control de stocks, etc.

2.2.3. Comunicaciones ópticas Aunque la mayoría de las comunicaciones inalámbricas están basadas en RF, existen medios alternativos como son las comunicaciones ópticas en espacio libre (FSO). La mayoría de ellas se utilizan para establecer enlaces troncales de red local de alta capacidad, y permiten transferir elevadas cantidades de datos (hasta 1,25 Gbps) que aseguran servicios telefónicos y de vídeos de alta calidad. Estas redes utilizan elementos láser, y en conjunto son sistemas caros y con un consumo elevado para su uso en sensorización. Sin embargo, en los últimos años han surgido tecnologías FSO para el ámbito de las WPAN, que aportan significantes ventajas respecto a los sistemas RF como son un menor consumo, la eliminación de antenas y por tanto su mayor miniaturización, y su inmunidad a las interferencias electromagnéticas. La Universidad de Berkley analizó durante la realización del proyecto que la transmisión a una distancia de 10m mediante tecnologías RF de WPAN tenía un coste de 100nJ/bit, que difícilmente puede reducirse debido a las limitaciones físicas de propagación de ondas. Una comunicación óptica a esa misma distancia tiene un coste de 10pJ/bit, 4 órdenes de magnitud inferior. La desventaja principal, sin embargo, es la necesidad de línea de visión para establecer la comunicación entre dos elementos. Se resumen a continuación las dos tecnologías más importantes en la actualidad, que destacan por su bajo coste y consumo: VLC e IrDA.

2.2.3.1. Comunicaciones en Luz Visible Las comunicaciones en luz visible (VLC) utilizan impulsos de luz entre los 375nm y los 780nm. Este espectro tiene la ventaja de ser inocuo a la visión y por tanto no genera daños a los seres humanos. Para la comunicación se utilizan leds de bajo coste, y teóricamente puede alcanzar tasas de hasta 500 Mbps, conseguidas en 2010 por investigadores de Siemens y del Instituto de Telecomunicaciones de Fraunhofer a una distancia de 5 metros. Además, es posible realizar comunicaciones a tasas más bajas con elementos más cotidianos, como 10 kbps con bombillas fluorescentes.

Figura 21. Ubicación de la banda de luz visible en el espectro electromagnético

33

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

El IEEE 802.15.7 es el grupo encargado de la estandarización de la tecnología VLC. Formalmente define una tecnología de comunicación inalámbrica óptica de corto alcance con luz visible en medios ópticamente transparentes. El estándar consigue velocidades suficientes para la transmisión de servicios de audio y video multimedia y considera la movilidad de los enlaces, la compatibilidad con las infraestructuras visibles, y ruido e interferencias de fuentes como luz ambiental. El estándar se adhiere a las regulaciones existentes sobre seguridad ocular, de forma que no es una radiación perjudicial para el ojo humano. Actualmente se encuentra bajo definición. LiFi es un estándar de la Universidad de Edimburgo que también utiliza luz de espectro visible (VLC) y comunicación mediante leds. Se han conseguido velocidades de 10 Mbps y actualmente se trabaja para conseguir los 500 Mbps. RONJA (Reasonable Optical Near Joint Access) es un dispositivo bajo licencia GNU que permite enlaces de 10 Mbps a distancias de hasta 1.4 km.

2.2.3.2. Comunicaciones en banda Infrarroja La tecnología IrDA utiliza impulsos de luz infrarroja (875 ± 30 nm) para realizar intercambios de datos entre teléfonos, portátiles y equipos de medida. Tienen un alcance de unos pocos metros y requiere visión directa con un ángulo máximo de 15o, por lo que, las conexiones infrarrojas se pueden utilizar para crear conexiones inalámbricas en un radio de unos pocos metros, con velocidades de los 9600bps (Serial Infrared SIR en banda base) a 1 Gbps (con Giga- IR y modulación 4-ASK). Esta tecnología se usa ampliamente en aparatos electrónicos del hogar (como los controles remotos), pero puede sufrir interferencias debidas a las ondas de luz. La irDA (Infrared Data Association), creada en 1995, tiene más de 150 miembros.

2.2.4. Comunicaciones sónicas Las comunicaciones basadas en ultrasonidos tienen un alcance de pocos metros (generalmente de 1 a 2 metros) con tasas de transferencia de hasta 1Mbps. Son una alternativa a las comunicaciones en RF y óptica en las WPAN. La comunicación suele realizarse en modulaciones como FSK, MSK o BPSK. Sin embargo, el uso de ultrasonidos presenta complicaciones por factores adicionales. Primero, los transductores no tienen respuestas planas. Segundo, el campo ultrasónico irradiado por un transductor no es uniforme en todas direcciones, y la direccionalidad es un punto muy a tener en cuenta en estos equipos. Finalmente, hay una importante atenuación de los ultrasonidos en el aire, dependiente de la frecuencia, que limita esta técnica a frecuencias por debajo de 1 MHz. Para comunicaciones básicas de poca velocidad se utilizan los 40KHz, mientras que para mayores tasas se aumenta la frecuencia a la banda de 200 a 400 KHz.

2.3. Selección de tecnología base Tras este resumen sobre tecnologías de radio para redes de sensores, puede apreciarse claramente que IEEE 802.15.4 es una tecnología creada y diseñada específicamente para esta función (según su propia descripción, es una tecnología WPAN de baja tasa de transmisión para aplicaciones industriales, residenciales y médicas, con bajo consumo energético y bajo coste).

34

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Bluetooth clásico fue diseñada para sustituir al cable en conexiones de un maestro a dispositivos esclavos, con un alcance mucho menor. Establece y mantiene un canal por el que transmitir un elevado caudal de información, generando un consumo mayor que 802.15.4. El tiempo necesario para salir de un estado de sueño en Bluetooth es de 3 segundos, frente a los 15 ms de IEEE 802.15.4, lo que permite al segundo optimizar aún más el consumo energético con mayores tiempos en modo sueño. IEEE 802.15.4 tiene una pila de protocolo más simple, y necesita menos recursos de sistema (40 KB frente a los más de 250 KB de Bluetooth). Bluetooth es más complejo pues debe permitir conversaciones de voz y transferencia de imágenes y ficheros en redes adhoc. Como referencia, la capa MAC en Bluetooth proporciona 131 primitivas, mientras que en 802.15.4 proporciona 26 primitivas. Por otro lado, las redes de sensores deben ser escalables y permitir un elevado número de nodos. Bluetooth soporta hasta 8 elementos por piconet, y aunque se pueden interconectar varias piconets formando una scatternet, su escalabilidad es muy reducida en comparación a los 65.536 nodos de IEEE 802.15.4, provocando problemas de estabilidad en la red cuando el número de nodos y saltos aumentan. Bluetooth 4.0 (BLE) se presenta como una nueva tecnología diseñada para minimizar consumo de batería y precio de dispositivos, aumentando a su vez el rango de alcance. Sin embargo, no permite comunicación peer to peer y mucho menos topologías malladas, manteniendo la topología de bus en estrella que limita las aplicaciones a comunicaciones de un solo salto entre 50 y 100m. BLE tiene un futuro destinado a comunicaciones de corto alcance y no puede competir con otras tecnologías como 802.15.4, resultando inviable para operaciones de sensorización distribuida de extensión media.

Figura 22. Comparativa entre ZigBee, WiFi y Bluetooth

35

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

RuBee es una tecnología interesante por las características de su capa física, pero tiene fuertes limitaciones como la tasa de transferencia, el número de paquetes por segundo, su escalabilidad y la posibilidad de realizar topologías de red más complejas. Su aplicación parece estar bien definida para entornos donde sus características son más necesarias, como ambientes agresivos o elevada seguridad. Por otro lado, tecnologías del tipo UWB y RFID están diseñadas para identificación y comunicación por proximidad, y el grupo 802.11 tiene un consumo muy elevado para aplicaciones WPAN. Según un estudio publicado por GE (Energy Efficiency Comparisons of Wireless Communication Technology Options for Smart Grid Enabled Devices) (http://jorgecaleya.posterous.com/zigbee-vs-wifi-en-redes-de-sensores), Zigbee (que se basa en 802.15.4) es la tecnología más eficiente a nivel energético para este tipo de aplicación. En su estudio se hizo un estudio en un escenario real en igualdad de condiciones de tasa de datos, nivel de señal de radio, intervalos de transmisión, etc. Bluetooth fue descartado por su alcance, y Zigbee resultó ser 2,2 veces más eficiente energéticamente que WiFi. Para largos periodos con tareas de monitorización y sensorización, 802.15.4 tiene un consumo teórico del 1% de 802.11. También se destacó el hecho de que el coste por chip radio es mucho menor en Zigbee, y que la habilidad de formar redes malladas para la comunicación aporta, además de un ahorro energético significativo, una mayor fiabilidad de las comunicaciones debido a la redundancia de caminos generada. Otro estudio sobre el rendimiento energético entre ambas tecnologías puede encontrarse en http://es.mouser.com/pdfdocs/ZigBeeTechnology.pdf

Las tecnologías no basadas en RF (ópticas y sonoras) tienen una menor fiabilidad y requieren mayor direccionalidad y línea de visión, un problema real para muchas aplicaciones de sensorización. La eficiencia obtenida es menor en términos generales, y la mayoría de tecnologías ligadas se encuentran en estado de investigación.

Por lo tanto, las tecnologías base a utilizar en el proyecto son IEEE 802.15.4 y su variante 802.15.4e.

36

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

3. Diseño de pila de comunicaciones orientada a IP

Tras fijar la tecnología de WPAN seleccionada para el medio físico de comunicación y de capa MAC, queda escoger una pila de protocolos completa, siguiendo un modelo OSI simplificado (ya que las WPAN presentas algunas capas con particularidades). A continuación, se presenta la pila utilizada y un análisis de los protocolos escogidos para cada capa, a partir de la capa de red (nótese que las capas física y MAC se han presentado y analizado en detalle en el apartado anterior). La pila de referencia puede verse en la tabla 7.

PILA DE PROTOCOLOS CAPA SUBCAPA PROTOCOLOS Aplicación Aplicación RESTful (CoAP / HTTP) Publish-subscribe (MQTT / MQTT-SN) Transporte Transporte UDP / ICMPv6 Red Forwarding IPv6 Routing IETF RPL Adaptación IETF 6LoWPAN

Enlace de datos

MAC IEEE 802.15.4e Física PHY IEEE 802.15.4-2011

Tabla 7 Pila de protocolos seleccionada

3.1 Capa de Red

El uso de una capa de red basada en IP aporta beneficios directos en relación con la interoperabilidad y la reutilización. IP proporciona una comunicación de extremo a extremo transparente, y una adaptación natural para la mayoría de protocolos de aplicación (que se basan comúnmente en TCP / UDP e IP) La capa de red recibe una trama de la capa de transporte y forma un paquete IPv6 con la información de enrutamiento. Este paquete se envía a la capa de adaptación 6LoWPAN que realiza una compresión de cabeceras y la fragmentación de paquetes (si es aplicable). A continuación, el paquete se envía a la capa de enlace de datos. 6LoWPAN es la propuesta del grupo de trabajo "IPv6 sobre WPAN de baja potencia " (6LoWPAN) del IETF. Proporciona una manera de transmitir paquetes en formato IPv6 a través de una red IEEE 802.15.4, con el fin de mantener la conexión IP de extremo a extremo entre dos dispositivos (sensores, ordenadores, actuadores, etc.), sin que ambos extremos deban ser IEEE 802.15.4. Con esta característica, 6LoWPAN proporciona una ventaja esencial sobre otras tecnologías, que sólo definen la comunicación entre dispositivos IEEE 802.15.4. La importancia de IP en Internet hoy en día posiciona a 6LoWPAN como estándar para Internet de las cosas, pudiendo garantizar una dirección única para todos los objetos que

37

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

pueden existir en la red. Debido a que el número de direcciones IPv4 es demasiado pequeño y se está agotando, IPv6 es el formato básico en 6LoWPAN IP. La norma define los mecanismos de encapsulación, fragmentación y de compresión que permiten a los paquetes IP atravesar estos tipos de redes inalámbricas. La especificación base es la RFC 4944. La necesidad y utilidad de 6LoWPAN se debe a varios aspectos, tales como:

• Los paquetes de IEEE 802.15.4 son demasiado pequeños para transportar un paquete completo de IP, incluyendo IPv4. El tamaño máximo de paquete (MTU) en IPv6 debe ser al menos de 1280 bytes, mucho mayor que el tamaño máximo de paquete de IEEE 802.15.4, que es de 127 bytes, optimizado para reducir el consumo y para red de ancho de banda reducido. Además, el paquete IP debe estar contenido dentro de la porción de la trama MAC 802.15.4 destinado a la carga útil, que es entre 81 y 102 bytes, dependiendo de la configuración de seguridad utilizados. • IPv6 utiliza direcciones de 128 bits para identificar los nodos de la red, mientras que IEEE 802.15.4 utiliza direcciones de 64 bits, o la dirección corta de 16 bits, para identificar los nodos que están asociados con el mismo PAN. • IPv6 ha sido diseñado para dispositivos sin restricciones, mientras que 802.15.4 utiliza dispositivos muy económicos, con poca capacidad computacional y memoria, y cuya prioridad es minimizar el consumo de energía. • IPv6 funciona sobre tráfico de datos optimizado para la alta velocidad, protocolos complejos para el control de la congestión y los sistemas de solución de problemas. En IEEE 802.15.4, la prioridad de los dispositivos es la conservación de energía y optimización del tamaño del código. • IPv6 se utiliza en redes cableadas con topologías jerárquicas, mientras que en IEEE 802.15.4 las topologías malladas se consideran una gran ventaja.

6LoWPAN elimina algunos campos de cabecera IPv6 y UDP que se pueden derivar de otros campos de la cabecera IEEE 802.15.4. El campo "Dispatch" (1 byte) permite la coexistencia con otros protocolos. Indica si lo que sigue es 6LoWPAN y si es así qué tipo de paquete (enrutamiento, malla o fragmentación).

38

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 23. Comparación de cabeceras antes y después de la compresión. Las direcciones de origen y de destino están formadas por un campo de prefijo (que identifica un único PAN) y un campo de identificador de interfaz (que se genera a partir de la dirección de 64 bits IEEE o la dirección corta de 16 bits). Cuando un paquete IP es muy grande debido al contenido de nivel de aplicación, debe ser fragmentado para la red 802.15.4. La fragmentación se lleva a cabo en la fuente, cada paquete generado es etiquetado con: un número secuencial, el tamaño completo y la posición de cada paquete. Los fragmentos no tienen que llegar en orden, pero hay un límite de 60 segundos para la recepción de todos los fragmentos del mismo paquete. En cuanto al enrutamiento en capa de red, el protocolo de enrutamiento para redes de baja potencia con pérdidas (RPL) define un protocolo genérico vector de distancia que especifica cómo construir un “Destination Oriented Directed Acyclic Graph" o DODAG, es decir un grafo que construye una topología en árbol, aplicando diferentes funciones objetivo (FO adelante) y métricas, por lo que es capaz de adaptarse a gran variedad de redes. Una red RPL puede tener varias topologías de red diferentes (DAG a partir de ahora), llamados instancias, que cumplan con los requisitos específicos en función de la FO utilizada como criterio para crear las rutas entre los nodos y la raíz del grafo. Las condiciones de este tipo de redes cambian constantemente, por lo que el protocolo RPL implementa una serie de temporizadores y algoritmos (temporizador Trickle) para adaptar y reconstruir el grafo de una instancia determinada rápidamente. Con el fin de soportar los mensajes de control generados por RPL, ICMPv6 ha introducido un nuevo mensaje (Tipo 155, confirmado por la IANA) con un máximo de 9 tipos de mensajes de control (considerando versiones seguras). Los mensajes de control ICMPv6 de tipo RPL se describen como sigue: - Objeto Información DAG (DIO): lleva la información que permite a un nodo de descubrir una instancia RPL, aprender sus parámetros de configuración y seleccionar los padres del DAG. - Solicitud Información DAG (DIS): solicitar un objeto de información DAG de un nodo RPL.

39

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

- Objeto de anuncio de Destino (DAO): utilizado para propagar información de destino hacia arriba a lo largo del grafo. Cuando un nuevo nodo se une a la red, puede comportarse de dos maneras: esperar hasta recibir mensajes de control de los vecinos, o activamente enviar mensajes de control que solicitan información para la selección de uno de los padres. Los nodos envían mensajes DIO multidifusión de enlace local en forma periódica. La detección de inconsistencias de enrutamiento y estabilidad de la red influye en la tasa de mensajes DIO (el mecanismo temporizador ralentiza o acelera la generación de mensajes no solicitados DIO de acuerdo a los cambios en la información de capa de enlace). Los nodos escuchan mensajes DIO y utilizan la información de los paquetes recibidos para unirse a un nuevo grafo, o para mantener y actualizar uno existente. Los nodos también pueden utilizar un mensaje DIS para solicitar un DIO. En base a la información contenida en el mensaje recibido DIO, un nodo elige los padres que reduzcan al mínimo el coste de la ruta hasta la raíz del grafo. Como resultado, las rutas hacia la raíz se establecen, mantienen y actualizan periódicamente. Las rutas hacia bajo se construyen cuando los nodos envían mensajes DAO informando a sus padres de su presencia y accesibilidad. Finalmente, cada nodo hoja puede enviar paquetes a otro nodo hoja, yendo hacia arriba en el grafo hasta encontrar un pariente común y luego hacia abajo hasta el destino. Las FO designan las reglas que los nodos RPL tienen que seguir para seleccionar y optimizar rutas, y construir el grafo en base a la información disponible de los vecinos y el entorno. Para ello, las FO se basan en los datos proporcionados por una o más métricas, y la administración de otras restricciones que el administrador de la red desee incorporar.

3.2 Capa de Transporte

Los procesos de aplicación de Internet se comunican utilizando el paradigma de "sockets de Internet". Si no se utilizara esta arquitectura, usando un protocolo de aplicación, tal como HTTP, se monopolizaría el uso de la pila de comunicaciones, inhabilitando el uso de otros servicios al mismo tiempo. En el modelo de sockets, los procesos de la capa de aplicación son multiplexados en diferentes sockets proporcionados por la capa de transporte, dando así a las aplicaciones acceso simultáneo a la pila de comunicaciones. Todos los servidores y servicios en Internet utilizan este modelo de sockets, por lo que soportar este tipo protocolos es necesario para mantener la compatibilidad de nuestra pila de comunicaciones con.

Figura 24. Diagrama funcional de la arquitectura "sockets de Internet"

40

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Cuando se trabaja con servicios web es común el uso de HTTP, que utiliza el protocolo de transporte TCP (Transmission Control Protocol) para proporcionar un canal de alta fiabilidad y control de congestión. Sin embargo, para WPAN, es pesado y genera mucho tráfico, lo que perjudica a estas redes, y da lugar a muchos problemas de pérdida de paquetes y congestión. Cuando el protocolo de capa de aplicación proporciona el grado necesario de fiabilidad, el uso de UDP (User Datagram Protocol) es muy recomendable como protocolo de transporte, lo que permite una comunicación muy ligera y simple basada en sockets sin control de la congestión y la fiabilidad del canal. Para las capas de aplicación propuestas, UDP se selecciona como la solución preferida.

3.3 Capa de Aplicación

Actualmente existen diferentes soluciones consideradas a efectos de la capa de aplicación de la pila, ya que existen múltiples alternativas que se adaptan mejor o peor a cada caso de uso que pueda surgir de la aplicación de las WPAN.

Desde la perspectiva de las capas superiores de la pila de protocolos de comunicación, dos modelos de arquitectura con sus patrones de intercambio de información correspondientes se encuentran en las soluciones propuestas:

Request/Response: Es un patrón de intercambio de mensajes en el que un dispositivo envía un mensaje de solicitud a un sistema que recibe y procesa la solicitud, en última instancia, devolviendo un mensaje de respuesta. Este patrón es especialmente común en las arquitecturas cliente-servidor. Este modelo se implementa normalmente en forma síncrona, como en las llamadas a servicios web a través de HTTP, que abre una conexión y espera hasta que la respuesta se entrega o el período de tiempo de espera expira. Sin embargo, request/response también puede implementarse de forma asíncrona, retrasando la respuesta otro momento posterior (cuando una información que no estaba disponible pasa a estarlo). Como un protocolo compatible RESTful que está diseñado específicamente para las redes WSN, CoAP se propone como protocolo de capa de aplicación para casos de uso que requieran este tipo de comunicación. El grupo de trabajo IETF CoRE (Constrained RESTful Environments) se formó con el fin de estandarizar una solución para la capa de aplicación en dispositivos conectados a Internet con capacidades limitadas, generando en 2011 el primer borrador de CoAP (Constrained Application Protocol). CoAP proporciona un sistema de interacciones RESTful ligero, y fue diseñado muy similar a HTTP + REST para permitir una fácil traducción. CoAP utiliza identificadores de recursos (URI) con 4 métodos (POST, PUT, DELETE, GET) sobre UDP, pero introduce fiabilidad (gestión de las retransmisiones de información perdida), la transmisión de grandes cantidades de datos y soporte multicast. En los documentos posteriormente añadidos al standard original ("core-coap-03"), COAP permite suscribirse a los recursos (agregado el "core-observe-00") y el descubrimiento de los recursos ("core-link- format02").

41

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

A nivel de seguridad, COAP no tiene un encabezado de autenticación para identificar un acceso a un recurso (como HTTP), pero soporta DTLS (Datagram Transport Layer Security) que aporta contextos de seguridad si es necesario. Los datos encapsulados en CoAP pueden enviarse en cualquier formato de representación, como XML es el formato más utilizado en los servicios web, pero es un formato redundante en texto plano, por lo que genera mucho volumen de datos para WPANs. Otro formato es EXI (Intercambio Eficiente de XML), que es la propuesta del grupo de trabajo " Efficient XML Interchange" de la "World Wide Web Consortium" (W3C) para la codificación binaria de XML. EXI consigue una mayor relación de compresión que otras técnicas tales Fast Infoset, pero tanto el emisor como el receptor deben tener el mismo esquema de codificación XML, que no es ningún problema en WPAN.

Publish/Subscribe Es un patrón de intercambio de mensajes donde los nodos que producen información (publicador o emisor) publican sus muestras de datos en temas o “topics” (por ejemplo, la temperatura, la ubicación, la presión). Las muestras se envían a los suscriptores que declaran un interés en un tema determinado. Esta negociación se puede gestionar de forma distribuida entre los nodos, o centralizada en una entidad intermedia denominada “broker”. Esta arquitectura permite a los emisores y suscriptores el estar desacoplados, mejorando así la escalabilidad de la red, y se puede mejorar con tecnologías de nube (añadiendo elasticidad, equilibrio de carga y de seguridad). También permite la mejora de las operaciones asíncronas, tales como alarmas o actuaciones (un actuador que depende de una alarma activada por un sensor emisor es informado al instante cada vez que este sensor publica la alarma), y es aconsejable para un comportamiento en tiempo real.

Como protocolo preferido para este tipo de casos de uso, se escoge MQTT, en su versión ligera MQTT-S para redes de sensores, y que se detalla a continuación:

Message Queue Telemetry Transport (MQTT) es un protocolo de conectividad de máquina a máquina (M2M) que permite enviar datos de telemetría en forma de mensajes a través de redes de alta latencia. MQTT introduce también la autorización durante la etapa de conexión, y se puede utilizar sobre SSL para mayor seguridad

Está diseñado como un protocolo de mensajería muy ligero de publicación / suscripción, útil para las conexiones en las que es importante no consumir una gran cantidad de ancho de banda (utilizado por ejemplo en las comunicaciones entre los sensores, conexiones GPRS, etc.). MQTT es un estándar OASIS, actualmente en la versión 3.1.1 desde noviembre de 2014.

42

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 25. MQTT example of message exchange. Un cliente MQTT es cualquier dispositivo, desde un microcontrolador hasta un servidor completo, que se conecta a un bróker MQTT a través de cualquier tipo de red. Típicamente puede actuar como publicador o suscriptor al mismo tiempo. Esto podría ser un dispositivo muy pequeño y de recursos limitados que está conectado a través de una red inalámbrica, básicamente cualquier dispositivo que tenga una pila TCP / IP y habla MQTT sobre ella. El bróker es el principal responsable de la recepción de todos los mensajes, filtrarlos, decidir quién está interesado en ellos y luego enviar el mensaje a todos los clientes suscritos. También lleva a cabo la gestión de sesiones de clientes, incluyendo suscripciones mensajes perdidos. Otra responsabilidad del bróker es la autenticación y autorización de los clientes. La conexión se inicia cuando un cliente envía un mensaje CONNECT al corredor. El corredor responde entonces con un mensaje CONNACK y un código de estado. Una vez que se inicia la conexión, MQTT la mantendrá abierta mientras el cliente no envíe un comando de desconexión o la conexión se pierde. Una vez el cliente MQTT esté conectado a un bróker, puede publicar mensajes, o suscribirse a los temas que se están publicando. MQTT tiene un filtro basado en el tema de los mensajes, por lo que cada mensaje debe contener un tema, que se utilizará para enviar el mensaje a los clientes interesados. MQTT es agnóstico a los datos, por lo que cómo se estructura la carga útil depende del caso de uso. Depende del remitente si desea enviar datos en binario, texto e incluso XML o JSON. Cuando un cliente se suscribe o anula su suscripción a un tema determinado, recibirá un mensaje de confirmación del bróker (SUBACK o UNSUBACK). La estructura de los mensajes se puede ver a continuación (la lista completa de los tipos de mensajes soportados se muestra en la siguiente tabla).

43

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 26 ejemplos de mensajes MQTT

44

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Mnemonic Enumeration Description Reserved 0 Reserved CONNECT 1 Client request to connect to Server CONNACK 2 Connect Acknowledgment PUBLISH 3 Publish message PUBACK 4 Publish Acknowledgment PUBREC 5 Publish Received (assured delivery part 1) PUBREL 6 Publish Release (assured delivery part 2) PUBCOMP 7 Publish Complete (assured delivery part 3) SUBSCRIBE 8 Client Subscribe request SUBACK 9 Subscribe Acknowledgment UNSUBSCRIBE 10 Client Unsubscribe request UNSUBACK 11 Unsubscribe Acknowledgment PINGREQ 12 PING Request PINGRESP 13 PING Response DISCONNECT 14 Client is Disconnecting Reserved 15 Reserved Tabla 8. Lista de tipos de mensaje MQTT 3.4 Modelo de Información

Incluso con un patrón de intercambio de datos determinada, un modelo de información debe ser definido con el fin de permitir a las partes involucradas para entender los datos intercambiados y ser capaz de manipular correctamente la información. Este modelo de información incluye los formatos de datos y la serialización, codificaciones y semántica de objetos. Una definición simple puede ser implementada de acuerdo con los requisitos (tales como XML o JSON específicos para los casos de uso), pero hay tecnologías de código abierto que proporcionan soluciones que también se pueden aplicar, como IPSO Smart Objects [http: //www.ipso- alliance.org/smart-object-guidelines]

4. Implementación de la pila de comunicaciones

Para implementar la pila de comunicaciones propuesta, en primer lugar, se realiza un estudio del arte de dispositivos y plataformas software que nos permitan programar y validar los protocolos propuestos.

4.1 Hardware

Zolertia Z1 En laboratorio se dispone al inicio del proyecto de unos dispositivos Zolertia Z1, con encapsulación propia, para implementaciones de redes reales que requieran mayor número de nodos y con soporte físico para sensores y actuadores. Se trata de hardware con algunas restricciones de recursos mayores respecto al resto propuesto en adelante, por tiempo en el

45

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

mercado, pero útiles para apoyar los estudios de comparaciones entre protocolos o para dar soporte a aplicaciones reales. Cuentan con 5 leds indicadores de cobertura, 2 pulsadores, 6 entradas para sensores analógicos (típicamente interfaz 5-20mA), un chip radio CC2420 de TI, y alimentados por batería. Se muestra captura del nodo con encapsulación propia:

Figura 27. Hardware Zolertia Z1

OpenMote-CC2538

El OpenMote-CC2538 incluye el siguiente hardware: • CC2538: Es un SoC (System on Chip) de Texas Instruments con un microcontrolador Cortex-M3 de 32 bits y un radio-transceptor CC2520. El microcontrolador es de 32 MHz e incluye 32 Kbytes de RAM y 512 Kbytes de flash, así como los periféricos habituales (GPIO, ADC, temporizadores, etc.). La radio funciona en la banda de 2,4 GHz y es completamente compatible con el estándar IEEE 802.15.4-2006 y 802.15.4e. • TPS62730: Es un convertidor DC / DC de Texas Instruments con dos modos de funcionamiento, regulado y derivado. En el modo de derivado el TPS62730 conecta directamente la tensión de entrada de la batería (típicamente 3 V) a todo el sistema. En el modo regulado el TPS62730 regula la tensión de entrada (típicamente 3 V) hasta 2,1 V. La ventaja de tal enfoque es que toda la eficiencia del sistema se puede mejorar, tanto en condiciones de baja y alta carga, es decir, ya sea cuando el sistema de está durmiendo o cuando la radio está transmitiendo o recibiendo. • LEDs: Incluye 4 LEDs (colores: rojo, verde, amarillo y naranja) de Rohm Semiconductor para propósitos de depuración. • Botones: Incluye 2 botones de Omron, uno se utiliza para resetear y el otro está conectado a una línea de GPIO, permitiendo así a despertar al microcontrolador desde los modos de suspensión a través de una interrupción. • Conector de antena: El conector de antena permite conectar una antena externa. • Disposición XBee: El OpenMote es totalmente compatible con el formato XBee, lo que significa que puede ser fácilmente conectado con un ordenador mediante el XBee Explorator Dongle de Sparkfun.

46

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 28 Openmote CC2538

Seed Eye

Las principales características de SEED EYE son: • MCU: El Microchip PIC32MX795F512L es un microcontrolador extremadamente potente que mediante la implementación de la arquitectura MIPS puede proporcionar hasta-80 MIPS de potencia de cálculo, con 512KB de construido en memoria flash y 128 KB de RAM. El MCU implementa SPI, I2C, UART, CAN y protocolos de comunicación USB. • Interfaz IEEE802.15.4: Un transceptor radio Microchip MRF24J40MB Este transceptor se incluye por su extremadamente alta cobertura (hasta 100 metros en espacio abierto a potencia máxima) y por su alta capacidad de configuración. • Interfaz IEEE 802.3 Ethernet con TCP / IP. El MCU implementa la capa IEEE802.3 MAC y mediante el uso de un adaptador PHY SMSC LAN8720A se puede comunicar con otras unidades o equipos. • Interfaz USB. • Conectores: Los diseñadores pueden acceder a SPI, I2C, CAN, puertos UART, y puertos IO analógicos. • Interfaz CMOS de cámara: viene con un sensor OV9650 CMOS, que permite captar y enviar imágenes a una resolución mínima de 160x120 16 bits. • Conversor DC / DC de potencia de entrada. El tablero puede ser alimentado ya sea por un conector de alimentación estándar o por USB.

Figura 29 SEED EYE hardware

47

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

OPENLAB Raspberry Pi 802.15.4 radio

Este módulo añade soporte para redes 802.15.4 y 6LoWPAN al conocido hardware Raspberry Pi, obteniendo un dispositivo más potente y barato para utilizar, por ejemplo, como la raíz de la red WPAN.

Figura 30 OpennLab Raspberry Pi 802.15.4

4.2 Software

Las dos plataformas actualmente más extendidas para el desarrollo de redes WPAN basadas en IEEE 802.15.4, que cuentan con diversas herramientas para programar y simular redes son:

OpenWSN

El objetivo del proyecto OpenWSN es proporcionar implementaciones de código abierto de una pila de protocolos completa basada en estándares del Internet de las cosas, aplicables en gran variedad de plataformas de software y hardware.

Esta aplicación puede ayudar al entorno académico y a la industria a la hora de verificar la aplicabilidad estos estándares y pila de protocolos. Proporciona herramientas para generación y compilación de código para el firmware de diferentes plataformas hardware, como el Openmote cc2538, además de un completo simulador de redes y herramientas de análisis de red para capturar y analizar tráfico.

48

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 31. Captura del simulador de redes de OpenWSN OS

Contiki

Con Contiki, el desarrollo es fácil y rápido: las aplicaciones están escritos en C estándar, con el simulador Cooja de redes, el código puede ser emulado antes grabado en el hardware. Contiki se ejecuta en una amplia gama de dispositivos inalámbricos de baja potencia, muchos de los cuales se pueden comprar fácilmente online. Además, Contiki es desarrollado por un equipo mundial de desarrolladores con contribuciones de Atmel, Cisco, ETH, Redwire LLC, SAP, Thingsquare, y muchos otros, dirigido por de Thingsquare, por lo que ofrece una comunidad de desarrollo muy activa.

49

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 32. Captura del simulador de redes WSN de Contiki

4.3 Selección de equipos y software:

Finalmente, se detalla el hardware y software utilizado durante el trabajo con WPANs:

Hardware Software OpenMote CC2538 OpenWSN OS Zolertia Z1 Contiki OS Tabla 9. Resumen de plataformas HW y SW empleadas.

50

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

5. Pruebas y evaluación

Las pruebas realizadas para evaluar la pila de protocolos existentes se pueden dividir en dos frentes, por un lado la evaluación del protocolo MAC y de la capa de enrutamiento, y por otro la validación de la capa de aplicación y modelos de información escogidos:

5.1 Evaluación de protocolo MAC, topologías y encaminamiento

Para las pruebas del protocolo MAC escogido, IEEE 802.15.4e, se hace uso del software OpenWSN, implementando la pila de protocolos descrita, y simulando en nodos virtuales el firmware que se grabará en los nodos físicos, de forma que podamos validar el comportamiento temporal determinista de TSCH, y poder modificar y configurar diversas topologías. A continuación, se describen algunos casos simulados, para redes con pocos nodos (por motivos de claridad, ya que planificaciones de un número alto de nodos es muy complejo y difícil de validar en la práctica).

5.1.1 Caso 1

Topología física

Figura 33. Topología física caso 1

Planificación de los nodos

Está implementado la versión minimal 6TiSCH de la norma [ref], por tanto, la planificación de la supertrama temporal en cada nodo es:

51

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

n1 (root) TXRX

n2 TXRX

n3 TXRX

n4 TXRX

n5 TXRX

Figura 34. Planificación TDMA en caso 1

Objetivo Forzar un cambio de ruta mediante el deterioro de un enlace.

Desarrollo Tras la formación de la red, la topología lógica queda como sigue:

Figura 35. Grafo inicial de la red caso 1

A continuación modificamos el parámetro PDR1 del enlace, cuyo valor original era 1.

푃푎푞푢푒푡푒푠 푟푒푐푖푏푖푑표푠 1 푃푎푐푘푒푡 퐷푒푙푖푣푒푟푦 푅푎푡푖표 = 푃푎푞푢푒푡푒푠 푒푛푣푖푎푑표푠 52

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 36. Degradación de enlaces en simulador, caso 1

Y tras esperar a que la red se configure, podemos ver su nueva topología lógica:

Figura 37. Nuevo grafo de la red tras degradación de enlace, caso 1

Por tanto, de esta forma, comprobamos la posibilidad de actuar sobre el grafo de red y forzar actuaciones del protocolo de encaminamiento.

53

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

5.1.2 Caso 2

Topología física

Figura 38. Topología de red física, caso 2

Planificación de los nodos La estructura de la trama temporal TDMA en cada nodo, para este caso, con una supertrama dividida en 4 slots, se configura como muestra la figura 38: n1 (root) TXRX TXRX OFF OFF n2 OFF TXRX OFF TXRX n3 TXRX OFF TXRX OFF n4 OFF OFF TXRX TXRX n5 OFF OFF TXRX TXRX

Figura 39. Planificación TDMA en caso 2

54

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Objetivo Observar la formación de la red, y comprobar que la planificación correspondiente a este grafo funciona de la forma esperada.

Desarrollo Sólo se llegan a sincronizar con el root los nodos n2 y n3, incluso le llegan a enviar un DAO cada uno, tal como se nos muestra en la consola.

Figura 40. Salida de la consola mostrando paquetes de control intercambiados

Hemos capturado con el software analizador de tráfico Wireshark los paquetes que se intercambian antes de que la aplicación se cuelgue.

Figura 41. Captura de analizador de tráfico con intercambio de paquetes en la red.

55

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

5.1.3 Caso 3

Topología física

Figura 42. Topología de red física, caso 3

Planificación de los nodos n1 (root) TXRX TXRX OFF OFF n2 TXRX TXRX TXRX TXRX n3 TXRX TXRX TXRX TXRX n4 RX RX TXRX TXRX n5 RX RX TXRX TXRX

Figura 43. Planificación temporal de cada nodo, caso 3

Objetivo Observar la formación de la red, comprobar que la planificación responde como es esperado, validando así la posibilidad de crear redes con latencias acotadas, comportamiento temporal

56

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

determinista, y que permite optimización de la planificación.

Desarrollo La topología lógica se forma correctamente:

Figura 44. Grafo de topología lógica de la red, caso 3

Y podemos comprobar el correcto funcionamiento de la aplicación mediante el visualizador:

57

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

58

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Figura 45. Capturas del simulador, mostrando estadísticas de cada nodo de la red

5.2 Evaluación de protocolo de aplicación publish/subscribe y modelo de datos

Se escoge, como protocolo de capa de aplicación, MQTT. Este protocolo de tipo publish/subscribe es bastante ligero y aporta diversas funcionalidades adecuadas para el intercambio de mensajes de tipo telemetría, incluyendo opciones de QoS para garantizar entrega de mensajes, mensajes de testamento, o acceso a estadísticas del bróker mediante suscripción a temas del sistema. Además, este tipo de protocolo es más adecuado en entornos con requisitos de pseudo tiempo real, como los que pueden encontrarse en aplicaciones industriales. Se han realizado pruebas de captura de datos con publicadores y suscriptores virtuales (para simular cantidad creciente de tráfico), para conocer como dimensionar la red, capacidades requeridas por el bróker, impacto de los niveles de QoS, etc. Los casos de prueba y resultados se pueden ver en las tablas de apartados 5.2.2 y 5.2.3 (denominamos detector a un sensor publicando un tema).

5.2.1 Modelo de datos

Además, se opta por implementar un modelo de datos basado en IPSO Smart Objects, de forma que la tipología de medidas e información intercambiada siga un patrón común que permita interoperar con cualquier otro sistema que implemente dicho modelo de datos. Este modelo es de acceso abierto y por tanto no existen trabas a la hora de conocer e identificar los recursos.

En ejemplo de aplicación de Smart Objects se muestra a continuación, simulando un paquete de datos generado por un nodo que mide temperatura en una ubicación concreta de un vagón de tren:

59

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

•TEMA:

READ/3303/VENDORNAME/TRAIN30/WAGON10/DOOR: publica medidas de temperatura, tipo IPSO smart object (3303), del sensor de VENDORNAME y su localización: tren 30 y vagón 10, sensor de la puerta.

•PAYLOAD:

Formato JSON, definiendo cada atributo o recurso disponible del tipo de sensor 3303 temperatura:

[ [{"5700": “35”}, {"5701": "Celsius"}, {"5506": "12414134"}], [{"5700": “31”}, {"5701": "Celsius"}, {"5506": "12414205"}], [{"5700": “32”}, {"5701": "Celsius"}, {"5506": "12414308"}] ] Siendo 5700 el recurso medida, 5701 el recurso magnitud, y 5506 el timestamp o marca temporal.

Nótese que en caso de requerir identificadores de objeto o de recursos no definidos por IPSO, es posible generar identificadores propios en el espacio reservado a tal fin. En este caso, nuestras aplicaciones que implementen estos objetos no podrán interoperar con terceros que desconozcan los nuevos objetos definidos, pero incluso en este caso, se puede solicitar el registro de los nuevos objetos a la IANA, de forma que quedan registrados y protegidos para su posterior uso.

5.2.2 Casos de prueba sobre MQTT

Para cada prueba unitaria podemos identificar el siguiente: - ID: identificación de la prueba. - Función de prueba: es la función que se está comprobando. - Input: Generación de tráfico de entrada - Output: resultados de la prueba. - Configuración de parámetros: la configuración de los parámetros de detectores para identificar la información recibida en Bróker MQTT y clientes.

ID = TC01 Descripción Función de prueba El cliente recibe información de un detector Input El detector 1 publica cada 1 segundo Output El cliente recibe el paquete con timestamp y payload cada Segundo. Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 y Detector 3: No activados Tabla 10. Test MQTT configuración 1

60

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

ID = TC02 Descripción Función de prueba El cliente recibe información de dos detectores Input Dos detectors publican, con diferentes tasas de generación(1 seg y 5 seg) Output El cliente recibe el paquete con timestamp y payload cada Segundo del detector 1 y cada 5 segundos del detector 2. Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 Timer: 5seg | QoS: 0 | Payload Topic: “5ms” Detector 3: No activado Tabla 11. Test MQTT configuración 2 ID = TC03 Descripción Función de prueba El cliente recibe información de tres detectores Input Tres detectores publican, con diferentes tasas de generación(1 seg, 5 seg 10 seg) Output El cliente recibe el paquete con timestamp y payload cada Segundo del detector 1 y cada 5 segundos del detector 2, y del detector 3 cada 10 segundos. Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 Timer: 5seg | QoS: 0 | Payload Topic: “5ms” Detector 3: Timer: 10seg | QoS: 0 | Payload Topic: “10ms” Tabla 12. Test MQTT configuración 3 ID = TC04 Descripción Función de prueba El cliente recibe de 3 detectores pero con diferentes QoS Input Tres detectores publican con diferentes tasas(1,5 y 10 segundos) y diferentes QoS(0,1,2) Output El cliente recibe de los tres detectores con su periodo definido, y cada una con diferente QoS Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 Timer: 5seg | QoS: 1 | Payload Topic: “5ms” Detector 3: Timer: 10seg | QoS: 2 | Payload Topic: “10ms” Tabla 13. Test MQTT configuración 4 ID = TC05 Descripción Función de prueba Simulación pérdida de paquetes Input Tres detectors publican con diferentes parámetros (timer, QoS y Payload Topic).

61

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

Perdidas de paquetes de canal modificadas de 0% a 95%. Output Se miden los paquetes recibidos en el cliente (con QoS=0 hay pérdidas, con QoS=1 hay pérdidas y reintentos) Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 Timer: 5seg | QoS: 1 | Payload Topic: “5ms” Detector 3: Timer: 10seg | QoS: 1 | Payload Topic: “10ms” Tabla 14. Test MQTT configuración 5 ID = TC06 Descripción Función de prueba Se configuran 1000 detectores simultaneos Input Tres detectores publican con timestamp y QoS, el resto publican datos aleatorios con configuración aleatoria (ruido de fondo) Output SIP receives information from all detectors. Configuración Detector 1: Timer: 1seg | QoS: 0 | Payload Topic: “1ms” Detector 2 Timer: 5seg | QoS: 1 | Payload Topic: “5ms” Detector 3: Timer: 10seg | QoS: 1 | Payload Topic: “10ms” Rest of Detectors: Timer: aleatorio | QoS: aleatorio | Payload Topic: “aleatorio” Tabla 15. Test MQTT configuración 6, con ruido variable

62

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

5.2.3 Resultados

El resultado de los casos probados se resume en las siguientes tablas:

ID Test Resultado Comentarios TC01 OK - TC02 OK - TC03 OK - TC04 OK Durante las pruebas QoS=2 no funciona conforme a las especificaciones.(Se descarta su uso posterior por el momento) TC05 OK Ver siguiente figura TC06 Error La cantidad de tráfico generado satura tanto al cliente suscrito como al bróker. Mas test de escalabilidad ofrecerán interesantes resultados, tanto para conocer el número de detectores simultáneos soportables, y la repercusión del aumento de recursos hardware en bróker y cliente para aumentar la cifra de detectores.

Tabla 16. Resumen de resultados pruebas MQTT

Figura 46. Paquetes recibidos según pérdidas de canal para Test 6

6. Validación y patentado de tecnologías o herramientas

La pila de protocolos seleccionada, como se ha visto, permite crear una red WPAN perfectamente funcional y con aplicación en multitud de casos de uso. El uso de estándares y software abiertos y un modelo de datos interoperable permite dotar de gran versatilidad y usabilidad a estas redes, incluso en ambientes exigentes como los escenarios industriales. No obstante, es necesario escalar correctamente la aplicación, ya que la gran cantidad de mensajes

63

E.3.1 – Evaluación de tecnologías WPAN en entornos críticos

que pueden llegar a intercambiarse en tiempo real cuando el número de sensores es alto, requiere provisionar equipos con suficientes recursos hardware y capacidad de procesado para evitar colapsar la red y bloquear las aplicaciones.

En el ámbito de patentes o registro de tecnologías, la elección del modelo de datos estandarizado IPSO Smart Objects nos permite, en función de las necesidades del caso de uso, poder registrar ante la IANA (Internet Assigned Numbers Authority) nuevos tipos de objeto y de recursos, aportando así un valor añadido al colaborar con la estandarización de los datos que se intercambian y se intercambiarán en un futuro en las comunicaciones M2M y el Internet de las cosas.

Además, basado en los desarrollos realizados en la línea para obtener tecnologías y herramientas que faciliten el despliegue rápido de redes de sensores inalámbricas (WSN), se ha trabajado en el análisis de patentes existentes, viabilidad de registro de la tecnología, y finalmente la redacción de la patente “Método de despliegue rápido de nodos en una red y nodo para poner en práctica dicho método”, con código de referencia “201530039”, y gestionado por el agente de la propiedad 0594/0 (Maldonado Jordan Julia), que se encuentra actualmente bajo estudio por a OEPM. Esta tecnología permite desplegar una red de sensores inalámbricos en pocos minutos y sin requisitos especiales de capacidades técnicas del operario, mediante ayudas visuales que informan de la mejor posición (por cobertura y calidad del enlace) para situar los nodos.

64