Split data path distributed network protocol
First Claim
1. A network node implementing a distributed TCP/IP network communication protocol stack, the protocol stack including a TCP layer and an IP layer, the TCP layer including a TCP management unit and a TCP data path unit, and the IP layer including an IP management unit and an IP data path unit, the network node comprising:
- a network host configured with the TCP management unit and the IP management unit; and
at least one I/O adapter coupled to the network host and configured with the TCP data path unit and the IP data path unit, thereby distributing the TCP data path unit and the IP data path unit onto the I/O adapter.
12 Assignments
0 Petitions
Accused Products
Abstract
A network node that implements a distributed TCP/IP network communication protocol stack, with the protocol stack including a TCP layer and an IP layer. The TCP layer includes a TCP management unit and a TCP data path unit, and the IP layer includes an IP management unit and an IP data path unit. The network node comprises a network host configured with the TCP management unit and the IP management unit, and at least one I/O adapter coupled to the network host and configured with the TCP data path unit and the IP data path unit. In this manner, the TCP data path unit and the IP data path unit are distributed onto the I/O adapter.
208 Citations
20 Claims
-
1. A network node implementing a distributed TCP/IP network communication protocol stack, the protocol stack including a TCP layer and an IP layer, the TCP layer including a TCP management unit and a TCP data path unit, and the IP layer including an IP management unit and an IP data path unit, the network node comprising:
-
a network host configured with the TCP management unit and the IP management unit; and
at least one I/O adapter coupled to the network host and configured with the TCP data path unit and the IP data path unit, thereby distributing the TCP data path unit and the IP data path unit onto the I/O adapter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
IP header checksum processing, TCP segmentation processing, timer processing, retransmission management, acknowledgement processing, inbound data assembly, inbound data resequencing, IP data fragment assembly, TCP checksum processing, TCP window management, and discovery of a maximum transfer unit (MTU) parameter associated with a given network path.
-
-
9. The network node of claim 1, wherein the network host includes means for performing at least one of the following TCP management functions:
-
establishing a network connection, de-establishing a network connection, and defining an interface point between an application and the network.
-
-
10. The network node of claim 1, wherein the network host includes means for performing at least one of the following IP management functions:
-
implementing an address resolution protocol (ARP), implementing a reverse address resolution protocol (RARP), and performing subnet addressing.
-
-
11. The network node of claim 1, wherein the I/O adapter includes means for performing at least one of:
-
parsing an inbound TCP header, building an outbound TCP header, finding a connection via inbound IP version 4 (IPv4) and TCP headers, obtaining a value of a maximum transmission unit parameter associated with a network path, performing TCP sliding window management, acknowledging outbound data from a remote node, acknowledging inbound data to the remote node, and reassembling out-of-order inbound data.
-
-
12. The network node of claim 1, wherein the I/O adapter includes means for performing at least one of:
-
parsing an inbound IP version 4 (IPv4) header, building an outbound IPv4 header, generating an IP header checksum associated with a packet outbound from the network node, validating an IP header checksum associated with a packet inbound from the network node, locating the next network node in the path to a destination IP address, fragmenting a packet outbound from the network node, assembling inbound fragments, and obtaining a value of a maximum transmission unit parameter associated with a network path.
-
-
13. The network node of claim 1, wherein the I/O adapter is configured to handle interrupts associated with the TCP data path unit and the IP data path unit independently from the network host.
-
14. A method of configuring a network node to support a TCP/IP protocol stack, the TCP/IP protocol stack including a TCP layer and an IP layer, the TCP layer being configured to support at least one management function and at least one data path maintenance function, the IP layer being configured to support at least one management function and at least one data path maintenance function, the method comprising the steps of:
-
providing a network host configured to implement the management functions of the TCP and the IP layers;
providing an I/O adapter configured to implement the data path functions of the TCP and the IP layers, the I/O adapter coupled to communicate with the network host;
performing processing associated with the TCP and IP management functions on the network host independently of the I/O adapter; and
performing processing associated with the TCP and IP data path functions on the I/O adapter independently of the network host. - View Dependent Claims (15, 16, 17, 18, 19, 20)
establishing a network connection, de-establishing a network connection, and defining an interface point between an application and the network.
-
-
17. The method of claim 14, wherein the step of performing processing associated with the TCP and IP management functions includes performing at least one of the following IP management functions on the network host:
-
implementing an address resolution protocol (ARP), implementing a reverse address resolution protocol (RARP), and performing subnet addressing.
-
-
18. The method of claim 14, wherein the step of performing processing associated with the TCP and IP data path functions includes performing at least one of the following TCP data path functions on the network adapter:
-
parsing an inbound TCP header, building an outbound TCP header, finding a connection via inbound IP version 4 (IPv4) and TCP headers, obtaining a value of a maximum transmission unit parameter associated with a network path, performing TCP sliding window management, acknowledging outbound data from a remote node, acknowledging inbound data to the remote node, and reassembling out-of-order inbound data.
-
-
19. The method of claim 14, wherein the step of performing processing associated with the TCP and IP data path functions includes performing on the I/O adapter at least one of:
-
parsing an inbound IP version 4 (IPv4) header, building an outbound IPv4 header, generating an IP header checksum associated with a packet outbound from the network node, validating an IP header checksum associated with a packet inbound to the network node, locating a further network node adjacent the network node, fragmenting a packet outbound from the network node, assembling inbound fragments, and obtaining a value of a maximum transmission unit parameter associated with a network path.
-
-
20. The method of claim 14, wherein step of performing processing associated with the TCP and IP data path functions includes handling interrupts associated with the TCP data path unit and the IP data path unit on the I/O adapter independently from the network host.
Specification