IP Library Granted Patent US 10,996,938
Granted Patent B2
US 10,996,938 · App. 16/588,554 · Granted May 4, 2021

Automated selection of software images for network devices

Inventors: Rishabh Ramakant Tulsian (Livermore, CA); Jacopo Pianigiani (Cupertino, CA); Sridevi JeevaRaj (San Jose, CA); Sahana Sekhar Palagrahara Chandrashekar (San Jose, CA)
Assignee: Juniper Networks, Inc.
G06F8/63H04L41/20H04L41/24H04L67/16H04L67/34H04L67/12
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,996,938
App. No.
16/588,554
Granted
May 4, 2021
Kind
B2
Abstract

A data center network can include numerous switches, routers and servers to deliver services to customers. The network devices in the data center may be automatically discovered through various discovery workflows. Once discovered, hardware configuration information for the network devices may be stored in a database. Additionally, an administrator may assign roles to the network devices. The hardware configuration information may be matched with features provided by software images. A server may select a software image from a variety of candidate software images by matching the features provided by the software images and the hardware supported by the software images to the hardware configurations and roles of the network devices. Thus, new network devices may be deployed and provisioned to data center in a standardized and automated way. Further, existing network devices may be upgraded or reconfigured in a standardized and automated way.

Claims (62)

1. A method comprising:

obtaining, by a fabric management server, hardware capability information for a network device communicatively coupled to an IP fabric;

obtaining, by the fabric management server, software capability information for each software image of a plurality of software images, the software capability information specifying a plurality of functional features provided by the software image;

identifying, based on the hardware capability information for the network device and the software capability information, the software image of the plurality of software images to be installed on the network device; and

causing a server storing the identified software image to install the identified software image on the network device.

2. The method of claim 1 ,

wherein the identifying comprises determining the software image that supports all of the network device hardware capabilities for the network device.

3. The method of claim 1 ,

wherein the plurality of software images are for a single operating system version.

4. The method of claim 1 , wherein the network device comprises a physical server, and wherein obtaining, by the fabric management server, hardware capability information for the physical server comprises:

discovering the physical server; and

receiving, by the fabric management server from the physical server, at least a portion of the hardware capability information.

5. The method of claim 1 ,

wherein the hardware capability information comprises a hardware capability matrix and the software configuration information comprises a software capability matrix; and

wherein identifying the software image comprises:

comparing the hardware capability matrix with each respective software capability matrix of the plurality of software images, and

selecting the identified software image based on the comparison.

6. The method of claim 5 , wherein selecting the identified software image based on the comparison comprises selecting the identified software image based on a best-fit comparison.

7. The method of claim 1 ,

wherein the hardware capability information comprises a hardware capability graph and the software configuration information comprises a software capability graph; and

wherein identifying the software image comprises:

performing graph searching on the software capability graph with respect to features in the hardware capability graph, and

selecting the identified software image based on an output of the graph searching.

8. The method of claim 1 , further comprising:

receiving one or more role assignments for the network device;

wherein identifying the software image comprises identifying the software image based, at least in part, on the one or more role assignments associated with the network device.

9. A system comprising:

a network device communicatively coupled to an IP fabric; and

one or more first processors and a first memory configured to implement a fabric management server configured to:

obtain hardware capability information for the network device,

obtain software capability information for each software image of a plurality of software images, the software capability information specifying a plurality of functional features provided by the software image,

identify, based on the hardware capability information for the network device and the software capability information, the software image of the plurality of software images to be installed on the network device; and

one or more second processors and a second memory configured to implement a provisioning server storing the identified software image, wherein the fabric management server is further configured to cause the provisioning server to install the identified software image on the network device.

10. The system of claim 9 ,

wherein the fabric management server is configured to identify the software image that supports all of the network device hardware capabilities for the network device.

11. The system of claim 9 ,

wherein the plurality of software images are for a single operating system version.

12. The system of claim 9 ,

wherein the one or more first processors are the same processors as the one or more second processors.

13. The system of claim 9 , wherein the network device comprises a physical server, and wherein the fabric management server is configured to:

discover the physical server; and

receive, from the physical server, at least a portion of the hardware capability information.

14. The system of claim 9 ,

wherein the hardware capability information comprises a hardware capability matrix and the software configuration information comprises a software capability matrix; and

wherein the fabric management server is configured to:

compare the hardware capability matrix with each respective software capability matrix of the plurality of software images, and

select the identified software image based on the comparison.

15. The system of claim 9 , wherein the fabric management server is further configured to:

receive one or more role assignments for the network device; and

identify the software image based, at least in part, on the one or more role assignments associated with the network device.

16. The system of claim 9 , wherein the network device comprises an IP fabric switch.

17. A non-transitory computer-readable medium comprising instructions for causing one or more programmable processors to:

obtain hardware capability information for the network device;

obtain software capability information for each software image of a plurality of software images, the software capability information specifying a plurality of functional features provided by the software image;

identify, based on the hardware capability information for the network device and the software capability information, the software image of the plurality of software images to be installed on the network device; and

cause a server storing the identified software image to install the identified software image on the network device.

18. The non-transitory computer-readable medium of claim 17 , wherein the instructions further comprise instructions to cause the one or more programmable processors to:

receive one or more role assignments for the network device; and

identify the software image based, at least in part, on the one or more role assignments associated with the network device.

19. The non-transitory computer-readable medium of claim 17 , wherein the hardware capability information comprises a hardware capability matrix and the software configuration information comprises a software capability matrix, and wherein the instructions further comprise instructions to cause the one or more programmable processors to:

compare the hardware capability matrix with each respective software capability matrix of the plurality of software images, and

select the identified software image based on the comparison.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2019
From: TULSIAN, RISHABH RAMAKANT
To: JUNIPER NETWORKS, INC.
Reel/Frame 050870/0513 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2019
From: PIANIGIANI, JACOPO; JEEVARAJ, SRIDEVI; CHANDRASHEKAR, SAHANA SEKHAR PALAGRAHARA
To: JUNIPER NETWORKS, INC.
Reel/Frame 050569/0962 →
Continuity (2)
Provisional Application 62874387 · Jul 15, 2019
Related Publication 20210019131A1 · Jan 21, 2021