US2011103396A1PendingUtilityA1

Selective link aggregation in a virtualized environment

Assignee: IBMPriority: Oct 29, 2009Filed: Oct 29, 2009Published: May 5, 2011
Est. expiryOct 29, 2029(~3.3 yrs left)· nominal 20-yr term from priority
H04L 45/56H04L 45/245Y02D30/50H04L 49/00H04L 49/356H04L 49/70
55
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method, system, and computer usable program product for selective link aggregation in a virtualized data processing environment are provided in the illustrative embodiments. A data packet is received at a switch. An identifier associated with the data packet is determined. The identifier corresponds to a logical partition in a logical partitioned data processing system. A lookup is performed in a data structure to determine a set of ports associated with the identifier. The set of ports is retrieved from the data structure. A port is selected from the set of ports and the data packet is transmitted from the port to the logical partition.

Claims

exact text as granted — not AI-modified
1 . A computer implemented method for selective link aggregation in a virtualized data processing environment, the computer implemented method comprising:
 receiving at a switch, a first data packet;   determining a first identifier associated with the first data packet, the first identifier corresponding to a first logical partition in a logical partitioned data processing system;   performing a lookup in a data structure to determine a set of ports associated with the first identifier;   retrieving from the data structure the set of ports;   selecting a first port from the set of ports; and   transmitting the first data packet from the first port to the first logical partition.   
     
     
         2 . The computer implemented method of  claim 1 , wherein the data structure is a participating port table accessible to the switch, the data structure comprising:
 a set of records, a record in the set of records associating an identifier with a port.   
     
     
         3 . The computer implemented method of  claim 1 , further comprising:
 manipulating the data structure, the manipulating including one of (i) adding, (ii) deleting, and (iii) modifying, an association between a second port and a second identifier in the data structure.   
     
     
         4 . The computer implemented method of claim,  3 , wherein the adding the association further comprises:
 receiving at the second port a second data packet;   determining the second identifier associated with the second data packet;   associating, responsive to the second port not already being associated with the second identifier in the data structure, the second port with the second identifier; and   adding information describing the association of the second port with the second identifier to the data structure.   
     
     
         5 . The computer implemented method of  claim 4 , responsive to the second port being already associated with a third identifier in the data structure, the computer implemented method further comprising:
 forming a determination whether an information describing the association of the second port and the third identifier should be modified;   modifying, responsive to the determination being true, the information describing association of the second port and the third identifier to an information describing an association of the second port and the second identifier in the data structure; and   adding, responsive to the determination being false, an information describing an association of the second port and the second identifier in the data structure.   
     
     
         6 . The computer implemented method of  claim 1 , wherein the selecting the first port further comprises:
 executing a port assignment algorithm, wherein the port assignment algorithm is one of (i) a round-robin selection algorithm, (ii) a utilization based selection algorithm, and (iii) a randomized selection algorithm.   
     
     
         7 . The computer implemented method of  claim 1 , further comprising:
 concluding, responsive to the set of ports including a plurality of ports, that the set of ports participate in a link aggregation channel; and   concluding, responsive to the set of ports including a single port, that the port is a part of a non-aggregated link.   
     
     
         8 . A computer usable program product comprising a computer usable storage medium including computer usable code for selective link aggregation in a virtualized data processing environment, the computer usable code comprising:
 computer usable code for receiving at a switch, a first data packet;   computer usable code for determining a first identifier associated with the first data packet, the first identifier corresponding to a first logical partition in a logical partitioned data processing system;   computer usable code for performing a lookup in a data structure to determine a set of ports associated with the first identifier;   computer usable code for retrieving from the data structure the set of ports;   computer usable code for selecting a first port from the set of ports; and   computer usable code for transmitting the first data packet from the first port to the first logical partition.   
     
     
         9 . The computer usable program product of  claim 8 , wherein the data structure is a participating port table accessible to the switch, the data structure comprising:
 a set of records, a record in the set of records associating an identifier with a port.   
     
     
         10 . The computer usable program product of  claim 8 , further comprising:
 computer usable code for manipulating the data structure, the computer usable code for manipulating including computer usable code for one of (i) adding, (ii) deleting, and (iii) modifying, an association between a second port and a second identifier in the data structure.   
     
     
         11 . The computer usable program product of  claim 10 , wherein the computer usable code for adding the association further comprises:
 computer usable code for receiving at the second port a second data packet;   computer usable code for determining the second identifier associated with the second data packet;   computer usable code for associating, responsive to the second port not already being associated with the second identifier in the data structure, the second port with the second identifier; and   computer usable code for adding information describing the association of the second port with the second identifier: to the data structure.   
     
     
         12 . The computer usable program product of  claim 11 , responsive to the second port being already associated with a third identifier in the data structure, the computer usable program product further comprising:
 computer usable code for forming a determination whether an information describing the association of the second port and the third identifier should be modified;   computer usable code for modifying, responsive to the determination being true, the information describing association of the second port and the third identifier to an information describing an association of the second port and the second identifier in the data structure; and   computer usable code for adding, responsive to the determination being false, an information describing an association of the second port and the second identifier in the data structure.   
     
     
         13 . The computer usable program product of  claim 8 , wherein the computer usable code for selecting the first port further comprises:
 computer usable code for executing a port assignment algorithm, wherein the port assignment algorithm is one of (i) a round-robin selection algorithm, (ii) a utilization based selection algorithm, and (iii) a randomized selection algorithm.   
     
     
         14 . The computer usable program product of claim.  8 , further comprising
 computer usable code for concluding, responsive to the set of ports including a plurality of ports, that the set of ports participate in a link aggregation channel; and   computer usable code for concluding, responsive to the set of ports including a single port, that the port is a part of a non-aggregated link.   
     
     
         15 . The computer program product of  claim 8 , wherein the computer usable code is stored in a computer readable storage medium in a data processing system, and wherein the computer usable code is transferred over a network from a remote data processing system. 
     
     
         16 . The computer program product of  claim 8 , wherein the computer usable code is stored in a computer readable storage medium in a server data processing system, and wherein the computer usable code is downloaded over a network to a remote data processing system for use in a computer readable storage medium associated with the remote data processing system. 
     
     
         17 . A data processing system for selective, link aggregation in a virtualized data processing environment, the data processing system comprising:
 a storage device including a storage medium, wherein the storage device stores computer usable program code; and   a processor, wherein the processor executes the computer usable program code, and wherein the computer usable program code comprises:   computer usable code for receiving at a switch, a first data packet;   computer usable code for determining a first identifier associated with the first data packet, the first identifier corresponding to a first logical partition in a logical partitioned data processing system;   computer usable code for performing a lookup in a data structure to determine a set of ports associated with the first identifier;   computer usable code for retrieving from the data structure the set of ports;   computer usable code for selecting a first port: from the set of ports; and   computer usable code for transmitting the first data packet from the first port to the first logical partition.   
     
     
         18 . The data processing system of  claim 17 , wherein the data structure is a participating port table accessible to the switch, the data structure comprising:
 a set of records, a record in the set of records associating an identifier with a port.   
     
     
         19 . The data processing system of  claim 17 , further comprising:
 computer usable code for manipulating the data structure, the computer usable code for manipulating including computer usable code for one of (i) adding, (ii) deleting, and (iii) modifying, an association between a second port and a second identifier in the data structure, wherein the computer usable code for adding the association further comprises:
 computer usable code for receiving at the second port a second data packet; 
 computer usable code for determining the second identifier associated with the second data packet; 
 computer usable code for associating, responsive to the second port not already being associated with the second identifier in the data structure, the second port with the second identifier; and 
 computer usable code for adding information describing the association of the second port with the second identifier to the data structure. 
   
     
     
         20 . The data processing system of  claim 19 , responsive to the second port being already associated with a third identifier in the data structure, the data processing system further comprising:
 computer usable code for forming a determination whether an information describing the association of the second port and the third identifier should be modified;   computer usable code for modifying, responsive to the determination being true, the information describing association of the second port and the third identifier to an information describing an association of the second port and the second identifier in the data structure; and   computer usable code for adding, responsive to the determination being false, an information describing an association of the second port and the second identifier in the data structure.

Join the waitlist — get patent alerts

Track US2011103396A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.