Method and system of providing a virtual transport session
First Claim
Patent Images
1. A method comprising:
- receiving a first block-level storage command and a second block-level storage command at a host data processing system, whereinthe first block-level storage command is received from a first consumer,the second block-level storage command is received from a second consumer,the first block-level storage command and the second block-level storage command are each addressed to a target block-level storage device, andthe target block-level storage device is remotely coupled to the host data processing system via a network;
establishing a first virtual transport session, whereinthe first virtual transport session communicatively couples the host data processing system and the target block-level storage device, andthe first virtual transport session comprises a transport session established across the network between the host data processing system and the target block-level storage device;
establishing a second virtual transport session, whereinthe second virtual transport session communicatively couples the host data processing system and the target block-level storage device, andthe second virtual transport session comprises the transport session;
transmitting a first consumer message from the host data processing system to the target block-level storage device using the first transport session, whereinthe first consumer message comprises the first block-level storage command; and
transmitting a second consumer message from the host data processing system to the target block-level storage device using the second virtual transport session, whereinthe second consumer message comprises the second block-level storage command.
9 Assignments
0 Petitions
Accused Products
Abstract
A method and system of providing a virtual transport session is disclosed. According to one embodiment, a virtual transport session is provided by establishing a virtual transport session between an initiator module and a target module across a network, wherein the virtual transport session comprises a transport session. Thereafter, information is transferred between the initiator module and the target module using the virtual transport session. According to another embodiment, establishing a virtual transport session between an initiator module and a target module across a network comprises associating a globally unique identifier to an initiator module.
-
Citations
28 Claims
-
1. A method comprising:
-
receiving a first block-level storage command and a second block-level storage command at a host data processing system, wherein the first block-level storage command is received from a first consumer, the second block-level storage command is received from a second consumer, the first block-level storage command and the second block-level storage command are each addressed to a target block-level storage device, and the target block-level storage device is remotely coupled to the host data processing system via a network; establishing a first virtual transport session, wherein the first virtual transport session communicatively couples the host data processing system and the target block-level storage device, and the first virtual transport session comprises a transport session established across the network between the host data processing system and the target block-level storage device; establishing a second virtual transport session, wherein the second virtual transport session communicatively couples the host data processing system and the target block-level storage device, and the second virtual transport session comprises the transport session; transmitting a first consumer message from the host data processing system to the target block-level storage device using the first transport session, wherein the first consumer message comprises the first block-level storage command; and transmitting a second consumer message from the host data processing system to the target block-level storage device using the second virtual transport session, wherein the second consumer message comprises the second block-level storage command. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 21)
-
-
17. A system comprising:
-
a network; a host data processing system comprising a first initiator module and a second initiator module, wherein said host data processing system is coupled to the network; a target block-level storage device comprising a target module, wherein the target block-level storage device is coupled to the network; and a transport abstraction layer configured to receive a first block-level storage command and a second block-level storage command, wherein the first block-level storage command is received from the first initiator module, the second block-level storage command is received from the second initiator module, the first block-level storage command and the second block-level storage command are each addressed to the target module; establish a first virtual transport session between the first initiator module and the target module across said network, wherein the first virtual transport session communicatively couples the first initiator module and the target module, and the first virtual transport session comprises a transport session established across the network between the host data processing system and the target block-level storage device; establish a second virtual transport session between the second initiator module and the target module, wherein the second virtual transport session communicatively couples the second initiator module and the target module, and the second virtual transport session comprises the transport session; transfer a first consumer message to the target module using the first virtual transport session, wherein the first consumer message comprises the first block-level storage command; and transfer a second consumer message to the target module using the second virtual transport session, wherein the second consumer message comprises the second block-level storage command. - View Dependent Claims (18)
-
-
19. A non-transitory machine-readable storage medium having a plurality of instructions executable by a machine embodied therein, wherein said plurality of instructions when executed cause said machine to perform a method comprising:
-
receiving a first block-level storage command and a second block-level storage command at a host data processing system, wherein the first block-level storage command is received from a first consumer, the second block-level storage command is received from a second consumer, the first block-level storage command the second block-level storage command are each addressed to a target block-level storage device, and the target block-level storage device is remotely coupled to the host data processing system via a network; establishing a first virtual transport session, wherein the first virtual transport session communicatively couples the host data processing system and the target block-level storage device, and the first virtual transport session comprises a transport session established across the network between the host data processing system and the target block-level storage device; establishing a second virtual transport session, wherein the second virtual transport session communicatively couples the host data processing system and the target block-level storage device, and the second virtual transport session comprises the transport session; transmitting a first consumer message from the host data processing system to the target block-level storage device using the first virtual transport session, wherein the first consumer message comprises the first block-level storage command; and transmitting a second consumer message from the host data processing system to the target block-level storage device using the second virtual transport session, wherein the second consumer message comprises the second block-level storage command. - View Dependent Claims (20, 22, 23, 24, 25, 26, 27, 28)
-
Specification