Weave se aloja en cada nodo en la red de área local (HAN), en cada dispositivo móvil que ayuda a vincular o controlar un nodo y en el servicio que mantiene sincronizados los nodos y los dispositivos móviles. En el sistema de Weave, estos elementos (nodo, dispositivo, servicio) se denominan recursos
.Weave puede proporcionar la fuente de la verdad de los datos para cada recurso, así como los medios para comunicarse de manera segura entre ellos.
Hay cuatro componentes principales de Weave. Resulta útil comprender cada una de ellas en un nivel alto antes de explorar cómo interactúan entre sí y se superponen en el sistema.
Esquema
El esquema
es el modelo de datos para la plataforma de Weave.El esquema define tres elementos:
- Características Una unidad de capacidad básica, como el estado de una propiedad, una notificación del estado o una solicitud para cambiar el estado
- Interfaces Es un grupo de características que representan una función específica, como las propiedades y los eventos que conforman un cerrojo de seguridad.
- Recursos Es un elemento lógico o físico compuesto por interfaces y características, como un dispositivo Nest, una estructura o un usuario
Piensa en el esquema como una base de datos distribuida en varios recursos, en la que la copia de cada característica (fuente de confianza) no reside por completo en un solo recurso, sino que se distribuye entre los recursos por características. El recurso principal de un rasgo sirve como el publicador de características, mientras que otros recursos son suscriptores de ese rasgo.
Por ejemplo, puedes tener un esquema simple que contenga dos características compartidas en tres recursos. El recurso 1 podría ser el publicador del conjunto A, mientras que el recurso 3 podría ser el del segundo. Los otros recursos son suscriptores para esas características:
También es posible que más de un recurso se publique como publicador para la misma característica, según las necesidades del sistema.
El servicio
En Weave, el servicio se conoce con frecuencia como recurso cuando, desde la perspectiva del esquema, puede presentarse como varios recursos. En otras palabras, todos los demás recursos del sistema de Weave.
Por ejemplo, es posible que un sensor solo necesite publicar características que sean relevantes para su funcionalidad y suscribirse a ellas, algunas de las cuales podrían compartirse con otros recursos, como un concentrador o un nodo. Esos recursos pueden tener otras características a las que el sensor no se suscribió. Sin embargo, el servicio puede suscribirse a todas esas características o publicarlas.
Perfiles
La funcionalidad de Weave se agrupa en construcciones lógicas llamadas perfiles casi veinte perfiles disponibles con OpenWeave.
. Cada perfil corresponde a un conjunto específico de funciones de Weave, que comprende elementos como protocolos, tipos de mensajes y códigos de error. ExistenPor ejemplo, el perfil Data Management
controla la administración de características en tiempo real en un patrón de mensajería de publicación y suscripción. Puede actualizar el estado de una característica de ocupación en un recurso de la casa según la entrada de otro recurso (cambiar el estado de "casa" a "Ausente" porque tu dispositivo móvil detecta que no estás en casa, tal vez).Otro perfil es Echo
. Este perfil es análogo a un ping de red y se usa para probar la conectividad, la latencia, la seguridad y el funcionamiento de la red.Otro perfil es el aprovisionamiento de redes
. Este perfil incluye funciones para buscar redes inalámbricas y configurar sus credenciales a fin de aprovisionar un recurso en esa red.Mensajes
Para llevar a cabo la funcionalidad de los perfiles, los recursos de una HAN deben poder enviarse mensajes entre sí. Weave incluye una capa de mensajes
que controla todos los mensajes entre recursos del sistema.Existen dos tipos de mensajes:
- Mensaje general Encapsula contenido general de Weave.
- Mensaje de túnel Encapsula un paquete de IP
Cada perfil tiene su propio conjunto de tipos de mensajes que utiliza para comunicar su funcionalidad. Por ejemplo, el perfil de Administración de datos puede enviar un mensaje general de Solicitud de actualización para cambiar el estado de una característica. El perfil Echo puede enviar un mensaje general de Echo Request a un recurso, el cual envía un mensaje de Echo Response en respuesta.
Tela
Para pasar todos estos mensajes entre recursos, se debe aprovisionar una tela
de Weave. Una estructura es una colección de recursos habilitados para Weave que cooperan para proporcionar servicios a otros recursos y servicios.Todos los recursos de la estructura hablan el idioma común de Weave, independientemente de la conexión o el tipo de red subyacente. A cada nodo de la estructura se le asigna una dirección IPv6 adicional para que la aplicación de Weave pueda usarla de forma segura.
Weave usa la tecnología de transporte subyacente (por ejemplo, Wi-Fi o Thread) para enviar mensajes entre direcciones IPv6 de tejido.
Resumen
Qué aprendió:
- En un sistema de Weave, los nodos, los dispositivos y el servicio se llaman recursos.
- Weave proporciona la fuente de verdad de los datos y comunicaciones seguras para cada recurso en el sistema de Weave.
- Weave consta de cuatro componentes principales:
- Esquema Los datos y el modelo de API
- Perfiles Protocolos de aplicaciones que administran un conjunto de funciones
- Mensajes Controla todos los mensajes entre recursos.
- Fabric Una colección de recursos habilitados para Weave