IP Library › Granted Patent US 8,775,544
Granted Patent B2
US 8,775,544 · App. 12/556,619 · Granted Jul 8, 2014

Methods and systems for dynamically switching between communications protocols

Inventor: Steven Michael Umbehocker (Mercer Island, WA)
Assignee: Citrix Systems, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,775,544
App. No.
12/556,619
Filed
Sep 10, 2009
Granted
Jul 8, 2014
Kind
B2
Art Unit
2454
USPC
709/240
Abstract

A method for dynamically switching between communications protocols used in communicating with each of a plurality of physical computing devices includes configuring, by a storage delivery management service, a storage system in a storage area network, to communicate, according to a first communications protocol with a first physical computing device executing a virtual machine, the storage system providing, to the virtual machine, access to a virtual storage resource. The storage delivery management service receives a request to migrate the virtual machine from the first physical computing device to a second physical computing device. The storage delivery management service configures the storage system to communicate with the second physical computing device according to a second communications protocol. The storage delivery management service transmits, to the second physical computing device, an identification of the storage system providing access to the virtual storage resource for the virtual machine.

Claims (47)

1. A method for dynamically switching between communications protocols used in communicating with each of a plurality of physical computing devices, the method comprising:

requesting, by a storage delivery management service executing on a first server, an enumeration of communication protocols supported by a storage system executing on a second server in a storage area network;

requesting, by the storage delivery management service, an enumeration of communication protocols supported by a first physical computing device executing a virtual machine;

identifying, by the storage delivery management service, a first communication protocol supported by both the storage system and the first physical computing device;

configuring, by the storage delivery management service, the storage system to communicate with the first physical computing device according to the first communications protocol, the storage system providing, to the virtual machine, access to a virtual storage resource;

receiving, by the storage delivery management service, a request to migrate the virtual machine from the first physical computing device to a second physical computing device;

reconfiguring, by the storage delivery management service, the storage system to communicate with the second physical computing device according to a second communications protocol supported by both the storage system and the second physical computing device;

migrating, by the storage delivery management service, to the second physical computing device, the virtual machine; and

transmitting, by the storage delivery management service, to the second physical computing device, an identification of the storage system providing access to the virtual storage resource for the migrated virtual machine.

2. The method of claim 1 further comprising migrating, by the storage delivery management service, to the second physical computing device, the virtual machine during execution of the virtual machine.

3. The method of claim 1 further comprising storing a state of execution of the virtual machine.

4. The method of claim 3 further comprising terminating execution of the virtual machine.

5. The method of claim 4 further comprising migrating, by the storage delivery management service, to the second physical computing device, the stored state of execution of the virtual machine and a virtual machine image associated with the terminated virtual machine.

6. The method of claim 1 further comprising configuring, by the storage delivery management service, the storage system, to communicate, according to a first storage protocol with the first physical computing device.

7. The method of claim 1 further comprising configuring, by the storage delivery management service, the storage system to communicate with the second physical computing device according to a second storage protocol.

8. The method of claim 1 further comprising disabling, by the storage delivery management service, access, by the first physical computing device, to the virtual drive provided by the storage system.

9. The method of claim 1 , further comprising:

requesting, by the storage delivery management service, an enumeration of communication protocols supported by the second physical computing device; and

identifying, by the storage delivery management service, the second communication protocol supported by both the storage system and the second physical computing device.

10. A system for dynamically switching between communications protocols used in communicating with each of a plurality of physical computing devices comprising:

a processor executing a host computing device communication component, by a storage delivery management service on a first server, receiving a request for migration of the virtual machine from a first physical computing device to a second physical computing device; and

a storage system communication component executing on the processor by the storage delivery management service and i) requesting, by the storage delivery management service, an enumeration of communication protocols supported by a storage system executing on a second server in a storage area network, ii) requesting, by the storage delivery management service, an enumeration of communication protocols supported by the first physical computing device executing the virtual machine, iii) identifying, by the storage delivery management service, a first communication protocol supported by both the storage system and the first physical computing device, iv) configuring the storage system to communicate with the first physical computing device, according to the first communications protocol, the storage system providing, to the virtual machine, access to a virtual storage resource, v) receiving a notification, from the host computing device communication component, of a migration of the virtual machine to the second physical computing device, and vi) reconfiguring the storage system to communicate with the second physical computing device according to a second communications protocol supported by both the storage system and the second physical computing device.

11. The system of claim 10 , wherein the host computing device communication component further comprises a receiver for receiving, from a first physical computing device executing a virtual machine, a request for migration of the virtual machine to a second physical computing device.

12. The system of claim 10 , wherein the host computing device communication component further comprises a receiver for receiving, from a third physical computing device, a request for migration of the virtual machine to a second physical computing device.

13. The system of claim 10 further comprising a migration management component, in communication with the host computing device communication component, migrating the virtual machine from the first physical computing device to the second physical computing device.

14. The system of claim 10 , wherein the host computing device communication component further comprises means for communicating, via an applications programming interface, with at least one of the first physical computing device and the second physical computing device.

15. The system of claim 10 , wherein the host computing device communication component further comprises means for communicating with a control operating system executing within the virtual machine executing on at least one of the first physical computing device and the second physical computing device.

16. The system of claim 10 , wherein the host computing device communication component further comprises means for communicating with a control operating system executing within a second virtual machine executing on at least one of the first physical computing device and the second physical computing device.

17. A system for dynamically switching between communications protocols used in communicating with each of a plurality of physical computing devices comprising:

means for requesting, by a storage delivery management service executing on a first server, an enumeration of communication protocols supported by a storage system executing on a second server in a storage area network;

means for requesting, by the storage delivery management service, an enumeration of communication protocols supported by a first physical computing device executing a virtual machine;

means for identifying, by the storage delivery management service, a first communication protocol supported by both the storage system and the first physical computing device;

means for configuring, by the storage delivery management service, the storage system, to communicate with the first physical computing device, according to the first communications protocol, the storage system providing, to the virtual machine, access to a virtual storage resource;

means for receiving, by the storage delivery management service, a request to migrate the virtual machine from the first physical computing device to a second physical computing device;

means for reconfiguring, by the storage delivery management service, the storage system to communicate with the second physical computing device according to a second communications protocol supported by both the storage system and the second physical computing device;

means for migrating, by the storage delivery management service, to the second physical computing device, the virtual machine; and

means for transmitting, by the storage delivery management service, to the second physical computing device, an identification of the storage system providing access to the virtual storage resource for the migrated virtual machine.

18. The system of claim 17 further comprising means for migrating, by the storage delivery management service, to the second physical computing device, the virtual machine during execution of the virtual machine.

19. The system of claim 17 further comprising means for storing a state of execution of the virtual machine.

20. The system of claim 19 further comprising means for terminating execution of the virtual machine.

21. The system of claim 20 further comprising means for migrating, by the storage delivery management service, to the second physical computing device, the stored state of execution of the virtual machine and a virtual machine image associated with the terminated virtual machine.

22. The system of claim 17 further comprising means for configuring, by the storage delivery management service, the storage system, to communicate, according to a first storage protocol with the first physical computing device.

23. The system of claim 17 further comprising means for configuring, by the storage delivery management service, the storage system to communicate with the second physical computing device according to a second storage protocol.

24. The system of claim 17 further comprising means for disabling, by the storage delivery management service, access, by the first physical computing device, to the virtual drive provided by the storage system.

25. The system of claim 17 , further comprising:

means for requesting, by the storage delivery management service, an enumeration of communication protocols supported by the second physical computing device; and

means for identifying, by the storage delivery management service, the second communication protocol supported by both the storage system and the second physical computing device.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2009
From: UMBEHOCKER, STEVEN MICHAEL
To: CITRIX SYSTEMS, INC.
Reel/Frame 023211/0859 →
Continuity (3)
Provisional Application 61149781 · Feb 4, 2009
Provisional Application 61149812 · Feb 4, 2009
Related Publication 20100199276A1 · Aug 5, 2010