Internet of Things, Ac. Year 2019/2020 - Course Program
Prof. Gianluigi Ferrari
Office: palazzina 2 sede scientifica Ingegneria
Tel: 0521 906513
Meets with students upon phone or email (best) reservation.
Course hours and classrooms (A.Y. 2019/2020, Spring semester)
- Tuesday (Aula 8): 12:30-14:30
- Wednesday (Aula B/4): 13:30-15:30
Introduction to IoT: definitions, history, today's smart objects, challenges for smart objects (at node/network levels), standardization, technology trends and market growth.
Introduction to IoT: hardware, software, testbed at WASN Lab
Transport Layer Protocols: UDP and TCP: design principles, details of UDP and TCP, UDP and TCP for smart objects.
References: [1-chs.1,2,6], .
IPv6: the evolution of Internet, IP protocol stack, IPv6 characteristics (headers, addressing, etc.).
References: [1-chs. 4,15]. See also .
Communication Mechanisms: communication patterns, communication protocols (IEEE 802.15.4, IEEE 802.11, PLC).
Reference: [1-ch. 12].
Energy-efficient MAC Protocols: power consumption, problems in wireless networking (hidden/exposed terminal, near-far), centralized access, traditional contention protocols, energy efficient MAC protocols-unscheduled (MACA, PAMAS, STEM, B-MAC, WiseMAC, X-MAC) and scheduled (S-MAC,ContikiMAC).
6LoWPAN: a LoWPAN, the adaptation layer, header structure, header compression.
References: [1-ch. 16].
Routing in LLNs & RPL: From WSNs to RPL; link model in LLNs, routing requirements, RPL approach; metrics, constraints, objective function; RPL basics, operations, multiple DODAGs; DIO e DAO messages; an example of DAG construction and maintenance.
References: [1-ch. 17],.
LECTURE 8: [Simone Cirani]
Communication paradigms for the IoT: Representational State Transfer (REST) architectures, Web of Things, Publish/Subscribe communications.
LECTURE 9: [Marco Picone]
Operating systems and hardware for the IoT: Hardware overview; classes of constrained devices; main IoT boards; sensors and actuators;
media types for Sensor Markup Language (SENML); CoRE interfaces; operating systems for IoT.
References: [1-ch. 11],-
LECTURE 10: [Simone Cirani]
Constrained Application Protocol (CoAP): IETF CoRE WG RFCs and Internet drafts, characteristics of CoAP, message format, CoAP options, CoAP extensions (resource observation, block-wise transfer, group communications, resource directory and CoRE interfaces, HTTP-to-CoAP mapping).
LECTURE 11: [Marco Picone]
Service Discovery: CoAP service discovery; resource discovery; ZeroConf; jMDNS; Lightweight multicast forwarding
for service discovery in low-power IoT networks; scalable and self-configuring architecture for service discovery in the Internet of Things.
References: [1-ch. 7][18.1],-
LECTURE 12: [Luca Veltri]
Security for IoT: threats and coutermeasures; IP layer security (IPSec, HIP); transport layer security (TLS, DTLS); application layer security (S/MIME, SRTP); key agreement and distribution; cryptographic algorithms.
Reference: [1-ch. 8]
Discussion on the material of the theory part of the course.
LECTURE 14: [Gaia Codeluppi]
Seminar 1: IoT systems for smart agriculture
LECTURE 15: [Antonio Cilfone]
Seminar 2: An overview on LoRa technology
LECTURE 16: [Luca Davoli]
Introduction to Java: Object-Oriented Programming; Java basics; Classes and objects; Methods; Interfaces; OOP principles; Practical Java; Design patterns
Californium (Cf) Framework-CoAP (1/2): Californium (Cf) Framework; Client/Server Architecture; CoAP Server API; CoAP Client API.
LECTURE 17: [Luca Davoli]
Californium (Cf) Framework-CoAP (2/2): completion of tutorial.
Slides provided by G. Ferrari and colleagues for all lectures. The teaching material is available upon request to Prof. Ferrari and in Elly.
 S. Cirani, G. Ferrari, M. Picone, and L. Veltri, Internet of Things: Architectures, Protocols and Standards, Wiley, UK: 2018. ISBN: 9781119359678.
 J. P. Vasseur and A. Dunkels, Interconnecting Smart Objects with IP, Morgan Kaufmann, 2010. Course main textbook.
 C. Bormann, "Protocols for the Real "Internet of Things"," keynote speech at the Internet of Things and Smart Cities Ph.D. School 2014, Lerici (SP), Italy, September 2014. [http://phdschool.tlc.unipr.it/iot/2014/index.php/welcome/downloads.html]
 M. R. Palattella, N. Accettura, X. Vilajosana, T. Watteyne, L. A. Grieco, G. Boggia, and M. Dohler, "Standardized protocol stack for the Internet of (Important) Things," IEEE Communications Surveys & Tutorials, vol.15, no.3, pp.1389-1406, Third Quarter 2013. DOI: 10.1109/SURV.2012.111412.00158.
 Princeton (Computer Networks) and Virginia Tech (Internet Teaching Lab) lectures.
 IPv6, lectures notes by Prof. Luca Veltri, Corso di Reti di Telecomunicazioni C, University of Parma, Italy, a.y. 2009/2010.
 A. Bachir, M. Dohler, T. Watteyne, K. K. Leung, "MAC Essentials for Wireless Sensor Networks," IEEE Communications Surveys & Tutorials, vol.12, no.2, pp.222-248, Second Quarter 2010. DOI: 10.1109/SURV.2010.020510.00058.
 [MACA] P. Karn,"MACA - a New Channel Access Method for Packet Radio", in ARRL/CRRL Amateur Radio 9th Computer Networking Conference, pp. 134-140, 1990.
 [PAMAS] Suresh Singh and C. S. Raghavendra, "PAMAS-power aware multi-access protocol with signalling for ad hoc networks," SIGCOMM Comput. Commun. Rev. vol. 28, no. 3, pp. 5-26, July 1998. DOI: 10.1145/293927.293928.
 [STEM] C. Schurgers, V. Tsiatsis, S. Ganeriwal, M. Srivastava, "Optimizing sensor networks in the energy-latency-density design space," IEEE Transactions on Mobile Computing, vol.1, no.1, pp.70,80, Jan-Mar 2002. DOI: 10.1109/TMC.2002.1011060.
 [B-MAC] J. Polastre, J. Hill, and D. Culler, "Versatile low power media access for wireless sensor networks." Proc. 2nd international conference on Embedded networked sensor systems (SenSys '04), pp. 95-107, Baltimore, MA, USA November 2014. DOI: 10.1145/1031495.1031508.
 [S-MAC] W. Ye, J. Heidemann, D. Estrin, "An energy-efficient MAC protocol for wireless sensor networks," Proc. 21st Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2002), pp.1567-1576, 2002. DOI: 10.1109/INFCOM.2002.1019408.
 [X-MAC] M. Buettner, G. V. Yee, E. Anderson, and R. Han, "X-MAC: a short preamble MAC protocol for duty-cycled wireless sensor networks," Proc. of the 4th ACM International Conference on Embedded Networked Sensor Systems (SenSys '06), pp. 307-320. DOI: 10.1145/1182807.1182838.
 [ContikiMAC] A. Dunkels, "The ContikiMAC Radio Duty Cycling Protocol," SICS Technical Report T2011:13. ISSN 1100-3154. December 2011.
 Shelby & Bormann, 6LoWPAN: The Wireless Embedded Internet, John Wiley & Sons Ltd, 2009. ISBN: 978-0-470-74799-5.
 Jim Webber, Savas Parastatidis, Ian Robinson, "REST in Practice," O'Reilly Media, September 2010 [http://shop.oreilly.com/product/9780596805838.do].
 O. Vermesan and P. Friess (eds), Internet of Things Applications - From Research and Innovation to Market Deployment, pp. 287-313, The River Publishers Series in Communications, Alborg, Denmark, 2014. ISBN: 9788793102941 [http://riverpublishers.com/view_details.php?book_id=245].
 Matthias Kovatsch, "CoAP: The Web-based Application-layer Protocol for the Internet of Things," Lecture COLLECT at the Internet of Things and Smart Cities Ph.D. School 2014, Lerici (SP), Italy, September 2014. [http://phdschool.tlc.unipr.it/iot/2014/index.php/welcome/downloads.html]
 IETF CoRE Working Group Documents (https://tools.ietf.org/wg/core/)
[18.1] Z. Shelby, K. Hartke, and C. Bormann, "The Constrained Application Protocol (CoAP)," RFC 7252, IETF, June 2014
[18.2] Z. Shelby, "Constrained RESTful Environments (CoRE) Link Format," RFC 6690, IETF, August 2012
[18.3] K. Hartke, "Observing Resources in CoAP," I-d draft-ietf-core-observe-16, IETF, December 30, 2014
[18.4] C. Bormann and Z. Shelby, "Block-wise transfers in CoAP," I-d draft-ietf-core-block-17, IETF, March 9, 2015
[18.5] Z. Shelby and C. Bormann, "CoRE Resource Directory," I-d draft-ietf-core-resource-directory-02, IETF, November 9, 2014
[18.6] Z. Shelby and M. Vial, "CoRE Interfaces," I-d draft-ietf-core-interfaces-02, IETF, November 9, 2014
[18.7] A. Castellani, S. Loreto, A. Rahman, T. Fossati and E. Dijk, "Guidelines for HTTP-CoAP Mapping Implementations," I-d draft-ietf-core-http-mapping-06, IETF, March 9, 2015
 Brandtr, Clausen, Dawson-Haggerty, Hui, Pister, Thubert, Winter, "RPL (ripple): Routing Protocol for Low Power and Lossy
Networks - Walkthrough," IETF draft-dt-roll-rpl-01, IETF 75 - Roll WG - July 2009.
 Terminology for Constrained-Node Networks - RFC 7228: https://tools.ietf.org/html/rfc7228
 TelosB Data Sheet: http://www.memsic.com/userfiles/files/Datasheets/WSN/telosb_datasheet.pdf
 Zolertia Z1: http://zolertia.sourceforge.net/wiki/images/e/e8/Z1_RevC_Datasheet.pdf
 OpenMote CC2538: http://www.openmote.com/hardware/openmote-cc2538-en.html
 OpenMote CC2538: http://www.openmote.com/wp-content/uploads/2014/01/OpenMote-CC2538-Schematic.pdf
 Arduino Official Web Page: http://www.arduino.cc/
 Intel Galileo Board: http://www.intel.com/content/www/us/en/do-it-yourself/galileo-maker-quark-board.html
 Arduino Intel Galileo: http://arduino.cc/en/ArduinoCertified/IntelGalileo
 Raspberry Pi Official Web Page: https://www.raspberrypi.org/
 Media Types for Sensor Markup Language (SENML) Internet-Draft: http://tools.ietf.org/html/draft-jennings-senml-10
 OpenWSN: https://openwsn.atlassian.net/wiki/pages/viewpage.action?pageId=688187
 IoT-Lab OpenWSN: https://www.iot-lab.info/wp-content/uploads/2014/11/141106_openwsn_iotlab_public.pdf
 TinyOS Official Web Page: http://www.tinyos.net/
 FreeRTOS Official Web Page: http://www.freertos.org/
 TI-RTOS Official Web Page: http://www.ti.com/tool/ti-rtos
 RIoT Official Web Page: http://www.riot-os.org/
 Emmanuel Baccelli, Oliver Hahm, Mesut Günes, Matthias Wählisch, Thomas Schmidt,
"RIOT OS: Towards an OS for the Internet of Things," The 32nd IEEE International Conference on
Computer Communications (INFOCOM 2013), Apr 2013, Turin, Italy. (https://hal.inria.fr/file/index/docid/945122/filename/2013-riot_os.pdf)
 Contiki: http://www.contiki-os.org/
 S. Cirani, G. Ferrari, and L. Veltri, "Enforcing security mechanisms in the IP-based Internet of Things: an algorithmic overview," Algorithms, Special Issue "Sensor Network," vol. 6, no. 2, pp. 197-226, 2013. DOI:10.3390/a6020197.
 M. Antonini, S. Cirani, G. Ferrari, P. Medagliani, M. Picone, L. Veltri, "Lightweight multicast forwarding for service discovery in low-power IoT networks," IEEE 22st International Conference on Software, Telecommunications and Computer Networks (SoftCOM'14), Split (Croatia), September 2014. Best conference paper award (Symposium on RFID Technologies and Internet of Things).
 S. Cirani, L. Davoli, G. Ferrari, R. Léone, P. Medagliani, M. Picone, and L. Veltri, "A scalable and self-configuring architecture for service discovery in the Internet of Things," IEEE Internet of Things Journal, vol. 1, no. 5, pp. 508--521, October 2014. DOI: 10.1109/JIOT.2014.2358296.
 S. Cirani and L. Veltri, "Implementation of a Framework for a DHT- based distributed location service," 16th International Conference on Software, Telecommunications and Computer Networks (SoftCOM 2008), Split (Croatia), September 2008.
 M. Picone, M. Amoretti, and F. Zanichelli, "GeoKad: a P2P distributed localization protocol," in 8th IEEE International Conference on Pervasive Computing and Communications Workshops (PERCOM Workshops), pp. 800-803, Mannheim, Germany, March-April 2010.
 M. Picone, M. Amoretti, and F. Zanichelli, "Proactive neighbor localization based on Distributed Geographic Table," International Journal of Pervasive Computing and Communications, vol. 7, pp. 240-263, 2011. DOI: 10.1108/17427371111173022.
 M. Kovatsch and J. Vermillard, "Hands-on with CoAP: Embrace the Internet of Things!" Tutorial available at https://eclipse.org/californium/ (http://goo.gl/LLQ03w).
The exam consists in a written exam on the "Theory Part" and on the submission on a project (experimental testbed and report) relative to the "Practice Part." During the written test no personal notes can be used.
Networking and programming courses.