Physical network interface selection to minimize contention with operating system critical storage operations
First Claim
1. An apparatus, comprising:
- a network;
a network-accessible storage device coupled to the network and storing operating system data; and
a diskless computer coupled to the network, the diskless computer comprising;
a plurality of physical network adapters coupled to the network, a first physical network adapter among the plurality of physical network adapters configured to handle operating system critical storage operations; and
a processing unit coupled to the plurality of physical network adapters and configured to host the operating system and at least one application, wherein the processing unit is configured to direct operating system critical storage operations for the operating system over the first physical network adapter, and wherein the processing unit is further configured to dynamically select a physical network adapter from among the plurality of physical network interfaces to communicate network data for the application by attempting to use the first physical network adapter to communicate the network data for the application only if no other physical network adapter among the plurality of physical network adapters is available to communicate the network data for the application as a result of the first physical network interface being configured to handle operating system critical storage operations, wherein the operating system critical storage operations are selected from the group consisting of system volume-related operations, page swapping-related operations, operations associated with retrieving operating system program code for the operating system, operations associated with retrieving driver program code for the operating system, operations associated with retrieving library program code for the operating system, operations associated with retrieving extension program code for the operating system, operations associated with operating system configuration or registry data, or operations that if delayed adversely impact operating system stability.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus, program product and method dynamically select a physical network interface for use by an application running on a networked computer in a manner that attempts to minimize bandwidth contention between application-related operations and any operating system critical storage operations that may be initiated by an operating system resident on the same networked computer. The dynamic selection prioritizes at least one physical network interface that does not handle operating system critical storage operations over at least one physical network interface that does handle operating system critical storage operations, thus minimizing the likelihood of the application causing poor performance and/or failure of the operating system due to contention over limited network resources.
-
Citations
25 Claims
-
1. An apparatus, comprising:
-
a network; a network-accessible storage device coupled to the network and storing operating system data; and a diskless computer coupled to the network, the diskless computer comprising; a plurality of physical network adapters coupled to the network, a first physical network adapter among the plurality of physical network adapters configured to handle operating system critical storage operations; and a processing unit coupled to the plurality of physical network adapters and configured to host the operating system and at least one application, wherein the processing unit is configured to direct operating system critical storage operations for the operating system over the first physical network adapter, and wherein the processing unit is further configured to dynamically select a physical network adapter from among the plurality of physical network interfaces to communicate network data for the application by attempting to use the first physical network adapter to communicate the network data for the application only if no other physical network adapter among the plurality of physical network adapters is available to communicate the network data for the application as a result of the first physical network interface being configured to handle operating system critical storage operations, wherein the operating system critical storage operations are selected from the group consisting of system volume-related operations, page swapping-related operations, operations associated with retrieving operating system program code for the operating system, operations associated with retrieving driver program code for the operating system, operations associated with retrieving library program code for the operating system, operations associated with retrieving extension program code for the operating system, operations associated with operating system configuration or registry data, or operations that if delayed adversely impact operating system stability.
-
-
2. An apparatus, comprising:
-
a plurality of physical network interfaces, each physical network interface configured to communicate data over at least one network; and a processing unit coupled to the plurality of physical network interfaces and configured to host an operating system and at least one application, wherein the processing unit is configured to direct operating system critical storage operations for the operating system over at least one of the plurality of physical network interfaces to access a network-accessible storage device, and wherein the processing unit is further configured to dynamically select at least one of the plurality of physical network interfaces to communicate network data for the application by prioritizing at least one physical network interface that does not handle operating system critical storage operations over at least one physical network interface that does handle operating system critical storage operations, wherein the operating system critical storage operations are selected from the group consisting of system volume-related operations, page swapping-related operations, operations associated with retrieving operating system program code for the operating system, operations associated with retrieving driver program code for the operating system, operations associated with retrieving library program code for the operating system, operations associated with retrieving extension program code for the operating system, operations associated with operating system configuration or registry data, or operations that if delayed adversely impact operating system stability. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method of communicating data, the method comprising, in an apparatus of the type including a plurality of physical network interfaces that are each configured to communicate data over at least one network and a processing unit coupled to the plurality of physical network interfaces and configured to host an operating system and at least one application:
-
directing operating system critical storage operations for the operating system over at least one of the plurality of physical network interfaces, the at least one of the plurality of physical network interfaces accessing a network-accessible storage device, wherein the operating system critical storage operations are selected from the group consisting of system volume-related operations, page swapping-related operations, operations associated with retrieving operating system program code for the operating system, operations associated with retrieving driver program code for the operating system, operations associated with retrieving library program code for the operating system, operations associated with retrieving extension program code for the operating system, operations associated with operating system configuration or registry data, or operations that if delayed adversely impact operating system stability; and dynamically selecting at least one of the plurality of physical network interfaces to communicate network data for the application by prioritizing at least one physical network interface that does not handle operating system critical storage operations over at least one physical network interface that does handle operating system critical storage operations, the dynamically selected at least one of the plurality of physical network interfaces communicating the network data for the application. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
-
25. A program product, comprising:
-
program code configured to be executed in an apparatus of the type including a plurality of physical network interfaces that are each configured to communicate data over at least one network and a processing unit coupled to the plurality of physical network interfaces and configured to host an operating system and at least one application, and to direct operating system critical storage operations for the operating system over at least one of the plurality of physical network interfaces to access a network-accessible storage device, the program code configured to dynamically select at least one of the plurality of physical network interfaces to communicate network data for the application by prioritizing at least one physical network interface that does not handle operating system critical storage operations over at least one physical network interface that does handle operating system critical storage operations, wherein the operating system critical storage operations are selected from the group consisting of system volume-related operations, page swapping-related operations, operations associated with retrieving operating system program code for the operating system, operations associated with retrieving driver program code for the operating system, operations associated with retrieving library program code for the operating system, operations associated with retrieving extension program code for the operating system, operations associated with operating system configuration or registry data, or operations that if delayed adversely impact operating system stability; and a recordable type non-transitory computer readable medium storing the program code.
-
Specification