Palestra realizada no dia 26/11/2020 na Escola Regional de Redes de Computadores da Sociedade Brasileira de Computação SBC, realizada pela UDESC Joinville.
Visão geral da plataforma de Sistemas Distribuídos com foco em Internet das Coisas da Microsoft
1. Visão geral da plataforma de
sistemas distribuídos com
foco em Internet das Coisas
da Microsoft
Prof.Walter Silvestre Coan, MSc.
walter.s@univille.br
walter.coan@gmail.com
2. Walter Silvestre Coan
walter.s@univille.br - walter.coan@gmail.com
www.faltoupontoevirgula.com.br• Bacharel em Informática - UNIVILLE
• Pós-Graduado em Engenharia de Software - PUCPR
• Mestre em Ciência da Computação na área de Sistemas
Distribuídos e Redes de Sensores sem Fio - PUCPR
• Professor no Bacharelado em Sistemas de Informação e do
Bacharelado em Engenharia de Software da UNIVILLE
• Microsoft MVP em Azure 2020/2021
• AWS Academy Accredited Educator
• Certificações
Azure SolutionsArchitect - Expert
Azure IoT Developer – Specialty
Azure Developer – Associate
Azure Fundamentals
Microsoft CertifiedTrainer
MCSD – MCSA (C# e Web Apps)
AWS Certified Cloud Practitioner
AWS Certified Developer
Sun Certified Programmer em Java 5.0
3. Sistemas Distribuídos
“Um sistema distribuído é aquele no qual os componentes
localizados em computadores interligados em rede se
comunicam e coordenam suas ações apenas passando
mensagens.” COULOURIS et. al. (2013)
Primeira edição: 1988 (32 anos)
4. Sistemas Distribuídos
Desafios
• Heterogeneidade
• “redes, hardware, sistemas operacionais, linguagens de programação,
implementação de diferentes desenvolvedores”
• Sistemas abertos
• “possibilidade de ser estendido e reimplementado de
várias maneiras”
• Segurança (Confidencialidade – Integridade - Disponibilidade)
• Escalabilidade
• Tratamento de falhas (Detecção –Tolerância – Recuperação –
Redundância)
• Transparência
5. Sistemas Distribuídos
Redes de sensores sem fio
• “Uma rede de sensores sem fio consiste em um número
(normalmente grande) de pequenos dispositivos de
baixo custo, os nós, cada um com recursos para
sensoriamento, computação e comunicação sem fio.”
COULOURIS et. al. (2013)
6. Computação em Nuvem
“Computação em nuvem é um estilo de computação no qual recursos
de TI, massivamente escaláveis, são disponibilizados sob a forma de
serviços, por meio da Internet, para múltiplos consumidores externos.”
Gartner Group
“Computação em nuvem é uma plataforma que dinamicamente
provê, configura, reconfigura e libera servidores de acordo com as
necessidades e que entrega grandes Datacenters e potentes
servidores, nos quais hospeda aplicações e serviços para serem
utilizados via Internet.” IBM (International Business Machine)
“Computação em nuvem é um modelo que permite acesso à rede de
forma onipresente, conveniente e sob demanda a um conjunto
compartilhado de recursos de computação configuráveis que podem
ser rapidamente alocados e liberados com o mínimo esforço de
gerenciamento ou interação com o prestador de serviço” NIST
(National Institute of Standards and Technology)
16. Azure IoT Hub
O Azure IoT Hub é o serviço do Azure para registro,
autenticação, troca de mensagens de dispositivos de
internet das coisas
• Canal de comunicação segura (bidirecional)
• Gerenciamento dos dispositivos
• Integração com os demais serviços do Azure
• Mais IoT Edge...
17. 1
• Criar o IoT Hub
2
• Registrar um novo dispositivo
3
• Escolher o MCU, e programa-lo utilizando um SDK
4
• Estabelecer a conexão com o IoT Hub
5
• Realizar a troca de mensagens
Azure IoT Hub
18. MXCHIP IoT DevKit
Microsoft Azure IoT Starter Kit
Placa de prototipação para soluções
de Internet das Coisas desenvolvida
pela empresa MXCHIP
• https://www.mxchip.com/az3166
24. Azure Device Provisioning Service (DPS)
O Azure DSP é um serviço para registro automático de
dispositivos no Azure IoT Hub.
25. Azure Device Provisioning Service (DPS)
https://docs.microsoft.com/pt-br/azure/iot-dps/how-to-connect-mxchip-iot-devkit
26. Azure Device Provisioning Service (DPS)
https://docs.microsoft.com/pt-br/azure/iot-hub/iot-hub-arduino-iot-devkit-az3166-get-started
27. Azure Sphere
O Azure Sphere baseia-se em décadas de experiência da
Microsoft em hardware, software e nuvem para fornecer uma
solução completa e pronta para o uso para dispositivos IoT.
Disponibilidade geral desde 24/02/2020.
28. Azure Sphere
Hardware
Root ofTrust
Seu dispositivo é
identificável e a integridade
do software é confirmada
por hardware?
Defense
In Depth
Seu dispositivo se mantém
seguro se um mecanismo
de segurança for
destruído?
SmallTrusted
Computing Base
O seu dispositivo esta protegido
de erros em outros códigos
fonte?
Dynamic
Compartments
As proteções de segurança
do seu dispositivo podem
melhorar após a
implantação?
Certificate-
Based
Authentication
Seu dispositivo utiliza
certificados digitais
ao invés de senhas
para autenticação?
Failure
Reporting
Seu dispositivo
reporta falhas e
anomalias?
! Renewable
Security
Seu dispositivo
atualiza o software de
forma automática?
Suporte do Hardware Suporte do Sistema Operacional Suporte do Serviço de Nuvem
https://www.microsoft.com/en-us/research/wp-content/uploads/2017/03/SevenPropertiesofHighlySecureDevices.pdf
The Seven Properties of Highly Secure Devices: the new standard
for securing MCU powered IoT experiences
29. Azure Sphere
MCU Seguro
Uma nova categoria de MCU’s
chamado Azure Sphere,
produzidos por empresas parceiras,
com tecnologia de segurança da
Microsoft, que fornece
conectividade, alto desempenho e
características de segurança no
hardware.
Sistema Operacional
Seguro
Sistema operacional seguro Azure Sphere
OS que combina as melhores práticas da
Microsoft e da comunidade Open Source,
criando uma plataforma confiável para
uma nova experiência em IoT.
Serviço em
Nuvem Seguro
Azure Sphere Security Service protege
cada dispositivo e os clientes, detecta
falhas de segurança e responde de
forma proativa.
30. Azure Sphere
Microsoft Pluton Security Subsystem –
Root of Trust
ARM Cortex-A provê isolamento de
processos através do gerenciamento
de unidades de memória. Azure
Sphere OS cria containers para as
aplicações que utilizam espaços de
memória reservados.
Cada chip possui sua própria memória
flash e SRAM.
2x ARM Cortex-M é o MCU, que
executa o processamento em real time.
Hardware
31. Azure Sphere
Azure Sphere utiliza a tecnologiaARM’s
TrustZone que permite a criação de
ambientes independentes de execução
dentro de um único chip.
• SecureWorld – alto nível de
privilégios
• NormalWorld – baixo nível de
privilégios
Cada ambiente pode executar seu próprio
sistema operacional e aplicações
Hardware
32. Azure Sphere
ARM Cortex A7 NEON FPU 500Mhz
64kB L1 instruction cache
32kB L1 data cache
256kB L2 cache,
4MB system memory for the Azure Sphere
operating system and user applications
2x ARM Cortex M4 core 200Mhz
192kBTCM (Tightly-Coupled Memory)
64kB SRAM
FPU Floating Point Unit
Pluton Security Subsystem M4 core
200Mhz
ARM Cortex-M4F security processor
128kB securedTCM
64kB secured mask ROM bootloader
Wi-Fi
Processador dedicado N9 32-bit RISC core
IEEE 802.11 a/b/g/n
Bandas de 2.4GHz e 5GHz
https://d86o2zu8ugzlg.cloudfront.net/mediatek-craft/documents/mt3620/MT3620-Product-Brief-v1.3.pdf