# US 2014/0156983 A1 · Stateless Flexible Boot Control

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

- Number: US 2014/0156983 A1
- Document ID: US20140156983A1
- Status: Published application
- Kind: A1
- Application number: 13/705,403
- Filed: 2012-12-05
- Published: 2014-06-05
- Earliest claimed: 2012-12-05
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Venkatramani SriSai Ganesh; Gururaja A. Nittur; Raghu Krishnamurthy; Kumar Sidhartha
- Web page: https://patentgrep.com/patent/US20140156983A1

## CPC

- G06F 9/4416: {Network booting; Remote initial program loading [RIPL]}
- G06F 9/4408: {Boot device selection}
- G06F 9/441: {Multiboot arrangements, i.e. selecting an operating system to be loaded}
- H04L 41/0894: Policy-based network configuration management
- H04L 61/5014: using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Techniques are provided herein for optimizing boot order for devices in a data center environment. These techniques may be embodied as a method, apparatus and instructions in a computer-readable storage media to perform the method. A computing apparatus having connectivity to a network receives instructions from a management device in the network. The instructions comprise attributes that are associated with boot devices hosted by the computing apparatus. The attributes are analyzed to determine a priority order for the boot devices. One or more boot devices hosted by the computing apparatus is removed from an initialization process when the one or more boot devices do not match the attributes in the instructions. The remaining boot devices, other than the one or more boot device removed from the initialization process, are initialized in accordance with the priority order.

## Claims

### Claim 1

A method comprising:
at a computing apparatus having connectivity to a network, receiving instructions from a management device in the network, wherein the instructions comprise attributes associated with boot devices hosted by the computing apparatus;
analyzing the attributes in the instructions to determine a priority order for the boot devices;
removing one or more boot devices hosted by the computing apparatus from an initialization process when the one or more boot devices do not match the attributes in the instructions; and
initializing remaining boot devices other than the one or more boot devices removed from the initialization process such that the remaining boot devices are initialized in accordance with the priority order.

### Claim 2 (depends on 1)

The method of claim 1, wherein receiving comprises receiving the instructions in the form of a data structure that indicates the priority order for particular device types.

### Claim 3 (depends on 2)

The method of claim 2, wherein initializing comprises:
selecting a first one of the remaining boot devices that belongs to a first device type that has a first priority in the priority order;
instructing the first one of the remaining boot devices to initialize;
selecting a second one of the remaining boot devices that belongs to a second device type that has a second priority in the boot order; and
instructing the second one of the remaining boot devices to initialize.

### Claim 4 (depends on 1)

The method of claim 1, further comprising loading an operating system of a processor of the computing apparatus using one or more of the initialized boot devices.

### Claim 5 (depends on 4)

The method of claim 4, further comprising terminating the initialization of other boot devices when the operating system has been loaded.

### Claim 6 (depends on 1)

The method of claim 1, wherein receiving comprises receiving the instructions having boot connection vector (BCV) attributes or bootstrap entry vector (BEV) attributes associated with the boot devices hosted by the computing apparatus.

### Claim 7 (depends on 6)

The method of claim 6, further comprising analyzing the BCV attributes or the BEV attributes to determine the priority for initializing the boot devices.

### Claim 8

An apparatus comprising:
a network interface unit;
a memory; and
a processor coupled to the network interface unit and the memory, and configured to:
receive instructions from a management device in a network, wherein the instructions comprise attributes associated with boot devices;
analyze the attributes in the instructions to determine a priority order for the boot devices;
remove one or more boot devices from an initialization process when the one or more boot devices do not match the attributes in the instructions; and
initialize remaining boot devices other than the one or more boot devices removed from the initialization process such that the remaining boot devices are initialized in accordance with the priority order.

### Claim 9 (depends on 8)

The apparatus of claim 8, wherein the processor is further configured to receive the instructions in the form of a data structure that indicates the priority order for particular device types.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the processor is further configured to:
select a first one of the remaining boot devices that belongs to a first device type that has a first priority in the priority order;
instruct the first one of the remaining boot devices to initialize;
select a second one of the remaining boot devices that belongs to a second device type that has a second priority in the boot order; and
instruct the second one of the remaining boot devices to initialize.

### Claim 11 (depends on 8)

The apparatus of claim 8, wherein the processor is further configured to load an operating system using one or more of the initialized boot devices.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the processor is further configured to terminate the initialization of other boot devices when the operating system has been loaded.

### Claim 13 (depends on 8)

The apparatus of claim 8, wherein the processor is further configured to receive the instructions having boot connection vector (BCV) attributes or bootstrap entry vector (BEV) attributes associated with the boot devices.

### Claim 14 (depends on 13)

The apparatus of claim 13, wherein the processor is further configured to analyze the BCV attributes or the BEV attributes to determine the priority for initializing the boot devices.

### Claim 15

A computer-readable storage media encoded with software comprising computer executable instructions and when the software is executed operable to:
receive instructions from a management device in a network, wherein the instructions comprise attributes associated with boot devices hosted by a computing apparatus;
analyze the attributes in the instructions to determine a priority order for the boot devices;
remove one or more boot devices hosted by the computing apparatus from an initialization process when the one or more boot devices do not match the attributes in the instructions; and
initialize remaining boot devices other than the one or more boot devices removed from the initialization process such that the remaining boot devices are initialized in accordance with the priority order.

### Claim 16 (depends on 15)

The computer-readable storage media of claim 15, wherein the instructions operable to receive comprise instructions operable to receive the instructions in the form of a data a structure that indicates the priority order for particular device types.

### Claim 17 (depends on 16)

The computer-readable storage media of claim 16, wherein the instructions operable to initialize comprise instructions operable to:
select a first one of the remaining boot devices that belongs to a first device type that has a first priority in the priority order;
instruct the first one of the remaining boot devices to initialize;
select a second one of the remaining boot devices that belongs to a second device type that has a second priority in the boot order; and
instruct the second one of the remaining boot devices to initialize.

### Claim 18 (depends on 15)

The computer-readable storage media of claim 15, further comprising instructions operable to load an operating system using one or more of the initialized boot devices.

### Claim 19 (depends on 18)

The computer-readable storage media of claim 18, further comprising instructions operable to terminate the initialization of other boot devices when the operating system has been loaded.

### Claim 20 (depends on 15)

The computer-readable storage media of claim 15, wherein the instructions operable to receive comprise instructions operable to receive the instructions having boot connection vector (BCV) attributes or bootstrap entry vector (BEV) attributes associated with the boot devices hosted by the computing apparatus.
