6LOWPAN E PROTOCOLOS PARA IOT - ppgia.pucpr.brjamhour/Download/pub/... · Sequrity enabled Frame...

Preview:

Citation preview

2017, Edgard Jamhour

6LOWPAN E

PROTOCOLOS PARA

IOT

EDGARD JAMHOUR

IEEE 802.15.4

Tecnologia de Radio “Low Power”

Baixo Consumo

Pequeno Alcance

Baixas Taxas de Transmissão

Pequeno MTU (Maximum Transmission Unit)

CARACTERÍSTICAS DA

TECNOLOGIA 802.15.4

Taxas de Transmissão:

• 250 Kb/s, 40 Kb/s e 20 Kb/s

Topologias:

• Estrela ou Ponto-a-Ponto

Frequências de Operação:

• 16 canais em 2.4 GHz (ISM)

• 10 canais em 915 MHz (ISM)

• 1 canal em 868 MHz (Europeu)

868MHz / 915MHz

PHY

2.4 GHz

868.3 MHz

Channel 0 Channels 1-10

Channels 11-26

2.4835 GHz

928 MHz 902 MHz

5 MHz

2 MHz

2.4 GHz

PHY

Joe Dvorak, Motorola

BANDAS DE OPERAÇÃO E DIVISÃO EM

CANAIS (VERSÃO 2006)

Edgard Jamhour

PILHA IEEE 802.15.4

05 2004

Marco Naeve, Eaton Corp. Sli

de

5

IEEE 802.15.4 MAC

Upper Layers

IEEE 802.15.4 SSCS IEEE 802.2

LLC, Type I

IEEE 802.15.4

2400 MHz

PHY

IEEE 802.15.4

868/915 MHz

PHY

Preamble Start of

Packet

Delimiter

PHY

Header

PHY Service

Data Unit (PSDU)

PHY Packet Fields • Preamble (32 bits) – sincronização

• Start of Packet Delimiter (8 bits)

• PHY Header (8 bits) – PSDU length

• PSDU (0 to 1016 bits) – Data field

6 Octets 0-127 Octets

Joe Dvorak, Motorola

IEEE 802.15.4 PHY OVERVIEW PACKET STRUCTURE

TIPOS DE DISPOSITIVOS

FULL Function Device (FFD)

• Qualquer topologia

• Pode ser coordenador de PAN

• Conversa com qualquer outro dispositivo

• Implementa toda a pilha do protocolo

Reduced Function Device (RFD)

• Opera em topologias estrela ou como “folhas” (end-devices)

• Não podem ser coordenadores PAN

• Implementação simples

• Implementação simplificada da pilha de protocolos

Marco Naeve, Eaton Corp. Sli

de

8

STAR TOPOLOGY

FFD

RFD Communications flow

Master/slave

PAN

coordinator

Todos os nós se

comunicam com

um controlador

PAN central

Controlador PAN é

um nó com uma

fonte de energia

confiável

Marco Naeve, Eaton Corp.

PEER-PEER TOPOLOGY

Communications flow

Point to point

Cluster tree

FFD

RFD

PAN

coordinators

Nós podem se comunicar

através do controlador

Central e através de nós

FFD

Edgard Jamhour

CLUSTER TREE

Marco Naeve, Eaton Corp. Slid

e 1

1

COMBINED TOPOLOGY

FFD

RFD

Communications flow

Clustered stars – múltiplas redes em

topologia estrela

controladas por diferentes

controladores e conectadas entre si

Edgard Jamhour Marco Naeve, Eaton Corp. S

lid

e

12

ESTRUTURA DE SUPERFRAME

OPCIONAL

15ms * 2n

where 0 n 14

GTS 3 GTS 2

Network

beacon Transmitido pelo coordenador PAN

Beacon

extension

period Espaço reservado para crescimento do Beacon

Contention

period Acesso livre por CSMA-CA

Guaranteed

Time Slot Acesso de nós que precisam de garantia de banda [n = 0].

GTS 1

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Slot

Battery life extension

Contention Access Period Contention Free Period

Marco Naeve, Eaton Corp. Sli

de

13

OPTIONAL FRAME

STRUCTURE

Superframe pode ter um periodo de inatividade

15ms * 2BO

where SO BO 14

15ms * 2SO

where 0 SO 14

SO = Superframe order

BO = Beacon order

Inactive Period

Edgard Jamhour

Payload

PH

Y L

ayer

MA

C

Layer

MAC Header

(MHR)

MAC Footer

(MFR)

MAC Protocol Data Unit (MPDU)

MAC Service Data Unit

(MSDU)

PHY Header

(PHR)

Synch. Header

(SHR)PHY Service Data Unit (PSDU)

4 TIPOS DE QUADROS MAC

• Data Frame

• Beacon Frame

• Acknowledgment Frame

• MAC Command Frame

Joe Dvorak, Motorola

IEEE 802.15.4 MAC OVERVIEW ESTRUTURA GERAL DOS QUADROS

05 2004 Marco Naeve, Eaton Corp. S

lid

e

15

FORMATO GERAL DOS

QUADROS MAC

Octets:2 1 0/2 0/2/8 0/2 0/2/8 variable 2

Destination

PAN

identifier

Destination

address

Source

PAN

identifier

Source

address

MAC

payloadMAC footer

Frame

check

sequence

MAC header

Addressing fields

Frame

control

Sequence

number

Frame

payload

Bits: 0-2 3 4 5 6 7-9 10-11 12-13 14-15

Frame typeSequrity

enabled

Frame

pendingAck. Req. Intra PAN Reserved

Dest.

addressing

mode

Reserved

Source

addressing

mode

Frame control field

05 2004 Marco Naeve, Eaton Corp. S

lid

e 1

6

QUADRO DO TIPO BEACON

Bits: 0-3 4-7 8-11 12 13 14 15

Beacon

order

Superframe

order

Final CAP

slot

Battery life

extensionReserved

PAN

coordinator

Association

permit

Octets:2 1 4 or 10 2 variable variable variable 2

MAC

footer

Frame

check

sequence

MAC header

Source address

information

MAC payload

Superframe

specification

GTS

fields

Pending

address

fields

Frame

control

Beacon

sequence

number

Beacon payload

QUADROS DE COMANDO

Tipos de Comando:

Marco Naeve, Eaton Corp.

Octets:2 1 4 to 20 1 variable 2

MAC

footer

Frame

check

sequence

Frame

control

Data

sequence

number

Address

information

MAC header MAC payload

Command

typeCommand payload

• Association request

• Association response

• Disassociation notification

• Data request

• PAN ID conflict notification

• Orphan Notification

• Beacon request

• Coordinator realignment

• GTS request

Edgard Jamhour Marco Naeve, Eaton Corp.

QUADROS DE DADOS E ACK

QUADROS ACK

Octets:2 1 2

MAC

footer

Frame

check

sequence

MAC header

Frame

control

Data

sequence

number

Octets:2 1 4 to 20 variable 2

MAC PayloadMAC

footer

Data payload

Frame

check

sequence

MAC header

Frame

control

Data

sequence

number

Address

information

TIPOS DE COMUNICAÇÃO

• Com ou Sem confirmação (ACK)

• Direto ou Indireto

• Com ou sem garantia (GTS em modo beacon)

• Maximum data length (MSDU)

• aMaxMACFrameSize (102 bytes)

Marco Naeve, Eaton Corp.

PRIMITIVAS

MAC

A camada MAC oferece uma interface entre a camada de Aplicação e a camada PHY

São oferecidos dois grupos de serviços:

MLME-SAP:

Serviços de Gerenciamento

PIB (PAN Information Base)

MCPS-SAP:

Serviços de Dados

Marco Naeve, Eaton Corp.

Edgard Jamhour

FUNCIONAMENTO DAS

PRIMITIVAS

wpan_: funções MAC

usr_: funções callback

Edgard Jamhour Marco Naeve, Eaton Corp.

PRIMITIVAS MAC

Edgard Jamhour Marco Naeve, Eaton Corp.

DATA TRANSFER

MESSAGE SEQUENCE DIAGRAM

Originator

MAC Recipient

MAC

Data frame

Acknowledgment (if requested)

Originator higher layer

Recipient higher layer

MCPS-DATA.request

MCPS-DATA.indication

MCPS-DATA.confirm

Edgard Jamhour Marco Naeve, Eaton Corp.

INDIRECT DATA TRANSFER

MESSAGE SEQUENCE DIAGRAM

Coordinator

MAC Device MAC

Data frame

Acknowledgment

Coordinator higher layer

Device higher layer

MCPS-DATA.request (indirect)

MCPS-DATA.indication

MCPS-DATA.confirm

Beacon frame

Data request

Acknowledgement

Edgard Jamhour Marco Naeve, Eaton Corp.

ASSOCIATION

MESSAGE SEQUENCE DIAGRAM

Device MAC

Coordinator MAC

Association request

Acknowledgment

Device higher layer

Coordinator higher layer

MLME-ASSOCIATE.request

MLME-ASSOCIATE.indication

MLME-ASSOCIATE.response

Acknowledgement

Association response

MLME-ASSOCIATE.confirm

aResponseWaitTime

MLME-COMM-STATUS.indication

Data request

Acknowledgment

Edgard Jamhour

05 2004 Marco Naeve, Eaton Corp. S

lid

e

26

DISASSOCIATION

MESSAGE SEQUENCE DIAGRAM

= Originator

MAC Recipient

MAC

Disassociation notification

Acknowledgment

Originator higher layer

Recipient higher layer

MLME-DISASSOCIATE.request

MLME-DISASSOCIATE.indication MLME-DISASSOCIATE.confirm

Edgard Jamhour Marco Naeve, Eaton Corp.

DATA POLLING

MESSAGE SEQUENCE CHART

Device MAC

Coordinator MAC

Data request

Acknowledgment (FP = 0)

Device higher layer

MLME-POLL.request

MLME-POLL.confirm

No data pending at the coordinator

Edgard Jamhour Marco Naeve, Eaton Corp. S

lid

e

28

DATA POLLING

MESSAGE SEQUENCE CHART

Device MAC

Coordinator MAC

Data request

Acknowledgment (FP = 1)

Device higher layer

MLME-POLL.request

MLME-POLL.confirm

Data

Acknowledgement

MCPS-DATA.indication

Data pending at the coordinator

Edgard Jamhour

PASSIVE SCAN

Marco Naeve, Eaton Corp. Sli

de

29

Device MAC

Coordinator MAC

Device higher layer

MLME-SCAN.request

MLME-SCAN.confirm

ScanDuration

Beacon

Set 1st Channel

Set 2nd

Channel

Edgard Jamhour Marco Naeve, Eaton Corp.

ACTIVE SCAN

Device MAC

Coordinator MAC

Beacon request

Device higher layer

MLME-SCAN.request

MLME-SCAN.confirm

ScanDuration Beacon

Set 1st Channel

CSMA

Set 2nd

Channel

Beacon request

Edgard Jamhour Marco Naeve, Eaton Corp. S

lid

e

31

ESPAÇAMENTO INTER-FRAME

For frames ≤ aMaxSIFSFrameSize use short inter-frame spacing (SIFS)

For frames > aMaxSIFSFrameSize use long inter-frame spacing (LIFS)

Long frame ACK Short frame ACK

tack

LIFS tack

SIFS

Acknowledged transmission

Long frame Short frame

LIFS SIFS

Unacknowledged transmission

aTurnaroundTime tack

(aTurnaroundTime (12 symbols) + aUnitBackoffPeriod (20 symbols))

LIFS > aMaxLIFSPeriod (40 symbols)

SIFS > aMacSIFSPeriod (12 symbols)

Edgard Jamhour Marco Naeve, Eaton Corp.

OPERAÇÃO CSMA

NÃO SLOTTED NB = 0,

BE = macMinBE

Delay for

random(2BE - 1) unit

backoff periods

Perform CCA

Channel idle?

NB = NB+1,

BE = min(BE+1, aMaxBE)

NB>

macMaxCSMABackoffs

?

Failure Success

Un-slotted CSMA

Y

Y

N

N

Usado em Redes sem

Beacon

Edgard Jamhour

Sli

de

33

OPERAÇÃO CSMA

MODO SLOTTED

NB = 0, CW = 0

Battery life

extension?

BE = macMinBE

BE = lesser of

(2, macMinBE)

Locate backoff

period boundary

Delay for

random(2BE - 1) unit

backoff periods

Perform CCA on

backoff period

boundary

Channel idle?

CW = 2, NB = NB+1,

BE = min(BE+1, aMaxBE)CW = CW - 1

CW = 0?NB>

macMaxCSMABackoffs

?

Failure Success

Slotted CSMA

Y

Y Y

Y

N

N

N

N

Modo Beacon

VERSÕS DA TECNOLOGIA

IEEE 802.15.4

VERSÃO DETALHES

IEEE 802.15.4 - 2003 DSSS (Direct Sequence Spread Spectrum) com taxas de 20 e 40Kbit/s

IEEE 802.15.4 - 2006 Maiores taxas de transmissão em DSSS

Adição do modo PSS (Parallel Sequence Spread Spectrum)

IEEE 802.15.4a Adição do modo UWB (Direct Sequence Ultra-WideBand)

Adição do modo CSS (Chirp Spread Spectrum)

IEEE 802.15.4c ATUALIZAÇÃO DA PHYs e BANDA NA CHINA 779-787 MHz.

IEEE 802.15.4d ATUALIZAÇÃO DA PHYs e BANDA NO JAPÃO 950 - 956 MHz

IEEE 802.15.4e EXTENSÕES PARA AUTOMAÇÃO INDUSTRIAL

IEEE 802.15.4f NOVAS PHYS PARA UWB, 2.4 e 433 MHz

IEEE 802.15.4g PHY PARA SERVIÇOS MUNICIPAIS UTILITÁRIOS (ELETRICIDADE, GAS e

AGUA)

INCLUIR MELHORIAS NA BANDA 902 - 928 MHz

MOTIVAÇÃO PARA

6LOWPAN

• Oferecer suporte a tecnologia IP para dispositivos de IoT

• Aplicações desenvolvidas sobre IP são independentes da

tecnologia de comunicação

• Adaptar o uso de IPv6 as tecnologias de rádio existentes

• IPv6: MTU mínimo de 1280 bytes

• Cabeçalho IPv6: 40 bytes

• Cabeçalho UDP: 8 bytes

• IEEE 802.15.4: MSDU 102 bytes

• 54 bytes por pacote (sem segurança)

• 33 bytes por pacote (com segurança)

6LOWPAN (RFC 4944)

• Camada de adaptação para transporte de pacotes IPv6 sobre

enlaces IEEE 802.15.4

• Usa IEEE 802.15.4 em modo CSMA/CA unslotted (sem beacom)

• Beacon apenas para descoberta de dispositivos

• Introduz a fragmentação e remontagem de pacotes IPv6

• Compressão dos cabeçalhos IPv6, UDP e ICMP

• Suporte ao roteamento MESH (mesh under)

Edgard Jamhour

6LOWPAN & IEEE 802.15.4

Chaiporn Jaikaeo

Edgard Jamhour

BYTE DISPATCH NO

CABEÇALHO 6LOWPAN

6LOWPAN DISPATCH

CODES

• 6LowPAn inclui um cabeçalho que indica como o pacote foi

encapsulado

• Diversos formatos são suportados:

COMPRESSÃO HC1

• A versão é sempre 6

• O Endereço IPv6 (HOST) pode ser inferido a partir do MAC

• O tamanho do pacote pode ser obtido do quadro

• Flow Label e Traffic Class são raramente usados (0)

• Next Header é quase sempre TCP, UDP ou ICMP

Cabeçalho IPv6

Edgard Jamhour

COMPRESSÃO HC1

COMPRESSÃO HC2

• Compressão de UDP de 8 para 3 bytes

• O tamanho pode ser deduzido pelo tamanho do quadro

• Restringir as portas a faixa: 61616-61631 (16 valores)

• Portas podem ser representadas por 4 bits

2 bytes 2 bytes

CABEÇALHO UDP

Edgard Jamhour

COMPRESSÃO H1+H2

Edgard Jamhour

PAYLOAD COM E SEM

COMPRESSÃO

Sem Compressão (código 01000001)

Com Compressão (código 01000010 = HC1)

Pode ser seguido de compressão HC2

Funciona apenas para

endereços Link-Local

IPHC: IMPROVED HC

• Compressão HC1 e HC2

são sem estado e

funcionam apenas para

endereços IPv6 do tipo

Link Local

• IPHC é uma forma de

compressão mais geral,

que operar em modo

com ou sem estado

• Os prefixos IPv6 são

removidos

QUADROS

FRAMENTADOS

1. Pacotes IPv6 maiores que o MTU são fragmentados

2. Introduz campo de offset para fragmentos

3. Tempo máximo de remontagem é 60 segundos

IMPLEMENTAÇÃO

6LOWPAN (STACK)

Edgard Jamhour

IMPLEMENTAÇÃO

6LOWPAN (GATEWAY)

RNDIS: Remote Network Driver Interface Specification

Edgard Jamhour

EXEMPLOS DE REDES

6LOWPAN

Chaiporn Jaikaeo

Gateway

6LowPan para IPv6

Edgard Jamhour

MESH UNDER VS ROUTER

RPL

Emula um

único domínio

de broadcast

na rede

6LowPan

Para camada

de rede, a

comunicação

na WPAN é

single hop

Edgard Jamhour

CABEÇALHO MESH UNDER

Hop Left é decrementado a cada salto

O quadro é descartando quando o valor

chega a zero

Edgard Jamhour

IEEE 802.15.5

Solução de Mesh-Under

para redes IEEE

802.15.4-006

IETF não especificou

protocolos Mesh-Under

para 6LowPan

RPL é o protocolo padrão

proposto pelo IETF para

Router-Over em redes

6LowPan

Recommended