SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
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
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-things/
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
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
○ Ontologias
● Padronizar APIs
○ Cada dispositivo com uma API!
● Middlewares
● Bibliotecas
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 Ontology Specifications.”
Tradução livre
O que é uma ontologia?
15
Uma especificação de conceitos e as relações entre eles.
Como uma coisa se relaciona com outro coisa.
O que é uma ontologia?
16
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 INTERNET OF THINGS AND SERVICES DOMAIN”
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”
LinkSmart: Desvantagens
● Arquitetura Complexa
● Fortemente acoplado
○ Descrever novas tecnologias “dentro” do próprio middleware
● Tecnologias muito específicas
○ Java, XML
21
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
Worker #2
WSN Manager
Worker #n
...
WSN #2 WSN #n
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
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 drivers
2929
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
● Semântica
○ LinkSmart e IOTDB
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
Camada de
Aplicação
Camada de
Serviço
App #n
Gateway #n
App #1 App #2
Gateway #2Gateway #1
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
Dependência entre ontologias
41
ExperimentosExperimentos
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
Métricas observadas
● Vazão de mensagens
○ 1 worker
● Custo espacial
○ Armazenamento
● Tempo de resposta da API
○ Consultas SPARQL
● Gargalos de processamento
○ Profiler
44
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
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
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 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
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
Um Middleware Semântico
Para a Internet das Coisas
Um Middleware Semântico
Para a Internet das Coisas

Contenu connexe

Similaire à AuraSlides

Enucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationEnucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationNathan Saraiva
 
Apresentação TCC - Braço Robótico para fins didáticos
Apresentação TCC - Braço Robótico para fins didáticosApresentação TCC - Braço Robótico para fins didáticos
Apresentação TCC - Braço Robótico para fins didáticosHerbert Guimaraes
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREFIBRE Testbed
 
Gerenciamento de Projeto Rede de computadores
Gerenciamento de Projeto Rede de computadoresGerenciamento de Projeto Rede de computadores
Gerenciamento de Projeto Rede de computadoresLucas Mendes
 
Ampliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do PythonAmpliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do PythonIP10
 
Webinar: Desvendando as camadas de IoT
Webinar: Desvendando as camadas de IoTWebinar: Desvendando as camadas de IoT
Webinar: Desvendando as camadas de IoTEmbarcados
 
Monografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoMonografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoApolonio Santiago
 
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017PotiLivre Sobrenome
 
ThingProvider-Proposal
ThingProvider-ProposalThingProvider-Proposal
ThingProvider-ProposalKevin Martins
 
Um Middleware para Serviços de Alcance Virtual em Redes Bluetooth
Um Middleware para Serviços de Alcance Virtual em Redes BluetoothUm Middleware para Serviços de Alcance Virtual em Redes Bluetooth
Um Middleware para Serviços de Alcance Virtual em Redes BluetoothVando Batista
 
Monitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - MonografiaMonitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - MonografiaPietro Scherer
 
TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima
TCC Risco na comunicação entre máquinas virtuais - Vinícius LimaTCC Risco na comunicação entre máquinas virtuais - Vinícius Lima
TCC Risco na comunicação entre máquinas virtuais - Vinícius LimaGoverno do Estado de São Paulo
 
Do monolito ao micro serviço
Do monolito ao micro serviçoDo monolito ao micro serviço
Do monolito ao micro serviçoElton Minetto
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisWindson Viana
 
Microsoft research e inovação
Microsoft research e inovaçãoMicrosoft research e inovação
Microsoft research e inovaçãoVitor Ciaramella
 

Similaire à AuraSlides (20)

Enucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationEnucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarization
 
Apresentação TCC - Braço Robótico para fins didáticos
Apresentação TCC - Braço Robótico para fins didáticosApresentação TCC - Braço Robótico para fins didáticos
Apresentação TCC - Braço Robótico para fins didáticos
 
Tcc plataforma telemedicina de baixo custo
Tcc plataforma telemedicina de baixo custoTcc plataforma telemedicina de baixo custo
Tcc plataforma telemedicina de baixo custo
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBRE
 
Gerenciamento de Projeto Rede de computadores
Gerenciamento de Projeto Rede de computadoresGerenciamento de Projeto Rede de computadores
Gerenciamento de Projeto Rede de computadores
 
Ampliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do PythonAmpliando os Horizontes dos Profissionais de Redes através do Python
Ampliando os Horizontes dos Profissionais de Redes através do Python
 
Webinar: Desvendando as camadas de IoT
Webinar: Desvendando as camadas de IoTWebinar: Desvendando as camadas de IoT
Webinar: Desvendando as camadas de IoT
 
Monografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoMonografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_Invasao
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Microservices
MicroservicesMicroservices
Microservices
 
Bridges Virtuais
Bridges VirtuaisBridges Virtuais
Bridges Virtuais
 
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017
Minicurso Virtualizacao com Proxmox - Maicon Wendhausen - FLISOL Natal 2017
 
ThingProvider-Proposal
ThingProvider-ProposalThingProvider-Proposal
ThingProvider-Proposal
 
Um Middleware para Serviços de Alcance Virtual em Redes Bluetooth
Um Middleware para Serviços de Alcance Virtual em Redes BluetoothUm Middleware para Serviços de Alcance Virtual em Redes Bluetooth
Um Middleware para Serviços de Alcance Virtual em Redes Bluetooth
 
Monitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - MonografiaMonitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - Monografia
 
Desafios do IoT
Desafios do IoTDesafios do IoT
Desafios do IoT
 
TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima
TCC Risco na comunicação entre máquinas virtuais - Vinícius LimaTCC Risco na comunicação entre máquinas virtuais - Vinícius Lima
TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima
 
Do monolito ao micro serviço
Do monolito ao micro serviçoDo monolito ao micro serviço
Do monolito ao micro serviço
 
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - CoulourisCapítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
 
Microsoft research e inovação
Microsoft research e inovaçãoMicrosoft research e inovação
Microsoft research e inovação
 

AuraSlides