USRE44686E1 - Dynamically modifying the resources of a virtual server - Google Patents
Dynamically modifying the resources of a virtual server Download PDFInfo
- Publication number
- USRE44686E1 USRE44686E1 US13/236,527 US201113236527A USRE44686E US RE44686 E1 USRE44686 E1 US RE44686E1 US 201113236527 A US201113236527 A US 201113236527A US RE44686 E USRE44686 E US RE44686E
- Authority
- US
- United States
- Prior art keywords
- virtual server
- physical host
- resource
- overloaded
- physical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Definitions
- the present invention relates generally to resource allocation for a virtual server, and more particularly, to monitoring and dynamically modifying the resource allocation for a virtual server based upon usage.
- Networked computer resources are growing more popular as the benefits of sharing computing resources become evident.
- One of the fastest-growing segments of the Internet is the network market.
- Network systems contain common elements, generally including a dedicated local server to maintain the shared network data, and a communications system for providing data communication services between devices on the network.
- Data communications services and servers are not easy to configure, manage, and maintain.
- ISPs Internet Service Providers
- ISPs typically dedicate one or more physical host computers as each individual customer's server(s), and maintain each host computer in the centralized facility. This means the ISP will have to own and maintain potentially large numbers of physical host computers, at least one for each customer's server or private network. However, most customers will neither require nor be amenable to paying for the user of an entire host computer. Generally, only a fraction of the processing power, storage, and other resources of a host computer will be required to meet the needs of an individual customer.
- a customer's virtual server is typically assigned a fixed level of resources, corresponding to either a fixed percentage of the capacity of a particular physical host (for example, the operating system may be instructed to allocate twenty percent of the central processing unit cycles to process A and two percent to process B) or a fixed number of units (for example, the operating system may be instructed to allocate X cycles per second to process A and Y cycles per second to process B).
- a fixed percentage of the capacity of a particular physical host for example, the operating system may be instructed to allocate twenty percent of the central processing unit cycles to process A and two percent to process B
- a fixed number of units for example, the operating system may be instructed to allocate X cycles per second to process A and Y cycles per second to process B.
- customers may be unable to anticipate the exact amount of resources they will require, and a static assignment of a particular resource allocation limit may not allow the virtual server system to adapt to changing customer needs.
- a better resource allocation model is structured along the lines of electricity pricing—a customer receives what he needs, and he pays for what he receives.
- small customer B may initially request a very low level of resources. However, should his new home business suddenly expand, he may quickly bump up against the limit of the server resources he originally requested. In this case, it would be preferable if customer B's virtual server resources were able to automatically, dynamically adjust to his increased resource needs.
- the present invention dynamically adjusts the quality of service guarantees for virtual servers based upon the resource demands experienced by the virtual servers.
- Virtual servers having individual quality of service guarantees are distributed among a group of physical hosts. Each physical host's resources are allocated among the physical host's resident virtual servers. The resources allocated to a particular virtual server may be dynamically adjusted in response to changing virtual server resource needs.
- a physical host executing a virtual server may not have additional resources to allocate to a virtual server requiring increased resources.
- a virtual server hosted by the overloaded physical host is transferred to another physical host with sufficient resources.
- a dynamic resource configuration module monitors resource denials received by virtual servers and determines if a virtual server is overloaded based upon the resource denials.
- a resource denial may refer to any request by the virtual server that cannot be immediately serviced, such as a denial of a request to create a file or a network packet delay. If the resource denials received by a particular virtual server exceed a pre-specified limit, the virtual server is considered overloaded and a request is made for additional resources.
- the resource usage of the physical hosts within the system is monitored.
- a load-balancing function is performed to select the appropriate physical host when a virtual server transfer becomes necessary.
- a virtual server is transferred between physical hosts with minimal impact upon the operation of the virtual server.
- FIG. 1 is an illustration of a system for dynamically modifying the resources of a virtual server.
- FIG. 2A is a flowchart of a process for dynamically modifying the resources of a virtual server.
- FIG. 2B is a flowchart of another process for dynamically modifying the resources of a virtual server.
- FIG. 3 is a block diagram of a process for determining whether an individual resource in a virtual server has reached its limit.
- FIG. 4 is a flowchart of a process for determining when to increase or decrease a virtual server resource allocation.
- FIG. 5 is a block diagram of one process for performing resource load balancing among physical hosts.
- FIG. 6 is a flowchart of one process for transferring a virtual server from one physical host to another physical host.
- virtual server refers to a virtual server capable of receiving a quality of service guarantee from a physical host. Multiple virtual servers may reside in a single physical host, and different virtual servers on the same physical host may receive different quality of service guarantee.
- FIG. 1 shows an embodiment of a system for dynamic resource configuration in virtual servers.
- a dynamic resource configuration module 100 is coupled via a network to a group of physical host machines 160 ( 160 A, 160 B and 160 C), or may be resident on any of these hosts 160 .
- the physical host machines 160 may be any kind of computer adapted to support virtual servers.
- the module 100 may be implemented in a software driver. It is to be understood that the dynamic resource configuration module 100 will typically support more than one physical host machine 160 . However, in one embodiment, the dynamic resource configuration module 100 may support a single physical host 160 .
- the group of physical hosts 160 contains a group of virtual servers 162 .
- Physical host 160 A contains virtual servers 162 A and 162 B;
- physical host 160 B contains virtual servers 162 C, 162 D and 162 E;
- physical host 160 C contains virtual servers 162 F and 162 G.
- each individual virtual server 162 has a different quality of service guarantee. Different quality of service guarantees are implemented by allocating different amounts of the resources of each physical host machine 160 to servicing each of the virtual servers 162 .
- Physical host 160 resources may be allocated as percentages of the resources of a particular physical host 160 , or as a particular number of units within a physical host 160 (for example, the operating system may be instructed to allocate X cycles per second to process A and Y cycles per second to process B). In the embodiment shown in FIG. 1 , physical host 160 resources are allocated to individual virtual servers 162 as percentages of each physical host 160 . Table 1 lists the resource allocations of each virtual server 162 as shown in FIG. 1 :
- Virtual Server Resource Allocation in FIG. 1 Virtual Server Resource Allocation 162A 15% of physical host 160A 162B 60% of physical host 160A 162C 10% of physical host 160B 162D 10% of physical host 160B 162E 10% of physical host 160B 162F 20% of physical host 160C 162G 30% of physical host 160C
- the virtual servers 162 each may consume a different amount of the resources of the physical host machines 160 .
- the resources of a physical host machine comprise the set of functions and features the physical host machine uses in implementing tasks for each virtual server. Examples of resources include disk space, memory, network capacity and processing cycles (CPU resources).
- virtual server 162 A consumes 15% of the physical host 160 A resources. This means that 15% of physical host 160 A's disk space, memory, network bandwidth, and CPU processing will be dedicated to servicing the needs of virtual server 162 A.
- a variety of other types of physical host resources will be evident to one of skill in the art.
- a resource allocation for a virtual server is specified as a “quality of service guarantee” for that particular server.
- Each physical host stores quality of service guarantees for the virtual servers it hosts. As a physical host performs processes associated with a particular virtual server, the physical host accesses the stored quality of service information to enable the physical host to request the correct quality of service from the operating system kernel of the physical host.
- a quality of service parameter table in each physical host 160 associates each virtual server 162 resident in the particular physical host 160 with quality of service parameters. These parameters are used to allocate physical host 160 resources for each resident virtual server 162 .
- physical host 160 A includes a quality of service parameter table, which lists resident virtual servers 162 A and 162 B. The parameter table lists whatever virtual servers are resident in the physical host. As virtual server resource allocations are changed, and as virtual servers are transferred between physical hosts, the corresponding quality of service parameter tables are updated to reflect these changes and transfers.
- a single master quality of service parameter table can coordinate multiple slave tables associated with each physical host.
- Dynamic resource configuration module 100 includes a virtual server resource monitor 110 , a virtual server resource modifier 120 , a physical host load balancer 130 , a dynamic virtual server mover 140 , and a file system 150 . In one embodiment, these modules are portions of the software code implementing the dynamic resource configuration module 100 . The dynamic resource configuration module 100 is further communicatively coupled to each physical host 160 .
- the virtual server resource monitor 110 monitors the resource usage of the virtual servers 162 to determine if they are overloaded.
- the virtual server resource modifier 120 dynamically modifies the resource allocations of the virtual servers 162 on an as-needed basis.
- the physical host load-balancer 130 periodically monitors the resource usage of the physical hosts 160 , and uses the dynamic virtual server mover 140 to transfer virtual servers 162 between physical hosts 160 as needed to balance the loads of the physical hosts 160 .
- the file system 150 is used for storing state information associated with a particular virtual server 162 when transferring the particular virtual server 162 to a different physical host 160 . In another embodiment, the file system 150 is not used, and state information is copied directly from one physical host to another physical host to transfer a virtual server.
- FIG. 2A is a flowchart of an embodiment of the overall process for dynamically modifying the resources of a virtual server.
- Virtual server resource denials are monitored 210 . Resource monitoring is performed using the selective interception of system calls. One embodiment of selectively intercepting system calls is disclosed in the related application, the subject matter of which is incorporated herein by reference.
- Each resource e.g., disk space, memory, network bandwidth, or CPU cycles
- Each resource e.g., disk space, memory, network bandwidth, or CPU cycles
- resource denials include a memory allocation request denial and a network packet delay signal.
- virtual server 162 B requests an additional memory allocation of 1 megabyte. If physical host 160 A has only 100 kilobytes of memory available (the rest already having been allocated to virtual servers 162 A and 162 B), then physical host 160 A cannot service virtual server 162 B's request and physical host 160 A is considered overloaded. This same principle may be extended to other types of resources.
- the virtual server resource allocation within the physical host is increased 240 .
- the method then continues to monitor 210 virtual server resource denials.
- a new physical host is selected 250 to accommodate the overloaded virtual server and its required resource increases.
- a variety of different fitting heuristic methods may be used to select a new physical host to execute the virtual server. For example, a first fit method may be used, wherein the first physical host 160 determined to have enough extra resources to accommodate the overloaded virtual server 162 is selected. In a best fit method, the physical host 160 with available resources most closely matching the resource needs of the overloaded virtual server 162 is selected. In an easiest fit method, the physical host 160 with the most available resources is selected to accommodate the overloaded virtual server 162 . For the following discussion, assume that physical host 160 A is overloaded, and new physical host 160 B has been selected to receive virtual server 162 B.
- the virtual server 162 B is moved 260 to the new physical host 160 B.
- the virtual server 162 B is also allocated its required resource increase.
- the old overloaded physical host 160 A places state information for the virtual server 162 B being transferred into a common file system 150 , e.g. in a configuration file or other system file.
- the new physical host 160 B accesses the state information and restarts the virtual server 162 B as resident in the new physical host 160 B.
- the virtual server 162 B files are copied directly from the old physical host 160 A to the new physical host 160 B.
- the old physical host 160 A has one fewer virtual server, and the new physical host 160 B has one additional virtual server.
- the quality of service tables for both the old and new physical hosts are modified 260 to reflect this change.
- the quality of service table entries for virtual server 162 B will also reflect the virtual server's resource increase.
- the virtual server user is transferred 270 from the old physical host ( 160 A) to the new physical host ( 160 B) by transferring the virtual server address.
- the transfer process may use either “break, then make” timing, or “make, then break” timing.
- the timing of the transfer process determines whether all processes and configuration information associated with the virtual server to be transferred are first shut down in the old physical host, or first started up in the new physical host, before the virtual server address is transferred. Transferring the virtual server address transfers the virtual server user from one virtual server location to another.
- the virtual server 162 B is first shut down in the old physical host 160 A, a new virtual server is created in new physical host 160 B and started up, and the virtual server 162 B address is then transferred over to the new physical host 160 B.
- a new virtual server is created in new physical host 160 B and started up, the virtual server 162 B address is transferred over to the new physical host 160 B, and the virtual server 162 B is then shut down in old physical host 160 A.
- a virtual server “user” refers to individuals or groups of individuals accessing the same virtual server.
- a virtual server “user” is a group of individuals with a shared association.
- “user” may collectively refer to the employees of a company, or to certain employees within a division of a company.
- One company (a “customer”) may have several different users, each corresponding to a different group within the company, and each having many different individuals.
- a “user” may also refer to a single individual.
- the process for virtual server resource configuration is dynamic and ongoing during the operation of the virtual servers. After the virtual server user transfer 270 is completed, the process continues to monitor 210 virtual server resource denials.
- FIG. 2B is another embodiment of a flowchart of the process for dynamically modifying the resources of a virtual server.
- the method shown in FIG. 2B is similar to the method shown in FIG. 2A .
- the method of FIG. 2B includes three additional steps, steps 242 , 244 and 246 , which together provide a method for reclaiming unused virtual server resources.
- virtual server resource denials are monitored 210 . If a determination 220 is made that a particular virtual server resource is overloaded, and a determination 230 is made that the corresponding physical host resources are not overloaded, the virtual server resource allocation is increased 240 .
- a timer is set 242 for a pre-specified interval.
- the method determines 244 whether the newly increased virtual server resource is currently operating at its resource limit. If one or more resource denial signals corresponding to the newly increased virtual server resource are received during the timer period, the virtual server is assumed to be operating at its resource limit.
- Steps 242 , 244 , and 246 allow the dynamic resource configuration module 100 to reclaim unused resources within the virtual server system, by temporarily increasing resources allocated to a virtual server as needed.
- a recently transferred virtual server 162 may also allow unused resources to be reclaimed by the virtual server 162 's new physical host.
- step 270 would be followed by steps 242 , 244 and 246 .
- FIG. 3 shows an embodiment of one process for determining whether an individual resource in a virtual server has reached its resource limit.
- a virtual server resource monitor 110 receives a set of input signals 312 from a virtual server 162 B. The virtual server resource monitor 110 processes these signals to determine if any resources from virtual server 162 B are overloaded. If an overloaded resource is found, the virtual server resource monitor 110 sends a “resource overloaded” signal 350 to the virtual server resource modifier 120 .
- FIG. 3 shows four examples of resource denial signals: a create file denial signal 312 A generated, for example, by a lack of disk space, a memory allocation denial signal 312 B, a network packet delay signal 312 C generated by a lack of network bandwidth, and a central processing unit (CPU) process scheduling delay signal 312 D generated by exceeding CPU usage limits.
- a create file denial signal 312 A generated, for example, by a lack of disk space
- a memory allocation denial signal 312 B a network packet delay signal 312 C generated by a lack of network bandwidth
- CPU central processing unit
- a system call performs some system operation, such as the access of a system hardware or software resource, when the system call is executed.
- arguments are programmatically loaded into specific registers of the central processing unit on which the operating system is executing.
- One of these arguments identifies the specific system call that is being made.
- This argument is typically in the form of a number that is an offset into the operating system interrupt vector table, which contains pointers to the actual executable code of the system calls.
- the other loaded arguments include parameters to be passed to the system call.
- a software interrupt is generated, signaling to the operating system that a process is requesting execution of a system call.
- the operating system reads the registers, and executes the requested system call with the specified parameters.
- the system call executes and performs the desired functionality. If the system call generates a return value, it places the generated return value (or a pointer thereto) in a pre-designated register where it can be accessed by the calling process.
- a pointer in an interrupt vector table to a system call is replaced with a pointer to alternative object code to be executed instead of the system call. Then, when the system call is made, the alternative object code will execute instead.
- the alternative object code is known as a system call wrapper.
- the method of the related application may be used to selectively intercept system calls such that a system call wrapper only executes when a system call is made by a select process associated with one of the virtual servers being monitored.
- a system call is made by a non-select process, the default system call is executed.
- only certain types of system calls relating to resource allocation, as described above, are selectively intercepted.
- the system call wrapper for the intercepted system call allows the resource request by a particular virtual server and the resulting response to be monitored. Request denial responses are monitored by the virtual server resource monitor 110 .
- the specific system calls to be monitored will be system-dependent, and may vary based upon the type of operating system and physical server machine being used.
- Each resource denial signal 312 is input into an individual resource denial table 320 for tracking purposes.
- Create file denial signals 312 A are recorded in a disk denial table 320 A; memory allocation denial signals 312 B are recorded in a memory denial table 320 B; network packet delay signals 312 C are recorded in a network denial table 320 C; and CPU process scheduling delay signals 312 D are recorded in a CPU denial table 320 D.
- a calculation 330 is performed on the signals stored in each table to determine the mean number of times a particular resource denial occurs in a pre-specified time window. Different time windows may be specified for each type of resource denial. The calculation of mean resource denials is performed individually for each different type of resource denial being monitored ( 330 A, 330 B, 330 C and 330 D).
- the mean number of resource denials may be calculated using one of several well-known techniques for averaging a signal rate over a period of time. Each technique determines whether the number of received resource denial signals a received in a particular time window t exceeds a certain threshold T: a(t)>T?
- a “jumping-window” technique is used.
- the jumping-window technique measures the number of resource denials a received in consecutive windows of time length t. A new time interval t starts immediately after the end of the last time interval t.
- a “moving-window” technique is used. The moving-window technique measures the number of resource denials a received in a continuously moving window of time length t. In the moving-windows technique, all windows of time length t are measured.
- the virtual server resource monitor 110 checks 340 if the metric a(t) calculated is beyond the pre-specified threshold T. This determination is made individually for each type of resource denial signal ( 340 A, 340 B, 340 C and 340 D), and need not be made simultaneously. Each different type of resource denial signal 312 may have a different pre-specified threshold T.
- the method continues to calculate a(t) 330 so that resource denials are continuously monitored.
- the method will again check 340 if a(t)>T.
- a continuous loop of steps 330 and 340 is used to measure each continuously-moving window of time t.
- a pre-specified schedule for repeating calculating mean resource denials 330 and checking 340 if the threshold T has been exceeded can be established to limit the amount of processing required by the virtual server resource monitor 110 .
- a “resource overloaded” signal is sent 350 to the virtual server resource modifier 120 .
- Each type of resource denial signal 312 has an associated resource overloaded signal.
- FIG. 3 shows four examples of resource overloaded signals: disk resource overloaded signal 350 A, memory resource overloaded signal 350 B, network resource overloaded signal 350 C, and CPU resource overloaded signal 350 D. It is to be understood that there may be many other types of signals indicating an overloaded resource. The examples shown herein are used purely for illustrative purposes.
- FIG. 4 shows a flowchart of an embodiment of a method for determining when to increase or decrease a particular resource allocation within a virtual server.
- the virtual server resource modifier 120 performs the method shown in FIG. 4 .
- a separate analysis using the method of FIG. 4 is performed for each type of resource being monitored.
- the modifier 120 waits 410 to receive a resource overloaded signal 350 from the virtual server resource monitor 110 .
- the modifier 120 checks 420 to determine whether the signal 350 falls within a pre-specified “hysteresis time window” H.
- the hysteresis time window H check 420 damps the modifier 120 system to avoid rapid changes in the system state. For example, in a situation in which a virtual server has overloaded its existing memory resource allocation, the virtual server may attempt to access memory repeatedly before the memory resource allocation is increased. Each memory access attempt may generate a memory resource overloaded signal 350 B. The modifier 120 only needs to respond to one of these signals.
- the hysteresis time window H check 420 avoids repetitive responses to resource overloaded messages.
- the modifier 120 checks 420 whether the most recently received resource overloaded signal 350 (received at T 1 ) is close in time (within the hysteresis time window H) to a previously received resource overloaded signal 350 (received at T 0 ) for a particular resource: T 1 ⁇ T 0 ⁇ H?
- the modifier 120 If the recent and previous resource overloaded signals have occurred close enough in time to fall within the pre-specified hysteresis time window H, no further action will be taken and the modifier 120 returns and waits 410 to receive another resource overloaded signal 350 . If the current resource overloaded message is not received within the hysteresis time window H, the modifier 120 proceeds to increase 430 the virtual server resource allocation.
- the resource allocation for a particular overloaded resource is increased 430 by a pre-specified amount i.
- Amount i may be specified as a certain percentage of the resources of a physical host, or alternatively amount i may be specified as a certain number of resource units. Amount i may also be specified as a certain percentage of each particular virtual server's current resource allocation, e.g. increase a resource by 5% of its current value.
- the modifier 120 sets 440 a timer for a pre-specified time period.
- the modifier 120 determines 450 if the recently increased resource is being fully utilized. In one embodiment, a resource is fully utilized if a corresponding resource denial signal has been received within the timer period 440 after the resource was increased.
- the modifier 120 returns and waits 410 for an overloaded signal. However, if it is determined that the resource is not being fully utilized, the modifier 120 decreases 460 the resource by a pre-specified amount d.
- Amount d may be specified as a certain percentage of the resources of a physical host, or amount d may be specified as a certain number of resource units. Amount d may also be specified as a certain percentage of each particular virtual server's current resource allocation, e.g. decrease a resource by 10% of its current value.
- d (the resource decreases amount) is larger than i (the resource increase amount). This allows unused resources to be decreased aggressively, but overloaded resources to be increased cautiously.
- FIG. 5 shows a block diagram of an embodiment of a process for performing resource load balancing among physical hosts, in the context of a working example of overloaded physical host 160 A.
- the physical host load balancer 130 periodically monitors the resource usage of a group of physical hosts 160 ( 160 A, 160 B and 160 C) and transfers virtual servers to different ones of these physical hosts 160 in order to balance the resource loads between the physical hosts 160 . Requests to increase virtual server resource allocations are also sent to the physical host load balancer 130 in order to assist in the balancing of physical host 160 resource loads. This process is next explained by example.
- physical host load balancing module 130 receives a signal 510 from the virtual server resource modifier 120 indicating that virtual server 162 B requires an increased resource allocation. This signal is used as an input 520 into the load-balancing calculator 530 .
- the load-balancing calculator 530 also requests and receives as input the current physical host resource loads 535 from the physical host resource monitor 540 .
- the physical host resource monitor 540 performs periodic physical host resource checks 545 upon the group of physical hosts 160 ( 160 A, 160 B and 160 C). Resource checks 545 monitor the current virtual server resource guarantees in each quality of service table for each physical host 160 .
- the load-balancing calculator 530 determines whether a virtual server's request for additional resources 510 will overload the particular physical host currently hosting the virtual server. Using the example shown in FIG. 5 , the load-balancing calculator 530 determines whether physical host 160 A is capable of supporting the request for additional virtual server 162 B resources 510 . If the resource request 510 exceeds the available resources of physical host 160 A, the load-balancing calculator 530 determines that physical host 160 A is overloaded.
- the load-balancing calculator 530 uses an easiest fit heuristic to find the physical host that has the most available resources.
- Each different type of resource is associated with an ordinal and a weight.
- the i th resource R i has ordinal i and weight w i .
- resource R 1 represents disk resources
- R 2 represents memory resources
- R 3 represents network resources
- R 4 represents CPU resources.
- the weights for each respective resource are determined by the system operator.
- R i (V) denote the resource requirement of the virtual server under consideration, e.g. virtual server 162 B, including the requested resource increase from signal 510 .
- R i (S j ) denote the resource availability at the j th physical host.
- the load-balancing calculator 530 computes the weighted resource availability of physical host j as the sum over i:
- the load-balancing calculator 530 will select the physical host with the largest weighted resource availability to receive the virtual server 162 B (in the example of FIG. 5 , physical host 160 B).
- the choice of physical host 160 B is subject to the constraint that the selected physical host 160 B has sufficient resources to meet the resource demands of virtual server 162 B.
- the load-balancing calculator 530 sends 550 a signal 560 to the dynamic virtual server mover 140 indicating that virtual server 162 B is to be transferred to physical host 160 B.
- load-balancing calculator 530 may use other criteria for selecting which virtual server to transfer out of an overloaded physical host.
- the load balancing calculator 530 transfers the virtual server that has most recently requested additional resources.
- the load balancing calculator could select, for example, the smallest virtual server within an overloaded physical host for transfer, regardless of which virtual server has recently made a request for increased resources.
- FIG. 6 is a flowchart of an embodiment of the process for transferring a virtual server from one physical host to another physical host.
- the dynamic virtual server mover 140 directs the process of FIG. 6 . This process is next explained by example.
- virtual server 162 B is transferred from old physical host 160 A to new physical host 160 B.
- the mover 140 waits 610 to receive a transfer virtual server signal 560 .
- the mover 140 receives a signal 560 directing the transfer of virtual server 162 B from physical host 160 A to physical host 160 B.
- the mover 140 directs physical host 160 A to store 620 local state information associated with virtual server 162 B in the file system 150 .
- file system 150 is commonly accessible from physical hosts 160 A, 160 B and 160 C.
- Mover 140 next directs physical host 160 A to stop 630 local processes associated with the virtual server being moved, e.g. virtual server 162 B.
- Mover 140 directs physical host 160 B to access 640 the virtual server 162 B state information stored in file system 150 .
- Mover 140 directs physical host 160 B to start 650 processes associated with virtual server 162 B locally. This enables virtual server 162 B to begin running locally in physical host 160 B.
- the user of virtual server 162 B is then transferred 660 from physical host 160 A to physical host 160 B by transferring the virtual server 162 B address to the new physical host 160 B.
- the mover 140 may use either “make, then break” timing or “break, then make” timing for the transfer process.
- the dynamic resource configuration module may support different numbers of physical hosts.
- different fitting heuristic methods may be used to select physical hosts for receiving transferred virtual servers during load balancing among the physical hosts. Accordingly, the present invention is intended to embrace all such alternatives, modifications, and variations as fall within the spirit and scope of the appended claims and equivalents.
Abstract
Description
TABLE 1 |
Virtual Server Resource Allocation in FIG. 1 |
Virtual | |
||
162A | |||
15% of | |||
162B | |||
60% of | |||
162C | |||
10% of | |||
162D | |||
10% of | |||
162E | |||
10% of | |||
162F | |||
20% of | |||
162G | |||
30% of |
|||
- Resource request>Resource available; where Resource available≧0
a(t)>T?
T1−T0<H?
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/236,527 USRE44686E1 (en) | 2000-05-11 | 2011-09-19 | Dynamically modifying the resources of a virtual server |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/569,371 US6985937B1 (en) | 2000-05-11 | 2000-05-11 | Dynamically modifying the resources of a virtual server |
US11/971,778 USRE42726E1 (en) | 2000-05-11 | 2008-01-09 | Dynamically modifying the resources of a virtual server |
US13/236,527 USRE44686E1 (en) | 2000-05-11 | 2011-09-19 | Dynamically modifying the resources of a virtual server |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/569,371 Reissue US6985937B1 (en) | 2000-05-11 | 2000-05-11 | Dynamically modifying the resources of a virtual server |
Publications (1)
Publication Number | Publication Date |
---|---|
USRE44686E1 true USRE44686E1 (en) | 2013-12-31 |
Family
ID=35517922
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/569,371 Ceased US6985937B1 (en) | 2000-05-11 | 2000-05-11 | Dynamically modifying the resources of a virtual server |
US11/971,778 Expired - Lifetime USRE42726E1 (en) | 2000-05-11 | 2008-01-09 | Dynamically modifying the resources of a virtual server |
US13/236,527 Expired - Lifetime USRE44686E1 (en) | 2000-05-11 | 2011-09-19 | Dynamically modifying the resources of a virtual server |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/569,371 Ceased US6985937B1 (en) | 2000-05-11 | 2000-05-11 | Dynamically modifying the resources of a virtual server |
US11/971,778 Expired - Lifetime USRE42726E1 (en) | 2000-05-11 | 2008-01-09 | Dynamically modifying the resources of a virtual server |
Country Status (1)
Country | Link |
---|---|
US (3) | US6985937B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400689B2 (en) | 2014-09-08 | 2016-07-26 | International Business Machines Corporation | Resource allocation/de-allocation and activation/deactivation |
US9680920B2 (en) | 2014-09-08 | 2017-06-13 | International Business Machines Corporation | Anticipatory resource allocation/activation and lazy de-allocation/deactivation |
US20180288028A1 (en) * | 2017-03-28 | 2018-10-04 | Cloudjumper Corporation | Methods and Systems for Providing Wake-On-Demand Access to Session Servers |
US10601740B1 (en) * | 2019-04-03 | 2020-03-24 | Progressive Casuality Insurance Company | Chatbot artificial intelligence |
US11188368B2 (en) | 2018-10-31 | 2021-11-30 | Nutanix, Inc. | Asynchronous workload migration control |
US11194620B2 (en) | 2018-10-31 | 2021-12-07 | Nutanix, Inc. | Virtual machine migration task management |
Families Citing this family (161)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870550A (en) * | 1996-02-26 | 1999-02-09 | Network Engineering Software | Web server employing multi-homed, moldular framework |
US8117298B1 (en) | 1996-02-26 | 2012-02-14 | Graphon Corporation | Multi-homed web server |
US6842769B1 (en) * | 2000-05-05 | 2005-01-11 | Interland, Inc. | Automatically configured network server |
US6985937B1 (en) | 2000-05-11 | 2006-01-10 | Ensim Corporation | Dynamically modifying the resources of a virtual server |
US6907421B1 (en) | 2000-05-16 | 2005-06-14 | Ensim Corporation | Regulating file access rates according to file type |
US7219354B1 (en) | 2000-12-22 | 2007-05-15 | Ensim Corporation | Virtualizing super-user privileges for multiple virtual processes |
JP2002202959A (en) * | 2000-12-28 | 2002-07-19 | Hitachi Ltd | Virtual computer system for performing dynamic resource distribution |
US7461148B1 (en) * | 2001-02-16 | 2008-12-02 | Swsoft Holdings, Ltd. | Virtual private server with isolation of system components |
US7134122B1 (en) * | 2001-05-31 | 2006-11-07 | Oracle International Corporation | One click deployment |
US7315892B2 (en) * | 2001-06-27 | 2008-01-01 | International Business Machines Corporation | In-kernel content-aware service differentiation |
US7574496B2 (en) * | 2001-11-30 | 2009-08-11 | Surgient, Inc. | Virtual server cloud interfacing |
US7725897B2 (en) * | 2004-11-24 | 2010-05-25 | Kabushiki Kaisha Toshiba | Systems and methods for performing real-time processing using multiple processors |
US7577722B1 (en) * | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US20040039815A1 (en) * | 2002-08-20 | 2004-02-26 | Compaq Information Technologies Group, L.P. | Dynamic provisioning system for a network of computers |
FI119407B (en) * | 2002-08-28 | 2008-10-31 | Sap Ag | A high-quality software-based contact server |
US7136800B1 (en) * | 2002-10-18 | 2006-11-14 | Microsoft Corporation | Allocation of processor resources in an emulated computing environment |
US7961594B2 (en) * | 2002-10-23 | 2011-06-14 | Onaro, Inc. | Methods and systems for history analysis for access paths in networks |
US7353538B2 (en) * | 2002-11-08 | 2008-04-01 | Federal Network Systems Llc | Server resource management, analysis, and intrusion negation |
US7185106B1 (en) | 2002-11-15 | 2007-02-27 | Juniper Networks, Inc. | Providing services for multiple virtual private networks |
US7986625B2 (en) * | 2002-12-10 | 2011-07-26 | International Business Machines Corporation | Resource-aware system, method and program product for managing request traffic based on a management policy |
US20040210887A1 (en) * | 2003-04-18 | 2004-10-21 | Bergen Axel Von | Testing software on blade servers |
US20040210888A1 (en) * | 2003-04-18 | 2004-10-21 | Bergen Axel Von | Upgrading software on blade servers |
US7610582B2 (en) | 2003-04-18 | 2009-10-27 | Sap Ag | Managing a computer system with blades |
US7590683B2 (en) * | 2003-04-18 | 2009-09-15 | Sap Ag | Restarting processes in distributed applications on blade servers |
US20040267897A1 (en) * | 2003-06-24 | 2004-12-30 | Sychron Inc. | Distributed System Providing Scalable Methodology for Real-Time Control of Server Pools and Data Centers |
US7769004B2 (en) * | 2003-09-26 | 2010-08-03 | Surgient, Inc. | Network abstraction and isolation layer for masquerading machine identity of a computer |
US8560671B1 (en) | 2003-10-23 | 2013-10-15 | Netapp, Inc. | Systems and methods for path-based management of virtual servers in storage network environments |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
WO2005089245A2 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method of co-allocating a reservation spanning different compute resources types |
EP2339469A1 (en) | 2004-03-13 | 2011-06-29 | Adaptive Computing Enterprises, Inc. | System and method for a self-optimizing reservation in time of compute resources |
EP1725947A4 (en) | 2004-03-13 | 2008-08-06 | Cluster Resources Inc | System and method for providing advanced reservations in a compute environment |
US7890629B2 (en) * | 2004-03-13 | 2011-02-15 | Adaptive Computing Enterprises, Inc. | System and method of providing reservation masks within a compute environment |
US7574709B2 (en) * | 2004-04-30 | 2009-08-11 | Microsoft Corporation | VEX-virtual extension framework |
US7546631B1 (en) * | 2004-04-30 | 2009-06-09 | Sun Microsystems, Inc. | Embedded management system for a physical device having virtual elements |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2827035A1 (en) | 2004-11-08 | 2006-05-18 | Adaptive Computing Enterprises, Inc. | System and method of providing system jobs within a compute environment |
US7458066B2 (en) * | 2005-02-28 | 2008-11-25 | Hewlett-Packard Development Company, L.P. | Computer system and method for transferring executables between partitions |
US7996455B2 (en) | 2005-06-17 | 2011-08-09 | Adaptive Computing Enterprises, Inc. | System and method for providing dynamic roll-back reservations in time |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9075657B2 (en) | 2005-04-07 | 2015-07-07 | Adaptive Computing Enterprises, Inc. | On-demand access to compute resources |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
US9225663B2 (en) | 2005-03-16 | 2015-12-29 | Adaptive Computing Enterprises, Inc. | System and method providing a virtual private cluster |
WO2008036058A2 (en) | 2005-03-16 | 2008-03-27 | Cluster Resources, Inc. | On-demand computing environment |
US8347297B2 (en) * | 2005-05-20 | 2013-01-01 | International Business Machines Corporation | System and method of determining an optimal distribution of source servers in target servers |
EP2492813A3 (en) * | 2005-09-27 | 2013-01-30 | Onaro | Method And Systems For Validating Accessibility And Currency Of Replicated Data |
US20070150581A1 (en) * | 2005-12-22 | 2007-06-28 | American Express Travel Services, Co., Inc. a New York Corporation | System and method for monitoring system performance levels across a network |
US7461289B2 (en) * | 2006-03-16 | 2008-12-02 | Honeywell International Inc. | System and method for computer service security |
US8078728B1 (en) | 2006-03-31 | 2011-12-13 | Quest Software, Inc. | Capacity pooling for application reservation and delivery |
US20070271560A1 (en) * | 2006-05-18 | 2007-11-22 | Microsoft Corporation | Deploying virtual machine to host based on workload characterizations |
US10013268B2 (en) | 2006-08-29 | 2018-07-03 | Prometric Inc. | Performance-based testing system and method employing emulation and virtualization |
US9442607B2 (en) | 2006-12-04 | 2016-09-13 | Smart Technologies Inc. | Interactive input system and method |
US8826032B1 (en) | 2006-12-27 | 2014-09-02 | Netapp, Inc. | Systems and methods for network change discovery and host name resolution in storage network environments |
US20100030877A1 (en) * | 2007-02-23 | 2010-02-04 | Mitsuru Yanagisawa | Virtual server system and physical server selecting method |
JP5032191B2 (en) * | 2007-04-20 | 2012-09-26 | 株式会社日立製作所 | Cluster system configuration method and cluster system in server virtualization environment |
US8291411B2 (en) * | 2007-05-21 | 2012-10-16 | International Business Machines Corporation | Dynamic placement of virtual machines for managing violations of service level agreements (SLAs) |
US8374929B1 (en) | 2007-08-06 | 2013-02-12 | Gogrid, LLC | System and method for billing for hosted services |
US20090049449A1 (en) * | 2007-08-15 | 2009-02-19 | Srinidhi Varadarajan | Method and apparatus for operating system independent resource allocation and control |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
EP2587736A3 (en) * | 2007-09-26 | 2013-08-28 | Nicira, Inc. | Network operating system for managing and securing networks |
US7383327B1 (en) | 2007-10-11 | 2008-06-03 | Swsoft Holdings, Ltd. | Management of virtual and physical servers using graphic control panels |
US7941510B1 (en) | 2007-10-11 | 2011-05-10 | Parallels Holdings, Ltd. | Management of virtual and physical servers using central console |
US9462056B1 (en) * | 2007-10-31 | 2016-10-04 | Emc Corporation | Policy-based meta-data driven co-location of computation and datasets in the cloud |
US8127235B2 (en) | 2007-11-30 | 2012-02-28 | International Business Machines Corporation | Automatic increasing of capacity of a virtual space in a virtual world |
US7945647B2 (en) * | 2007-12-10 | 2011-05-17 | Oracle America, Inc. | Method and system for creating a virtual network path |
US7984123B2 (en) * | 2007-12-10 | 2011-07-19 | Oracle America, Inc. | Method and system for reconfiguring a virtual network path |
US8086739B2 (en) * | 2007-12-10 | 2011-12-27 | Oracle America, Inc. | Method and system for monitoring virtual wires |
US8095661B2 (en) * | 2007-12-10 | 2012-01-10 | Oracle America, Inc. | Method and system for scaling applications on a blade chassis |
US7962587B2 (en) * | 2007-12-10 | 2011-06-14 | Oracle America, Inc. | Method and system for enforcing resource constraints for virtual machines across migration |
US8370530B2 (en) * | 2007-12-10 | 2013-02-05 | Oracle America, Inc. | Method and system for controlling network traffic in a blade chassis |
US8194674B1 (en) | 2007-12-20 | 2012-06-05 | Quest Software, Inc. | System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses |
US8386610B2 (en) * | 2007-12-31 | 2013-02-26 | Netapp, Inc. | System and method for automatic storage load balancing in virtual server environments |
US8447993B2 (en) * | 2008-01-23 | 2013-05-21 | Palo Alto Research Center Incorporated | Integrated energy savings and business operations in data centers |
US20090210873A1 (en) * | 2008-02-15 | 2009-08-20 | International Business Machines Corporation | Re-tasking a managed virtual machine image in a virtualization data processing system |
US7970951B2 (en) * | 2008-02-29 | 2011-06-28 | Oracle America, Inc. | Method and system for media-based data transfer |
US7965714B2 (en) * | 2008-02-29 | 2011-06-21 | Oracle America, Inc. | Method and system for offloading network processing |
US7944923B2 (en) * | 2008-03-24 | 2011-05-17 | Oracle America, Inc. | Method and system for classifying network traffic |
US7503047B1 (en) * | 2008-04-08 | 2009-03-10 | International Business Machines Corporation | System and method for enhancing the sharing of application libraries between different JVM's and systems with a dynamic relocation based on usage patterns |
JP5075736B2 (en) * | 2008-05-27 | 2012-11-21 | 株式会社日立製作所 | System failure recovery method and system for virtual server |
US8739179B2 (en) * | 2008-06-30 | 2014-05-27 | Oracle America Inc. | Method and system for low-overhead data transfer |
US7941539B2 (en) * | 2008-06-30 | 2011-05-10 | Oracle America, Inc. | Method and system for creating a virtual router in a blade chassis to maintain connectivity |
US8099615B2 (en) * | 2008-06-30 | 2012-01-17 | Oracle America, Inc. | Method and system for power management in a virtual machine environment without disrupting network connectivity |
US20100017801A1 (en) * | 2008-07-18 | 2010-01-21 | Vmware, Inc. | Profile based creation of virtual machines in a virtualization environment |
US20100042723A1 (en) * | 2008-08-12 | 2010-02-18 | Srikanth Sundarrajan | Method and system for managing load in a network |
US8898418B2 (en) | 2008-08-26 | 2014-11-25 | International Business Machines Corporation | Method, apparatus and computer program for provisioning a storage volume to a virtual server |
US8418176B1 (en) | 2008-09-23 | 2013-04-09 | Gogrid, LLC | System and method for adapting virtual machine configurations for hosting across different hosting systems |
US8615556B1 (en) * | 2008-12-30 | 2013-12-24 | Symantec Corporation | Techniques for reducing broadcast messages |
US8336049B2 (en) * | 2009-02-05 | 2012-12-18 | Vmware, Inc. | Virtual machine utility computing method and system |
CA3081255C (en) | 2009-04-01 | 2023-08-22 | Nicira, Inc. | Method and apparatus for implementing and managing virtual switches |
CN102656562B (en) * | 2009-06-30 | 2015-12-09 | 思杰系统有限公司 | For selecting the method and system of desktop executing location |
FR2948247B1 (en) * | 2009-07-16 | 2011-12-09 | Univ Paris Curie | METHOD AND SYSTEM FOR HIGH PERFORMANCE AND AUTOMATED MANAGEMENT OF VIRTUAL NETWORKS. |
FR2948248B1 (en) | 2009-07-16 | 2011-08-19 | Univ Paris Curie | METHOD AND SYSTEM FOR STOLEN DEPLOYMENT AND ON REQUEST AT LEAST ONE VIRTUAL NETWORK. |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US7937438B1 (en) | 2009-12-07 | 2011-05-03 | Amazon Technologies, Inc. | Using virtual networking devices to manage external connections |
US9203747B1 (en) | 2009-12-07 | 2015-12-01 | Amazon Technologies, Inc. | Providing virtual networking device functionality for managed computer networks |
US9036504B1 (en) | 2009-12-07 | 2015-05-19 | Amazon Technologies, Inc. | Using virtual networking devices and routing information to associate network addresses with computing nodes |
US8995301B1 (en) | 2009-12-07 | 2015-03-31 | Amazon Technologies, Inc. | Using virtual networking devices to manage routing cost information |
US7991859B1 (en) | 2009-12-28 | 2011-08-02 | Amazon Technologies, Inc. | Using virtual networking devices to connect managed computer networks |
US8224971B1 (en) | 2009-12-28 | 2012-07-17 | Amazon Technologies, Inc. | Using virtual networking devices and routing information to initiate external actions |
US7953865B1 (en) | 2009-12-28 | 2011-05-31 | Amazon Technologies, Inc. | Using virtual networking devices to manage routing communications between connected computer networks |
US9245246B2 (en) * | 2010-04-22 | 2016-01-26 | International Business Machines Corporation | Capacity over-commit management in resource provisioning environments |
US8495512B1 (en) | 2010-05-20 | 2013-07-23 | Gogrid, LLC | System and method for storing a configuration of virtual servers in a hosting system |
JP2012032877A (en) * | 2010-07-28 | 2012-02-16 | Fujitsu Ltd | Program, method and apparatus for managing information processor |
JP5352890B2 (en) * | 2010-09-24 | 2013-11-27 | 株式会社日立製作所 | Computer system operation management method, computer system, and computer-readable medium storing program |
WO2012057733A1 (en) * | 2010-10-25 | 2012-05-03 | Hewlett-Packard Development Company, L.P. | Systems, methods, and devices for adjusting video conference parameters to maintain system performance |
US8966020B2 (en) | 2010-11-02 | 2015-02-24 | International Business Machines Corporation | Integration of heterogeneous computing systems into a hybrid computing system |
US8959220B2 (en) * | 2010-11-02 | 2015-02-17 | International Business Machines Corporation | Managing a workload of a plurality of virtual servers of a computing environment |
US9081613B2 (en) | 2010-11-02 | 2015-07-14 | International Business Machines Corporation | Unified resource manager providing a single point of control |
US9253016B2 (en) | 2010-11-02 | 2016-02-02 | International Business Machines Corporation | Management of a data network of a computing environment |
US8984109B2 (en) * | 2010-11-02 | 2015-03-17 | International Business Machines Corporation | Ensemble having one or more computing systems and a controller thereof |
TWI414161B (en) * | 2011-01-28 | 2013-11-01 | Univ Nat Chiao Tung | Method for load distribution |
US9288117B1 (en) | 2011-02-08 | 2016-03-15 | Gogrid, LLC | System and method for managing virtual and dedicated servers |
US8634415B2 (en) | 2011-02-16 | 2014-01-21 | Oracle International Corporation | Method and system for routing network traffic for a blade server |
US9858241B2 (en) | 2013-11-05 | 2018-01-02 | Oracle International Corporation | System and method for supporting optimized buffer utilization for packet processing in a networking device |
US8880657B1 (en) | 2011-06-28 | 2014-11-04 | Gogrid, LLC | System and method for configuring and managing virtual grids |
US8726083B1 (en) * | 2011-07-29 | 2014-05-13 | Emc Corporation | Synchronized taking of snapshot memory images of virtual machines and storage snapshots |
CN102427475B (en) * | 2011-12-08 | 2014-01-29 | 无锡城市云计算中心有限公司 | Load balance scheduling system in cloud computing environment |
CN103294552A (en) * | 2012-02-22 | 2013-09-11 | 鸿富锦精密工业(深圳)有限公司 | Method for increasing configuration quantity of virtual machines of server |
US9129124B2 (en) | 2012-04-12 | 2015-09-08 | Hewlett-Packard Development Company, L.P. | Dynamic provisioning of virtual systems |
US9952909B2 (en) * | 2012-06-20 | 2018-04-24 | Paypal, Inc. | Multiple service classes in a shared cloud |
US9531607B1 (en) | 2012-06-20 | 2016-12-27 | Amazon Technologies, Inc. | Resource manager |
US9086957B2 (en) | 2012-08-02 | 2015-07-21 | International Business Machines Corporation | Requesting a memory space by a memory controller |
US10185610B2 (en) * | 2013-06-24 | 2019-01-22 | Zte Tx Inc. | Method and system for adjusting the maximum duration of time-critical functions |
US9218207B1 (en) * | 2013-07-09 | 2015-12-22 | Ca, Inc. | Configuring virtualization environments |
US10229043B2 (en) | 2013-07-23 | 2019-03-12 | Intel Business Machines Corporation | Requesting memory spaces and resources using a memory controller |
US10419305B2 (en) * | 2013-07-26 | 2019-09-17 | International Business Machines Corporation | Visualization of workload distribution on server resources |
US9489327B2 (en) | 2013-11-05 | 2016-11-08 | Oracle International Corporation | System and method for supporting an efficient packet processing model in a network environment |
US9378067B1 (en) * | 2014-05-08 | 2016-06-28 | Springpath, Inc. | Automated load balancing across the distributed system of hybrid storage and compute nodes |
US10169169B1 (en) | 2014-05-08 | 2019-01-01 | Cisco Technology, Inc. | Highly available transaction logs for storing multi-tenant data sets on shared hybrid storage pools |
US9690608B2 (en) * | 2014-06-12 | 2017-06-27 | Vmware, Inc. | Method and system for managing hosts that run virtual machines within a cluster |
US9710381B2 (en) | 2014-06-18 | 2017-07-18 | International Business Machines Corporation | Method and apparatus for cache memory data processing |
CN104065738A (en) * | 2014-07-04 | 2014-09-24 | 云南电网公司 | Business system load balance method in intelligent automatic control |
CN104092782A (en) * | 2014-07-31 | 2014-10-08 | 武汉云雅科技有限公司 | Intelligent cloud cluster regulating and controlling method and system based on cloud computing |
US9712546B2 (en) | 2014-09-12 | 2017-07-18 | Level 3 Communications, Llc | Dynamic configuration of settings in response to DDOS attack |
EP3195644B1 (en) * | 2014-09-17 | 2018-04-18 | Telefonaktiebolaget LM Ericsson (publ) | Virtualization system |
CN105700955A (en) * | 2014-11-28 | 2016-06-22 | 英业达科技有限公司 | Resource allocation method for server system |
US9400674B2 (en) * | 2014-12-11 | 2016-07-26 | Amazon Technologies, Inc. | Managing virtual machine instances utilizing a virtual offload device |
US9424067B2 (en) * | 2014-12-11 | 2016-08-23 | Amazon Technologies, Inc. | Managing virtual machine instances utilizing an offload device |
US9886297B2 (en) | 2014-12-11 | 2018-02-06 | Amazon Technologies, Inc. | Systems and methods for loading a virtual machine monitor during a boot process |
US9292332B1 (en) | 2014-12-11 | 2016-03-22 | Amazon Technologies, Inc. | Live updates for virtual machine monitor |
US9329907B1 (en) | 2014-12-18 | 2016-05-03 | International Business Machines Corporation | Automated exploitation of virtual machine resource modifications |
US9535798B1 (en) | 2014-12-19 | 2017-01-03 | Amazon Technologies, Inc. | Systems and methods for maintaining virtual component checkpoints on an offload device |
US20160191320A1 (en) * | 2014-12-30 | 2016-06-30 | International Business Machines Corporation | Relocating an embedded cloud for fast configuration of a cloud computing environment |
US9424075B1 (en) * | 2015-01-30 | 2016-08-23 | Amazon Technologies, Inc. | Dynamic virtual partitioning for delayed queues |
US10489177B2 (en) | 2015-02-23 | 2019-11-26 | Red Hat Israel, Ltd. | Resource reconciliation in a virtualized computer system |
US9626512B1 (en) | 2015-03-30 | 2017-04-18 | Amazon Technologies, Inc. | Validating using an offload device security component |
US9667414B1 (en) | 2015-03-30 | 2017-05-30 | Amazon Technologies, Inc. | Validating using an offload device security component |
US10211985B1 (en) | 2015-03-30 | 2019-02-19 | Amazon Technologies, Inc. | Validating using an offload device security component |
US10243739B1 (en) | 2015-03-30 | 2019-03-26 | Amazon Technologies, Inc. | Validating using an offload device security component |
WO2016191276A1 (en) * | 2015-05-26 | 2016-12-01 | Alibaba Group Holding Limited | Method and system for allocating resources for virtual hosts |
US9798474B2 (en) * | 2015-09-25 | 2017-10-24 | International Business Machines Corporation | Software-defined storage system monitoring tool |
US10826785B2 (en) * | 2015-09-25 | 2020-11-03 | International Business Machines Corporation | Data traffic monitoring tool |
US9992276B2 (en) | 2015-09-25 | 2018-06-05 | International Business Machines Corporation | Self-expanding software defined computing cluster |
CN105306551A (en) * | 2015-09-29 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | Virtual host management system and method |
US9569277B1 (en) | 2016-01-29 | 2017-02-14 | International Business Machines Corporation | Rebalancing virtual resources for virtual machines based on multiple resource capacities |
US10284636B2 (en) | 2016-09-20 | 2019-05-07 | International Business Machines Corporation | Dynamic shared server resource allocation |
US10956365B2 (en) | 2018-07-09 | 2021-03-23 | Cisco Technology, Inc. | System and method for garbage collecting inline erasure coded data for a distributed log structured storage system |
US10642689B2 (en) | 2018-07-09 | 2020-05-05 | Cisco Technology, Inc. | System and method for inline erasure coding for a distributed log structured storage system |
US10761821B1 (en) * | 2019-03-27 | 2020-09-01 | Sap Se | Object oriented programming model for graphics processing units (GPUS) |
US11886921B2 (en) | 2021-03-04 | 2024-01-30 | International Business Machines Corporation | Serverless runtime container allocation |
Citations (145)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3377624A (en) | 1966-01-07 | 1968-04-09 | Ibm | Memory protection system |
US4177510A (en) | 1973-11-30 | 1979-12-04 | Compagnie Internationale pour l'Informatique, CII Honeywell Bull | Protection of data in an information multiprocessing system by implementing a concept of rings to represent the different levels of privileges among processes |
JPS642145A (en) * | 1987-06-25 | 1989-01-06 | Fujitsu Ltd | Resource control system for virtual computer system |
US5189667A (en) | 1990-03-01 | 1993-02-23 | Kabushiki Kaisha Toshiba | Method and apparatus for controlling call processing based upon load conditions |
US5212793A (en) | 1991-09-04 | 1993-05-18 | International Business Machines Corp. | Generic initiators |
US5226160A (en) | 1989-07-18 | 1993-07-06 | Visage | Method of and system for interactive video-audio-computer open architecture operation |
US5249290A (en) | 1991-02-22 | 1993-09-28 | At&T Bell Laboratories | Method of and apparatus for operating a client/server computer network |
US5263147A (en) | 1991-03-01 | 1993-11-16 | Hughes Training, Inc. | System for providing high security for personal computers and workstations |
US5325530A (en) | 1993-01-29 | 1994-06-28 | International Business Machines Corporation | Controller for sequential programming tools executed in a parallel computing environment |
US5437032A (en) | 1993-11-04 | 1995-07-25 | International Business Machines Corporation | Task scheduler for a miltiprocessor system |
US5528753A (en) | 1994-06-30 | 1996-06-18 | International Business Machines Corporation | System and method for enabling stripped object software monitoring in a computer system |
US5572680A (en) | 1992-12-18 | 1996-11-05 | Fujitsu Limited | Method and apparatus for processing and transferring data to processor and/or respective virtual processor corresponding to destination logical processor number |
US5584023A (en) | 1993-12-27 | 1996-12-10 | Hsu; Mike S. C. | Computer system including a transparent and secure file transform mechanism |
US5603020A (en) | 1993-10-08 | 1997-02-11 | Fujitsu Limited | Method for detecting file names by informing the task of the identification of the directory antecedent to the file |
US5623492A (en) | 1995-03-24 | 1997-04-22 | U S West Technologies, Inc. | Methods and systems for managing bandwidth resources in a fast packet switching network |
US5636371A (en) | 1995-06-07 | 1997-06-03 | Bull Hn Information Systems Inc. | Virtual network mechanism to access well known port application programs running on a single host system |
US5640595A (en) | 1993-06-29 | 1997-06-17 | International Business Machines Corporation | Multimedia resource reservation system with graphical interface for manual input of resource reservation value |
US5692047A (en) | 1995-12-08 | 1997-11-25 | Sun Microsystems, Inc. | System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources |
US5706097A (en) | 1995-11-13 | 1998-01-06 | Eastman Kodak Company | Index print with a digital recording medium containing still images, motion sequences, and sound sequences |
US5706453A (en) | 1995-02-06 | 1998-01-06 | Cheng; Yang-Leh | Intelligent real-time graphic-object to database linking-actuator for enabling intuitive on-screen changes and control of system configuration |
US5708774A (en) | 1996-07-23 | 1998-01-13 | International Business Machines Corporation | Automated testing of software application interfaces, object methods and commands |
US5719854A (en) | 1994-11-23 | 1998-02-17 | Lucent Technologies Inc. | Efficiently providing multiple grades of service with protection against overloads in shared resources |
US5727203A (en) | 1995-03-31 | 1998-03-10 | Sun Microsystems, Inc. | Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache |
US5748614A (en) | 1995-06-09 | 1998-05-05 | Siemens Aktiengesellschaft | Method for scheduling message cells leaving an ATM node |
US5752003A (en) | 1995-07-14 | 1998-05-12 | 3 Com Corporation | Architecture for managing traffic in a virtual LAN environment |
US5761477A (en) | 1995-12-04 | 1998-06-02 | Microsoft Corporation | Methods for safe and efficient implementations of virtual machines |
US5764889A (en) | 1996-09-26 | 1998-06-09 | International Business Machines Corporation | Method and apparatus for creating a security environment for a user task in a client/server system |
US5781550A (en) | 1996-02-02 | 1998-07-14 | Digital Equipment Corporation | Transparent and secure network gateway |
US5799173A (en) | 1994-07-25 | 1998-08-25 | International Business Machines Corporation | Dynamic workload balancing |
US5809527A (en) | 1993-12-23 | 1998-09-15 | Unisys Corporation | Outboard file cache system |
US5828893A (en) | 1992-12-24 | 1998-10-27 | Motorola, Inc. | System and method of communicating between trusted and untrusted computer systems |
US5838916A (en) | 1996-03-14 | 1998-11-17 | Domenikos; Steven D. | Systems and methods for executing application programs from a memory device linked to a server |
US5838686A (en) | 1994-04-22 | 1998-11-17 | Thomson Consumer Electronics, Inc. | System for dynamically allocating a scarce resource |
US5842002A (en) | 1994-06-01 | 1998-11-24 | Quantum Leap Innovations, Inc. | Computer virus trap |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
US5850399A (en) | 1997-04-04 | 1998-12-15 | Ascend Communications, Inc. | Hierarchical packet scheduling method and apparatus |
US5860004A (en) | 1996-07-03 | 1999-01-12 | Sun Microsystems, Inc. | Code generator for applications in distributed object systems |
US5864683A (en) | 1994-10-12 | 1999-01-26 | Secure Computing Corporartion | System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights |
US5889996A (en) | 1996-12-16 | 1999-03-30 | Novell Inc. | Accelerator for interpretive environments |
US5889956A (en) | 1995-07-19 | 1999-03-30 | Fujitsu Network Communications, Inc. | Hierarchical resource management with maximum allowable allocation boundaries |
US5892968A (en) | 1995-10-16 | 1999-04-06 | Hitachi, Ltd. | Multimedia data transferring method |
US5905859A (en) | 1997-01-09 | 1999-05-18 | International Business Machines Corporation | Managed network device security method and apparatus |
US5913024A (en) | 1996-02-09 | 1999-06-15 | Secure Computing Corporation | Secure server utilizing separate protocol stacks |
US5915085A (en) | 1997-02-28 | 1999-06-22 | International Business Machines Corporation | Multiple resource or security contexts in a multithreaded application |
US5915095A (en) | 1995-08-08 | 1999-06-22 | Ncr Corporation | Method and apparatus for balancing processing requests among a plurality of servers based on measurable characteristics off network node and common application |
US5918018A (en) | 1996-02-09 | 1999-06-29 | Secure Computing Corporation | System and method for achieving network separation |
US5920699A (en) | 1996-11-07 | 1999-07-06 | Hewlett-Packard Company | Broadcast isolation and level 3 network switch |
US5933603A (en) | 1995-10-27 | 1999-08-03 | Emc Corporation | Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location |
WO1999039261A1 (en) | 1997-10-09 | 1999-08-05 | The Learning Company | Windows api trapping system |
US5937159A (en) | 1997-03-28 | 1999-08-10 | Data General Corporation | Secure computer system |
US5956481A (en) | 1997-02-06 | 1999-09-21 | Microsoft Corporation | Method and apparatus for protecting data files on a computer from virus infection |
US5961583A (en) | 1996-11-22 | 1999-10-05 | International Business Machines Corporation | Method and system for using the event wait list anchor as a lock for events |
US5978373A (en) | 1997-07-11 | 1999-11-02 | Ag Communication Systems Corporation | Wide area network system providing secure transmission |
US5982748A (en) | 1996-10-03 | 1999-11-09 | Nortel Networks Corporation | Method and apparatus for controlling admission of connection requests |
US5987524A (en) | 1997-04-17 | 1999-11-16 | Fujitsu Limited | Local area network system and router unit |
US5991812A (en) | 1997-01-24 | 1999-11-23 | Controlnet, Inc. | Methods and apparatus for fair queuing over a network |
US5999963A (en) | 1997-11-07 | 1999-12-07 | Lucent Technologies, Inc. | Move-to-rear list scheduling |
US6016318A (en) | 1996-07-12 | 2000-01-18 | Nec Corporation | Virtual private network system over public mobile data network and virtual LAN |
US6018527A (en) | 1996-08-13 | 2000-01-25 | Nortel Networks Corporation | Queue service interval based cell scheduler with hierarchical queuing configurations |
US6023721A (en) | 1997-05-14 | 2000-02-08 | Citrix Systems, Inc. | Method and system for allowing a single-user application executing in a multi-user environment to create objects having both user-global and system global visibility |
US6038608A (en) | 1996-11-25 | 2000-03-14 | Nec Corporation | Virtual LAN system |
US6038609A (en) | 1997-04-04 | 2000-03-14 | Telefonaktiebolaget Lm Ericsson | Method, communication network and service access interface for communications in an open system interconnection environment |
US6047325A (en) | 1997-10-24 | 2000-04-04 | Jain; Lalit | Network device for supporting construction of virtual local area networks on arbitrary local and wide area computer networks |
US6055617A (en) | 1997-08-29 | 2000-04-25 | Sequent Computer Systems, Inc. | Virtual address window for accessing physical memory in a computer system |
US6061349A (en) | 1995-11-03 | 2000-05-09 | Cisco Technology, Inc. | System and method for implementing multiple IP addresses on multiple ports |
US6065118A (en) | 1996-08-09 | 2000-05-16 | Citrix Systems, Inc. | Mobile code isolation cage |
US6075938A (en) | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US6075791A (en) | 1997-10-28 | 2000-06-13 | Lucent Technologies Inc. | System for guaranteeing data transfer rates and delays in packet networks |
US6078929A (en) | 1996-06-07 | 2000-06-20 | At&T | Internet file system |
US6078957A (en) | 1998-11-20 | 2000-06-20 | Network Alchemy, Inc. | Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system |
US6086623A (en) | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | Method and implementation for intercepting and processing system calls in programmed digital computer to emulate retrograde operating system |
US6092178A (en) | 1998-09-03 | 2000-07-18 | Sun Microsystems, Inc. | System for responding to a resource request |
US6094674A (en) | 1994-05-06 | 2000-07-25 | Hitachi, Ltd. | Information processing system and information processing method and quality of service supplying method for use with the system |
US6101543A (en) | 1996-10-25 | 2000-08-08 | Digital Equipment Corporation | Pseudo network adapter for frame capture, encapsulation and encryption |
US6108759A (en) | 1995-02-23 | 2000-08-22 | Powerquest Corporation | Manipulation of partitions holding advanced file systems |
US6108701A (en) | 1998-07-20 | 2000-08-22 | Lucent Technologies, Inc. | Soft switch extension for internet protocol applications |
US6122673A (en) | 1998-07-22 | 2000-09-19 | Fore Systems, Inc. | Port scheduler and method for scheduling service providing guarantees, hierarchical rate limiting with/without overbooking capability |
US6154776A (en) | 1998-03-20 | 2000-11-28 | Sun Microsystems, Inc. | Quality of service allocation on a network |
US6154778A (en) | 1998-05-19 | 2000-11-28 | Hewlett-Packard Company | Utility-based multi-category quality-of-service negotiation in distributed systems |
US6161139A (en) | 1998-07-10 | 2000-12-12 | Encommerce, Inc. | Administrative roles that govern access to administrative functions |
US6167520A (en) | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
US6172981B1 (en) | 1997-10-30 | 2001-01-09 | International Business Machines Corporation | Method and system for distributing network routing functions to local area network stations |
US6189046B1 (en) | 1997-03-27 | 2001-02-13 | Hewlett-Packard Company | Mechanism and method for merging cached location information in a distributed object environment |
US6192389B1 (en) | 1997-03-28 | 2001-02-20 | International Business Machines Corporation | Method and apparatus for transferring file descriptors in a multiprocess, multithreaded client/server system |
US6192512B1 (en) | 1998-09-24 | 2001-02-20 | International Business Machines Corporation | Interpreter with virtualized interface |
US6230203B1 (en) | 1995-10-20 | 2001-05-08 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
US6240463B1 (en) | 1998-11-24 | 2001-05-29 | Lucent Technologies Inc. | Router placement methods and apparatus for designing IP networks with performance guarantees |
US6247057B1 (en) | 1998-10-22 | 2001-06-12 | Microsoft Corporation | Network server supporting multiple instance of services to operate concurrently by having endpoint mapping subsystem for mapping virtual network names to virtual endpoint IDs |
US6259699B1 (en) | 1997-12-30 | 2001-07-10 | Nexabit Networks, Llc | System architecture for and method of processing packets and/or cells in a common switch |
US6266678B1 (en) | 1998-12-31 | 2001-07-24 | Computer Associates Think, Inc. | System and method for dynamically viewing contents of a data file |
US6269404B1 (en) | 1995-07-14 | 2001-07-31 | 3Com Corporation | Virtual network architecture for connectionless LAN backbone |
US6279040B1 (en) | 1995-12-06 | 2001-08-21 | Industrial Technology Research Institute | Scalable architecture for media-on demand servers |
US6279039B1 (en) | 1996-04-03 | 2001-08-21 | Ncr Corporation | Resource management method and apparatus for maximizing multimedia performance of open systems |
US6282581B1 (en) | 1997-03-27 | 2001-08-28 | Hewlett-Packard Company | Mechanism for resource allocation and for dispatching incoming calls in a distributed object environment |
US6282703B1 (en) | 1998-10-29 | 2001-08-28 | International Business Machines Corporation | Statically linking an application process with a wrapper library |
US6286047B1 (en) | 1998-09-10 | 2001-09-04 | Hewlett-Packard Company | Method and system for automatic discovery of network services |
US6298479B1 (en) | 1998-05-29 | 2001-10-02 | Sun Microsystems, Inc. | Method and system for compiling and linking source files |
US6314558B1 (en) | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US6327622B1 (en) | 1998-09-03 | 2001-12-04 | Sun Microsystems, Inc. | Load balancing in a network environment |
US6336138B1 (en) | 1998-08-25 | 2002-01-01 | Hewlett-Packard Company | Template-driven approach for generating models on network services |
US6351775B1 (en) | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
US6353616B1 (en) | 1998-05-21 | 2002-03-05 | Lucent Technologies Inc. | Adaptive processor schedulor and method for reservation protocol message processing |
US6363053B1 (en) | 1999-02-08 | 2002-03-26 | 3Com Corporation | Method and apparatus for measurement-based conformance testing of service level agreements in networks |
US6370583B1 (en) | 1998-08-17 | 2002-04-09 | Compaq Information Technologies Group, L.P. | Method and apparatus for portraying a cluster of computer systems as having a single internet protocol image |
US6381228B1 (en) | 1999-01-15 | 2002-04-30 | Trw Inc. | Onboard control of demand assigned multiple access protocol for satellite ATM networks |
US6385638B1 (en) | 1997-09-04 | 2002-05-07 | Equator Technologies, Inc. | Processor resource distributor and method |
US6389448B1 (en) | 1999-12-06 | 2002-05-14 | Warp Solutions, Inc. | System and method for load balancing |
US6393484B1 (en) | 1999-04-12 | 2002-05-21 | International Business Machines Corp. | System and method for controlled access to shared-medium public and semi-public internet protocol (IP) networks |
US6425003B1 (en) | 1999-01-22 | 2002-07-23 | Cisco Technology, Inc. | Method and apparatus for DNS resolution |
US6430622B1 (en) | 1999-09-22 | 2002-08-06 | International Business Machines Corporation | Methods, systems and computer program products for automated movement of IP addresses within a cluster |
US6434631B1 (en) | 1999-10-15 | 2002-08-13 | Lucent Technologies Inc. | Method and system for providing computer storage access with quality of service guarantees |
US6434742B1 (en) | 1999-05-10 | 2002-08-13 | Lucent Technologies Inc. | Symbol for automatically renaming symbols in files during the compiling of the files |
US6438134B1 (en) | 1998-08-19 | 2002-08-20 | Alcatel Canada Inc. | Two-component bandwidth scheduler having application in multi-class digital communications systems |
US6442164B1 (en) | 1999-06-03 | 2002-08-27 | Fujitsu Network Communications, Inc. | Method and system for allocating bandwidth and buffer resources to constant bit rate (CBR) traffic |
US6449652B1 (en) | 1999-01-04 | 2002-09-10 | Emc Corporation | Method and apparatus for providing secure access to a computer system resource |
US6457008B1 (en) | 1998-08-28 | 2002-09-24 | Oracle Corporation | Pluggable resource scheduling policies |
US6463459B1 (en) | 1999-01-22 | 2002-10-08 | Wall Data Incorporated | System and method for executing commands associated with specific virtual desktop |
US6470398B1 (en) | 1996-08-21 | 2002-10-22 | Compaq Computer Corporation | Method and apparatus for supporting a select () system call and interprocess communication in a fault-tolerant, scalable distributed computer environment |
US6487578B2 (en) | 1997-09-29 | 2002-11-26 | Intel Corporation | Dynamic feedback costing to enable adaptive control of resource utilization |
US6487663B1 (en) | 1998-10-19 | 2002-11-26 | Realnetworks, Inc. | System and method for regulating the transmission of media data |
US6490670B1 (en) | 1998-04-24 | 2002-12-03 | International Business Machines Corporation | Method and apparatus for efficiently allocating objects in object oriented systems |
US6499137B1 (en) | 1998-10-02 | 2002-12-24 | Microsoft Corporation | Reversible load-time dynamic linking |
US6529985B1 (en) | 2000-02-04 | 2003-03-04 | Ensim Corporation | Selective interception of system calls |
US6529950B1 (en) | 1999-06-17 | 2003-03-04 | International Business Machines Corporation | Policy-based multivariate application-level QoS negotiation for multimedia services |
US20030061338A1 (en) | 1998-06-27 | 2003-03-27 | Tony Stelliga | System for multi-layer broadband provisioning in computer networks |
US6542167B1 (en) | 2000-01-28 | 2003-04-01 | Wind River Systems, Inc. | System and method for flexible software linking |
US6553413B1 (en) | 1998-07-14 | 2003-04-22 | Massachusetts Institute Of Technology | Content delivery network using edge-of-network servers for providing content delivery to a set of participating content providers |
US6560613B1 (en) | 2000-02-08 | 2003-05-06 | Ensim Corporation | Disambiguating file descriptors |
US6578068B1 (en) | 1999-08-31 | 2003-06-10 | Accenture Llp | Load balancer in environment services patterns |
US6578055B1 (en) | 2000-06-05 | 2003-06-10 | International Business Machines Corporation | Methods, system and computer program products for mirrored file access through assuming a privileged user level |
US6580721B1 (en) | 1998-08-11 | 2003-06-17 | Nortel Networks Limited | Routing and rate control in a universal transfer mode network |
US6647422B2 (en) | 1996-02-26 | 2003-11-11 | Network Engineering Technologies, Inc. | Web server employing multi-homed, modular framework |
US6658571B1 (en) | 1999-02-09 | 2003-12-02 | Secure Computing Corporation | Security framework for dynamically wrapping software applications executing in a computing system |
US6691312B1 (en) | 1999-03-19 | 2004-02-10 | University Of Massachusetts | Multicasting video |
US6711607B1 (en) | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
US6725456B1 (en) | 1999-11-29 | 2004-04-20 | Lucent Technologies Inc. | Methods and apparatus for ensuring quality of service in an operating system |
US6754716B1 (en) | 2000-02-11 | 2004-06-22 | Ensim Corporation | Restricting communication between network devices on a common network |
US6760775B1 (en) | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6779016B1 (en) | 1999-08-23 | 2004-08-17 | Terraspring, Inc. | Extensible computing system |
US6820117B1 (en) | 1999-10-18 | 2004-11-16 | Sun Microsystems, Inc. | Bandwidth management |
US6948003B1 (en) | 2000-03-15 | 2005-09-20 | Ensim Corporation | Enabling a service provider to provide intranet services |
US6976258B1 (en) | 1999-11-30 | 2005-12-13 | Ensim Corporation | Providing quality of service guarantees to virtual hosts |
US6985937B1 (en) | 2000-05-11 | 2006-01-10 | Ensim Corporation | Dynamically modifying the resources of a virtual server |
US7343421B1 (en) | 2000-02-14 | 2008-03-11 | Digital Asset Enterprises Llc | Restricting communication of selected processes to a set of specific network addresses |
US20090282101A1 (en) * | 1998-09-10 | 2009-11-12 | Vmware, Inc. | Mechanism for providing virtual machines for use by multiple users |
-
2000
- 2000-05-11 US US09/569,371 patent/US6985937B1/en not_active Ceased
-
2008
- 2008-01-09 US US11/971,778 patent/USRE42726E1/en not_active Expired - Lifetime
-
2011
- 2011-09-19 US US13/236,527 patent/USRE44686E1/en not_active Expired - Lifetime
Patent Citations (148)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3377624A (en) | 1966-01-07 | 1968-04-09 | Ibm | Memory protection system |
US4177510A (en) | 1973-11-30 | 1979-12-04 | Compagnie Internationale pour l'Informatique, CII Honeywell Bull | Protection of data in an information multiprocessing system by implementing a concept of rings to represent the different levels of privileges among processes |
JPS642145A (en) * | 1987-06-25 | 1989-01-06 | Fujitsu Ltd | Resource control system for virtual computer system |
US5226160A (en) | 1989-07-18 | 1993-07-06 | Visage | Method of and system for interactive video-audio-computer open architecture operation |
US5189667A (en) | 1990-03-01 | 1993-02-23 | Kabushiki Kaisha Toshiba | Method and apparatus for controlling call processing based upon load conditions |
US5249290A (en) | 1991-02-22 | 1993-09-28 | At&T Bell Laboratories | Method of and apparatus for operating a client/server computer network |
US5263147A (en) | 1991-03-01 | 1993-11-16 | Hughes Training, Inc. | System for providing high security for personal computers and workstations |
US5212793A (en) | 1991-09-04 | 1993-05-18 | International Business Machines Corp. | Generic initiators |
US5572680A (en) | 1992-12-18 | 1996-11-05 | Fujitsu Limited | Method and apparatus for processing and transferring data to processor and/or respective virtual processor corresponding to destination logical processor number |
US5828893A (en) | 1992-12-24 | 1998-10-27 | Motorola, Inc. | System and method of communicating between trusted and untrusted computer systems |
US5325530A (en) | 1993-01-29 | 1994-06-28 | International Business Machines Corporation | Controller for sequential programming tools executed in a parallel computing environment |
US5640595A (en) | 1993-06-29 | 1997-06-17 | International Business Machines Corporation | Multimedia resource reservation system with graphical interface for manual input of resource reservation value |
US5603020A (en) | 1993-10-08 | 1997-02-11 | Fujitsu Limited | Method for detecting file names by informing the task of the identification of the directory antecedent to the file |
US5437032A (en) | 1993-11-04 | 1995-07-25 | International Business Machines Corporation | Task scheduler for a miltiprocessor system |
US5809527A (en) | 1993-12-23 | 1998-09-15 | Unisys Corporation | Outboard file cache system |
US5584023A (en) | 1993-12-27 | 1996-12-10 | Hsu; Mike S. C. | Computer system including a transparent and secure file transform mechanism |
US5838686A (en) | 1994-04-22 | 1998-11-17 | Thomson Consumer Electronics, Inc. | System for dynamically allocating a scarce resource |
US6094674A (en) | 1994-05-06 | 2000-07-25 | Hitachi, Ltd. | Information processing system and information processing method and quality of service supplying method for use with the system |
US5842002A (en) | 1994-06-01 | 1998-11-24 | Quantum Leap Innovations, Inc. | Computer virus trap |
US5528753A (en) | 1994-06-30 | 1996-06-18 | International Business Machines Corporation | System and method for enabling stripped object software monitoring in a computer system |
US5799173A (en) | 1994-07-25 | 1998-08-25 | International Business Machines Corporation | Dynamic workload balancing |
US5864683A (en) | 1994-10-12 | 1999-01-26 | Secure Computing Corporartion | System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights |
US5719854A (en) | 1994-11-23 | 1998-02-17 | Lucent Technologies Inc. | Efficiently providing multiple grades of service with protection against overloads in shared resources |
US5706453A (en) | 1995-02-06 | 1998-01-06 | Cheng; Yang-Leh | Intelligent real-time graphic-object to database linking-actuator for enabling intuitive on-screen changes and control of system configuration |
US6108759A (en) | 1995-02-23 | 2000-08-22 | Powerquest Corporation | Manipulation of partitions holding advanced file systems |
US5623492A (en) | 1995-03-24 | 1997-04-22 | U S West Technologies, Inc. | Methods and systems for managing bandwidth resources in a fast packet switching network |
US5727203A (en) | 1995-03-31 | 1998-03-10 | Sun Microsystems, Inc. | Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache |
US5636371A (en) | 1995-06-07 | 1997-06-03 | Bull Hn Information Systems Inc. | Virtual network mechanism to access well known port application programs running on a single host system |
US5748614A (en) | 1995-06-09 | 1998-05-05 | Siemens Aktiengesellschaft | Method for scheduling message cells leaving an ATM node |
US5752003A (en) | 1995-07-14 | 1998-05-12 | 3 Com Corporation | Architecture for managing traffic in a virtual LAN environment |
US6269404B1 (en) | 1995-07-14 | 2001-07-31 | 3Com Corporation | Virtual network architecture for connectionless LAN backbone |
US5889956A (en) | 1995-07-19 | 1999-03-30 | Fujitsu Network Communications, Inc. | Hierarchical resource management with maximum allowable allocation boundaries |
US5915095A (en) | 1995-08-08 | 1999-06-22 | Ncr Corporation | Method and apparatus for balancing processing requests among a plurality of servers based on measurable characteristics off network node and common application |
US5892968A (en) | 1995-10-16 | 1999-04-06 | Hitachi, Ltd. | Multimedia data transferring method |
US6230203B1 (en) | 1995-10-20 | 2001-05-08 | Scientific-Atlanta, Inc. | System and method for providing statistics for flexible billing in a cable environment |
US5933603A (en) | 1995-10-27 | 1999-08-03 | Emc Corporation | Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location |
US6061349A (en) | 1995-11-03 | 2000-05-09 | Cisco Technology, Inc. | System and method for implementing multiple IP addresses on multiple ports |
US5706097A (en) | 1995-11-13 | 1998-01-06 | Eastman Kodak Company | Index print with a digital recording medium containing still images, motion sequences, and sound sequences |
US5761477A (en) | 1995-12-04 | 1998-06-02 | Microsoft Corporation | Methods for safe and efficient implementations of virtual machines |
US6279040B1 (en) | 1995-12-06 | 2001-08-21 | Industrial Technology Research Institute | Scalable architecture for media-on demand servers |
US5692047A (en) | 1995-12-08 | 1997-11-25 | Sun Microsystems, Inc. | System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sources |
US5781550A (en) | 1996-02-02 | 1998-07-14 | Digital Equipment Corporation | Transparent and secure network gateway |
US5913024A (en) | 1996-02-09 | 1999-06-15 | Secure Computing Corporation | Secure server utilizing separate protocol stacks |
US5918018A (en) | 1996-02-09 | 1999-06-29 | Secure Computing Corporation | System and method for achieving network separation |
US6647422B2 (en) | 1996-02-26 | 2003-11-11 | Network Engineering Technologies, Inc. | Web server employing multi-homed, modular framework |
US5838916A (en) | 1996-03-14 | 1998-11-17 | Domenikos; Steven D. | Systems and methods for executing application programs from a memory device linked to a server |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
US6279039B1 (en) | 1996-04-03 | 2001-08-21 | Ncr Corporation | Resource management method and apparatus for maximizing multimedia performance of open systems |
US6078929A (en) | 1996-06-07 | 2000-06-20 | At&T | Internet file system |
US5860004A (en) | 1996-07-03 | 1999-01-12 | Sun Microsystems, Inc. | Code generator for applications in distributed object systems |
US6016318A (en) | 1996-07-12 | 2000-01-18 | Nec Corporation | Virtual private network system over public mobile data network and virtual LAN |
US5708774A (en) | 1996-07-23 | 1998-01-13 | International Business Machines Corporation | Automated testing of software application interfaces, object methods and commands |
US6065118A (en) | 1996-08-09 | 2000-05-16 | Citrix Systems, Inc. | Mobile code isolation cage |
US6018527A (en) | 1996-08-13 | 2000-01-25 | Nortel Networks Corporation | Queue service interval based cell scheduler with hierarchical queuing configurations |
US6470398B1 (en) | 1996-08-21 | 2002-10-22 | Compaq Computer Corporation | Method and apparatus for supporting a select () system call and interprocess communication in a fault-tolerant, scalable distributed computer environment |
US6314558B1 (en) | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US5764889A (en) | 1996-09-26 | 1998-06-09 | International Business Machines Corporation | Method and apparatus for creating a security environment for a user task in a client/server system |
US5982748A (en) | 1996-10-03 | 1999-11-09 | Nortel Networks Corporation | Method and apparatus for controlling admission of connection requests |
US6101543A (en) | 1996-10-25 | 2000-08-08 | Digital Equipment Corporation | Pseudo network adapter for frame capture, encapsulation and encryption |
US5920699A (en) | 1996-11-07 | 1999-07-06 | Hewlett-Packard Company | Broadcast isolation and level 3 network switch |
US6167520A (en) | 1996-11-08 | 2000-12-26 | Finjan Software, Inc. | System and method for protecting a client during runtime from hostile downloadables |
US5961583A (en) | 1996-11-22 | 1999-10-05 | International Business Machines Corporation | Method and system for using the event wait list anchor as a lock for events |
US6038608A (en) | 1996-11-25 | 2000-03-14 | Nec Corporation | Virtual LAN system |
US5889996A (en) | 1996-12-16 | 1999-03-30 | Novell Inc. | Accelerator for interpretive environments |
US5905859A (en) | 1997-01-09 | 1999-05-18 | International Business Machines Corporation | Managed network device security method and apparatus |
US5991812A (en) | 1997-01-24 | 1999-11-23 | Controlnet, Inc. | Methods and apparatus for fair queuing over a network |
US5956481A (en) | 1997-02-06 | 1999-09-21 | Microsoft Corporation | Method and apparatus for protecting data files on a computer from virus infection |
US5915085A (en) | 1997-02-28 | 1999-06-22 | International Business Machines Corporation | Multiple resource or security contexts in a multithreaded application |
US6189046B1 (en) | 1997-03-27 | 2001-02-13 | Hewlett-Packard Company | Mechanism and method for merging cached location information in a distributed object environment |
US6282581B1 (en) | 1997-03-27 | 2001-08-28 | Hewlett-Packard Company | Mechanism for resource allocation and for dispatching incoming calls in a distributed object environment |
US5937159A (en) | 1997-03-28 | 1999-08-10 | Data General Corporation | Secure computer system |
US6192389B1 (en) | 1997-03-28 | 2001-02-20 | International Business Machines Corporation | Method and apparatus for transferring file descriptors in a multiprocess, multithreaded client/server system |
US6038609A (en) | 1997-04-04 | 2000-03-14 | Telefonaktiebolaget Lm Ericsson | Method, communication network and service access interface for communications in an open system interconnection environment |
US5905730A (en) | 1997-04-04 | 1999-05-18 | Ascend Communications, Inc. | High speed packet scheduling method and apparatus |
US5850399A (en) | 1997-04-04 | 1998-12-15 | Ascend Communications, Inc. | Hierarchical packet scheduling method and apparatus |
US5987524A (en) | 1997-04-17 | 1999-11-16 | Fujitsu Limited | Local area network system and router unit |
US6023721A (en) | 1997-05-14 | 2000-02-08 | Citrix Systems, Inc. | Method and system for allowing a single-user application executing in a multi-user environment to create objects having both user-global and system global visibility |
US6351775B1 (en) | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
US6075938A (en) | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US6086623A (en) | 1997-06-30 | 2000-07-11 | Sun Microsystems, Inc. | Method and implementation for intercepting and processing system calls in programmed digital computer to emulate retrograde operating system |
US5978373A (en) | 1997-07-11 | 1999-11-02 | Ag Communication Systems Corporation | Wide area network system providing secure transmission |
US6055617A (en) | 1997-08-29 | 2000-04-25 | Sequent Computer Systems, Inc. | Virtual address window for accessing physical memory in a computer system |
US6385638B1 (en) | 1997-09-04 | 2002-05-07 | Equator Technologies, Inc. | Processor resource distributor and method |
US6487578B2 (en) | 1997-09-29 | 2002-11-26 | Intel Corporation | Dynamic feedback costing to enable adaptive control of resource utilization |
WO1999039261A1 (en) | 1997-10-09 | 1999-08-05 | The Learning Company | Windows api trapping system |
US6047325A (en) | 1997-10-24 | 2000-04-04 | Jain; Lalit | Network device for supporting construction of virtual local area networks on arbitrary local and wide area computer networks |
US6075791A (en) | 1997-10-28 | 2000-06-13 | Lucent Technologies Inc. | System for guaranteeing data transfer rates and delays in packet networks |
US6172981B1 (en) | 1997-10-30 | 2001-01-09 | International Business Machines Corporation | Method and system for distributing network routing functions to local area network stations |
US5999963A (en) | 1997-11-07 | 1999-12-07 | Lucent Technologies, Inc. | Move-to-rear list scheduling |
US6259699B1 (en) | 1997-12-30 | 2001-07-10 | Nexabit Networks, Llc | System architecture for and method of processing packets and/or cells in a common switch |
US6154776A (en) | 1998-03-20 | 2000-11-28 | Sun Microsystems, Inc. | Quality of service allocation on a network |
US6490670B1 (en) | 1998-04-24 | 2002-12-03 | International Business Machines Corporation | Method and apparatus for efficiently allocating objects in object oriented systems |
US6154778A (en) | 1998-05-19 | 2000-11-28 | Hewlett-Packard Company | Utility-based multi-category quality-of-service negotiation in distributed systems |
US6353616B1 (en) | 1998-05-21 | 2002-03-05 | Lucent Technologies Inc. | Adaptive processor schedulor and method for reservation protocol message processing |
US6298479B1 (en) | 1998-05-29 | 2001-10-02 | Sun Microsystems, Inc. | Method and system for compiling and linking source files |
US6625650B2 (en) | 1998-06-27 | 2003-09-23 | Intel Corporation | System for multi-layer broadband provisioning in computer networks |
US20030061338A1 (en) | 1998-06-27 | 2003-03-27 | Tony Stelliga | System for multi-layer broadband provisioning in computer networks |
US6161139A (en) | 1998-07-10 | 2000-12-12 | Encommerce, Inc. | Administrative roles that govern access to administrative functions |
US6553413B1 (en) | 1998-07-14 | 2003-04-22 | Massachusetts Institute Of Technology | Content delivery network using edge-of-network servers for providing content delivery to a set of participating content providers |
US6108701A (en) | 1998-07-20 | 2000-08-22 | Lucent Technologies, Inc. | Soft switch extension for internet protocol applications |
US6122673A (en) | 1998-07-22 | 2000-09-19 | Fore Systems, Inc. | Port scheduler and method for scheduling service providing guarantees, hierarchical rate limiting with/without overbooking capability |
US6580721B1 (en) | 1998-08-11 | 2003-06-17 | Nortel Networks Limited | Routing and rate control in a universal transfer mode network |
US6370583B1 (en) | 1998-08-17 | 2002-04-09 | Compaq Information Technologies Group, L.P. | Method and apparatus for portraying a cluster of computer systems as having a single internet protocol image |
US6438134B1 (en) | 1998-08-19 | 2002-08-20 | Alcatel Canada Inc. | Two-component bandwidth scheduler having application in multi-class digital communications systems |
US6336138B1 (en) | 1998-08-25 | 2002-01-01 | Hewlett-Packard Company | Template-driven approach for generating models on network services |
US6457008B1 (en) | 1998-08-28 | 2002-09-24 | Oracle Corporation | Pluggable resource scheduling policies |
US6327622B1 (en) | 1998-09-03 | 2001-12-04 | Sun Microsystems, Inc. | Load balancing in a network environment |
US6092178A (en) | 1998-09-03 | 2000-07-18 | Sun Microsystems, Inc. | System for responding to a resource request |
US6286047B1 (en) | 1998-09-10 | 2001-09-04 | Hewlett-Packard Company | Method and system for automatic discovery of network services |
US20090282101A1 (en) * | 1998-09-10 | 2009-11-12 | Vmware, Inc. | Mechanism for providing virtual machines for use by multiple users |
US6192512B1 (en) | 1998-09-24 | 2001-02-20 | International Business Machines Corporation | Interpreter with virtualized interface |
US6499137B1 (en) | 1998-10-02 | 2002-12-24 | Microsoft Corporation | Reversible load-time dynamic linking |
US6487663B1 (en) | 1998-10-19 | 2002-11-26 | Realnetworks, Inc. | System and method for regulating the transmission of media data |
US6247057B1 (en) | 1998-10-22 | 2001-06-12 | Microsoft Corporation | Network server supporting multiple instance of services to operate concurrently by having endpoint mapping subsystem for mapping virtual network names to virtual endpoint IDs |
US6282703B1 (en) | 1998-10-29 | 2001-08-28 | International Business Machines Corporation | Statically linking an application process with a wrapper library |
US6078957A (en) | 1998-11-20 | 2000-06-20 | Network Alchemy, Inc. | Method and apparatus for a TCP/IP load balancing and failover process in an internet protocol (IP) network clustering system |
US6240463B1 (en) | 1998-11-24 | 2001-05-29 | Lucent Technologies Inc. | Router placement methods and apparatus for designing IP networks with performance guarantees |
US6266678B1 (en) | 1998-12-31 | 2001-07-24 | Computer Associates Think, Inc. | System and method for dynamically viewing contents of a data file |
US6449652B1 (en) | 1999-01-04 | 2002-09-10 | Emc Corporation | Method and apparatus for providing secure access to a computer system resource |
US6381228B1 (en) | 1999-01-15 | 2002-04-30 | Trw Inc. | Onboard control of demand assigned multiple access protocol for satellite ATM networks |
US6425003B1 (en) | 1999-01-22 | 2002-07-23 | Cisco Technology, Inc. | Method and apparatus for DNS resolution |
US6463459B1 (en) | 1999-01-22 | 2002-10-08 | Wall Data Incorporated | System and method for executing commands associated with specific virtual desktop |
US6363053B1 (en) | 1999-02-08 | 2002-03-26 | 3Com Corporation | Method and apparatus for measurement-based conformance testing of service level agreements in networks |
US6658571B1 (en) | 1999-02-09 | 2003-12-02 | Secure Computing Corporation | Security framework for dynamically wrapping software applications executing in a computing system |
US6760775B1 (en) | 1999-03-05 | 2004-07-06 | At&T Corp. | System, method and apparatus for network service load and reliability management |
US6691312B1 (en) | 1999-03-19 | 2004-02-10 | University Of Massachusetts | Multicasting video |
US6393484B1 (en) | 1999-04-12 | 2002-05-21 | International Business Machines Corp. | System and method for controlled access to shared-medium public and semi-public internet protocol (IP) networks |
US6434742B1 (en) | 1999-05-10 | 2002-08-13 | Lucent Technologies Inc. | Symbol for automatically renaming symbols in files during the compiling of the files |
US6442164B1 (en) | 1999-06-03 | 2002-08-27 | Fujitsu Network Communications, Inc. | Method and system for allocating bandwidth and buffer resources to constant bit rate (CBR) traffic |
US6529950B1 (en) | 1999-06-17 | 2003-03-04 | International Business Machines Corporation | Policy-based multivariate application-level QoS negotiation for multimedia services |
US6779016B1 (en) | 1999-08-23 | 2004-08-17 | Terraspring, Inc. | Extensible computing system |
US6578068B1 (en) | 1999-08-31 | 2003-06-10 | Accenture Llp | Load balancer in environment services patterns |
US6430622B1 (en) | 1999-09-22 | 2002-08-06 | International Business Machines Corporation | Methods, systems and computer program products for automated movement of IP addresses within a cluster |
US6434631B1 (en) | 1999-10-15 | 2002-08-13 | Lucent Technologies Inc. | Method and system for providing computer storage access with quality of service guarantees |
US6820117B1 (en) | 1999-10-18 | 2004-11-16 | Sun Microsystems, Inc. | Bandwidth management |
US6725456B1 (en) | 1999-11-29 | 2004-04-20 | Lucent Technologies Inc. | Methods and apparatus for ensuring quality of service in an operating system |
US6976258B1 (en) | 1999-11-30 | 2005-12-13 | Ensim Corporation | Providing quality of service guarantees to virtual hosts |
US6389448B1 (en) | 1999-12-06 | 2002-05-14 | Warp Solutions, Inc. | System and method for load balancing |
US6542167B1 (en) | 2000-01-28 | 2003-04-01 | Wind River Systems, Inc. | System and method for flexible software linking |
US6529985B1 (en) | 2000-02-04 | 2003-03-04 | Ensim Corporation | Selective interception of system calls |
US6711607B1 (en) | 2000-02-04 | 2004-03-23 | Ensim Corporation | Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service |
US6560613B1 (en) | 2000-02-08 | 2003-05-06 | Ensim Corporation | Disambiguating file descriptors |
US6754716B1 (en) | 2000-02-11 | 2004-06-22 | Ensim Corporation | Restricting communication between network devices on a common network |
US7343421B1 (en) | 2000-02-14 | 2008-03-11 | Digital Asset Enterprises Llc | Restricting communication of selected processes to a set of specific network addresses |
US6948003B1 (en) | 2000-03-15 | 2005-09-20 | Ensim Corporation | Enabling a service provider to provide intranet services |
US6985937B1 (en) | 2000-05-11 | 2006-01-10 | Ensim Corporation | Dynamically modifying the resources of a virtual server |
USRE42726E1 (en) | 2000-05-11 | 2011-09-20 | Digital Asset Enterprises, L.L.C. | Dynamically modifying the resources of a virtual server |
US6578055B1 (en) | 2000-06-05 | 2003-06-10 | International Business Machines Corporation | Methods, system and computer program products for mirrored file access through assuming a privileged user level |
Non-Patent Citations (65)
Title |
---|
Aho, A. V. and Ullman J. D., Principles of Complier Design, Reading, MA, 1977, pp. vii-x, 359-362, 519-522. |
Boehm, B., "Managing Software Productivity and Reuse," IEEE Computer, vol. 32, No. 9, Sep. 1999, 3 pages. |
Campbell, A. T. and Keshav, S., "Quality of Service in Distributed Systems," Computer Communications 21, 1998, pp. 291-293. |
Corbato, F. J. et al. "An Experimental Timesharing System," Proceedings of the American Federation of Information Processing Societies Spring Joint Computer Conference, San Francisco, CA, May 1-3, 1962, pp. 335-344. |
Deutsch, P. and Grant, C.A., "A Flexible Measurement Tool for Software Systems," Information Processing 71 (Proc. of the IFIP Congress), 1971, pp. 320-326. |
Duffield, N.G., et al., "A Flexible Model for Resource Management in Virtual Private Networks," Computer Communication Review Conference, Computer Communication, ACM SIGCOMM '99 Conference, Cambridge, MA, Aug. 30, 1999-Sep. 3, 1999. pp. 95-108. |
Edjlali, G., et al., "History-based Access Control for Mobile Code," Fifth ACM Conference on Computer and Communication Security, Nov. 3-5, 1998, 19 pages. |
Egevang, K. and Francis P., RFC 1631, May 1994 [online], [retrieved Feb. 2, 2000]. Retrieved from the Internet: . |
Egevang, K. and Francis P., RFC 1631, May 1994 [online], [retrieved Feb. 2, 2000]. Retrieved from the Internet: <URL:faqs.org/rfcs/rfc1631.html>. |
Erlingsson, U. and Schneider, F. B., "SASI Enforcement of Security Policies: A Retrospective," Proc. New Security Paradigms Workshop, Apr. 2, 1999, pp. 1-17. |
Erlingsson, U. and Schnieder, F. B., IRM Enforcement of Java Stack Inspection, [online], Feb. 19, 2000 [retrieved on Apr. 2, 2002]. Retrieved from the Internet: . |
Erlingsson, U. and Schnieder, F. B., IRM Enforcement of Java Stack Inspection, [online], Feb. 19, 2000 [retrieved on Apr. 2, 2002]. Retrieved from the Internet: <URL: http://cs-tr.cs.cornell.edu/Dienst/UI2.0/ShowPage/ncstrl.cornell/TR2000-1786>. |
Evans, D. and Twyman, A., "Flexible Policy-Directed Code Safety," Proc. of 1999 IEEE Symposium on Security and Privacy, Oakland, CA, May 9-12, 1999, pp. 1-14. |
Fraser, T. et al., "Hardening COTS Software with Generic Software Wrappers," Proc. of 1999 IEEE Symposium on Security and Privacy, 1999, 15 pages. |
Goldberg, I. et al., "A Secure Environment For Untrusted Helper Applications (Confining the Wily Hacker)," Proc. of the Sixth USENIX UNIX Security Symposium, San Jose, CA, Jul. 1996, 14 pages. |
Goldberg, R. P., "Survey of Virtual Machine Research," IEEE Computer, Jun. 1974, pp. 34-45. |
Goyal, P. et al., "Start-time Fair Queuing: A Scheduling Algorithm for Integrated Services Packet Switching Networks," Proceedings of ACM SIGCOMM '96, San Francisco, CA, Aug. 1996, 14 pages. |
Goyal, P., "Packet Scheduling Algorithms for Integrated Services Networks," PhD Dissertation, University of Texas, Austin, TX, Aug. 1997. |
Goyal, P., et al., "A Hierarchical CPU Scheduler for Multimedia Operating Systems," Proceedings of the Second Symposium on Operating Systems Design and Implementations (OSDI'96), Seattle, WA, Oct. 1996, 15 pages. |
Goyal, Pawan et al., Generalized Guaranteed Rate Scheduling Algorithms: A Framework, IEEE/ACM Transactions, vol. 5, Issue: 4, Aug. 1997; pp. 561-571. |
Janosi, T., "Notes on 'A Hierarchical CPU Scheduler for Multimedia Operating Systems' by Pawan Goyal, Xingang Guo and Harrick Vin," [online], [retrieved on May 8, 2000]. Retrieved from the Internet: . |
Janosi, T., "Notes on ‘A Hierarchical CPU Scheduler for Multimedia Operating Systems’ by Pawan Goyal, Xingang Guo and Harrick Vin," [online], [retrieved on May 8, 2000]. Retrieved from the Internet: <URL:http://cs.cornell.edu/Info/Courses/Spring-97/CS614/goy.html>. |
Jonsoon, J., "Exploring the Importance of Preprocessing Operations in Real-Time Multiprocessor Scheduling," Proc. of the IEEE Real-Time Systems Symposium-Work-in-Progress session, San Francisco, CA, Dec. 4, 1997, pp. 31-34. |
Keshav, S., An Engineering Approach to Computer Networking: ATM Networks, the Internet, and the Telephone Network, Reading, MA, Addison-Wesley, 1997, pp. vii-xi, 85-115, 209-355, 395-444. |
Laurie, B. and Laurie, P., Apache The Definitive Guide, Sebastopol, CA, O'Reilly & Associates, Inc., Feb. 1999, pp. v-viii, 43-74. |
McDougall, R., et al., Resource Management, Upper Saddle River, NJ, Prentice Hall, 1999, pp. iii-xix, 135-191. |
Mitra, Debasis et al., "Hierarchical Virtual Partitioning: Algorithms for Virtual Private Networking," Bell Labs Technical Journal, Spring, 1997, http://cm.bell-labs.com/cm/ms/who/mitra/papers/globe.ps. |
Pandey, R. and Hashii, B., "Providing Fine-Grained Access Control for Mobile Programs Through Binary Editing," Technical Report TR98 08, University of California, Davis, CA, 1998, pp. 1-22. |
Pending United States patent application entitled "Disambiguating File Descriptors," U.S. Appl. No. 09/500,212, filing date Feb. 8, 2000. |
Pending United States patent application entitled "Dynamic Scheduling of Task Streams in a Multiple-Resource System to Ensure Task Stream Quality of Service," U.S. Appl. No. 09/498,450, filing date Feb. 4, 2000. |
Pending United States patent application entitled "Enabling a Service Provider to Provide Intranet Services," U.S. Appl. No. 09/526,980, filing date Mar. 15, 2000. |
Pending United States patent application entitled "Providing Quality of Service Guarantees to Virtual Hosts," U.S. Appl. No. 09/452,286, filing date Nov. 30, 1999. |
Pending United States patent application entitled "Restricting Communication Between Network Devices on a Common Network," U.S. Appl. No. 09/502,155, filing date Feb. 11, 2000. |
Pending United States patent application entitled "Restricting Communications of Selected Processes to a Set of Specific Network Addresses," U.S. Appl. No. 09/503,975, filing date Feb. 14, 2000. |
Pending United States patent application entitled "Selective Interception of System Calls," U.S. Appl. No. 09/499,098, filing date Feb. 4, 2000. |
Plummer, D. C., An Ethernet Address Resolution Protocol-or-Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware, Nov. 1982, [online], [retrieved on Jan. 17, 2000]. Retrieved from the Internet: . |
Plummer, D. C., An Ethernet Address Resolution Protocol—or—Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware, Nov. 1982, [online], [retrieved on Jan. 17, 2000]. Retrieved from the Internet: <URL: msg.net/kadow/answers/extras/rfc/rfc826.txt>. |
Rijsinghani, A., RFC 1624, May 1994, [online], [retrieved Feb. 2, 2000]. Retrieved from the internet: . |
Rijsinghani, A., RFC 1624, May 1994, [online], [retrieved Feb. 2, 2000]. Retrieved from the internet: <URL:faqs.org/rfcs/rfc1624.html>. |
Ritchie, D. M., "The Evolution of the Unix Time-Sharing System," AT&T Bell Laboratories Technical Journal 63, No. 6, Part 2, Oct. 1984, (originally presented 1979), 11 pages. |
Rubini, A., Linux Device Drivers, Sebastopol, CA, O'Reilly & Associates, Inc., 1998, pp. v-x, 13-40. |
Rusling, D. A., Files, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Files, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL: cebaf.gov/.about.saw/linux/tlk-html/node49.html>. |
Rusling, D. A., Identifiers, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Identifiers, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL:cebaf.gov/.about.saw/linux/tlk-html/node46.html>. |
Rusling, D. A., Linux Processes, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Linux Processes, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL:cebaf.gov/.about.saw/linux/tlk-html/node45.html>. |
Rusling, D. A., Processes, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Processes, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL: cebaf.gov/.about.saw/linux/tlk-html/node44.html>. |
Rusling, D. A., Scheduling in Multiprocessor Systems, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Scheduling in Multiprocessor Systems, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL:cebaf.gov/.about.saw/linux/tlk-html/node48.html>. |
Rusling, D. A., Scheduling, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: . |
Rusling, D. A., Scheduling, [online], [retrieved on Dec. 7, 1999]. Retrieved from the Internet: <URL: cebaf.gov/.about.saw/linux/tlk-html/node47.html>. |
Saltzer, J., H. and Schroeder, M. D., The Protection of Information in Computer Systems, [online], 1973, [retrieved on Apr. 2, 2002]. Retrieved from the Internet: . |
Saltzer, J., H. and Schroeder, M. D., The Protection of Information in Computer Systems, [online], 1973, [retrieved on Apr. 2, 2002]. Retrieved from the Internet: <URL: cs.virginia.edu.about.evans/cs551/saltzer/>. |
Stevens, R. W., UNIX Network Programming vol. 1 Networking APIs: Sockets and XTI, Upper Saddle River, NJ, Prentice Hall, 1998, pp. v-xiv, 29-53, 85-110, 727-760. |
Tanenbaum, A. S. and Woodhull, A. S., Operating Systems: Design and Implementation, Upper Saddle River, NJ, Prentice Hall, 1997, pp. vii-xiv, 1-46, 401-454. |
United States Patent and Trademark Office, Final Office Action, U.S. Appl. No. 09/569,371, mailed Jan. 8, 2004, 12 pages. |
United States Patent and Trademark Office, Non-Final Office Action, U.S. Appl. No. 09/569,371, mailed Jan. 25, 2005, 15 pages. |
United States Patent and Trademark Office, Non-Final Office Action, U.S. Appl. No. 09/569,371, mailed Jul. 18, 2003, 20 pages. |
United States Patent and Trademark Office, Non-Final Office Action, U.S. Appl. No. 09/569,371, mailed May 10, 2004, 18 pages. |
United States Patent and Trademark Office, Non-Final Office Action, U.S. Appl. No. 11/971,778, mailed Oct. 12, 2010, 17 pages. |
United States Patent and Trademark Office, Notice of Allowance, U.S. Appl. No. 09/569,371, mailed Jul. 11, 2005, 10 pages. |
United States Patent and Trademark Office, Notice of Allowance, U.S. Appl. No. 11/971,778, mailed Feb. 24, 2011, 5 pages. |
Wahbe, R., et al., "Efficient Software-Based Fault Isolation," Proc. of the Symposium on Operating System Principles, 1993, 14 pages. |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9400689B2 (en) | 2014-09-08 | 2016-07-26 | International Business Machines Corporation | Resource allocation/de-allocation and activation/deactivation |
US9405581B2 (en) | 2014-09-08 | 2016-08-02 | International Business Machines Corporation | Resource allocation/de-allocation and activation/deactivation |
US9680920B2 (en) | 2014-09-08 | 2017-06-13 | International Business Machines Corporation | Anticipatory resource allocation/activation and lazy de-allocation/deactivation |
US9686347B2 (en) | 2014-09-08 | 2017-06-20 | International Business Machines Corporation | Anticipatory resource allocation/activation and lazy de-allocation/deactivation |
US9880884B2 (en) | 2014-09-08 | 2018-01-30 | International Business Machines Corporation | Resource allocation/de-allocation and activation/deactivation |
US20180288028A1 (en) * | 2017-03-28 | 2018-10-04 | Cloudjumper Corporation | Methods and Systems for Providing Wake-On-Demand Access to Session Servers |
US10819702B2 (en) * | 2017-03-28 | 2020-10-27 | Netapp, Inc. | Methods and systems for providing wake-on-demand access to session servers |
US11671421B2 (en) | 2017-03-28 | 2023-06-06 | Netapp, Inc. | Methods and systems for providing wake-on-demand access to session servers |
US11188368B2 (en) | 2018-10-31 | 2021-11-30 | Nutanix, Inc. | Asynchronous workload migration control |
US11194620B2 (en) | 2018-10-31 | 2021-12-07 | Nutanix, Inc. | Virtual machine migration task management |
US10601740B1 (en) * | 2019-04-03 | 2020-03-24 | Progressive Casuality Insurance Company | Chatbot artificial intelligence |
Also Published As
Publication number | Publication date |
---|---|
USRE42726E1 (en) | 2011-09-20 |
US6985937B1 (en) | 2006-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE44686E1 (en) | Dynamically modifying the resources of a virtual server | |
US11068301B1 (en) | Application hosting in a distributed application execution system | |
JP3121584B2 (en) | Method and apparatus for controlling the number of servers in a multi-system cluster | |
US7140020B2 (en) | Dynamic management of virtual partition computer workloads through service level optimization | |
JP2940450B2 (en) | Job scheduling method and apparatus for cluster type computer | |
US5881238A (en) | System for assignment of work requests by identifying servers in a multisystem complex having a minimum predefined capacity utilization at lowest importance level | |
US7400633B2 (en) | Adaptive bandwidth throttling for network services | |
US6249800B1 (en) | Apparatus and accompanying method for assigning session requests in a multi-server sysplex environment | |
US7748005B2 (en) | System and method for allocating a plurality of resources between a plurality of computing domains | |
US7930344B2 (en) | Incremental run-time session balancing in a multi-node system | |
JP5654022B2 (en) | Dynamic load balancing and scaling of allocated cloud resources within the corporate network | |
US7437459B2 (en) | Calculation of service performance grades in a multi-node environment that hosts the services | |
CN112685167A (en) | Resource using method, electronic device and computer program product | |
CN114860456A (en) | Multi-scenario service elastic expansion method based on policy model and related components | |
CN117421099A (en) | Task scheduling method, device, equipment and storage medium | |
CN116541122A (en) | Task scheduling method, device and system of distributed container system | |
JP2001034591A (en) | Load distribution system and load distribution method for transaction processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DIGITAL ASSET ENTERPRISES, L.L.C., DELAWARE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ENSIM CORPORATION;REEL/FRAME:026938/0337 Effective date: 20070607 Owner name: ENSIM CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KESHAV, SRINIVASAN;SHARMA, ROSEN;CHUANG, SHAW;SIGNING DATES FROM 20010320 TO 20010503;REEL/FRAME:026938/0323 |
|
CC | Certificate of correction | ||
AS | Assignment |
Owner name: CUFER ASSET LTD. L.L.C., DELAWARE Free format text: MERGER;ASSIGNOR:DIGITAL ASSET ENTERPRISES, L.L.C.;REEL/FRAME:037118/0001 Effective date: 20150812 |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
AS | Assignment |
Owner name: INTELLECTUAL VENTURES I LLC, DELAWARE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CUFER ASSET LTD. L.L.C.;REEL/FRAME:046904/0748 Effective date: 20180918 |