IP Library Granted Patent US 12,126,673
Granted Patent B1
US 12,126,673 · App. 18/217,332 · Granted Oct 22, 2024

Distributed software defined networking

Inventors: Pouya Taaghol (Menlo Park, CA); Vivek Ramanna (San Jose, CA)
Assignee: Edge Networking Systems, LLC
H04L67/10H04L41/0803H04L41/0893H04L41/0895H04L45/563H04L45/64H04L63/0227H04L67/1076H04L67/34H04W28/084G06F8/60G06F8/70H04L41/082H04L41/5019H04L63/0218H04W4/00
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 12,126,673
App. No.
18/217,332
Granted
Oct 22, 2024
Kind
B1
Abstract

The Distributed Software Defined Network (dSDN) disclosed herein is an end to-end architecture that enables secure and flexible programmability across a network with full lifecycle management of services and infrastructure applications (fxDeviceApp). The dSDN also harmonizes application deployment across the network independent of the hardware vendor. As a result, the dSDN simplifies the network deployment lifecycle from concept to design to implementation to decommissioning.

Claims (47)

1. A method comprising:

hosting a plurality of network device applications by a programmable network device;

hosting a plurality of cloud applications by a programmable cloud device, wherein the plurality of network device applications and the plurality of cloud applications are in secure communication with each other to form distributed applications; and

programming by a plurality of upper layer application programming interfaces (APIs) the plurality of network device applications and the plurality of cloud applications independent of network device hardware and cloud device hardware to form unified capabilities.

2. The method of claim 1 , further comprising:

sending and receiving communications by access network interface units included in each of the programmable network device and the programmable cloud device, and each of the programmable network device and the programmable cloud device has a processor with a memory associated with the access network interface units.

3. The method of claim 1 further comprising:

managing life cycles of the distributed applications by an application management portal; and

providing tested and certified distributed applications to the application management portal by an infrastructure application marketplace in communication with the application management portal.

4. The method of claim 1 further comprising at least one of the group consisting of:

receiving the distributed applications from an infrastructure application marketplace by an application management portal; testing the distributed applications prior to deployment by the application management portal; provisioning the distributed applications by the application management portal; and deprovisioning the distributed applications by the application management portal.

5. The method of claim 3 , further comprising:

controlling access to a plurality of resources by a distributed resource service (DRS) upon receiving instructions from the application management portal.

6. The method of claim 5 , wherein the plurality of resources include at least one of a group consisting of: a firewall; data and statistics; storage; a load evaluator; general settings; a routing engine; a virtual machine master controller; a power controller; and a wireless engine.

7. The method of claim 5 , further comprising:

monitoring loads on at least one of the plurality of network device applications and at least one of the plurality of cloud applications by a load controller included in the DRS; and

effecting change in accordance with thresholds received from the application management portal by the load controller.

8. The method of claim 3 further comprising:

sending notice of a predetermined event from at least one of the plurality of network device applications to at least one of the plurality of cloud applications by a distributed notification service.

9. The method of claim 1 , wherein at least one of the plurality of network device applications is responsible for a plurality of functional capabilities of the programmable network device and is capable of at least one of the group consisting of: updating firmware of the programmable network device; updating default communication protocols of the programmable network device; initializing programmable network device settings; boot loading the programmable network device; providing security digital certificates; providing operating system (OS) and kernel upgrades; and upgrading and commissioning agents for upgrading at least one of the plurality of network device applications and related procedures.

10. The method of claim 1 , wherein at least one of the plurality of cloud applications is responsible for a plurality of functional capabilities of the programmable cloud device and is capable of at least one of the group consisting of: upgrading and commissioning agents for updating at least one of the plurality of cloud applications; hypervisor upgrades; virtual machine and isolated execution environment lifecycle management; security digital certificate management; operating system (OS) and kernel upgrades; and default communication protocols.

11. The method of claim 1 , wherein the programmable network device is an LTE eNB and the programmable cloud device hosts LTE core network functions in separate virtual machines from at least one of the group consisting of: MME, S-GW, and P-GW.

12. The method of claim 1 , further comprising:

providing a secure communication layer for at least one of the plurality of network device applications and at least one of the plurality of cloud applications by a virtual fabric.

13. The method of claim 1 , further comprising:

communicating directly from at least one of the plurality of network device applications in the programmable network device with a same network device application in a second programmable network device.

14. The method of claim 1 , further comprising at least one service from a group consisting of: exposing application programming interfaces (APIs) to other applications;

configuring and managing platform resources; enforcing policies and authorizing the plurality of network device applications and the plurality of cloud applications to access platform resources;

and resolving policy conflicts by a distributed resource service.

15. The method of claim 1 further comprising:

sharing contents generated by the at least one of the plurality of network device applications with at least one of the plurality of cloud applications by a distributed content service.

16. The method of claim 1 , wherein the programmable network device, at least one of the plurality of network device applications, the programmable cloud device, and the at least one of the plurality of cloud applications each have unique identities.

17. The method of claim 1 further comprising:

giving an access level to at least one of the plurality of network device applications and at least one of the plurality of cloud applications to determine which APIs can be accessed.

18. The method of claim 1 further comprising:

verifying the authenticity and integrity of updates to the plurality of network device applications and the plurality of cloud applications by the at least one programmable network device and the programmable cloud device.

19. A method comprising:

hosting a plurality of network device applications by a programmable network device;

hosting a plurality of cloud applications by a programmable cloud device, wherein the plurality of network device applications and the plurality of cloud applications are in secure communication with each other to form distributed applications;

programming by a plurality of upper layer application programming interfaces (APIs) the plurality of network device applications and the plurality of cloud applications independent of network device hardware and cloud device hardware to form unified capabilities; and

managing life cycles of the plurality of network device applications and plurality of cloud applications by an application management portal.

20. A method comprising:

hosting a plurality of network device applications by a programmable network device;

hosting a plurality of cloud applications by a programmable cloud device, wherein the plurality of network device applications and the plurality of cloud applications are in secure communication with each other to form distributed applications;

programming by a plurality of upper layer application programming interfaces (APIs) the plurality of network device applications and the plurality of cloud applications independent of network device hardware and cloud device hardware to form unified capabilities;

managing life cycles of the plurality of network device applications and plurality of cloud applications by an application management portal; and

providing tested distributed applications to the application management portal by an infrastructure application marketplace in communication with the application management portal.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2023
From: TAAGHOL, POUYA
To: EDGE NETWORKING SYSTEMS, LLC
Reel/Frame 064133/0669 →
Continuity (5)
Continuation 17142983 · Jan 6, 2021
Continuation 16900963 · Jun 14, 2020
Continuation 15836824 · Dec 9, 2017
Continuation 14295331 · Jun 4, 2014
Provisional Application 61834807 · Jun 13, 2013