BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias REST e a Internet das Coisas

REST e a Internet das Coisas

Já faz mais de uma década desde que as pessoas começaram a falar sobre Computação Ubíqua ou Internet das Coisas (quase três décadas para a primeira), e naquela época era considerado um sonho. Atualmente é uma realidade, estamos rodeados à todo momento por diversos dispositivos habilitados para a Internet. Recentemente, muito trabalho tem sido realizado por alguns grupos de padronização (como o IETF, por exemplo) em diversos aspectos relacionados com a Internet das Coisas (IoT), incluindo o protocolo Concise Binary Object Represantation (CBOR), que visa preencher mensagens pequenas com o máximo possível de informação.

O Concise Binary Object Representation (CBOR) é um formato de dados em que os objetivos de design incluem a possibilidade de tamanho de código extremamente reduzido, tamanho de mensagem relativamente pequeno, e extensibilidade sem a necessidade de negociação de versão. Estes objetivos de design o diferenciam de protocolos mais antigos de serialização binária, como o ASN.1 e MessagePack.

Mas foi só uma questão de tempo, até que o REST fosse utilizado nesta área. O grupo de trabalho Constrained RESTful Environments (CoRE) é financiado pelo IETF para fornecer:

[...] um framework para aplicações orientadas a recursos, direcionado a execução em redes IP restritas. Uma rede IP restrita possui pacotes de tamanhos limitados, pode exibir um alto índice de perda de pacotes, e ter um número substancial de dispositivos que podem ser desligados a qualquer momento, mas que são periodicamente "acordados" por curtos intervalos de tempo.

Como parte desse framework de construção de aplicações para dispositivos restritos, o grupo de trabalho também definirá o Constrained Application Protocol (CoAP) para manipulação de recursos nestes dispositivos:

O Grupo de Trabalho definirá um mapeamento entre o CoAP e uma API HTTP REST; este mapeamento não será dependente de uma aplicação específica. Vale a pena notar que não é necessário haver proxy na fronteira entre a rede restrita e a rede geral, mas pode ser implantado em vários pontos da rede irrestrita.

O grupo já definiu uma série de requisitos que o protocolo deve atender, incluindo:

  • A capacidade de criar, ler, atualizar e remover um recurso em um dispositivo;
  • Suportar o envio de mensagens multicast não confiáveis a um grupo de dispositivos;
  • Deve operar sobre UDP, com algum suporte opcional (e limitado) ao TCP;
  • Especificação da API baseada em HTTP REST e a sua tradução entre CoAP e o HTTP para comunicação de dispositivos.

Visto que o grupo apenas iniciou seus trabalhos recentemente, ainda há uma série de indefinições, como segurança, por exemplo. Contudo, já existe um projeto que suporta CoAP em Java com jCoAP.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT