IP Library › Granted Patent US 10,237,079
Granted Patent B2
US 10,237,079 · App. 15/479,738 · Granted Mar 19, 2019

Intelligent network sleep proxy for low power sleeping devices

Inventors: Selvaraj Mani (Milpitas, CA); Swapna Yelamanchi (Fremont, CA); Amarender Musku (Santa Clara, CA); Rakesh Reddy Kandula (Bengaluru, IN); Deep Preet Singh (San Jose, CA); Shwetha Subray Bhandari (Bangalore, IN); Shrirang Arvind Bage (Fremont, CA)
Assignee: Cisco Technology, Inc.
H04L12/12H04L61/1511H04L67/28H04L67/2814
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,237,079
App. No.
15/479,738
Granted
Mar 19, 2019
Kind
B2
Abstract

In one embodiment, a sleep proxy device identifies one or more services offered by a first node in the network. The sleep proxy device announces the one or more identified services to a second node in the network on behalf of the first node. The sleep proxy device intercepts an attempt by the second node to use the one or more services offered by the first node. The sleep proxy device causes the first node to switch from a low power state to an awake state, based on the intercepted attempt.

Claims (53)

1. A method comprising:

identifying, by a sleep proxy device in a network, one or more services offered by a first node in the network by:

receiving, at the sleep proxy device, data regarding traffic associated with the first node, and

using, by the sleep proxy device, the data regarding the traffic associated with the first node to identify the one or more services offered by the first node;

announcing, by the sleep proxy device, the one or more identified services to a second node in the network on behalf of the first node;

intercepting, by the sleep proxy device, an attempt by the second node to use the one or more services offered by the first node; and

causing, by the sleep proxy device, the first node to switch from a low power state to an awake state, based on the intercepted attempt.

2. The method as in claim 1 , further comprising:

relaying, by the sleep proxy device, traffic between the first and second nodes, after causing the first node to switch from the low power state to the awake state.

3. The method as in claim 1 , wherein identifying the one or more services offered by the first node in the network comprises:

receiving, at the sleep proxy device, a profile for the first node from an authentication, authorization, and accounting (AAA) server that comprises data indicative of the one or more services offered by the first node in the network.

4. The method as in claim 1 , wherein identifying the one or more services offered by the first node in the network comprises:

receiving, at the sleep proxy device, authentication data from the first node; and

using, by the sleep proxy device, the authentication data to identify the one or more services offered by the first node.

5. The method as in claim 1 , wherein the data regarding the traffic associated with the first node comprises at least one of: port information regarding the first node or a device type associated with the first node.

6. The method as in claim 1 , wherein announcing the one or more identified services to the second node in the network on behalf of the first node comprises:

sending, by the sleep proxy device, a multicast Domain Name System (mDNS) message to the second node indicative of the one or more services offered by the first node in the network.

7. The method as in claim 1 , wherein announcing the one or more identified services to the second node in the network on behalf of the first node comprises:

receiving, at the sleep proxy device, a service discovery request from the second node; and

sending, by the sleep proxy device, a response to the service discovery request to the second node indicative of the one or more services offered by the first node in the network.

8. The method as in claim 1 , wherein the first node does not maintain a Domain Name System (DNS) client, multicast DNS (mDNS) client, or Internet Protocol (IP) stack.

9. An apparatus, comprising:

one or more network interfaces to communicate with a network;

a processor coupled to the network interfaces and configured to execute one or more processes; and

a memory configured to store a process executable by the processor, the process when executed operable to:

identify one or more services offered by a first node in the network; by

receiving data regarding traffic associated with the first node; and

using the data regarding the traffic associated with the first node to identify the one or more services offered by the first node;

announce the one or more identified services to a second node in the network on behalf of the first node;

intercept an attempt by the second node to use the one or more services offered by the first node; and

cause the first node to switch from a low power state to an awake state, based on the intercepted attempt.

10. The apparatus as in claim 9 , wherein the process when executed is further operable to:

relay traffic between the first and second nodes, after causing the first node to switch from the low power state to the awake state.

11. The apparatus as in claim 9 , wherein the apparatus identifies the one or more services offered by the first node in the network by:

receiving a profile for the first node from an authentication, authorization, and accounting (AAA) server that comprises data indicative of the one or more services offered by the first node in the network.

12. The apparatus as in claim 9 , wherein the apparatus identifies the one or more services offered by the first node in the network by:

receiving authentication data from the first node; and

using the authentication data to identify the one or more services offered by the first node.

13. The apparatus as in claim 9 , wherein the data regarding the traffic associated with the first node comprises at least one of: port information regarding the first node or a device type associated with the first node.

14. The apparatus as in claim 9 , wherein the apparatus announces the one or more identified services to the second node in the network on behalf of the first node by:

sending a multicast Domain Name System (mDNS) message to the second node indicative of the one or more services offered by the first node in the network.

15. The apparatus as in claim 9 , wherein the apparatus announces the one or more identified services to the second node in the network on behalf of the first node by:

receiving a service discovery request from the second node; and

sending a response to the service discovery request to the second node indicative of the one or more services offered by the first node in the network.

16. The apparatus as in claim 9 , wherein the first node does not maintain a Domain Name System (DNS) client, multicast DNS (mDNS) client, or Internet Protocol (IP) stack.

17. A tangible, non-transitory, computer-readable medium storing program instructions that cause a sleep proxy device in a network to execute a process comprising:

identifying, by the sleep proxy device, one or more services offered by a first node in the network by:

receiving, at the sleep proxy device, data regarding traffic associated with the first node, and

using, by the sleep proxy device, the data regarding the traffic associated with the first node to identify the one or more services offered by the first node;

announcing, by the sleep proxy device, the one or more identified services to a second node in the network on behalf of the first node;

intercepting, by the sleep proxy device, an attempt by the second node to use the one or more services offered by the first node; and

causing, by the sleep proxy device, the first node to switch from a low power state to an awake state, based on the intercepted attempt.

18. The computer-readable medium as in claim 17 , wherein the first node does not maintain a Domain Name System (DNS) client, multicast DNS (mDNS) client, or Internet Protocol (IP) stack.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2017
From: MANI, SELVARAJ; YELAMANCHI, SWAPNA; MUSKU, AMARENDER R.; KANDULA, RAKESH REDDY; SINGH, DEEP PREET; BHANDARI, SHWETHA SUBRAY; BAGE, SHRIRANG ARVIND
To: CISCO TECHNOLOGY, INC.
Reel/Frame 042497/0662 →
Continuity (1)
Related Publication 20180294983A1 · Oct 11, 2018