Aluno: Vinícius Matos da Silveira Fraga
Orientador: Prof. Djamel Fawzi Hadj Sadok
Trabalho de Graduação em
Ciência da Comp...
Um Middleware Semântico
Para a Internet das Coisas
Um Middleware Semântico
Para a Internet das Coisas
IntroduçãoIntrodução
O que é a Internet das Coisas?
Todas as coisas
conectadas à internet
4
Fonte: http://www.chragokyberneticks.ch/
Fonte: http://www.chragokyberneticks.ch/
Fonte: http://www.marservices.co.uk/5-ways-internet-things-will-change-work-2016/
Fonte: http://www.chragokyberneticks.ch/
Fonte: http://www.seediscover.com/behind-the-numbers-growth-in-the-internet-of-th...
Motivação
8
● Área em grande crescimento
● Possibilita melhoras para a vida humana
● Desafios
○ Dispositivos usam tecnolog...
Objetivos
● Facilitar integração de dispositivos
● Ser escalável
● Facilitar desenvolvimento de aplicações
9
Estratégias utilizadas
10
● Padronizar comunicação
○ Roteamento, endereçamento, enlace…
● Padronizar descrições semânticas...
Com essa variedade de padrões...
11
Nada está padronizado
Pontos de partida do Aura
● Middleware
● Orientação a serviços
● Ontologias
12
O que é um middleware?
13Fonte: https://blog.butecopensource.org/internet-das-coisas/
O que é orientação a serviços?
14Fonte: http://www.drdm.si/services.html
“Uma ontologia é uma especificação explícita
de uma conceitualização”¹
T. R. Gruber. “A Translation Approach to Portable O...
Uma especificação de conceitos e as relações entre eles.
Como uma coisa se relaciona com outro coisa.
O que é uma ontologi...
Trabalhos RelacionadosTrabalhos Relacionados
LinkSmart
● Middleware
● Semântica
● Orientado a serviços
○ Expõe dispositivos como serviços web
18
Fonte: P. Kostelník, M. Sarnovsky, K. Furdík. “THE SEMANTIC MIDDLEWARE FOR NETWORKED EMBEDDED SYSTEMS APPLIED IN
THE INTER...
Fonte: P. Kostelník, M. Sarnovsky, K. Furdík. “THE SEMANTIC MIDDLEWARE FOR NETWORKED EMBEDDED SYSTEMS APPLIED IN
THE INTER...
LinkSmart: Desvantagens
● Arquitetura Complexa
● Fortemente acoplado
○ Descrever novas tecnologias “dentro” do próprio mid...
WSNManager
● Middleware para Redes de Sensores sem Fio
● Gateways
● Orientado a serviços
● Escalabilidade horizontal
2222
WSNManager: Funcionamento geral
2323
Aplicações Cliente
WSN Manager Middleware
WSN #1
WSN Manager
Worker #1
WSN Manager
Wo...
WSNManager: Arquitetura
24
WSN Manager
Worker #1
...
WSN Gateway Broker
WSN Manager Middleware
WSN Client Broker
WSN Manag...
WSNManager: Desvantagens
● Complexidade de integração
○ Desenvolvimento de plugins
2525
● Biblioteca Node.js
● Semântica
● Simplicidade
Internet of Things Database (IOTDB)
26
IOTDB
27
IOTDB
28
Arquitetura sem usar Node.js diretamenteArquitetura de um projeto nativo Node.js
IOTDB: Desvantagens
● Custo de desenvolvimento
○ É apenas uma biblioteca
● Integrar tecnologias exige desenvolvimento driv...
Aura MiddlewareAura Middleware
Por que Aura?
31
● Aura, do Latim, significa brisa, vento suave.
● Simboliza a suavidade de integração e desenvolvimento.
Aura Middleware
32
● Arquitetura orientada a serviços
○ LinkSmart e WSNManager
● Escalabilidade horizontal
○ WSNManager
● ...
Exemplo
33
34
Broker API
App #1 App #nGateway #1 Gateway #n
Worker #1 Worker #n
AURA MIDDLEWARE
35
Camada
Física
Broker
API REST
AURAWORKER Device
Manager
Task
Manager
Semantic
Manager
Storage Manager
AURAMIDDLEWARE
Ca...
36
Comunicação: Gateway x Broker
Publisher
MQTT Broker
SubscriberPublisher
Topic#1
Message2
Message1
...
Subscriber
37
Comunicação: Broker x Worker
Broker Worker#2
Worker#1
Worker#n
...
Push
Pull
Pull
Pull
Pull
38
AURA WORKER
Device
Manager
Task
Manager
Semantic
Manager
Storage Manager
39
Ontologias
Criação de um dispositivo
40
Task
Measurement
Device
Platform
Discrete
Sensor
Discrete
Actuator
Continuous
Sensor
Continuous
Actuator
Unit
Variable
Dep...
ExperimentosExperimentos
Cenários
● Entrada de novos dispositivos na rede
○ Simulador de gateway
■ Envio de medições, plataformas, sensores...
● Mo...
Métricas observadas
● Vazão de mensagens
○ 1 worker
● Custo espacial
○ Armazenamento
● Tempo de resposta da API
○ Consulta...
Mensagens do gateway
Tipo de Mensagem Quantidade
Medição 1001
Dispositivo 50
Plataforma 50
Sensor Contínuo 25
Atuador Cont...
Custo espacial
● Medição tem em média 496 bytes
● Recebendo 1 mensagem/segundo, 1 dia = 40 MB
● Possível empregar agregaçã...
Respostas da API
47
Resultados do profiler
48
Conclusão e Trabalhos
Futuros
Conclusão e Trabalhos
Futuros
Conclusão
● Dificuldades de desenvolvimento são tão reais quanto a IoT
● É possível superar as diferenças com um middlewar...
Trabalhos Futuros
51
● Manter o grafo semântico em seu formato original
○ Em memória
● Expandir ontologias, integrar outra...
Um Middleware Semântico
Para a Internet das Coisas
Um Middleware Semântico
Para a Internet das Coisas
Próximos SlideShares
Carregando em…5
×

AuraSlides

108 visualizações

Publicada em

1 comentário
1 gostou
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
108
No SlideShare
0
A partir de incorporações
0
Número de incorporações
6
Ações
Compartilhamentos
0
Downloads
2
Comentários
1
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

AuraSlides

  1. 1. Aluno: Vinícius Matos da Silveira Fraga Orientador: Prof. Djamel Fawzi Hadj Sadok Trabalho de Graduação em Ciência da Computação Trabalho de Graduação em Ciência da Computação Universidade Federal de Pernambuco – UFPE Centro de Informática - CIn
  2. 2. Um Middleware Semântico Para a Internet das Coisas Um Middleware Semântico Para a Internet das Coisas
  3. 3. IntroduçãoIntrodução
  4. 4. O que é a Internet das Coisas? Todas as coisas conectadas à internet 4
  5. 5. Fonte: http://www.chragokyberneticks.ch/
  6. 6. Fonte: http://www.chragokyberneticks.ch/ Fonte: http://www.marservices.co.uk/5-ways-internet-things-will-change-work-2016/
  7. 7. Fonte: http://www.chragokyberneticks.ch/ Fonte: http://www.seediscover.com/behind-the-numbers-growth-in-the-internet-of-things/
  8. 8. Motivação 8 ● Área em grande crescimento ● Possibilita melhoras para a vida humana ● Desafios ○ Dispositivos usam tecnologias diferentes ○ É difícil integrá-los e desenvolver aplicações
  9. 9. Objetivos ● Facilitar integração de dispositivos ● Ser escalável ● Facilitar desenvolvimento de aplicações 9
  10. 10. Estratégias utilizadas 10 ● Padronizar comunicação ○ Roteamento, endereçamento, enlace… ● Padronizar descrições semânticas ○ Ontologias ● Padronizar APIs ○ Cada dispositivo com uma API! ● Middlewares ● Bibliotecas
  11. 11. Com essa variedade de padrões... 11 Nada está padronizado
  12. 12. Pontos de partida do Aura ● Middleware ● Orientação a serviços ● Ontologias 12
  13. 13. O que é um middleware? 13Fonte: https://blog.butecopensource.org/internet-das-coisas/
  14. 14. O que é orientação a serviços? 14Fonte: http://www.drdm.si/services.html
  15. 15. “Uma ontologia é uma especificação explícita de uma conceitualização”¹ T. R. Gruber. “A Translation Approach to Portable Ontology Specifications.” Tradução livre O que é uma ontologia? 15
  16. 16. Uma especificação de conceitos e as relações entre eles. Como uma coisa se relaciona com outro coisa. O que é uma ontologia? 16
  17. 17. Trabalhos RelacionadosTrabalhos Relacionados
  18. 18. LinkSmart ● Middleware ● Semântica ● Orientado a serviços ○ Expõe dispositivos como serviços web 18
  19. 19. Fonte: P. Kostelník, M. Sarnovsky, K. Furdík. “THE SEMANTIC MIDDLEWARE FOR NETWORKED EMBEDDED SYSTEMS APPLIED IN THE INTERNET OF THINGS AND SERVICES DOMAIN”
  20. 20. Fonte: P. Kostelník, M. Sarnovsky, K. Furdík. “THE SEMANTIC MIDDLEWARE FOR NETWORKED EMBEDDED SYSTEMS APPLIED IN THE INTERNET OF THINGS AND SERVICES DOMAIN”
  21. 21. LinkSmart: Desvantagens ● Arquitetura Complexa ● Fortemente acoplado ○ Descrever novas tecnologias “dentro” do próprio middleware ● Tecnologias muito específicas ○ Java, XML 21
  22. 22. WSNManager ● Middleware para Redes de Sensores sem Fio ● Gateways ● Orientado a serviços ● Escalabilidade horizontal 2222
  23. 23. WSNManager: Funcionamento geral 2323 Aplicações Cliente WSN Manager Middleware WSN #1 WSN Manager Worker #1 WSN Manager Worker #2 WSN Manager Worker #n ... WSN #2 WSN #n
  24. 24. WSNManager: Arquitetura 24 WSN Manager Worker #1 ... WSN Gateway Broker WSN Manager Middleware WSN Client Broker WSN Manager Worker #2 WSN Manager Worker #3 WSN Manager Worker #n
  25. 25. WSNManager: Desvantagens ● Complexidade de integração ○ Desenvolvimento de plugins 2525
  26. 26. ● Biblioteca Node.js ● Semântica ● Simplicidade Internet of Things Database (IOTDB) 26
  27. 27. IOTDB 27
  28. 28. IOTDB 28 Arquitetura sem usar Node.js diretamenteArquitetura de um projeto nativo Node.js
  29. 29. IOTDB: Desvantagens ● Custo de desenvolvimento ○ É apenas uma biblioteca ● Integrar tecnologias exige desenvolvimento drivers 2929
  30. 30. Aura MiddlewareAura Middleware
  31. 31. Por que Aura? 31 ● Aura, do Latim, significa brisa, vento suave. ● Simboliza a suavidade de integração e desenvolvimento.
  32. 32. Aura Middleware 32 ● Arquitetura orientada a serviços ○ LinkSmart e WSNManager ● Escalabilidade horizontal ○ WSNManager ● Semântica ○ LinkSmart e IOTDB
  33. 33. Exemplo 33
  34. 34. 34 Broker API App #1 App #nGateway #1 Gateway #n Worker #1 Worker #n AURA MIDDLEWARE
  35. 35. 35 Camada Física Broker API REST AURAWORKER Device Manager Task Manager Semantic Manager Storage Manager AURAMIDDLEWARE Camada de Aplicação Camada de Serviço App #n Gateway #n App #1 App #2 Gateway #2Gateway #1
  36. 36. 36 Comunicação: Gateway x Broker Publisher MQTT Broker SubscriberPublisher Topic#1 Message2 Message1 ... Subscriber
  37. 37. 37 Comunicação: Broker x Worker Broker Worker#2 Worker#1 Worker#n ... Push Pull Pull Pull Pull
  38. 38. 38 AURA WORKER Device Manager Task Manager Semantic Manager Storage Manager
  39. 39. 39 Ontologias
  40. 40. Criação de um dispositivo 40
  41. 41. Task Measurement Device Platform Discrete Sensor Discrete Actuator Continuous Sensor Continuous Actuator Unit Variable Dependência entre ontologias 41
  42. 42. ExperimentosExperimentos
  43. 43. Cenários ● Entrada de novos dispositivos na rede ○ Simulador de gateway ■ Envio de medições, plataformas, sensores... ● Monitoramento pela API ○ Requisições HTTP ■ Verificação de condições, comandos, medições 43
  44. 44. Métricas observadas ● Vazão de mensagens ○ 1 worker ● Custo espacial ○ Armazenamento ● Tempo de resposta da API ○ Consultas SPARQL ● Gargalos de processamento ○ Profiler 44
  45. 45. Mensagens do gateway Tipo de Mensagem Quantidade Medição 1001 Dispositivo 50 Plataforma 50 Sensor Contínuo 25 Atuador Contínuo 25 Sensor Discreto 25 Atuador Discreto 25 Unidade 25 Variável 50 Vazão por instância: 1 mensagem por segundo 45
  46. 46. Custo espacial ● Medição tem em média 496 bytes ● Recebendo 1 mensagem/segundo, 1 dia = 40 MB ● Possível empregar agregação de dados ● Cenário? ○ Residência, indústria... 46
  47. 47. Respostas da API 47
  48. 48. Resultados do profiler 48
  49. 49. Conclusão e Trabalhos Futuros Conclusão e Trabalhos Futuros
  50. 50. Conclusão ● Dificuldades de desenvolvimento são tão reais quanto a IoT ● É possível superar as diferenças com um middleware ● Semântica confere simplicidade e poder ao desenvolvedor ● O Aura Middleware simplifica o desenvolvimento para a IoT ● Testes apontam: é factível usar o Aura 50
  51. 51. Trabalhos Futuros 51 ● Manter o grafo semântico em seu formato original ○ Em memória ● Expandir ontologias, integrar outras ontologias ● Realizar testes mais ostensivos ○ Dispositivos reais, forçar escalabilidade ● Segurança
  52. 52. Um Middleware Semântico Para a Internet das Coisas Um Middleware Semântico Para a Internet das Coisas

×