# US 11,307,869 B2 · Identifying a transport route using an information handling system firmware driver

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

- Number: US 11,307,869 B2
- Document ID: US11307869B2
- Status: Granted
- Kind: B2
- Application number: 16/507,611
- Filed: 2019-07-10
- Published: 2021-01-14
- Granted: 2022-04-19
- Earliest claimed: 2019-07-10
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: William Carl Edwards, III; Sankara Rao Gara; Aniruddha Suresh Herekar
- Web page: https://patentgrep.com/patent/US11307869B2

## CPC

- G06F 9/445: Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods, systems, and computer programs for receiving, by an information handling system firmware driver, a request for a feature associated with information handling system firmware, the feature stored in a baseboard management controller; determining a transfer size associated with the feature; identifying a plurality of connectivity points, each of the plurality of connectivity points communicatively coupling the information handling system firmware driver to the baseboard management controller, and each of the plurality of connectivity points associated with a bandwidth; selecting a transport route from the plurality of connectivity points based in part on the transfer size associated with the feature; and in response to selecting the transport route: transmitting the request for the feature to the baseboard management controller via the transport route; receiving the feature from the baseboard management controller via the transport route; and providing the feature to the information handling system firmware for execution.

## Claims

### Claim 1

A method comprising:
receiving, by an information handling system firmware (IHSFW) driver, a request for a feature associated with IHSFW, the feature stored in a first baseboard management controller (BMC) of an information handling system (IHS);
determining, by the IHSFW driver, a transfer size associated with the feature;
identifying, by the IHSFW driver, a plurality of connectivity points, each of the plurality of connectivity points communicatively coupling the IHSFW driver to the first BMC, and each of the plurality of connectivity points associated with a bandwidth;
selecting, by the IHSFW driver, a transport route from the plurality of connectivity points, the selecting based in part on the transfer size associated with the feature; and
in response to selecting the transport route by the IHSFW driver:
transmitting, by the IHSFW driver, the request for the feature to the first BMC via the transport route;
receiving, by the IHSFW driver, the feature from the first BMC via the transport route; and
providing, by the IHSFW driver, the feature to the IHSFW for execution.

### Claim 2 (depends on 1)

The method of claim 1, wherein transmitting by the IHSFW driver the request for the feature to the first BMC via the transport route further comprises:
bypassing, by the IHSFW driver, a universal serial bus (USB) communicatively coupling the IHSFW to the first BMC.

### Claim 3 (depends on 1)

The method of claim 1, wherein selecting by the IHSFW driver the transport route from the plurality of connectivity points comprises:
determining, by the IHSFW driver, the bandwidth associated with each of the plurality of connectivity points;
identifying, by the IHSFW driver, from the plurality of connectivity points, a first connectivity point having a bandwidth that accommodates the transfer size associated with the feature;
determining, by the IHSFW driver, whether the first connectivity point is in use by the IHS; and
in response to determining by the IHSFW driver that the first connectivity point is not in use by the IHS,
selecting, by the IHSFW driver, the first connectivity point to serve as the transport route.

### Claim 4 (depends on 3)

The method of claim 3, wherein determining by the IHSFW driver whether the first connectivity point is in use by the IHS further comprises:
in response to determining by the IHSFW driver that the first connectivity point is in use by the IHS:
identifying, by the IHSFW driver, from the plurality of connectivity points, a second connectivity point that is not in use by the IHS, the second connectivity point having the bandwidth that accommodates the transfer size associated with the feature; and
selecting, by the IHSFW driver, the second connectivity point to serve as the transport route.

### Claim 5 (depends on 3)

The method of claim 3, wherein the bandwidth that accommodates the transfer size associated with the feature comprises a bandwidth in which a least amount of data packets may be transferred from the first BMC to the IHSFW driver, wherein each data packet comprises a portion of the feature.

### Claim 6 (depends on 1)

The method of claim 1, wherein the transport route comprises at least one of:
a common internet file system (CIFS);
a network interface controller (NIC) buffer;
a network file system (NFS);
a shared memory of the IHS;
a video frame buffer of the IHS;
a hypertext transfer protocol (HTTP) layer; and
a hypertext transfer protocol secure (HTTPS) layer.

### Claim 7 (depends on 1)

The method of claim 1, wherein the feature associated with the IHSFW is at least one of:
a unified extensible firmware interface (UEFI) executable file;
diagnostics firmware;
one or more configuration files; and
one or more log files.

### Claim 8

A system comprising a processor having access to memory media storing executable instructions that are executed by the processor to perform operations comprising:
receiving, by an information handling system firmware (IHSFW) driver, a request for a feature associated with IHSFW, the feature stored in a first baseboard management controller (BMC) of an information handling system (IHS);
determining, by the IHSFW driver, a transfer size associated with the feature;
identifying, by the IHSFW driver, a plurality of connectivity points, each of the plurality of connectivity points communicatively coupling the IHSFW driver to the first BMC, and each of the plurality of connectivity points associated with a bandwidth;
selecting, by the IHSFW driver, a transport route from the plurality of connectivity points, the selecting based in part on the transfer size associated with the feature; and
in response to selecting the transport route by the IHSFW driver:
transmitting, by the IHSFW driver, the request for the feature to the first BMC via the transport route;
receiving, by the IHSFW driver, the feature from the first BMC via the transport route; and
providing, by the IHSFW driver, the feature to the IHSFW for execution.

### Claim 9 (depends on 8)

The system of claim 8, wherein transmitting by the IHSFW driver the request for the feature to the first BMC via the transport route further comprises:
bypassing, by the IHSFW driver, a universal serial bus (USB) communicatively coupling the IHSFW to the first BMC.

### Claim 10 (depends on 8)

The system of claim 8, wherein selecting by the IHSFW driver the transport route from the plurality of connectivity points comprises:
determining, by the IHSFW driver, the bandwidth associated with each of the plurality of connectivity points;
identifying, by the IHSFW driver, from the plurality of connectivity points, a first connectivity point having a bandwidth that accommodates the transfer size associated with the feature;
determining, by the IHSFW driver, whether the first connectivity point is in use by the IHS; and
in response to determining by the IHSFW driver that the first connectivity point is not in use by the IHS,
selecting, by the IHSFW driver, the first connectivity point to serve as the transport route.

### Claim 11 (depends on 10)

The system of claim 10, wherein determining by the IHSFW driver whether the first connectivity point is in use by the IHS further comprises:
in response to determining by the IHSFW driver that the first connectivity point is in use by the IHS:
identifying, by the IHSFW driver, from the plurality of connectivity points, a second connectivity point that is not in use by the IHS, the second connectivity point having the bandwidth that accommodates the transfer size associated with the feature; and
selecting, by the IHSFW driver, the second connectivity point to serve as the transport route.

### Claim 12 (depends on 10)

The system of claim 10, wherein the bandwidth that accommodates the transfer size associated with the feature comprises a bandwidth in which a least amount of data packets may be transferred from the first BMC to the IHSFW driver, wherein each data packet comprises a portion of the feature.

### Claim 13 (depends on 8)

The system of claim 8, wherein the transport route comprises at least one of:
a common internet file system (CIFS);
a network interface controller (NIC) buffer;
a network file system (NFS);
a shared memory of the IHS;
a video frame buffer of the IHS;
a hypertext transfer protocol (HTTP) layer; and
a hypertext transfer protocol secure (HTTPS) layer.

### Claim 14 (depends on 8)

The system of claim 8, wherein the feature associated with the IHSFW is at least one of:
a unified extensible firmware interface (UEFI) executable file;
diagnostics firmware;
one or more configuration files; and
one or more log files.

### Claim 15

A non-transitory computer-readable medium storing software comprising instructions executable by one or more computers which, upon execution by the one or more computers, cause the one or more computers to perform operations comprising:
receiving, by an information handling system firmware (IHSFW) driver, a request for a feature associated with IHSFW, the feature stored in a first baseboard management controller (BMC) of an information handling system (IHS);
determining, by the IHSFW driver, a transfer size associated with the feature;
identifying, by the IHSFW driver, a plurality of connectivity points, each of the plurality of connectivity points communicatively coupling the IHSFW driver to the first BMC, and each of the plurality of connectivity points associated with a bandwidth;
selecting, by the IHSFW driver, a transport route from the plurality of connectivity points, the selecting based in part on the transfer size associated with the feature; and
in response to selecting the transport route by the IHSFW driver:
transmitting, by the IHSFW driver, the request for the feature to the first BMC via the transport route;
receiving, by the IHSFW driver, the feature from the first BMC via the transport route; and
providing, by the IHSFW driver, the feature to the IHSFW for execution.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein transmitting by the IHSFW driver the request for the feature to the first BMC via the transport route further comprises:
bypassing, by the IHSFW driver, a universal serial bus (USB) communicatively coupling the IHSFW to the first BMC.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the transport route comprises at least one of:
a common internet file system (CIFS);
a network interface controller (NIC) buffer;
a network file system (NFS);
a shared memory of the IHS;
a video frame buffer of the IHS;
a hypertext transfer protocol (HTTP) layer; and
a hypertext transfer protocol secure (HTTPS) layer.
