SDN SDN W S e i A wise choice for Wireless - - PowerPoint PPT Presentation

sdn sdn
SMART_READER_LITE
LIVE PREVIEW

SDN SDN W S e i A wise choice for Wireless - - PowerPoint PPT Presentation

L. Galluccio, S. Milardo, G. Morabito, and S. Palazzo SDN SDN W S e i A wise choice for Wireless Sensor Networks Management,


slide-1
SLIDE 1

Cavalese, ¡15/01/2015 ¡

A ¡“wise” ¡choice ¡for ¡ ¡ Wireless ¡Sensor ¡Networks ¡ ¡ Management, ¡ExperimentaDon, ¡and ¡ ApplicaDon ¡Development ¡

W i ¡ S ¡ e ¡

SDN SDN

Presented ¡by ¡

SebasDano ¡Milardo ¡ R&D ¡Engineer ¡@ ¡CNIT-­‑Catania ¡ ¡

  • L. ¡Galluccio, ¡S. ¡Milardo, ¡G. ¡Morabito, ¡and ¡S. ¡Palazzo ¡
slide-2
SLIDE 2

Cavalese, ¡15/01/2015 ¡

SDN ¡+ ¡WIreless ¡SEnsors ¡= ¡

  • Requirements ¡

– Support ¡nodes ¡with ¡scarce ¡resources ¡ ¡ – Reduce ¡energy ¡consumpDon ¡ – Increase ¡network ¡flexibility ¡

  • Proposed ¡soluDons ¡

– Logically ¡centralized ¡approach ¡ – Flow ¡rules, ¡virtual ¡sensor ¡networks ¡ – Duty ¡cycles, ¡data ¡aggregaDon, ¡stateful ¡SDN ¡in ¡ WSN ¡

W i ¡ S ¡ e ¡

SDN SDN

slide-3
SLIDE 3

Cavalese, ¡15/01/2015 ¡

SDN-­‑WISE ¡Statefulness ¡

S ¡ B ¡ A ¡ C ¡ D ¡

  • Extremely ¡hard ¡to ¡implement ¡

with ¡tradiDonal ¡SDN ¡soluDons: ¡

– No ¡packets ¡handling ¡depending ¡

  • n ¡the ¡content ¡of ¡another ¡

packet ¡

  • G. ¡Bianchi, ¡M. ¡Bonola, ¡A. ¡Capone, ¡ ¡

and ¡C. ¡Cascone. ¡ OpenState: ¡Programming ¡Pla<orm-­‑ independent ¡Stateful ¡OpenFlow ¡ ApplicaBons ¡Inside ¡the ¡Switch. ¡ ¡ ACM ¡Computer ¡CommunicaBon ¡Review. ¡

  • Vol. ¡44, ¡No. ¡2, ¡pp.: ¡45-­‑51. ¡April ¡2014. ¡ ¡

¡ S ¡ B ¡ A ¡ C ¡ D ¡ Fig.1: ¡DataB ¡≥ ¡Xthr ¡ Fig.2: ¡DataB ¡< ¡Xthr ¡

slide-4
SLIDE 4

Cavalese, ¡15/01/2015 ¡

SDN-­‑WISE ¡Simplicity ¡

  • Managing ¡a ¡WSN ¡with ¡SDN-­‑WISE ¡is ¡simple ¡

– Firmware ¡overhead ¡≈ ¡1000 ¡lines ¡of ¡code ¡≈ ¡10kB ¡ Flash ¡Memory ¡ – “C” ¡+ ¡“Any ¡other ¡language ¡that ¡can ¡handle ¡UDP ¡ sockets ¡or ¡Web ¡Services ¡(SOAP, ¡REST)” ¡ – The ¡behaviour ¡of ¡each ¡node ¡is ¡encoded ¡in ¡just ¡ three ¡data ¡structures: ¡

  • WISE ¡Flow ¡Table ¡
  • WISE ¡State ¡Array ¡
  • Accepted ¡IDs ¡Array ¡
slide-5
SLIDE 5

Cavalese, ¡15/01/2015 ¡

Proposed ¡Architecture: ¡Control ¡Plane ¡

It ¡controls ¡network ¡topology ¡ representaDon, ¡rouDng ¡and ¡other ¡ parameters ¡management ¡ It ¡abstracts ¡the ¡network ¡resources ¡ so ¡different ¡logical ¡networks ¡can ¡be ¡ created ¡ ¡ It ¡formats ¡packets ¡received ¡from ¡ the ¡WSN ¡(Real/Simulated) ¡in ¡such ¡a ¡ way ¡they ¡can ¡be ¡handled ¡by ¡the ¡ upper ¡layers ¡and ¡vice ¡versa. ¡

CONTROLLER ¡ WISE-­‑VISOR ¡ ADAPTATION ¡

slide-6
SLIDE 6

Cavalese, ¡15/01/2015 ¡

Proposed ¡Architecture: ¡Data ¡Plane ¡

It ¡manages ¡Parameters ¡ ConfiguraDon, ¡Beaconing, ¡ Neighbours ¡reporDng ¡ ¡ ¡ It ¡is ¡responsible ¡for ¡Data ¡ aggregaDon, ¡Network ¡Coding, ¡ Compressive ¡Sensing ¡ ¡ ¡ It ¡handles ¡incoming ¡packets ¡as ¡ specified ¡in ¡the ¡WISE ¡Flow ¡Table ¡

CONTROLLER ¡ TOPOLOGY ¡ DISCOVERY ¡(TD) ¡

IN-­‑NETWORK ¡PACKET ¡ PROCESSING ¡(INPP) ¡

FORWARDING ¡(FWD) ¡

slide-7
SLIDE 7

Cavalese, ¡15/01/2015 ¡

Example ¡of ¡SDN-­‑WISE ¡Network ¡

PHY ¡ WISE-­‑VISOR ¡ ADAPTATION ¡ CONTROLLER ¡

¡ ¡

FWD ¡ APPLICATION ¡ ¡ ¡ ¡

INPP ¡

MAC ¡ PHY ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡TD ¡ APPLICATION ¡

  • ADAPT. ¡

¡ ¡

FWD ¡ APPLICATION ¡ ¡ ¡ ¡

INPP ¡

MAC ¡ PHY ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡TD ¡

slide-8
SLIDE 8

Cavalese, ¡15/01/2015 ¡

SeMng ¡up ¡the ¡network ¡

  • Targets ¡

– Nodes ¡have ¡to ¡learn ¡the ¡best ¡path ¡to ¡reach ¡the ¡ ¡ Control ¡Plane ¡ – The ¡Control ¡Plane ¡has ¡to ¡create ¡a ¡representaDon ¡of ¡ the ¡network ¡

APP ¡ APP ¡ APP ¡

SDN ¡SWITCHES ¡ SDN ¡CONTROLLER ¡

  • The ¡protocol ¡is ¡based ¡on ¡

– Beaconing ¡ – Periodic ¡reporDng ¡of ¡ packets ¡containing ¡

  • Topological ¡informaDon ¡ ¡
  • Bakery ¡level ¡
slide-9
SLIDE 9

Cavalese, ¡15/01/2015 ¡

WISE ¡Flow ¡Table ¡

Matching ¡Rule ¡ ¡ Operator ¡ ==,!=, ¡>=, ¡<=,>,<; ¡ Size ¡ 0 ¡-­‑ ¡2 ¡ Loca/on ¡ Packet, ¡State ¡Array ¡ Offset ¡ 0 ¡-­‑ ¡255; ¡ Value ¡ 0x00 ¡– ¡0xFF ¡

AcDon ¡

Type ¡ Forward ¡Unicast/MulDcast, ¡Drop, ¡Modify, ¡Send ¡to ¡INPP, ¡Send ¡to ¡APP, ¡Turn ¡Off ¡ ¡ Mul/match: ¡ True/False ¡ Loca/on ¡ Packet, ¡State ¡Array ¡ Offset ¡ 0 ¡-­‑ ¡255; ¡ Value ¡ 0x00 ¡– ¡0xFF ¡ StaDsDcs ¡ Time ¡To ¡Live ¡ 0 ¡-­‑ ¡255 ¡ Counter ¡ 0 ¡-­‑ ¡255 ¡

slide-10
SLIDE 10

Cavalese, ¡15/01/2015 ¡

WISE ¡Flow ¡Table ¡

  • If ¡no ¡rule ¡matches ¡a ¡packet, ¡the ¡node ¡asks ¡the ¡

Control ¡Plane ¡

– Rule ¡Request ¡ – Rule ¡Response ¡ ¡

  • The ¡response ¡is ¡up ¡to ¡the ¡Control ¡Plane ¡

– Dijkstra’s ¡Algorithm ¡ – StaDc ¡RouDng ¡ – … ¡

slide-11
SLIDE 11

Cavalese, ¡15/01/2015 ¡

SDN-­‑WISE: ¡Packet ¡Header ¡

Bit ¡

0 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡ 0 ¡ 1 ¡ 2 ¡ 3 ¡ 4 ¡ 5 ¡ 6 ¡ 7 ¡

Byte ¡

0 ¡

Packet ¡Length ¡ Scope ¡

2 ¡

Source ¡Address ¡

4 ¡

DesDnaDon ¡Address ¡

6 ¡ U ¡

Type ¡ TTL ¡

8 ¡

Next ¡Hop ¡Address ¡

slide-12
SLIDE 12

Cavalese, ¡15/01/2015 ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

S B A C D Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

slide-13
SLIDE 13

Cavalese, ¡15/01/2015 ¡

Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

slide-14
SLIDE 14

Cavalese, ¡15/01/2015 ¡

Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

slide-15
SLIDE 15

Cavalese, ¡15/01/2015 ¡

Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡

Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

slide-16
SLIDE 16

Cavalese, ¡15/01/2015 ¡

Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

= ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

slide-17
SLIDE 17

Cavalese, ¡15/01/2015 ¡

Matching ¡Rule ¡ Matching ¡Rule ¡ Matching ¡Rule ¡ AcDon ¡ StaDsDcs ¡

Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Operator ¡ Size ¡ LocaDon ¡ Offset ¡ Value ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡ TTL ¡ Count ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ >= ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 1 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡ < ¡ 2 ¡ PACKET ¡ DATA ¡ Xthr ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡ MODIFY ¡ TRUE ¡ STATE_ARR ¡ 0 ¡ 0 ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ B ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

¡-­‑ ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 0 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ 255 ¡ 0 ¡ = ¡ 2 ¡ PACKET ¡ SRC_ADDR ¡ A ¡ = ¡ 1 ¡ STATE_ARR ¡ 0 ¡ 1 ¡

  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡
  • ­‑ ¡ ¡

FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ 255 ¡ 0 ¡

DROP ¡ FALSE ¡ PACKET ¡ 0 ¡ 100% ¡ FORWARD ¡ FALSE ¡ PACKET ¡ 0 ¡ D ¡ Type ¡ MulDmatch ¡ LocaDon ¡ Offset ¡ Value ¡

SDN-­‑WISE ¡Statefulness: ¡SoluBon ¡

slide-18
SLIDE 18

Cavalese, ¡15/01/2015 ¡

SDN-­‑WISE: ¡Prototype ¡and ¡Testbeds ¡

  • Simulated ¡Testbed ¡

– OMNeT++ ¡ ¡

  • Real ¡Testbed ¡

– 6 ¡Embit ¡EMB-­‑Z2530PA ¡ – IEEE ¡802.15.4 ¡ ¡ – TI ¡CC2530 ¡single ¡chip ¡device ¡-­‑ ¡8051 ¡8-­‑bit ¡controller ¡ ¡ – 8kB ¡of ¡RAM ¡and ¡256kB ¡of ¡Flash ¡memory ¡ ¡

  • Controller ¡Plane ¡+ ¡ApplicaDon ¡

– Intel ¡Core ¡2 ¡CPU ¡@ ¡2.40 ¡GHz ¡ ¡ – 4GB ¡of ¡RAM ¡ ¡ – Windows ¡7 ¡-­‑ ¡32 ¡bit ¡+ ¡Java ¡7 ¡ ¡

slide-19
SLIDE 19

Cavalese, ¡15/01/2015 ¡

Physical ¡Testbed ¡

slide-20
SLIDE 20

Cavalese, ¡15/01/2015 ¡

Performance ¡EvaluaBon ¡

Average ¡RTT ¡vs. ¡payload ¡size ¡for ¡different ¡values ¡of ¡number ¡of ¡hops ¡

slide-21
SLIDE 21

Cavalese, ¡15/01/2015 ¡

Performance ¡EvaluaBon ¡

10 20 30 40 50 60 70 80 90 100 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Payload [Bytes] Efficiency 10s 30s 50s 70s 90s Beacon Period

Efficiency ¡for ¡different ¡values ¡of ¡beacon ¡sending ¡period ¡

slide-22
SLIDE 22

Cavalese, ¡15/01/2015 ¡

Performance ¡EvaluaBon ¡

Controller ¡response ¡Dme ¡for ¡different ¡topologies ¡

100 200 300 400 500 600 700 800 900 1000 10

−1

10 10

1

10

2

Request # Dijkstra’s Controller Response Time [ms] 100 200 300 400 500 600 700 800 900 1000 10

−1

10 10

1

10

2

Request # Dijkstra’s Controller Response Time [ms]

100 200 300 400 500 600 700 800 900 1000 10

−1

10 10

1

10

2

Request # Dijkstra’s Controller Response Time [ms]

100 200 300 400 500 600 700 800 900 1000 10

−1

10 10

1

10

2

Request # Dijkstra’s Controller Response Time [ms]

40 ¡Nodes ¡ 50 ¡Nodes ¡ 60 ¡Nodes ¡ 70 ¡Nodes ¡

slide-23
SLIDE 23

Cavalese, ¡15/01/2015 ¡

Performance ¡EvaluaBon ¡

Unicast ¡traffic: ¡RTT ¡as ¡a ¡funcDon ¡of ¡the ¡number ¡of ¡hops ¡when ¡transmizng ¡20 ¡bytes ¡of ¡payload ¡ ¡ SDN-­‑WISE ¡vs ¡ZigBee ¡vs ¡6LowPan ¡ ¡

0 ¡ 10 ¡ 20 ¡ 30 ¡ 40 ¡ 50 ¡ 60 ¡ 70 ¡ 80 ¡ 90 ¡ 1 ¡ 2 ¡ 3 ¡ SDN-­‑WISE ¡ ZigBee ¡ 6LowPAN ¡

  • No. ¡of ¡Hops ¡ ¡

RTT ¡[ms] ¡

  • C. ¡Buraz, ¡G. ¡Gardasevic, ¡S. ¡Milardo, ¡M. ¡D. ¡

Abrignani, ¡S. ¡Mijovic, ¡A. ¡Stajkic, ¡G. ¡ Morabito, ¡and ¡R. ¡Verdone. ¡ TesDng ¡Protocols ¡for ¡The ¡Internet ¡of ¡ Things ¡on ¡The ¡EuWIn ¡Pla~orm ¡ Submiked ¡to ¡IEEE ¡Internet ¡of ¡Things ¡ Journal ¡

slide-24
SLIDE 24

Cavalese, ¡15/01/2015 ¡

Conclusions ¡and ¡Future ¡Work ¡

  • We ¡presented ¡a ¡stateful ¡SDN ¡soluDon ¡for ¡WSN ¡
  • We ¡highlighted ¡how ¡this ¡approach ¡can ¡simplify ¡

management ¡and ¡increase ¡flexibility ¡

  • Open ¡Issues: ¡Security, ¡INPP, ¡QoS ¡
  • hkp://www.diit.unict.it/users/gmorabi/ ¡

¡

Further ¡details ¡can ¡be ¡found ¡in ¡our ¡paper: ¡

  • L. ¡Galluccio, ¡S. ¡Milardo, ¡G. ¡Morabito, ¡and ¡S. ¡Palazzo. ¡ ¡

SDN-­‑WISE: ¡design, ¡prototyping ¡and ¡experimentaDon ¡of ¡a ¡stateful ¡SDN ¡ soluDon ¡for ¡WIreless ¡SEnsor ¡networks ¡ In ¡The ¡34th ¡Annual ¡IEEE ¡InternaBonal ¡Conference ¡on ¡Computer ¡ CommunicaBons ¡(INFOCOM ¡2015), ¡ Hong ¡Kong, ¡P.R. ¡China, ¡April ¡2015 ¡

slide-25
SLIDE 25

Cavalese, ¡15/01/2015 ¡

QuesBons? ¡