# US 2021/0084591 A1 · Parent device shadow execution for a sleeping low power and lossy network child network device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0084591 A1
- Document ID: US20210084591A1
- Status: Published application
- Kind: A1
- Application number: 16/574,295
- Filed: 2019-09-18
- Published: 2021-03-18
- Earliest claimed: 2019-09-18
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: LELE ZHANG; LING WEI; XI WU; TONGLIN YUAN
- Web page: https://patentgrep.com/patent/US20210084591A1

## CPC

- H04W 52/0235: {where the received signal is a power saving command}
- H04W 8/005: {Discovery of network devices, e.g. terminals}
- H04W 40/246: {Connectivity information discovery}
- H04W 40/248: {Connectivity information update}
- H04W 84/18: Self-organising networks, e.g. ad-hoc networks or sensor networks
- Y02D 30/70: in wireless communication networks
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

In one embodiment, a method comprises: generating and storing, by a parent device in a low power lossy network (LLN), first state variables associated with a first execution state of an attached child during an active state of the child; determining a request, received by the parent device, is destined for the child and specifying a second execution state to be executed by the child; selectively updating, by the parent device, the first state variables with second state variables associated with the second execution state identifying an updated execution state for the child; detecting, by the parent device, that the child has transitioned from a sleep state to a second active state, and in response generating an instruction based on the second state variables; and transmitting the instruction to the child during the second active state, causing the child to execute the second execution state.

## Claims

### Claim 1

A method comprising:
generating and storing, by a parent network device in a low power lossy network (LLN), first state variables associated with a first execution state of an attached child LLN device during an active state of the attached child LLN device;
determining a request, received by the parent network device via the LLN, is destined for the attached child LLN device and specifying a second execution state to be executed by the attached child LLN device;
selectively updating, by the parent network device, the first state variables with second state variables associated with the second execution state in response to determining the second execution state identifies an updated execution state for the attached child LLN device;
detecting, by the parent network device, that the attached child LLN device has transitioned from a sleep state to a second active state, and in response generating an instruction based on the second state variables; and
transmitting the instruction to the attached child LLN device during the second active state, causing the attached child LLN device to execute the second execution state.

### Claim 2 (depends on 1)

The method of claim 1, wherein the second state variables include a pending transition to the second execution state while the attached child LLN device is in the sleep state.

### Claim 3 (depends on 1)

The method of claim 1, wherein the generating of the first state variables is based on receiving, from the attached child LLN device during the active state, a data packet acknowledging the first execution state.

### Claim 4 (depends on 1)

The method of claim 1, further comprising receiving, from the attached child LLN device, a data packet specifying a device type as one of a constrained device or a non-constrained device, wherein the generating of the first state variables is based on determining from the device type that the child LLN device is a constrained device.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
receiving, from a second attached child LLN device, a corresponding data packet specifying the corresponding device type as a non-constrained device;
storing, in a neighbor table of the parent network device, a first entry that the attached child LLN device is a constrained device and a second entry that the second attached child LLN device is a non-constrained device;
receiving, by the parent network device, a second request destined for the second attached child LLN device; and
forwarding the second request to the second attached child LLN device, without storing any corresponding state variables associated with the second attached child LLN device, based on the second attached child LLN device identified as a non-constrained device.

### Claim 6 (depends on 1)

The method of claim 1, wherein the first state variables and second state variables are stored in the parent network device as type-length-value entries, the generating including inserting selected type-length-value entries from the second state variables into the instruction for transmission according to a constrained application protocol.

### Claim 7 (depends on 1)

The method of claim 1, further comprising receiving, from the attached child LLN device before the sleep state, a schedule identifying when the attached child LLN device transitions from the sleep state to the second active state, the detecting based on the parent network device accessing the schedule for the attached child LLN device.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
deleting any state variables associated with the attached child LLN device in response to detecting the attached LLN device detaching from the parent network device as a detached LLN device;
receiving a second request for the detached LLN device; and
forwarding the second request to a neighboring network device for selective updating of associated state variables for the detached LLN device by the neighboring network device.

### Claim 9

An apparatus implemented as a physical machine, the apparatus comprising:
non-transitory machine readable media configured for storing executable machine readable code;
a device interface circuit configured for receiving a request via low power and lossy network (LLN); and
a processor circuit configured for executing the machine readable code, and when executing the machine readable code operable for:
generating and storing in the non-transitory machine readable media, by the apparatus implemented as a parent network device in the LLN, first state variables associated with a first execution state of an attached child LLN device during an active state of the attached child LLN device;
determining the request is destined for the attached child LLN device and specifying a second execution state to be executed by the attached child LLN device;
selectively updating, by the parent network device, the first state variables with second state variables associated with the second execution state in response to determining the second execution state identifies an updated execution state for the attached child LLN device;
detecting, by the parent network device, that the attached child LLN device has transitioned from a sleep state to a second active state, and in response generating an instruction based on the second state variables; and
transmitting the instruction to the attached child LLN device during the second active state, causing the attached child LLN device to execute the second execution state.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the second state variables include a pending transition to the second execution state while the attached child LLN device is in the sleep state.

### Claim 11 (depends on 9)

The apparatus of claim 9, wherein the processor circuit is configured for generating the first state variables in response to receiving, from the attached child LLN device during the active state, a data packet acknowledging the first execution state.

### Claim 12 (depends on 9)

The apparatus of claim 9, wherein the device interface circuit is configured for receiving, from the attached child LLN device, a data packet specifying a device type as one of a constrained device or a non-constrained device, the processor circuit configured for generating the first state variables in response to determining from the device type that the child LLN device is a constrained device.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein:
the device interface circuit is configured for receiving, from a second attached child LLN device, a corresponding data packet specifying the corresponding device type as a non-constrained device;
the processor circuit is configured for storing in the non-transitory machine readable media, a first entry in a neighbor table and indicating that the attached child LLN device is a constrained device and a second entry that the second attached child LLN device is a non-constrained device;
the device interface circuit is configured for receiving a second request destined for the second attached child LLN device; and
the processor circuit is configured for causing the device interface circuit to forward the second request to the second attached child LLN device, without storage of any corresponding state variables associated with the second attached child LLN device, based on the processor circuit identifying the second attached child LLN device as a non-constrained device.

### Claim 14 (depends on 9)

The apparatus of claim 9, wherein the processor circuit is configured for storing the first state variables and second state variables as type-length-value entries, the processor circuit configured for inserting selected type-length-value entries from the second state variables into the instruction for transmission according to a constrained application protocol.

### Claim 15 (depends on 9)

The apparatus of claim 9, wherein:
the device interface circuit is configured for receiving, from the attached child LLN device before the sleep state, a schedule identifying when the attached child LLN device transitions from the sleep state to the second active state;
the processor circuit configured for detecting that the attached child LLN device has transitioned from the sleep state to the second active state based on accessing the schedule for the attached child LLN device.

### Claim 16 (depends on 9)

The apparatus of claim 9, wherein:
the processor circuit is configured for deleting any state variables associated with the attached child LLN device in response to detecting the attached LLN device detaching from the parent network device as a detached LLN device;
the device interface circuit is configured for receiving a second request for the detached LLN device; and
the processor circuit is configured for causing the device interface circuit to forward the second request to a neighboring network device for selective updating of associated state variables for the detached LLN device by the neighboring network device.

### Claim 17

One or more non-transitory tangible media encoded with logic for execution by a machine and when executed by the machine operable for:
generating and storing, by the machine implemented as a parent network device in a low power lossy network (LLN), first state variables associated with a first execution state of an attached child LLN device during an active state of the attached child LLN device;
determining a request, received by the parent network device via the LLN, is destined for the attached child LLN device and specifying a second execution state to be executed by the attached child LLN device;
selectively updating the first state variables with second state variables associated with the second execution state in response to determining the second execution state identifies an updated execution state for the attached child LLN device;
detecting that the attached child LLN device has transitioned from a sleep state to a second active state, and in response generating an instruction based on the second state variables; and
transmitting the instruction to the attached child LLN device during the second active state, causing the attached child LLN device to execute the second execution state.

### Claim 18 (depends on 17)

The one or more non-transitory tangible media of claim 17, further operable for receiving, from the attached child LLN device, a data packet specifying a device type as one of a constrained device or a non-constrained device, wherein the generating of the first state variables is based on determining from the device type that the child LLN device is a constrained device.

### Claim 19 (depends on 17)

The one or more non-transitory tangible media of claim 17, further operable for receiving, from the attached child LLN device before the sleep state, a schedule identifying when the attached child LLN device transitions from the sleep state to the second active state, the detecting based on the accessing the schedule for the attached child LLN device.

### Claim 20 (depends on 17)

The one or more non-transitory tangible media of claim 17, further operable for:
deleting any state variables associated with the attached child LLN device in response to detecting the attached LLN device detaching from the parent network device as a detached LLN device;
receiving a second request for the detached LLN device; and
forwarding the second request to a neighboring network device for selective updating of associated state variables for the detached LLN device by the neighboring network device.
