US9270761B1ActiveUtility

Device control profile for a fabric network

96
Assignee: GOOGLE INCPriority: Oct 8, 2014Filed: Jan 8, 2015Granted: Feb 23, 2016
Est. expiryOct 8, 2034(~8.2 yrs left)· nominal 20-yr term from priority
H04L 12/281H04L 12/283H04L 12/2818G05B 2219/2642H04L 63/0823H04L 41/0816G08B 17/10H04L 67/12H04L 67/143H04W 4/80H04L 41/0806F24F 11/62H04L 12/2803H04L 69/28H04L 12/2823G08B 25/001G08B 29/02H04L 43/0805H04L 67/10H04L 67/303H04L 67/141G05B 19/042H04L 67/06F24F 11/30G05B 15/02H04W 12/04G06F 16/33G06F 16/38H04L 67/02H04L 45/74H04L 63/08F24F 11/63F24F 11/58H04L 45/02H04L 65/1069G06F 8/65H04L 67/025H04W 84/12H04W 12/06H04L 69/16H04L 63/0876H04L 67/04H04L 12/2809H04L 67/53H04L 41/0886H04L 69/40H04W 12/50H04L 61/4511H04L 61/4541H04L 67/55
96
PatentIndex Score
37
Cited by
46
References
20
Claims

Abstract

Methods and systems for controlling a remote device that includes receiving, at an assisting device, a remote passive rendezvous request from a commissioning device. The commissioning device manages access to a fabric on which the assisting device resides, and the assisting device is configured to assist a joining device in joining the network. Moreover, the assisting device passively waits to rendezvous with the joining device remotely through its network interface. The remote passive rendezvous request includes a rendezvous timeout field that indicates how long a remote passive rendezvous attempt may remain open before the assisting device is to close the attempt. Furthermore, the remote passive rendezvous request includes a filter address that indicates a device to which device is to serve as the joining device.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A non-transitory, computer-readable medium having stored thereon instructions for remotely passively rendezvousing with a device joining a network, wherein the instructions are configured to cause a processor to:
 receive, at an assisting device, a remote passive rendezvous request from a commissioning device, wherein the commissioning device manages access to a fabric on which the assisting device resides, and the assisting device is configured to assist a joining device that is remote from the commissioning device in joining the network, and, in response to receiving the remote passive rendezvous request, the assisting device passively waits for a connection from the joining device through a network interface, the passive waiting including enabling the network interface of the assisting device to receive a connection from the joining device for the purpose of facilitating a communication tunnel between the commissioning device and the joining device, and wherein the remote passive rendezvous request comprises:
 a rendezvous timeout field that indicates how long the network interface of the assisting device is to be enabled to receive the connection from the joining device; and 
 a filter address that identifies the joining device for which the assisting device is to communicate with via the communication tunnel. 
 
 
     
     
       2. The non-transitory, computer-readable medium of  claim 1 , wherein the remote passive rendezvous request comprises an inactivity timeout field that indicates a period of time of inactivity after which the assisting device is to disable the network interface of the assisting device to receive the connection from the joining device as having been inactive for an impermissible amount of time. 
     
     
       3. The non-transitory, computer-readable medium of  claim 2 , wherein the instructions are configured to cause the processor to:
 terminate the remote passive rendezvous request if a period of inactivity exceeds the permissible period of time for inactivity indicated in the remote passive rendezvous request; and 
 send an indication of termination of the remote passive rendezvous request to the commissioning device. 
 
     
     
       4. The non-transitory, computer-readable medium of  claim 2 , wherein:
 the rendezvous timeout field comprises an allocation of 2 bytes of data; 
 the inactivity timeout field comprises an allocation of 2 bytes of data; and 
 the filter mode identifier comprises an allocation of 8 bytes of data. 
 
     
     
       5. The non-transitory, computer-readable medium of  claim 1 , wherein the instructions are configured to cause the processor to:
 terminate the remote passive rendezvous request if the remote passive rendezvous request beyond an amount of time indicated in the rendezvous timeout field of the remote passive rendezvous request; and 
 send an indication of termination of the remote passive rendezvous attempt to the commissioning device. 
 
     
     
       6. The non-transitory, computer-readable medium of  claim 1 , wherein the filter address comprises a media access control address for the joining device, and wherein the instructions are configured to cause the processor to deny a rendezvous with a device attempting to rendezvous with the assisting device with a media access control address that does not match the filter address. 
     
     
       7. The non-transitory, computer-readable medium of  claim 1 , wherein the instructions are configured to cause the processor to:
 respond to the remote passive rendezvous request with a status report; 
 establish a transmission control protocol connection with the joining device via an unsecure port; and 
 send an indication to the commissioning device that the transmission control protocol connection with the joining device has been established. 
 
     
     
       8. The non-transitory, computer-readable medium of  claim 7 , wherein the instructions are configured to cause the processor to:
 receive data from the commissioning device intended for the joining device; 
 forward the data from the commissioning device to the joining device via the TCP connection; 
 receive data from the joining device via the TCP connection intended for the commissioning device; and 
 forward the data from the joining device to the commissioning device. 
 
     
     
       9. A method for remotely passively rendezvousing with a device joining a network, comprising:
 receiving, at an assisting device, a remote passive rendezvous request from a commissioning device that is remote from the joining device, wherein the commissioning device manages access to a fabric on which the assisting device resides, and, in response to receiving the remote passive rendezvous request, the assisting device passively waits for a connection from the joining device through a network interface, the passive waiting including enabling the network interface of the assisting device to receive a connection from the joining device for the purpose of facilitating a communication tunnel between the commissioning device and the joining device, and wherein the remote passive rendezvous request comprises:
 a rendezvous timeout field that indicates how long the network interface of the assisting device is to be enabled to receive the connection from the joining device; and 
 a filter address that identifies the joining device for which the assisting device is to communicate with via the communication tunnel. 
 
 
     
     
       10. The method of  claim 9 , comprising receiving, at the network interface from a remote device, a reset configuration request, wherein the reset configuration request comprises a request to reset configuration data stored relating to a fabric, a local area network, or service to which the network interface connects, wherein resetting configuration data comprises deleting credentials and identifiers for the fabric, the local area network, or the service. 
     
     
       11. The method of  claim 10 , wherein the reset configuration request comprises:
 a service flag that indicates whether service configuration data should be reset; 
 a local area network flag that indicates whether service configuration data for the local area network should be reset; and 
 a fabric flag that indicates whether the fabric configuration data should be reset, wherein the reset configuration request comprises a data allocation of 2 bytes. 
 
     
     
       12. The method of  claim 10 , comprising receiving an arm failsafe request having an arm mode field that indicates a failsafe mode type for a failsafe that is to be used to indicate a type of failsafe mode to be armed for a fabric provisioning attempt, wherein the failsafe mode type comprises:
 a new arm mode, wherein the new arm mode sets a new failsafe; 
 a reset arm mode, wherein the reset arm mode resets a timer for an existing failsafe and continues the arm; and 
 a resume existing arm mode, wherein the resume existing arm mode starts the existing failsafe where it has previously halted. 
 
     
     
       13. The method of  claim 12 , wherein the arm mode field is allocated 1 byte of data, wherein:
 a value of 0x01 indicates that the arm mode type is the new arm mode; 
 a value of 0x02 indicates that the arm mode type is the reset arm mode; and 
 a value of 0x03 indicates that the arm mode type is the resume existing arm mode. 
 
     
     
       14. The method of  claim 12 , wherein the arm failsafe request comprises a failsafe token that is configured to identify the arm failsafe request and enable validation of the arm failsafe request, wherein the failsafe token comprises a 4-byte arbitrary value that is generated uniquely for each arm failsafe request and configured to uniquely identify the arm failsafe request as corresponding to the remote passive rendezvous request. 
     
     
       15. An electronic device, comprising:
 a network interface; 
 memory; and 
 a processor, wherein the processor is configured to:
 receive, via the network interface, a remote passive rendezvous request from a commissioning device, wherein the commissioning device manages access to a fabric on which the assisting device resides, and the assisting device is configured to assist a joining device that is remote from the assisting device in joining the network, and, in response to receiving the remote passive rendezvous request, the assisting device passively waits for a connection from the joining device remotely through a network interface, the passive waiting including enabling the network interface of the assisting device to receive a connection from the joining device for the purpose of facilitating a communication tunnel between the commissioning device and the joining device, and wherein the remote passive rendezvous request comprises:
 a rendezvous timeout field that indicates how long the network interface of the assisting device is to be enabled to receive the connection from the joining device; and 
 a filter address that identifies the joining device for which the assisting device is to communicate with via the communication tunnel. 
 
 
 
     
     
       16. The electronic device of  claim 15 , wherein the processor is configured to:
 receive, via the network interface, an enable connection monitor request that is configured to enable a fabric echo-based connection liveness monitor on a transmission control protocol or uniform datagram protocol connection monitoring between the commissioning device and the assisting device; and 
 send, via the network interface, a status report indicating whether the connection monitor has successfully been enabled. 
 
     
     
       17. The electronic device of  claim 16 , wherein the enable connection monitor request comprises:
 a connection monitor timeout field that indicates how long a connection monitor can remain idle before the connection monitor is terminated; and 
 a connection monitor interval field that indicates how frequently an update is sent to commissioning device. 
 
     
     
       18. The electronic device of  claim 17 , wherein the connection monitor field is allocated 2 bytes of data, and the connection monitor interval field is allocated 2 bytes of data, and wherein the processor is configured to:
 receive, via the network interface, an echo request with an exchange identifier; and 
 send, via the network interface, an echo response with the exchange identifier, wherein the exchange identifier is configured to indicate that the echo response corresponds to the echo request. 
 
     
     
       19. The electronic device of  claim 15 , wherein the processor is configured to:
 send, via the network interface, a disable connection monitor to terminate the connection monitor; and 
 receive, via the network interface, a status report indicating whether the commissioning device has received the disable connection monitor and disabled the connection monitor. 
 
     
     
       20. The electronic device of  claim 16 , wherein the processor is configured to receive, via the network interface, a reset configuration request, wherein the reset configuration request comprises a request to reset configuration data stored relating to a fabric, a local area network, or service to which the network interface connects, wherein resetting configuration data comprises deleting credentials and identifiers for the fabric, the local area network, or the service.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.