Driver level segmentation
First Claim
1. A method comprising:
- performing segmentation of a first data packet stored in a first memory area into a plurality of second data packets, each second data packet comprising a header and a segment of data from the first data packet, at a functionality of a device driver for a network interface device supported by a data processing system, the network interface device being capable of supporting a communication link over a network with another network interface device, wherein performing the segmentation comprises;
accepting the first data packet, the first data packet carrying data for transmission by the network interface device over the network;
logically dividing said first data packet into segments of data of the accepted first packet to provide at least one pointer to a data segment in said first memory area;
forming a set of headers for the plurality of second data packets from the accepted first data packet;
writing the formed set of headers to a second memory area;
forming a specification, the specification indicating the formed set of headers written in memory and the segments of data in the accepted first data packet, the specification comprising said at least one pointer to the first memory area for the data segments and at least one pointer to the second memory area for the headers; and
requesting by means of the device driver transmission by the network interface device of the headers in the second memory area and the respective segments of data in the first memory area indicated in the specification so as to effect transmission of the second data packets over the network;
said request comprising an indication of said specification.
10 Assignments
0 Petitions
Accused Products
Abstract
A method for performing segmentation of a first data packet into a plurality of second data packets at a functionality of a device driver for a network interface device supported by a data processing system, each second data packet comprising a header and a segment of data from the first data packet and the network interface device being capable of supporting a communication link over a network with another network interface device, the method comprising: accepting the first data packet, the first data packet carrying data for transmission by the network interface device over the network; forming a set of headers for the plurality of second data packets; writing the set of headers to memory; forming a specification, the specification indicating the headers in memory and the segments of data in the first data packet; requesting by means of the device driver transmission by the network interface device of the headers and the respective segments of data indicated in the specification so as to effect transmission of the second data packets over the network.
161 Citations
22 Claims
-
1. A method comprising:
-
performing segmentation of a first data packet stored in a first memory area into a plurality of second data packets, each second data packet comprising a header and a segment of data from the first data packet, at a functionality of a device driver for a network interface device supported by a data processing system, the network interface device being capable of supporting a communication link over a network with another network interface device, wherein performing the segmentation comprises; accepting the first data packet, the first data packet carrying data for transmission by the network interface device over the network; logically dividing said first data packet into segments of data of the accepted first packet to provide at least one pointer to a data segment in said first memory area; forming a set of headers for the plurality of second data packets from the accepted first data packet; writing the formed set of headers to a second memory area; forming a specification, the specification indicating the formed set of headers written in memory and the segments of data in the accepted first data packet, the specification comprising said at least one pointer to the first memory area for the data segments and at least one pointer to the second memory area for the headers; and requesting by means of the device driver transmission by the network interface device of the headers in the second memory area and the respective segments of data in the first memory area indicated in the specification so as to effect transmission of the second data packets over the network;
said request comprising an indication of said specification. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A data processing system having access to a memory and a network interface device capable of supporting a communication link over a network with another network interface device, the data processing system comprising:
-
an operating system; a device driver of the network interface device; at least one application operable to request that data for transmission is sent over the network, said first data packet stored in a first memory area; a functionality of the operating system configured to, in response to a request by an application to send data for transmission over the network, form the data for transmission into at least one first data packet at a network protocol stack of the data processing system and send in indication to the device driver that the at least one first data packet is to be transmitted over the network; and a functionality of the device driver configured to perform segmentation of each first data packet into a plurality of second data packets, each second data packet comprising a header and a segment of data, the device driver performing segmentation by; logically dividing said first data packet into segments of data of the accepted first packet to provide at least one pointer to a data segment in said first memory area; forming a set of headers for the plurality of second data packets from the first data packet; writing the formed set of headers to a second memory area; forming a specification indicating the formed set of headers written in the memory and the segments of data in the first data packet, the specification comprising said at least one pointer to the first memory area for the data segments and at least one pointer to the second memory area for the headers; and requesting transmission by the network interface device of the headers in the second memory area and the respective segments of data in the first memory area indicated in the specification so as to effect transmission of the second data packets over the network;
said a request comprising an indication of said specification.
-
Specification