XMPP IoT SIG - Call for Participation
Hello everyone, Rikard and I would like to start the second phase of the IoT SIG and invite you to participate in the IoT SIG, in order to shape the technical aspects of the IoT XMPP extensions protocols. Every party interested in XMPP in the Internet of Things is welcomed. The rough road-map is to collect IoT use cases and how they could be solved using XMPP in the first 2-3 meetings. After those virtual meetings, everyone is invited to meet face-to-face at the XMPP Standards Foundation 21th Summit, which will take place on the 2. and 3. February 2017 in Brussels, Belgium [1]. The Summit is right before FOSDEM 2017 [2] and a great opportunity to discuss how the existing IoT XEPs should evolve. Rikard and I looking forward to see you there. :) The regular IoT SIG meetings will take place every 14 days using Jitsi Meet. I'd like to see if we can schedule a first meeting before Christmas. Please use the following Doodle pool if you are interested: http://doodle.com/poll/y5d6h62y68gp3yf4. Note that we will close the poll by the end of the week. If you can't make it before Christmas, then don't worry: The next meeting will be in the second week of 2017 (2017-01-09 - 2017-01-13). Please use the following doodle in for this time-frame: http://doodle.com/poll/b58st8u5yw3ipges. In order to prepare to the meeting, please try to answer the following questions: - What are the IoT use cases you want to solve with XMPP? - What are the strengths of XMPP wrt. IoT? - What are the weaknesses of XMPP wrt. IoT? - How could the weaknesses be mitigated? - How fit the existing IoT XEPs into this picture? Regards Florian 1: https://wiki.xmpp.org/web/Summit_21 2: https://fosdem.org/2017/
On 12/12/16 1:22 PM, Florian Schmaus wrote:
Please use the following Doodle pool if you are interested: http://doodle.com/poll/y5d6h62y68gp3yf4. Note that we will close the poll by the end of the week. If you can't make it before Christmas, then don't worry: The next meeting will be in the second week of 2017 (2017-01-09 - 2017-01-13). Please use the following doodle in for this time-frame: http://doodle.com/poll/b58st8u5yw3ipges.
Are all times UTC?
On 12.12.2016 21:52, Peter Saint-Andre - Filament wrote:
On 12/12/16 1:22 PM, Florian Schmaus wrote:
Please use the following Doodle pool if you are interested: http://doodle.com/poll/y5d6h62y68gp3yf4. Note that we will close the poll by the end of the week. If you can't make it before Christmas, then don't worry: The next meeting will be in the second week of 2017 (2017-01-09 - 2017-01-13). Please use the following doodle in for this time-frame: http://doodle.com/poll/b58st8u5yw3ipges.
Are all times UTC?
Depends on which times you see. ;) The first poll [1] shows me 19:00, 20:00 and 21:00 as possible options. I always assume that doodle shows "my" timezone, which is currently CET/+01. - Florian 1: http://doodle.com/poll/y5d6h62y68gp3yf4
On 12/12/16 2:13 PM, Florian Schmaus wrote:
On 12.12.2016 21:52, Peter Saint-Andre - Filament wrote:
On 12/12/16 1:22 PM, Florian Schmaus wrote:
Please use the following Doodle pool if you are interested: http://doodle.com/poll/y5d6h62y68gp3yf4. Note that we will close the poll by the end of the week. If you can't make it before Christmas, then don't worry: The next meeting will be in the second week of 2017 (2017-01-09 - 2017-01-13). Please use the following doodle in for this time-frame: http://doodle.com/poll/b58st8u5yw3ipges.
Are all times UTC?
Depends on which times you see. ;)
The first poll [1] shows me 19:00, 20:00 and 21:00 as possible options. I always assume that doodle shows "my" timezone, which is currently CET/+01.
I see times between 7 PM and 9 PM on the first Doodle. I doubt those are Mountain Standard Time (UTC-7) because that would be in the middle of the night for you! :-) So they seem to be UTC+1. I will adjust my responses because I assumed they were UTC. Peter
Hello, here my considerations about the questions you have proposed:
What are the IoT use cases you want to solve with XMPP?
This is the smart-factory use case that I propose: Industry 4.0 (this term refers to a vision of a "fourth industrial revolution") is a concept related to smart factories, which allow individual customer requirements to be met. For example, in these smart factories, dynamic business and engineering processes enable last-minute changes to production and deliver, to be more flexible in the production and to react efficiently to failures. Furthermore, Industry 4.0 will address some other important challenges, like resource and energy efficiency. The Industry 4.0 revolution will be driven by the increased use of information and communications technology as part of production processes, through the integration of hardware and software resources. Smart factories will leverage concepts like virtualization and mobile communication, enabling the introduction of new forms of smart services. Today, physical and virtual worlds can converge, thanks to the fact that powerful and autonomous microcomputers are being wirelessly networked with each other and with the Internet. Particurarly, the so called Cyber-Physical Systems (CPS)s are the main example of this integration. They have three main features: computation, communication, and control. These systems are the basis of Industry 4.0, communicating wirelessly, but carrying out real, physical processes. Furthermore, innovations in Internet protocols (e.g. IPv6) provide a number of addresses, sufficent to enable universal addressing of smart objects, through the Internet. This allows to create the Internet of Things and Services (IoTS), for interconnection of resources, services and people. In the next years, the IoTS will change manufacturing fundamentally in terms of organization, technology and processes, introducing approaches like Service Oriented Architecture (SOA), virtualization, cloud computing and machine-to-machine (M2M) communication. For this reason, major processes in production will directly depend on the availability and performance of IT components and services. Technology used in smart factory scenario needs to provide several characteristics: the monitoring must be lean, to reduce the footprint of monitoring in terms of resource consumption, CPU, memory and disk space. Indeed, to monitor an infrastructure where embedded systems and CPS are used on the shop floor, it is inadequate to use a traditional, datacenter type of server. The monitoring needs to be flexible, because needs to support the dynamics and volatility by providing the ability to adapt quickly to structural and functional changes. It must be scalable, because today the IT in production is both rather specialized and small, but, smart monitoring needs to scale up to millions of components to be monitored. Monitoring must be ubiquitous, because it needs to be available to support the more distributed and pervasive nature of systems in the context of smart factories. Finally, it must be secure, to protect the data monitored by the systems. XMPP is a a technology that provides all the features listed before: It allows lean monitoring because it enables the use of an unique protocool for different goals: messaging, data exchange, control and management. The solution is flexible, because its naming and addressability mechanisms are based on the use of JID, which are not tighted with the position. XMPP is scalable, because it can scale to thoousands of users, also using only not expensive hardware. The protocol can be used to enable the communication also on embedded devices, which can be used for ubiquitous applications. Finally, XMPP embeds natevily security mechanisms, like SSL and TLS for authentication and crittography, which guarantees the protection of the data exchanged and of the privacy of the users. For this reason, XMPP can be used as the standard protocol to enable Machine-to-Machine and Machine-to-Human communication, inside smart-factories. In an industry 4.0 scenario, a set of sensors can be spread in a factory to monitor several environmental parameters like temperature, humidity, light and noise. To simplify the deployment of this set of sensors the XEP-0347 can be used to safely install, configure, find and connect massive amounts of Things together. All these parameters measured may affect both the production process (for products, like perishable goods) and the comfort of the work environment of the workers. In this scenario, the sensors spread can be connected (wireless) to tiny-computer (i.e Raspberry-Pi) to send the data monitored using the XEP-0323. The data collected are used to monitor the status of the work environment. Thresholds can be set to rise alarms in case some parameters exceed the optimal values. Furthermore, using the XEP-0325, the central control system can control actuators to try to normilize the status, turning on/off devices or changing the temperature of the cooling/heating system. Since this system can affect the production process, it is important that all the operations are executed in a secure way, in order to avoid to allow attackers to access to the data monitored or worstly to keep control of the actuators. Beside the security provided by the mechanisms embedded in the XMPP protocol, the XEP-0324 can be used to control the acces to the different devices in the factory, in order to limit it, based on the role of people.
What are the strengths of XMPP wrt. IoT?
The main reasons that can lead to choose XMPP as communication protocol for an IoT solution, in my opinion, are: - The fact that is a standard technology (standardized in 2004 by IETF), free and open, with a large community of developers, which continuously extend the protocol. - The support of the publish/subscribe paradigm, useful to build an event-driven architecture. - The possibility to use as clients, common chat clients used in every day life by the users (like Pidgin). - The possibility to unique name and address the entities using XMPP accounts, not connected with the physical location. - The security mechanisms natively included in protocol (TLS for encryption and SASL for authentication), both for client-server and server-to-server communication. Recently, recommendations have been made to ensure that all the connections (both client-to-server and server-to-server) use encryption. - The possibility to have additional features typical of the instant messaging protocols, like the presence mechanism, which can be used not only to know in real time the availability of the connected entities, but also to have some additional info on their status (for example, a device can be online, but not working). -The scalability guaranteed by the protocol: - Its “push” model of information transfer solves serious scaling problems associated with traditional HTTP-based polling approaches. - An XMPP network can be composed by an unlimited number of servers in order to balance the load of traffic and every XMPP server can scale to handle thousands of users, also if installed in standard computers, without requiring expensive hardware. - Finally, open source XMPP servers can be installed in the cloud, with also better scalability performances. - The level of scalability provided by the protocol is proved by the infrastructures that are currently using it, as messaging protocol, like: - Google Cloud Messaging (used with every Android device) - Google Cloud Printing - WhatsApp - Intel Common Connectivity Framework - UPnP Forum - OpenADR Currently, there is no another solution providing all these features together.
What are the weaknesses of XMPP wrt. IoT?
I think what is generally considered weaknesses of xmpp compared with other protocols, in the IoT scenario, are: - The fact that XMPP is not a protocol designed for IoT solutions, but a messaging protocol adapted to thi scenario. - The fact that the protocol is based on the use of xml (with the overhead connected with this). - The amount of traffic generated by the presence mechanism, which makes it not adapt for system, where many resource-constrained devices have to communicate.
How could the weaknesses be mitigated? How fit the existing IoT XEPs into this picture?
I think that the current IoT XEPs are generally going in the right direction to address the issues listed before. In general, the introduction of a list of XEPs allow to define more easly XMPP as an "IoT protocol", defining standard ways to do IoT typical functionalities, like discovery and provisioning. Furthermore, the introduction of the EXI XEP (XEP-0322) and of the friendship concept allow to mitigate the other two issues. Finally, another way to mitigate the XMPP weakeness is to draft "Interworking" specifications (i.e. specifying how XMPP-IoT should be mapped to interact with other protocols), to promote the use of XMPP in combination with other procotols, with different strenghts/weaknesses). Best Regards, Davide On Mon, 12 Dec 2016 21:22:58 +0100 Florian Schmaus <flo@geekplace.eu> wrote:
Hello everyone,
Rikard and I would like to start the second phase of the IoT SIG and invite you to participate in the IoT SIG, in order to shape the technical aspects of the IoT XMPP extensions protocols. Every party interested in XMPP in the Internet of Things is welcomed. The rough road-map is to collect IoT use cases and how they could be solved using XMPP in the first 2-3 meetings. After those virtual meetings, everyone is invited to meet face-to-face at the XMPP Standards Foundation 21th Summit, which will take place on the 2. and 3. February 2017 in Brussels, Belgium [1]. The Summit is right before FOSDEM 2017 [2] and a great opportunity to discuss how the existing IoT XEPs should evolve. Rikard and I looking forward to see you there. :)
The regular IoT SIG meetings will take place every 14 days using Jitsi Meet. I'd like to see if we can schedule a first meeting before Christmas. Please use the following Doodle pool if you are interested: http://doodle.com/poll/y5d6h62y68gp3yf4. Note that we will close the poll by the end of the week. If you can't make it before Christmas, then don't worry: The next meeting will be in the second week of 2017 (2017-01-09 - 2017-01-13). Please use the following doodle in for this time-frame: http://doodle.com/poll/b58st8u5yw3ipges.
In order to prepare to the meeting, please try to answer the following questions:
- What are the IoT use cases you want to solve with XMPP? - What are the strengths of XMPP wrt. IoT? - What are the weaknesses of XMPP wrt. IoT? - How could the weaknesses be mitigated? - How fit the existing IoT XEPs into this picture?
Regards Florian
1: https://wiki.xmpp.org/web/Summit_21 2: https://fosdem.org/2017/
participants (3)
-
CONZON DAVIDE -
Florian Schmaus -
Peter Saint-Andre - Filament