View
213
Download
0
Category
Tags:
Preview:
Citation preview
WP04: Wireless Networking
LibeliumDavid Remón & Anartz Nuin
Brussels, March 31, 2014
Midterm Review 131/03/2014
WP04 Objetives
● Setting up wireless connections● Selection of a low level wireless data transfer protocol● Adaptation of the high level application protocol layer ● Testing the wireless communications
Midterm Review 231/03/2014
WP04 Tasks
● T4.1 Definition of Requirements (LBL, GORE, AMIS, UNIMI) [M6-M10]
● T4.2 Functional Analysis (LBL, GORE, AMIS, UNIMI) [M9-M12]● T4.3 Implementation (GORE, LBL) [M10-M15]● T4.4 Construction and validation of network performance
model (UPV, LBL, UNIMI) [M11-M17]● T4.5 Tests (LBL, GORE, AMIS) [M12-M23]
Midterm Review 431/03/2014
WP04 deliverables
● D4.1 Wireless Protocols Report (LBL) [M10]● D4.2 First Experimentation Report (GORE) [M15]● D4.3 Report on predicted system performance (UPV)
[M17]● D4.4 Final report on experimentation (LIB) [M23]
Midterm Review 531/03/2014
Gantt• D4.1 (LIB)
● Delivered • D4.2 (AMIS)
● Delivered • D4.3 (UPV)
● Expected delivering with delay• MS5 Month16
● Partially achieved: communication chain completed but not integrated. Final integration at Cartif mockup
Midterm Review 631/03/2014
Goals• Communication chain completed• Security Layer: TLS• QoS layer established• State Diagram for SandS Board defined• Managing Connections: Keep Alive• Handling Command Queues• Frame treatment in both ends
Midterm Review 731/03/2014
Midterm Review 931/03/2014
Tasks● T4.1 Definition of Requirements ● T4.2 Functional Analysis ● T4.3 Implementation ● T4.4 Construction and validation of network performance
model● T4.5 Tests
Midterm Review 931/03/2014
Midterm Review 1031/03/2014
T4.1 Definition of requirements
• Coming from WP01
• Results shown in D1.1, D3.1 and D3.3
• Branded and Non branded SolutionDifferent approach = Different requirements
• Defining recipes, instructions/commands
Midterm Review 1131/03/2014
T4.2 Functional Analysis
● Branded and Non branded Solution.
● Branded Solution- Dedicated web server.- Specially developed test application- Extensive tests
Explained in Task 3.5
Midterm Review 1231/03/2014
T4.2 Functional Analysis
Security- TLS
Communications:- MQTT- TCP- WiFi
Wifi Access Point Interface Design
Midterm Review 1431/03/2014
COMMUNICATIONS & SECURITY
- Two ends carrying out communications and encryption: DI CM & appliance
UN DI CM
Midterm Review 1531/03/2014
● mqtt
● TLS
Linux board AR9331 DI CM
libmosquitto
C implementation of MQTT
libmosquitto uses library OPENSSL
mqtt.js
implementation of MQTT in node.js
mqtt.js uses library OPENSSL
Midterm Review 1631/03/2014
Accessing the eahouker WiFi network
1. Sands boardconfigures as Access Point.
2. eahouker introduces WiFicredentials.
Midterm Review 1731/03/2014
Accessing the eahouker WiFi network
Designed.
• Next step:ImplementationIn SandS board
Midterm Review 1831/03/2014
T4.3 Implementation
● Branded and Non branded Solution.
● Branded Solution- Dedicated web server.- Specially developed test application- Extensive tests
Explained in Task 3.5
Midterm Review 1931/03/2014
● Non branded solution:
- Two ends carrying out communications: DI CM & appliance
UN DI CM
Midterm Review 2031/03/2014
DI end: DI Connection Manager● Manage all the connections from/to appliances
Midterm Review 2131/03/2014
DI CM● node.js: direct integrationwith DI (NTUA)
● In order toincrease Performance:
Multiple workers,as much as CPU cores
Midterm Review 2231/03/2014
DI CM● - Receiving info from appliances:Three kind of messages:
- Completed task- Info (for example, sensor measures)- First Connection status.
- Sending info to appliances: One kind of message:
- commands
Midterm Review 2331/03/2014
DI CM● Sending info to the appliances:
Recipe
Payload
xml2
command
mqtt wrapper
mqtt message to the appliance
Midterm Review 2431/03/2014
Appliance end
- Backup solution to avoid longer delay:
ReplacementSandS board Arduino YUN
Midterm Review 2631/03/2014
SandS board working Diagram
Linux processorArduino Part
SandS Board
In charge ofCommunications
In charge ofrunning the appliance
Midterm Review 2731/03/2014
● Linux processor AR9331:
- in charge of the communications in the appliance end.
- Communicates with Arduino part ATmega2560 through serial port.
SandS board working Diagram
Midterm Review 2831/03/2014
● Linux processor AR9331:
- receives commands from DI-CM - sends commands to Arduino part
- sends commands to Arduino part - receives ACK's & status info from Arduino part
SandS board working Diagram
Midterm Review 3031/03/2014
● Linux processor AR9331:Payload
libmosquitto
mqttframe
Message coming from
DI-CM
SandS board working Diagram
Commands sent 1by1 to the Arduino
ATmega 2560
parse
Midterm Review 3131/03/2014
SandS board working Diagram
Linux processorArduino Part
SandS Board
In charge ofCommunications
In charge ofrunning the appliance
Midterm Review 3231/03/2014
● Arduino part Atmega 2560:
- Controls the appliance. - Communicates with Linux processor AR9331 through
serial port.
SandS board working Diagram
Midterm Review 3331/03/2014
● Arduino part Atmega 2560:
- This programmed diagram allows SandS partners to add a new appliance to SandS network just by inserting the working code in the structure and defining the used commands.
SandS board working Diagram
Midterm Review 3531/03/2014
Implementation: QoS
• Quality of Service Layer Implemented
• Handled by libmosquitto and mqtt.js
• QoS value = 1 (MQTT) mqtt message received → at least 1 ACK sent.
Midterm Review 3631/03/2014
Implementation: keep alive timer
- Implemented as MQTT Standard
- keep_alive_time=maximum time without message from the appliance
- Exists “Grace Time”=1,5 x keep_alive_time
- If an appliance must send a message every 60 seconds, it will be disconnected from Sands when 90 seconds have passed
Midterm Review 3731/03/2014
T4.4 Network Performance Models
In progress● Extension of models in WP01 ● Dependencies on last project decisions and tests.● Will be finished when whole project picture
completed
Integration: Cartif Small Scale Mockup
Midterm Review 3831/03/2014
T4.5 TestsIn progress
● Stress tests in pieces of the communication:
- DI CM- keeping alive the connection UN - DI- QoS- Security
Midterm Review 4031/03/2014
● Simulation
● Thousands ofappliances
100% successmanaging connections
Stressing the DI-CM
Midterm Review 4131/03/2014
● Done: Tests in parts of the communications
● To be done: Testing the integrationSandS Boards – Communications – DI
Cartif small scale mockup
Tests
• Recovering delays:- Migrating: Arduino Yun → SandS board
• Next steps on Communications: - Finishing Implementation Wifi Access Point- Closing the loop ARD – LIB - NTUA
- Integration: Cartif small scale mockup Appliances ↔ DI
- Scalability & number appliances: large scale mockup
Midterm Review 4231/03/2014
Recommended