US2015365335A1PendingUtilityA1

Adaptive Receive Path Learning To Facilitate Combining TCP Offloading And Network Device Teaming

Assignee: EMULEX CORPPriority: Dec 31, 2012Filed: Aug 26, 2015Published: Dec 17, 2015
Est. expiryDec 31, 2032(~6.4 yrs left)· nominal 20-yr term from priority
H04L 47/41H04L 47/125H04L 67/10H04L 47/765H04L 47/193Y02D30/50
29
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

One or more modules include a first portion that teams together multiple physical network interface ports of a computing system to appear as a single virtual network interface port to a switch to which the physical ports are linked. A second portion determines a receive port upon which a packet of a TCP session was received. A third portion assigns a transmit port to be the receive port, wherein the transmit port is used by the computing system to transmit packets of the TCP session. The third portion assigns the transmit port prior to a TCP offload engine (TOE) being enabled to offload from the system CPU processing of packets of the TCP session transceived on the assigned transmit/receive port. If a subsequent packet for the TCP session is received on a different second port, the transmit port is reassigned to be the second port.

Claims

exact text as granted — not AI-modified
I claim:  
     
         1 . A method, comprising:
 teaming together a plurality of physical network interface ports of a computing system to appear as a single virtual network interface port to a switch having a corresponding plurality of ports to which the plurality of physical ports are linked;   determining a receive port upon which a packet of a session was received, wherein the receive port is one of the plurality of physical network interface ports of the virtual network interface port; and   assigning a transmit port to be the receive port, wherein the transmit port is used by the computing system to transmit packets of the session;   wherein said assigning is performed prior to an offload engine of the computing system being enabled to offload, from a CPU of the computing system, processing of packets of the session on the assigned transmit/receive port.   
     
     
         2 . (canceled) 
     
     
         3 . (canceled) 
     
     
         4 . The method of  claim 1 , wherein the plurality of physical network interface ports are teamed together to appear as the single virtual network interface port to the switch according to the Link Aggregation Control Protocol (LACP) standard. 
     
     
         5 . The method of  claim 1 , wherein the plurality of physical network interface ports are teamed together to appear as the single virtual network interface port to the switch according to the IEEE 802.3ad teaming protocol standard. 
     
     
         6 . The method of  claim 1 , wherein the plurality of physical network interface ports comprise Ethernet ports. 
     
     
         7 . (canceled) 
     
     
         8 . A network device, the network device comprising:
 a plurality of physical network interface ports;   a single virtual network interface port operably coupled to a switch, the single virtual network interface port corresponding to the plurality of physical ports, wherein one or more of the plurality of physical network interface ports are active to communicate network data during one or more sessions, each session having a transmit port and a receive port assigned to the same physical network interface port of the plurality of physical network interface ports; and   a plurality of offload engines enabled to offload processing of network data, each session being associated with an offload engine of the plurality of offload engines.   
     
     
         9 - 20 . (canceled) 
     
     
         21 . The network device of  claim 8 , wherein the plurality of physical network interface ports are teamed together to appear as the single virtual network interface port to the switch according to the Link Aggregation Control Protocol (LACP) standard. 
     
     
         22 . The network device of  claim 8 , wherein the plurality of physical network interface ports are teamed together to appear as the single virtual network interface port to the switch according to the IEEE 802.3ad teaming protocol standard. 
     
     
         23 . The network device of  claim 8 , wherein the plurality of physical network interface ports comprise Ethernet ports. 
     
     
         24 . The network device of  claim 8 , wherein at least one of the one or more sessions is a Remote Direct Memory Management (RDMA) over Converged Ethernet (RoCE) session. 
     
     
         25 . The network device of  claim 8 , wherein at least one of the plurality of offload engines supports RoCE. 
     
     
         26 . A network device comprising:
 a plurality of ports;   a plurality of offload engines, each offload engine corresponding to a port of the plurality of ports; and   a switch operable to provide a virtual network interface for a single communication session by combining two or more of the ports of the plurality of ports, the single communication session being associated with an offload engine of the plurality of offload engines.   
     
     
         27 . The network device of  claim 26 , wherein the plurality of ports are teamed together to appear as a single virtual network interface port to the switch according to the Link Aggregation Control Protocol (LACP) standard. 
     
     
         28 . The network device of  claim 26 , wherein the plurality of ports are teamed together to appear as the single virtual network interface port to the switch according to the IEEE 802.3ad teaming protocol standard. 
     
     
         29 . The network device of  claim 26 , wherein the plurality ports comprise Ethernet ports. 
     
     
         30 . The network device of  claim 26 , wherein the communication session is a Remote Direct Memory Management (RDMA) over Converged Ethernet (RoCE) session. 
     
     
         31 . The network device of  claim 26 , wherein at least one of the plurality of offload engines supports RoCE. 
     
     
         32 . The network device of  claim 26 , wherein at least one of the plurality of offload engines is a Transmission Control Protocol (TCP) offload engine (TOE). 
     
     
         33 . The network device of  claim 8 , wherein at least one of the plurality of offload engines is a Transmission Control Protocol (TCP) offload engine (TOE). 
     
     
         34 . The method of  claim 1 , wherein the session is a Remote Direct Memory Management (RDMA) over Converged Ethernet (RoCE) session. 
     
     
         35 . The method of  claim 1 , wherein the offload engine supports RoCE.

Join the waitlist — get patent alerts

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

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