SlideShare une entreprise Scribd logo
1  sur  20
Web-Integrated
Smart City Infrastructure
A caching proxy for hybrid CoAP-HTTP networks.

Supervisor:                                      Candidate:
Prof. Dr. Giovanni Malnati                       Francesco Corazza
Co-supervisors:
Prof. Dr. Stefano Ceri (Politecnico di Milano)
Prof. Dr. Friedemann Mattern (ETH Zürich)
Tutor:
Dipl.-Ing. Matthias Kovatch (ETH Zürich)



                              26 November 2012
Web-Integrated Smart City Infrastructure   Francesco Corazza




Smart Cities?




                      Ningbo City, China    Taipei , Taiwan



                                                               2
Web-Integrated Smart City Infrastructure                            Francesco Corazza




                                                                                        •
1. Smart Cities and Internet:                                                           •
                                                                                        •
      interconnected worlds                                                             •
                                                                                        •
• Wireless Sensor Network (WSN)                          The Internet of Things vision
       • Spatially distributed autonomous sensors    Internet of Things
       • Low bandwidth, lossy, unstable medium        (Trillions of nodes)

       • Low energy, power, processing, faults
       • IEEEE 802.15.4 – Low Rate WPAN
                                                      Fringe Internet
• Internet of Things                                  (Billions of nodes)

       • Proprietary solutions
                                                      Core Internet
       • IPv6 over Low-power WPAN (6LoWPAN)          (Millions of nodes)

• IP as common language
       • “Things” can access standard web services
       • “Things“ can be addressed from Internet
       • Application-layer interconnection (Web)




                                                                                            5
Web-Integrated Smart City Infrastructure                        Francesco Corazza




                                                                                    •
1. Smart Cities and Internet:                                                       •
                                                                                    •
      RESTfy real world                                                             •
                                                                                    •
• Web of Things
       • Web tools in real world (browser, search)   Intersection originating the WoT
       • Physical/virtual mashups

• REST
       • Everything is a resource
       • Architectural constraints
       • Scalability, usability, and accessibility
       • HTTP

• Constrained Application Protocol
       • Designed from a subset of HTTP
       • Low overhead (UDP fragmentation)
       • Machine to Machine (M2M) applications




                                                                                        7
Web-Integrated Smart City Infrastructure                                         Francesco Corazza




                                                                                                     •
1. Smart Cities and Internet:                                                                        •
                                                                                                     •
      CoAP (Constrained Application Protocol)                                                        •
                                                                                                     •
• Features
       • Async communication (request/response)                          HTTP vs. CoAP protocol stack

       • Stateless reliability (confirmable/ack)
                                                           7       HTTP                 CoAP
       • Security (CoAPS)
       • Observation (native publish/subscribe)            4       TCP                   UDP
       • Blockwise transfers (stateless large transfers)
                                                                                         IPv6
• Options                                                  3        IP
                                                                                      6LoWPAN
       • Minimum parsing complexity
       • Finite number of identifiers                      2   Ethernet MAC        802.15.4.5 MAC

• Caching
                                                           1   Ethernet PHY        802.15.4.5 PHY
       • Freshness model
       • Validation model

• Proxying


                                                                                                         9
Web-Integrated Smart City Infrastructure    Francesco Corazza




                                                                •
2. Web-Integration:                                             •
                                                                •
      proxy deployment                                          •
                                                                •
                                                   Forward proxy

• Positioning
       • Server-side
       • Client-side
       • External
                                                 Reverse proxy
• Server-side proxy
       ✓ Effective TCP/UDP mapping
       ✓ Caching
       ✓ Multicast
       ✓ Traffic queuing and limiting
       ✗ Scalability
       ✗ Availability
                                               Intercepting proxy

• Uri-mapping
       • Homogeneous (intercepting proxy)
       • Embedded (reverse proxy)



                                                                    11
Web-Integrated Smart City Infrastructure                                                              Francesco Corazza




                                                                                                                          •
2. Web-Integration:                                                                                                       •
                                                                                                                          •
      cross-protocol mappings (HTTP to CoAP)

• Reverse proxy                                                               HTTP Request
                                                     GET http://proxy.mywsn.com/coap/cnb.mywsn.com/b/temp
                                                     Accept: application/json
• Embedded uri-mapping



                                                                     Constrained Network
                                                   Proxy
                                           coap://proxy.mywsn.com                         Building CNB
          HTTP Client                       http://proxy.mywsn.com
   http://httpnode.example.com                2001:620:8:35db::1f                          Room A
            170.1.52.200                     2001:620:8:35C1::xxx


                                           5683
                                                                                           Room B
                                           80

                                                                      Border Router              CoAP Server
               Internet                                              2001:620:8:101f::1    coap://cnb.mywsn.com/b/temp
                                                                                                2001:620:8:101f::64




                                                                                                                              13
Web-Integrated Smart City Infrastructure                                                              Francesco Corazza




                                                                                                                          •
2. Web-Integration:                                                                                                       •
                                                                                                                          •
         cross-protocol mappings (HTTP to CoAP)
                                                                             CoAP Request
• HTTP-CoAP mapping                                  Type: CONFIRMABLE                - Uri-host: cnb.myswn.com
     •    Split HTTP request uri                     Code: GET                        - Uri-port: 5683
                                                     Options:                         - Uri-path: b
     •    Map Accept header
                                                     - Accept: 50                     - Uri-path: temp



                                                                     Constrained Network
                                                   Proxy
                                           coap://proxy.mywsn.com                         Building CNB
          HTTP Client                       http://proxy.mywsn.com
   http://httpnode.example.com                2001:620:8:35db::1f                          Room A
            170.1.52.200                     2001:620:8:35C1::xxx


                                           5683
                                                                                           Room B
                                           80

                                                                      Border Router              CoAP Server
               Internet                                              2001:620:8:101f::1    coap://cnb.mywsn.com/b/temp
                                                                                                2001:620:8:101f::64




                                                                                                                              14
Web-Integrated Smart City Infrastructure                                                              Francesco Corazza




                                                                                                                          •
2. Web-Integration:                                                                                                       •
                                                                                                                          •
      cross-protocol mappings (HTTP to CoAP)
                                                                            CoAP Response
• Piggybacked response                               Type: ACKNOWLEDGE                Options:
                                                     Code: 2.05                       - Content-Type: 50
• Mag-Age                                            Payload: {temp: 21.5}            - Mag-Age: 60




                                                                     Constrained Network
                                                   Proxy
                                           coap://proxy.mywsn.com                         Building CNB
          HTTP Client                       http://proxy.mywsn.com
   http://httpnode.example.com                2001:620:8:35db::1f                          Room A
            170.1.52.200                     2001:620:8:35C1::xxx


                                           5683
                                                                                           Room B
                                           80

                                                                      Border Router              CoAP Server
               Internet                                              2001:620:8:101f::1    coap://cnb.mywsn.com/b/temp
                                                                                                2001:620:8:101f::64




                                                                                                                              15
Web-Integrated Smart City Infrastructure                                                              Francesco Corazza




                                                                                                                          •
2. Web-Integration:                                                                                                       •
                                                                                                                          •
         cross-protocol mappings (HTTP to CoAP)
                                                                             Http Response
• CoAP-HTTP mapping                                  Status-Code: 200 OK
     •    Cache-Control                              Cache-Control: max-age=60
                                                     Content-Type: application/json; charset=utf-8
     •    Content-Type
                                                     Body: {temp: 21.5}



                                                                     Constrained Network
                                                   Proxy
                                           coap://proxy.mywsn.com                         Building CNB
          HTTP Client                       http://proxy.mywsn.com
   http://httpnode.example.com                2001:620:8:35db::1f                          Room A
            170.1.52.200                     2001:620:8:35C1::xxx


                                           5683
                                                                                           Room B
                                           80

                                                                      Border Router              CoAP Server
               Internet                                              2001:620:8:101f::1    coap://cnb.mywsn.com/b/temp
                                                                                                2001:620:8:101f::64




                                                                                                                              16
Web-Integrated Smart City Infrastructure   Francesco Corazza




                                                               •
2. Web-Integration:                                            •
                                                               •
      caching                                                  •
                                                               •
• Response code (≠ HTTP)
       • 2.05, cache
       • 2.03, update
       • 2.0x, invalidate

• Update max-age
       • Time passed in cache
       • max_age =
         original_max_age - cache_age




                                                                   19
Web-Integrated Smart City Infrastructure   Francesco Corazza




                                                               •
3. Design the proxy:                                           •
                                                               •
         components                                            •
                                                               •
• Californium
     •    Rapid prototyping in backend
     •    Layered architecture

• Apache HttpCore
     •    Minimal memory footprint
     •    Non-blocking I/O

• Apache HttpClient
     •    Uses HttpCore internally
     •    1xx & 3xx codes managed
     •    Built-in security

• Google Guava Cache
     •    Used in production by Google
     •    286.000 tests




                                                                   22
Web-Integrated Smart City Infrastructure                         Francesco Corazza




                                                                                     •
3. Design the proxy:                                                                 •
                                                                                     •
         integration (Californium architecture)                                      •
                                                                                     •
• Layered architecture                     Resources
     •    Chain of Responsibility                            Resource
     •    Single thread model
     •    Limited to clients and servers                     Endpoint
• Pitfalls
     •    Synchronized responses
                                           Abstractions
     •    Blocking UDP thread
                                                          Communicator
     •    Missing client abstraction
     •    Missing server abstraction
                                                           TransferLayer

                                                          Variable Layers

                                           Layers         ⟳ UDPLayer


                                                                                         23
Web-Integrated Smart City Infrastructure                             Francesco Corazza




                                                                                         •
3. Design the proxy:                                                                     •
                                                                                         •
         integration (proxying)                                                          •
                                                                                         •
• Encapsulations                           Resources
         • Forwarding resources (client)                  Resource
         • Stacks (servers)

• Multi-thread model                        CoAP Resource      HTTP Resource
     •     Concurrent responses
     •     Resource thread-safeness            ⟳⟳⟳ Proxy Endpoint
     •     Non-blocking UDP thread

• Communicator                             Abstractions
         • Two message flows
         • Thread-safeness                           Proxy Communicator
• Endpoint
         • Avoid HTTP in CoAP servers       ⟳⟳⟳ HTTP Stack     CoAP Stack ⟳
         • Encapsulate cache
                                           Servers

                                                                                             25
Web-Integrated Smart City Infrastructure                                   Francesco Corazza




                                                                                                •
 3. Design the proxy:                                                                           •
                                                                                                •
       final architecture

Resources                                                              HTTP Client
                                                                      HTTP Translator
                                             CoAP Client
                            Resource
                                                               Cache

Abstractions                                         Proxy Endpoint

                                              Proxy Communicator


                                   HTTP Translator
                                                                         CoAP Stack
                                     HTTP Stack
Servers
                                                                                                    26
Web-Integrated Smart City Infrastructure                                                                     Francesco Corazza




                                                                                                                                 •
4. Evaluation:                                                                                                                   •
                                                                                                                                 •
      performance assessment                                                                                                     •
                                                                                                                                 •
                                                                           400
                                                                                     100 requests/s




                                            Average Round Trip Time (ms)
• Emulation
                                                                           350       200 requests/s
       • Proxy JVM limitation
                                                                                     400 requests/s
       • CoAP Server Virtualization                                        300
                                                                                     600 requests/s
• Test client                                                              250
       • Pre-compiled requests
       • Random distribution of requests                                   200
       • Normal distribution of resources
                                                                           150
       • Average of several “runs”

• Produced data                                                            100

       • Raw RTT distributions
                                                                           50
       • RTT/throughput trends
       • CDF for RTT                                                         0
                                                                                 0        200         400   600       800        1000
                                                                                                                  Request number



                                                                                                                                     27
Web-Integrated Smart City Infrastructure                                                  Francesco Corazza




                                                                                                                                      •
                        4. Evaluation:                                                                                                •
                                                                                                                                      •
                               performance assessment (CoAP-to-HTTP proxying)
                        350
                                    Tests w/o caching
Average RTT (ms)




                        300
                        250         Tests w/ caching
                        200
                        150
                        100
                         50
                          0
                               0          50           100         150   200         250        300         350          400          450
                                                                                                      Produced throughput (Kbit/s)

                           1
Cumulative Density F.




                         0.8
                         0.6
                         0.4
                                                                                     100 Kbit/s w/ cache       400 Kbit/s w/ cache
                         0.2
                                                                                     100 Kbit/s w/o cache      400 Kbit/s w/o cache
                           0
                               0                100                200         300              400                500                600
                                                                                                      Average Round Trip Time (ms)

                                                                                                                                          28
Web-Integrated Smart City Infrastructure   Francesco Corazza




                                                               •
4. Evaluation:                                                 •
                                                               •
      hybrid mashup                                            •
                                                               •
                Paraimpu control Panel     HTTP to CoAP




      Twits containing temperatures




                                                                   33
Web-Integrated Smart City Infrastructure                                  Francesco Corazza




                                                                                              •
                                                                                              •
Conclusions                                                                                   •
                                                                                              •
                                                                                              •
                                                                 CoAP draft evolution
• Smart city                                          7
       • Mashup as leading paradigm in the WoT            K Lines added
       • Scalability through physical locality
                                                      6   K Unchanged Lines
       • Chains of proxies

• Lesson learnt                                       5
       • Design for extensibility
       • Interoperability through standards           4
       • Cheat sheet for overlapping specifications
                                                      3
• Future work
       • Standardization process
                                                      2
       • Intercepting proxy
       • Secure proxy (HTTPS-CoAPS mapping)
                                                      1


                                                      0


                                                                                                  35
Web-Integrated Smart City Infrastructure   Francesco Corazza




Thank you for the attention


                                                               36

Contenu connexe

Tendances

[Harvard CS264] 05 - Advanced-level CUDA Programming
[Harvard CS264] 05 - Advanced-level CUDA Programming[Harvard CS264] 05 - Advanced-level CUDA Programming
[Harvard CS264] 05 - Advanced-level CUDA Programming
npinto
 
Triangle bdpa wo vid
Triangle bdpa wo vidTriangle bdpa wo vid
Triangle bdpa wo vid
santosomar
 
INSIDE M2M products & references
INSIDE M2M products & referencesINSIDE M2M products & references
INSIDE M2M products & references
Daniel Stanke
 
Design and Deployment using the Cisco Smart Business Architecture (SBA)
Design and Deployment using the Cisco Smart Business Architecture (SBA)Design and Deployment using the Cisco Smart Business Architecture (SBA)
Design and Deployment using the Cisco Smart Business Architecture (SBA)
Cisco Russia
 
Software-Defined Networking (SDN): Unleashing the Power of the Network
Software-Defined Networking (SDN): Unleashing the Power of the NetworkSoftware-Defined Networking (SDN): Unleashing the Power of the Network
Software-Defined Networking (SDN): Unleashing the Power of the Network
Robert Keahey
 
Virtual Server 2004 Overview
Virtual Server 2004 OverviewVirtual Server 2004 Overview
Virtual Server 2004 Overview
webhostingguy
 
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
e-Democracy Conference
 

Tendances (16)

SDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkSDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual Network
 
Software Defined Networking (SDN) Technology Brief
Software Defined Networking (SDN) Technology BriefSoftware Defined Networking (SDN) Technology Brief
Software Defined Networking (SDN) Technology Brief
 
[Harvard CS264] 05 - Advanced-level CUDA Programming
[Harvard CS264] 05 - Advanced-level CUDA Programming[Harvard CS264] 05 - Advanced-level CUDA Programming
[Harvard CS264] 05 - Advanced-level CUDA Programming
 
Triangle bdpa wo vid
Triangle bdpa wo vidTriangle bdpa wo vid
Triangle bdpa wo vid
 
INSIDE M2M products & references
INSIDE M2M products & referencesINSIDE M2M products & references
INSIDE M2M products & references
 
Design and Deployment using the Cisco Smart Business Architecture (SBA)
Design and Deployment using the Cisco Smart Business Architecture (SBA)Design and Deployment using the Cisco Smart Business Architecture (SBA)
Design and Deployment using the Cisco Smart Business Architecture (SBA)
 
Software-Defined Networking (SDN): Unleashing the Power of the Network
Software-Defined Networking (SDN): Unleashing the Power of the NetworkSoftware-Defined Networking (SDN): Unleashing the Power of the Network
Software-Defined Networking (SDN): Unleashing the Power of the Network
 
Introduction to Software-defined Networking
Introduction to Software-defined NetworkingIntroduction to Software-defined Networking
Introduction to Software-defined Networking
 
Building Blocks for Private and Hybrid Clouds
Building Blocks for Private and Hybrid CloudsBuilding Blocks for Private and Hybrid Clouds
Building Blocks for Private and Hybrid Clouds
 
WICSA 2012 tutorial
WICSA 2012 tutorialWICSA 2012 tutorial
WICSA 2012 tutorial
 
Cont0519
Cont0519Cont0519
Cont0519
 
数据中心网络研究:机遇与挑战
数据中心网络研究:机遇与挑战数据中心网络研究:机遇与挑战
数据中心网络研究:机遇与挑战
 
Unix v6 Internals
Unix v6 InternalsUnix v6 Internals
Unix v6 Internals
 
Virtual Server 2004 Overview
Virtual Server 2004 OverviewVirtual Server 2004 Overview
Virtual Server 2004 Overview
 
SDN
SDNSDN
SDN
 
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
Advanced infrastructure as foundation for e-democracy solutions - Daniel Dani...
 

En vedette

IoT Toolkit and the Smart Object API Tutorial Introduction
IoT Toolkit and the Smart Object API Tutorial IntroductionIoT Toolkit and the Smart Object API Tutorial Introduction
IoT Toolkit and the Smart Object API Tutorial Introduction
Michael Koster
 
Tools for the Open Source Internet of Things
Tools for the Open Source Internet of ThingsTools for the Open Source Internet of Things
Tools for the Open Source Internet of Things
Michael Koster
 
A System for a Vehicle Based on CoAP
A System for a Vehicle Based on CoAPA System for a Vehicle Based on CoAP
A System for a Vehicle Based on CoAP
Marcos Soutullo Rodríguez
 

En vedette (20)

ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorial
 
Smart Service Proxy
Smart Service ProxySmart Service Proxy
Smart Service Proxy
 
IoT Toolkit and the Smart Object API Tutorial Introduction
IoT Toolkit and the Smart Object API Tutorial IntroductionIoT Toolkit and the Smart Object API Tutorial Introduction
IoT Toolkit and the Smart Object API Tutorial Introduction
 
Tools for the Open Source Internet of Things
Tools for the Open Source Internet of ThingsTools for the Open Source Internet of Things
Tools for the Open Source Internet of Things
 
Ipso smart object seminar
Ipso smart object seminarIpso smart object seminar
Ipso smart object seminar
 
Building an IOT app using MQTT
Building an IOT app using MQTTBuilding an IOT app using MQTT
Building an IOT app using MQTT
 
Coap based application for android phones-end
Coap based application for android phones-endCoap based application for android phones-end
Coap based application for android phones-end
 
Lithe: Lightweight Secure CoAP for the Internet of Things
Lithe: Lightweight Secure CoAP for the Internet of ThingsLithe: Lightweight Secure CoAP for the Internet of Things
Lithe: Lightweight Secure CoAP for the Internet of Things
 
A System for a Vehicle Based on CoAP
A System for a Vehicle Based on CoAPA System for a Vehicle Based on CoAP
A System for a Vehicle Based on CoAP
 
Coap based application for android phones
Coap based application for android phonesCoap based application for android phones
Coap based application for android phones
 
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetupBuilding the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetup
 
Building a multi protocol broker for the internet of things using nodejs
Building a multi protocol broker for the internet of things using nodejsBuilding a multi protocol broker for the internet of things using nodejs
Building a multi protocol broker for the internet of things using nodejs
 
How do Things talk? IoT Application Protocols 101
How do Things talk? IoT Application Protocols 101How do Things talk? IoT Application Protocols 101
How do Things talk? IoT Application Protocols 101
 
Messaging for IoT
Messaging for IoTMessaging for IoT
Messaging for IoT
 
Practical Security with MQTT and Mosquitto
Practical Security with MQTT and MosquittoPractical Security with MQTT and Mosquitto
Practical Security with MQTT and Mosquitto
 
Introduction to intel galileo board gen2
Introduction to intel galileo board gen2Introduction to intel galileo board gen2
Introduction to intel galileo board gen2
 
Iottoolkit wot
Iottoolkit wotIottoolkit wot
Iottoolkit wot
 
Pulga, a Tiny Open-Source MQTT Broker for Flexible and Secure IoT Deployments
Pulga, a Tiny Open-Source MQTT Broker for Flexible and Secure IoT DeploymentsPulga, a Tiny Open-Source MQTT Broker for Flexible and Secure IoT Deployments
Pulga, a Tiny Open-Source MQTT Broker for Flexible and Secure IoT Deployments
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
 
How Do ‘Things’ Talk? - An Overview of the IoT/M2M Protocol Landscape at IoT ...
How Do ‘Things’ Talk? - An Overview of the IoT/M2M Protocol Landscape at IoT ...How Do ‘Things’ Talk? - An Overview of the IoT/M2M Protocol Landscape at IoT ...
How Do ‘Things’ Talk? - An Overview of the IoT/M2M Protocol Landscape at IoT ...
 

Similaire à Thesis Presentation: Web-Integrated Smart City Infrastructure

Lahav Savir - Massively Scaleable Mobile Gateways
Lahav Savir - Massively Scaleable Mobile GatewaysLahav Savir - Massively Scaleable Mobile Gateways
Lahav Savir - Massively Scaleable Mobile Gateways
Lahav Savir
 
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
Tianwei_liu
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
webuiltit
 
FYP: Peer-to-Peer Communications Framework on Android Platform
FYP: Peer-to-Peer Communications Framework on Android PlatformFYP: Peer-to-Peer Communications Framework on Android Platform
FYP: Peer-to-Peer Communications Framework on Android Platform
webuiltit
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
Tianwei_liu
 
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0AFYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
Tianwei_liu
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
webuiltit
 

Similaire à Thesis Presentation: Web-Integrated Smart City Infrastructure (20)

Ambient Intelligence perspective from IoT insight
Ambient Intelligence perspective from IoT insightAmbient Intelligence perspective from IoT insight
Ambient Intelligence perspective from IoT insight
 
Building the Internet of Things with Thingsquare and Contiki - day 1, part 1
Building the Internet of Things with Thingsquare and Contiki - day 1, part 1Building the Internet of Things with Thingsquare and Contiki - day 1, part 1
Building the Internet of Things with Thingsquare and Contiki - day 1, part 1
 
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
 
Software-Defined Networking SDN - A Brief Introduction
Software-Defined Networking SDN - A Brief IntroductionSoftware-Defined Networking SDN - A Brief Introduction
Software-Defined Networking SDN - A Brief Introduction
 
The Web of Things
The Web of ThingsThe Web of Things
The Web of Things
 
Lahav Savir - Massively Scaleable Mobile Gateways
Lahav Savir - Massively Scaleable Mobile GatewaysLahav Savir - Massively Scaleable Mobile Gateways
Lahav Savir - Massively Scaleable Mobile Gateways
 
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
 
Part 2 OCLC Strategic Presentation Bruce Crocco ACURIL 2011
Part 2 OCLC Strategic Presentation Bruce Crocco ACURIL 2011Part 2 OCLC Strategic Presentation Bruce Crocco ACURIL 2011
Part 2 OCLC Strategic Presentation Bruce Crocco ACURIL 2011
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Austin Docker Meetup May 2015
Austin Docker Meetup May 2015Austin Docker Meetup May 2015
Austin Docker Meetup May 2015
 
Don't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't ScaleDon't Architect a Real-Time System that Can't Scale
Don't Architect a Real-Time System that Can't Scale
 
heng+hong
heng+hongheng+hong
heng+hong
 
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communication+Framework+on+Android+Platform
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
 
FYP: Peer-to-Peer Communications Framework on Android Platform
FYP: Peer-to-Peer Communications Framework on Android PlatformFYP: Peer-to-Peer Communications Framework on Android Platform
FYP: Peer-to-Peer Communications Framework on Android Platform
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
 
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0AFYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
FYP%3A+P2P+Bluetooth+Communication+Framework+on+Android%0A
 
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+PlatformFYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
FYP%3A+Peer-to-Peer+Communications+Framework+on+Android+Platform
 
Web Services for the Internet of Things
Web Services for the Internet of ThingsWeb Services for the Internet of Things
Web Services for the Internet of Things
 
Intro RINA
Intro RINAIntro RINA
Intro RINA
 

Dernier

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

Thesis Presentation: Web-Integrated Smart City Infrastructure

  • 1. Web-Integrated Smart City Infrastructure A caching proxy for hybrid CoAP-HTTP networks. Supervisor: Candidate: Prof. Dr. Giovanni Malnati Francesco Corazza Co-supervisors: Prof. Dr. Stefano Ceri (Politecnico di Milano) Prof. Dr. Friedemann Mattern (ETH Zürich) Tutor: Dipl.-Ing. Matthias Kovatch (ETH Zürich) 26 November 2012
  • 2. Web-Integrated Smart City Infrastructure Francesco Corazza Smart Cities? Ningbo City, China Taipei , Taiwan 2
  • 3. Web-Integrated Smart City Infrastructure Francesco Corazza • 1. Smart Cities and Internet: • • interconnected worlds • • • Wireless Sensor Network (WSN) The Internet of Things vision • Spatially distributed autonomous sensors Internet of Things • Low bandwidth, lossy, unstable medium (Trillions of nodes) • Low energy, power, processing, faults • IEEEE 802.15.4 – Low Rate WPAN Fringe Internet • Internet of Things (Billions of nodes) • Proprietary solutions Core Internet • IPv6 over Low-power WPAN (6LoWPAN) (Millions of nodes) • IP as common language • “Things” can access standard web services • “Things“ can be addressed from Internet • Application-layer interconnection (Web) 5
  • 4. Web-Integrated Smart City Infrastructure Francesco Corazza • 1. Smart Cities and Internet: • • RESTfy real world • • • Web of Things • Web tools in real world (browser, search) Intersection originating the WoT • Physical/virtual mashups • REST • Everything is a resource • Architectural constraints • Scalability, usability, and accessibility • HTTP • Constrained Application Protocol • Designed from a subset of HTTP • Low overhead (UDP fragmentation) • Machine to Machine (M2M) applications 7
  • 5. Web-Integrated Smart City Infrastructure Francesco Corazza • 1. Smart Cities and Internet: • • CoAP (Constrained Application Protocol) • • • Features • Async communication (request/response) HTTP vs. CoAP protocol stack • Stateless reliability (confirmable/ack) 7 HTTP CoAP • Security (CoAPS) • Observation (native publish/subscribe) 4 TCP UDP • Blockwise transfers (stateless large transfers) IPv6 • Options 3 IP 6LoWPAN • Minimum parsing complexity • Finite number of identifiers 2 Ethernet MAC 802.15.4.5 MAC • Caching 1 Ethernet PHY 802.15.4.5 PHY • Freshness model • Validation model • Proxying 9
  • 6. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • proxy deployment • • Forward proxy • Positioning • Server-side • Client-side • External Reverse proxy • Server-side proxy ✓ Effective TCP/UDP mapping ✓ Caching ✓ Multicast ✓ Traffic queuing and limiting ✗ Scalability ✗ Availability Intercepting proxy • Uri-mapping • Homogeneous (intercepting proxy) • Embedded (reverse proxy) 11
  • 7. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • cross-protocol mappings (HTTP to CoAP) • Reverse proxy HTTP Request GET http://proxy.mywsn.com/coap/cnb.mywsn.com/b/temp Accept: application/json • Embedded uri-mapping Constrained Network Proxy coap://proxy.mywsn.com Building CNB HTTP Client http://proxy.mywsn.com http://httpnode.example.com 2001:620:8:35db::1f Room A 170.1.52.200 2001:620:8:35C1::xxx 5683 Room B 80 Border Router CoAP Server Internet 2001:620:8:101f::1 coap://cnb.mywsn.com/b/temp 2001:620:8:101f::64 13
  • 8. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • cross-protocol mappings (HTTP to CoAP) CoAP Request • HTTP-CoAP mapping Type: CONFIRMABLE - Uri-host: cnb.myswn.com • Split HTTP request uri Code: GET - Uri-port: 5683 Options: - Uri-path: b • Map Accept header - Accept: 50 - Uri-path: temp Constrained Network Proxy coap://proxy.mywsn.com Building CNB HTTP Client http://proxy.mywsn.com http://httpnode.example.com 2001:620:8:35db::1f Room A 170.1.52.200 2001:620:8:35C1::xxx 5683 Room B 80 Border Router CoAP Server Internet 2001:620:8:101f::1 coap://cnb.mywsn.com/b/temp 2001:620:8:101f::64 14
  • 9. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • cross-protocol mappings (HTTP to CoAP) CoAP Response • Piggybacked response Type: ACKNOWLEDGE Options: Code: 2.05 - Content-Type: 50 • Mag-Age Payload: {temp: 21.5} - Mag-Age: 60 Constrained Network Proxy coap://proxy.mywsn.com Building CNB HTTP Client http://proxy.mywsn.com http://httpnode.example.com 2001:620:8:35db::1f Room A 170.1.52.200 2001:620:8:35C1::xxx 5683 Room B 80 Border Router CoAP Server Internet 2001:620:8:101f::1 coap://cnb.mywsn.com/b/temp 2001:620:8:101f::64 15
  • 10. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • cross-protocol mappings (HTTP to CoAP) Http Response • CoAP-HTTP mapping Status-Code: 200 OK • Cache-Control Cache-Control: max-age=60 Content-Type: application/json; charset=utf-8 • Content-Type Body: {temp: 21.5} Constrained Network Proxy coap://proxy.mywsn.com Building CNB HTTP Client http://proxy.mywsn.com http://httpnode.example.com 2001:620:8:35db::1f Room A 170.1.52.200 2001:620:8:35C1::xxx 5683 Room B 80 Border Router CoAP Server Internet 2001:620:8:101f::1 coap://cnb.mywsn.com/b/temp 2001:620:8:101f::64 16
  • 11. Web-Integrated Smart City Infrastructure Francesco Corazza • 2. Web-Integration: • • caching • • • Response code (≠ HTTP) • 2.05, cache • 2.03, update • 2.0x, invalidate • Update max-age • Time passed in cache • max_age = original_max_age - cache_age 19
  • 12. Web-Integrated Smart City Infrastructure Francesco Corazza • 3. Design the proxy: • • components • • • Californium • Rapid prototyping in backend • Layered architecture • Apache HttpCore • Minimal memory footprint • Non-blocking I/O • Apache HttpClient • Uses HttpCore internally • 1xx & 3xx codes managed • Built-in security • Google Guava Cache • Used in production by Google • 286.000 tests 22
  • 13. Web-Integrated Smart City Infrastructure Francesco Corazza • 3. Design the proxy: • • integration (Californium architecture) • • • Layered architecture Resources • Chain of Responsibility Resource • Single thread model • Limited to clients and servers Endpoint • Pitfalls • Synchronized responses Abstractions • Blocking UDP thread Communicator • Missing client abstraction • Missing server abstraction TransferLayer Variable Layers Layers ⟳ UDPLayer 23
  • 14. Web-Integrated Smart City Infrastructure Francesco Corazza • 3. Design the proxy: • • integration (proxying) • • • Encapsulations Resources • Forwarding resources (client) Resource • Stacks (servers) • Multi-thread model CoAP Resource HTTP Resource • Concurrent responses • Resource thread-safeness ⟳⟳⟳ Proxy Endpoint • Non-blocking UDP thread • Communicator Abstractions • Two message flows • Thread-safeness Proxy Communicator • Endpoint • Avoid HTTP in CoAP servers ⟳⟳⟳ HTTP Stack CoAP Stack ⟳ • Encapsulate cache Servers 25
  • 15. Web-Integrated Smart City Infrastructure Francesco Corazza • 3. Design the proxy: • • final architecture Resources HTTP Client HTTP Translator CoAP Client Resource Cache Abstractions Proxy Endpoint Proxy Communicator HTTP Translator CoAP Stack HTTP Stack Servers 26
  • 16. Web-Integrated Smart City Infrastructure Francesco Corazza • 4. Evaluation: • • performance assessment • • 400 100 requests/s Average Round Trip Time (ms) • Emulation 350 200 requests/s • Proxy JVM limitation 400 requests/s • CoAP Server Virtualization 300 600 requests/s • Test client 250 • Pre-compiled requests • Random distribution of requests 200 • Normal distribution of resources 150 • Average of several “runs” • Produced data 100 • Raw RTT distributions 50 • RTT/throughput trends • CDF for RTT 0 0 200 400 600 800 1000 Request number 27
  • 17. Web-Integrated Smart City Infrastructure Francesco Corazza • 4. Evaluation: • • performance assessment (CoAP-to-HTTP proxying) 350 Tests w/o caching Average RTT (ms) 300 250 Tests w/ caching 200 150 100 50 0 0 50 100 150 200 250 300 350 400 450 Produced throughput (Kbit/s) 1 Cumulative Density F. 0.8 0.6 0.4 100 Kbit/s w/ cache 400 Kbit/s w/ cache 0.2 100 Kbit/s w/o cache 400 Kbit/s w/o cache 0 0 100 200 300 400 500 600 Average Round Trip Time (ms) 28
  • 18. Web-Integrated Smart City Infrastructure Francesco Corazza • 4. Evaluation: • • hybrid mashup • • Paraimpu control Panel HTTP to CoAP Twits containing temperatures 33
  • 19. Web-Integrated Smart City Infrastructure Francesco Corazza • • Conclusions • • • CoAP draft evolution • Smart city 7 • Mashup as leading paradigm in the WoT K Lines added • Scalability through physical locality 6 K Unchanged Lines • Chains of proxies • Lesson learnt 5 • Design for extensibility • Interoperability through standards 4 • Cheat sheet for overlapping specifications 3 • Future work • Standardization process 2 • Intercepting proxy • Secure proxy (HTTPS-CoAPS mapping) 1 0 35
  • 20. Web-Integrated Smart City Infrastructure Francesco Corazza Thank you for the attention 36