In Internet of Things (IoT) context, a set of devices are connected together to sense and actuate over a defined environment. For example, a set of devices can be deployed around a house to perform a home automation service.
Some examples of the present application are described with respect to the following figures:
Devices deployed for a particular service (e.g., home automation, environmental sensing, etc.) may be specifically configured to implement the functions of the particular service. However, re-purposing the devices for another service after deployment may be difficult.
Examples described herein provide an approach to implement a service via a service agreement. For example, an electronic device may include a processor. The processor may receive, from an intent publishing device, a resource agreement associated with a service to be implemented via the intent publishing device. The processor may also transmit the resource agreement to a claiming device. The processor may further receive a confirmation from the claiming device, where the confirmation is to indicate that the claiming device is to implement the resource agreement. The processor may further match the intent publishing device with the claiming device based on the confirmation. In this manner, examples described herein may reduce difficulty associated with re-purposing a device for different services.
During operation, intent publishing device 102 may transmit a resource agreement (RA) 114 to host 104. RA 114 may be associated with a service that intent publishing device 102 is to implement. RA 114 may indicate a resource to be used to implement the service. The resource may be a hardware component, processor executable instructions, or a combination thereof. For example, a resource may be a camera, a sensor, a touch-sensitive display, a compass, an accelerometer, an operating system, an email client application, an Internet browser application, etc. In an example, intent publishing device 102 may implement a weather forecasting service. RA 114 may indicate that a device is to have a temperature or humidity sensor to collect data. As another example, RA 114 may indicate that a device is to have a display to present the weather forecasting data. Although one RA is shown in
In response to a request from claiming device 106, host 104 may transmit RA 114 to claiming device 106. Claiming device 106 may determine whether claiming device 106 is to implement RA 114 (i.e., provide the resource indicated in RA 114). When claiming device 106 is to implement RA 114, claiming device 106 may transmit a confirmation 116 to host 104. Confirmation 116 may indicate that claiming device 106 is to implement RA 114.
In response to receiving confirmation 116, host 104 may match intent publishing device 102 with claiming device 106 so that claiming device 106 may provide the resource to intent publishing device 102 to implement the service. For example, host 104 may transmit identification information 118 of claiming device 106 to intent publishing device 102. Based on identification information 118, intent publishing device 102 may communicate with claiming device 106 to receive the resource. Identification information 118 may be an Internet protocol (IP) address of claiming device 106, a media access control (MAC) address of claiming device 106, or any other information that enables another device to communicate with claiming device 106.
As another example, host 104 may transmit identification information 120 of intent publishing device 102 to claiming device 106. Based on identification information 120, claiming device 106 may communicate with intent publishing device 102 to provide the resource. Identification information 120 may be an IP address of intent publishing device 102, a MAC address of intent publishing device 102, or any other information that enables another device to communicate with intent publishing device 102.
In some examples, the roles of intent publishing device 102, host 104, and/or claiming device 106 can change depending on the communication network, the type of service to be implemented, etc. For example, host 104 may be an intent publishing device in another communication network. Claiming device 106 may be an intent publishing device associated with a second service and intent publishing device 102 may be a claiming device associated with the second service.
In response to receiving publishing request 202, host 104 may authenticate intent publishing device 102 based on publishing request 202. In some examples, host 104 may authenticate intent publishing device 102 locally. In some examples, host 104 may authenticate intent publishing device 102 via an authentication server (not shown in
Processor 402 be a central processing unit (CPU), a semiconductor-based microprocessor, and/or other hardware devices suitable to control operations of electronic device 400. Computer-readable storage medium 404 may be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. Thus, computer-readable storage medium 404 may be, for example, Random Access Memory (RAM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), a storage device, an optical disc, etc. In some examples, computer-readable storage medium 404 may be a non-transitory storage medium, where the term “non-transitory” does not encompass transitory propagating signals. As described in detail below, computer-readable storage medium 404 may be encoded with a series of executable instructions 406-414.
Resource agreement receiving instructions 406 may receive a resource agreement (RA) from an intent publishing device. For example, referring to
Resource agreement transmission instructions 410 may transmit an RA to a claiming device. For example, referring to
Publishing request receiving instructions 504 may receive a publishing request from an intent publishing device. For example, referring to
Intent publishing request transmitting instructions 606 may transmit a publishing request to a host. For example, referring to
In some examples, computer-readable storage medium 604 may also be encoded with claiming device identification information receiving instructions 612. Claiming device identification information receiving instructions 612 may receive identification information of a claim device from a host. For example, intent publishing device 102 may receive identification information 118 of claiming device 106 from host 104. Based on identification information 118, intent publishing device 102 may communicate with claiming device 106 to receive resource that claiming device 106 is to provide.
Service catalog receiving instructions 706 may receive a service catalog from a host. For example, referring to
Resource agreement receiving instructions 710 may receive a RA from a host. For example, referring to
In some examples, computer-readable storage medium may also be encoded with intent publishing device identification information receiving instructions 714. Intent publishing device identification information receiving instructions 714 may receive identification information of an intent publishing device from a host. For example, referring to
The use of “comprising”, “including” or “having” are synonymous and variations thereof herein are meant to be inclusive or open-ended and do not exclude additional unrecited elements or method steps.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2016/059863 | 11/1/2016 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2018/084825 | 5/11/2018 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
6779184 | Puri et al. | Aug 2004 | B1 |
7603464 | White | Oct 2009 | B2 |
8844024 | Graf | Sep 2014 | B1 |
8849995 | Gabrielson et al. | Sep 2014 | B1 |
9009294 | Dawson et al. | Apr 2015 | B2 |
20030109272 | Mousseau et al. | Jun 2003 | A1 |
20050021349 | Cheliotis et al. | Jan 2005 | A1 |
20060036771 | Yokomura et al. | Feb 2006 | A1 |
20060225075 | Mankovski et al. | Oct 2006 | A1 |
20100332262 | Horvitz | Dec 2010 | A1 |
20110137805 | Brookbanks et al. | Jun 2011 | A1 |
20130244704 | Szabo | Sep 2013 | A1 |
20140012878 | Moussavian et al. | Jan 2014 | A1 |
20160072804 | Chien | Mar 2016 | A1 |
20160205036 | Jia | Jul 2016 | A1 |
Number | Date | Country |
---|---|---|
2015-162907 | Sep 2015 | JP |
2014-0015531 | Aug 2015 | KR |
2573762 | Jan 2016 | RU |
Entry |
---|
AllSeen Alliance: https://allseenalliance.org/. |
Cirani, S.; Davoli, L.; Ferrari, G.; Leone, R.; Medagliani, P.; Picone, M.; Veltri, L., “A Scalable and Self-Configuring Architecture for Service Discovery in the Internet of Things,” IEEE Internet of Things, vol. 1, No. 5, pp. 508-521, Oct. 2014. |
Collina, M.; Corazza, G.E.; Vanelli-Coralli, A., “Introducing the QEST broker: Scaling the IoT by bridging MQTT and REST.” |
23rd IEEE International Symposium on Personal Indoor and Mobile Radio Communications (PIMRC), pp. 36-41, 2012 IEEE. |
Eclipse Ponte: http://www.eclipse.org/ponte. |
Gubbi, J., et al, Internet of Things (IoT): A Vision, Architectural Elements, and Future Directions, < http://www.cloudbus.org/papers/Internet-of-Things-Vision-Future2012.pdf >. |
Intel Common Connectivity Framework: https://software.intel.com/en-us/ccf. |
IoTivity: https://www.iotivity.org/. |
Jara, A.J.; Lopez, P.; Fernandez, D.; Castillo, J.F.; Zamora, M.A.; Skarmeta, A.F., “Mobile Digcovery: A Global Service Discovery for the Internet of Things,” 27th International Conference on Advanced Information Networking and Applications Workshops (WAINA), pp. 1325-1330, 2013, IEEE. |
Kim, J.; Lee, J., “OpenIoT: An open service framework for the Internet of Things,” IEEE World Forum on Internet of Things (WF-IoT), pp. 89-93, 2014, IEEE. |
Eclipse IoT Innitiative: http://iot.eclipse.org/. |
McKinsey&Company.; “The Internet of Things: Mapping the Value Beyond the Hype,” McKinsey Global Institute, pp. 144., Jun. 2015. |
MQTT Version 3.1.1, OASIS Open Standard, Oct. 2014. |
Ren, M., A Conciliation Mechanism for Self-organizing Dynamic Small Groups, Jun. 21, 2016, < http://www.ncbi.nlm.nih.gov/pmc/articles/PMC4916128/>. |
Sarkar, C.; Nambi, A.U.S.N.; Prasad, R.V.; Rahim, A.; Neisse, R.; Baldini, G., “DIAT: A Scalable Distributed Architecture for IoT,” IEEE Internet of Things, vol. 2, No. 3, pp. 230-239, Jun. 2015. |
The Constrained Application Protocol (CoAP), Internet Engineering Task Force Standard—RFC 7258, Jun. 2014. |
Macedo, W.; Rocha, T.; Ordonez, E. D. M., “GoThings: An Application Layer Gateway Architecture for the Internet of Things,” 11th International Conference on Web Information. |
System and technologies (WEBIST), pp. 6; 2015. |
Schulzrinne Henning G et al: “The Session Initiation Protocol: Providing Advanced Telephony Services Across the Internet”, Bell Labs Technical Journal, Wiley, CA, US,vol. 3, n. |
Brian P. Gerkey et al “Murdoch: Publish/Subscribe Task Allocation for Heterogeneous Agents”,Jun. 30, 2000,p. 203 and p. 204. |
Number | Date | Country | |
---|---|---|---|
20190081868 A1 | Mar 2019 | US |