IP Library Granted Patent US 11,088,988
Granted Patent B2
US 11,088,988 · App. 16/329,753 · Granted Aug 10, 2021

Virtual-machine dataplane with DHCP-server functionality

Inventor: Wayne Chuu (Saratoga, CA)
Assignee: ARRIS Enterprises LLC
H04L61/2015H04L12/4641H04L47/2483H04L49/3063H04L61/256H04L61/6022H04L69/22H04L61/103
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 11,088,988
App. No.
16/329,753
Filed
Feb 28, 2019
Granted
Aug 10, 2021
Kind
B2
Art Unit
2412
USPC
370/392
Abstract

In order to provide efficient processing of Dynamic Host Control Protocol (DHCP) data flows and dynamic Internet Protocol (IP) address management, an electronic device that implements a virtual dataplane in a network may separate the DHCP data flows from other data flows. Then, the virtual dataplane may perform IP address management using one or more applications that are executed by a processor in the electronic device. In order to accelerate processing of a sequence of packets in a DHCP data flow to a destination, the virtual dataplane may look up a stored result of a look-up operation for a first packet in the sequence, so that subsequent packets in the sequence use the stored result without performing the look-up operation. Furthermore, the IP address management may include dynamically freeing up IP addresses in the network based on network activity of client devices.

Claims (40)

1. An electronic device that implements a virtual dataplane using one or more virtual machines, wherein a given virtual machine comprises an operating system or an application environment that is configured, using software, to emulate dedicated dataplane hardware or functionality of the dedicated dataplane hardware, comprising:

an interface circuit that is configured to communicate with one or more access points;

a memory that is configured to store program instructions; and

a processor, coupled to the interface circuit and the memory, that is configured to execute the program instructions, wherein, when executed by the processor, the program instructions cause the electronic device to provide a pipeline in the virtual dataplane, wherein the pipeline comprises:

a first stage that is configured to parse packets to identify packets associated with data flows, wherein the identification is based on types of packets comprising packets associated with a Dynamic Host Control Protocol (DHCP) data flow; and

a first path that is configured to process the packets associated with the DHCP data flow that are consumed in the virtual dataplane, wherein the processing comprises Internet Protocol (IP) address management by one or more applications executed by the processor and accessed via the first path,

wherein the IP address management comprises assigning IP addresses and avoiding collisions with existing IP addresses of client devices in a network, and

wherein the virtual dataplane processes the packets associated with the DHCP data flow without using an operating-system kernel to access a DHCP server.

2. The electronic device of claim 1 , wherein the pipeline further comprises a second path that processes the packets associated with other data flows that are consumed external to the virtual dataplane; and

wherein the processing in the second path occurs with a fixed time delay.

3. The electronic device of claim 2 , wherein the processing of the packets associated with the other data flows in the second path is faster than the processing of the packets associated with the DHCP data flow in the first path.

4. The electronic device of claim 2 , wherein the processing in the first path and in the second path occur concurrently.

5. The electronic device of claim 1 , wherein the packets associated with other data flows that are identified by the first stage are subsequently dropped in the virtual dataplane.

6. The electronic device of claim 1 , wherein the IP address management comprises dynamically freeing up IP addresses in the network based on network activity of the client devices.

7. The electronic device of claim 1 , wherein the IP address management comprises: receiving an IP request associated with a client device; determining, based on a media access control (MAC) address of the client device, whether an IP address is already assigned to the client device or whether the assigned IP address has exceeded a lease time; if not, assigning a new IP address to the client device; and avoiding collisions in the network by reassigning a different IP address to another client device in the network.

8. The electronic device of claim 7 , wherein determining whether the IP address is already assigned to the client device or whether the assigned IP address has exceeded the lease time comprises a look-up operation using a hash table.

9. The electronic device of claim 8 , wherein processing of a sequence of packets associated with the DHCP data flow to a particular destination is accelerated by storing a result of the look-up operation performed for a first packet in the sequence so that subsequent packets in the sequence use the stored result without performing the look-up operation.

10. The electronic device of claim 1 , wherein the one or more applications perform Network Address Translation (NAT).

11. A non-transitory computer-readable storage medium for use in conjunction with an electronic device that implements a virtual dataplane using one or more virtual machines, wherein a given virtual machine comprises an operating system or an application environment that uses software to emulate dedicated dataplane hardware or functionality of the dedicated dataplane hardware, the computer-readable storage medium storing program instructions, wherein, when executed by the electronic device, the program instructions cause the electronic device to process packets in the virtual dataplane by performing operations comprising:

providing a pipeline in the virtual dataplane, wherein providing the pipeline comprises:

parsing, in a first stage, the packets to identify packets associated with data flows, wherein the identification is based on types of packets comprising packets associated with a Dynamic Host Control Protocol (DHCP) data flow; and

processing, in a first path, the packets associated with the DHCP data flow that are consumed in the virtual dataplane, wherein the processing comprises Internet Protocol (IP) address management by one or more applications executed by a processor in the electronic device and accessed via the first path,

wherein the IP address management comprises assigning IP addresses and avoiding collisions with existing IP addresses of client devices in a network, and

wherein the virtual dataplane processes the packets associated with the DHCP data flow without using an operating-system kernel to access a DHCP server.

12. The computer-program product of claim 11 , wherein the operations further comprise processing, in a second path, the packets associated with other data flows that are consumed external to the virtual dataplane; and

wherein the processing in the second path occurs with a fixed time delay.

13. The computer-program product of claim 11 , wherein the packets associated with other data flows that are identified by the first stage are subsequently dropped in the virtual dataplane.

14. The computer-program product of claim 11 , wherein the IP address management comprises dynamically freeing up IP addresses in the network based on network activity of the client devices.

15. The computer-program product of claim 11 , wherein the IP address management comprises: receiving an IP request associated with a client device;

determining, based on a media access control (MAC) address of the client device, whether an IP address is already assigned to the client device or whether the assigned IP address has exceeded a lease time; if not, assigning a new IP address to the client device; and avoiding collisions in the network by reassigning a different IP address to another client device in the network.

16. The computer-program product of claim 15 , wherein determining whether the IP address is already assigned to the client device or whether the assigned IP address has exceeded the lease time comprises a look-up operation using a hash table.

17. The computer-program product of claim 16 , wherein processing of a sequence of packets associated with the DHCP data flow to a particular destination is accelerated by storing a result of the look-up operation performed for a first packet in the sequence so that subsequent packets in the sequence use the stored result without performing the look-up operation.

18. A method for processing packets in an electronic device that implements a virtual dataplane using one or more virtual machines, wherein a given virtual machine comprises an operating system or an application environment that is configured, using software, to emulate dedicated dataplane hardware or functionality of the dedicated dataplane hardware, the method comprising:

parsing, in a first stage in a pipeline in the virtual dataplane, packets to identify packets associated with data flows, wherein the identification is based on types of packets comprising packets associated with a Dynamic Host Control Protocol (DHCP) data flow; and

processing, in a first path in a pipeline in the virtual dataplane, the packets associated with the DHCP data flow that are consumed in the virtual dataplane, wherein the processing comprises Internet Protocol (IP) address management by one or more applications executed by a processor in the electronic device and accessed via the first path,

wherein the IP address management comprises assigning IP addresses and avoiding collisions with existing IP addresses of client devices in a network, and

wherein the virtual dataplane processes the packets associated with the DHCP data flow without using an operating-system kernel to access a DHCP server.

19. The method of claim 18 , wherein the pipeline further comprises a second path that processes the packets associated with other data flows that are consumed external to the virtual dataplane; and

wherein the processing in the second path occurs with a fixed time delay.

20. The method of claim 18 , wherein the IP address management comprises dynamically freeing up IP addresses in the network based on network activity of the client devices.

Assignments (12)
PARTIAL TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 2, 2026
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: RUCKUS IP HOLDINGS LLC
Reel/Frame 075892/0107 →
SECURITY INTEREST Recorded Apr 8, 2026
From: ARRIS ENTERPRISES LLC; RUCKUS IP HOLDINGS LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 075476/0814 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 059350/0743 Recorded Jan 12, 2026
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE NORTH CAROLINA, LLC (F/K/A COMMSCOPE, INC. OF NORTH CAROLINA)
Reel/Frame 074594/0156 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 59710/0506 Recorded Jan 9, 2026
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE NORTH CAROLINA, LLC (F/K/A COMMSCOPE, INC. OF NORTH CAROLINA)
Reel/Frame 074282/0522 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 059350/0921 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC
Reel/Frame 069743/0704 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2024
From: ARRIS ENTERPRISES LLC
To: RUCKUS IP HOLDINGS LLC
Reel/Frame 066399/0561 →
SECURITY INTEREST Recorded Mar 9, 2022
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA
To: WILMINGTON TRUST
Reel/Frame 059710/0506 →
ABL SECURITY AGREEMENT Recorded Mar 8, 2022
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 059350/0743 →
TERM LOAN SECURITY AGREEMENT Recorded Mar 8, 2022
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 059350/0921 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2019
From: CHUU, WAYNE
To: ARRIS ENTERPRISES LLC
Reel/Frame 049873/0458 →
Continuity (1)
Related Publication 20190238501A1 · Aug 1, 2019
Cited By (2)
US 12,323,301 US 12,457,276