Acceleration of data packet transmission
First Claim
1. A method of accelerating the transmission of packets through a network comprising:
- offloading packets transmitted through a network in UDP format; and
offloading an upper layer protocol of said packets, wherein said upper layer protocol provides said packets with increased functionality.
4 Assignments
0 Petitions
Accused Products
Abstract
An improved method of accelerating packet transmission through a network is disclosed. More specifically, methods and systems are described for the offloading of packets transmitted in a UDP format with a ULP that allows the packets to retain characteristics of packets transmitted under the TCP format. This is useful in accelerating data transmitted in any ULP format and therefore provides a degree of flexibility previously unknown in the art. In addition, methods and systems are provided for a virtualized API which allows data to be transferred through the traditional network device if the new device is not present but directs the traffic through the new device when it is present. Also, a packet abstraction layer is disclosed which uses information from the state field to run the overlay function to map the formats of the incoming and outgoing packets into the format native to the new device.
28 Citations
104 Claims
-
1. A method of accelerating the transmission of packets through a network comprising:
-
offloading packets transmitted through a network in UDP format; and
offloading an upper layer protocol of said packets, wherein said upper layer protocol provides said packets with increased functionality. - View Dependent Claims (2, 3, 4)
-
-
5. A method of accelerating the transmission of packets through a network comprising:
-
means for offloading packets transmitted through a network in UDP format; and
means for including and offloading with said packets an upper layer protocol which provides said packets with increased functionality. - View Dependent Claims (6, 7, 8)
-
-
9. A method of accelerating the transmission of packets through a network comprising:
-
packets containing data, wherein said packets are transmitted through a network to an application, wherein said packets are formatted according to the user datagram protocol;
offloading or accelerating said packets to a device; and
offloading or accelerating an upper layer protocol providing increased functionality in connection with the offloading or acceleration of said packets. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method of accelerating the transmission of packets through a network comprising:
-
packets containing data, wherein said packets are transmitted through a network to an application, wherein said packets are formatted according to the user datagram protocol;
means for offloading or accelerating said packets to a device; and
means for offloading or accelerating an upper layer protocol providing increased functionality in connection with the offloading or accelerating of said packets. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A method of delivering data packets over a network comprising:
-
sending data from an application, wherein said data requires packetization prior to delivery through a network;
prior to said packetization, detecting whether said packets may be transmitted through a device capable of accelerating the transmission of said packets;
when said device is detected, transmitting said packets through said device so that said packets are transmitted to said application more rapidly than if said packets were not transmitted through said device. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A method of delivering data packets over a network comprising:
-
sending data from an application, wherein said data requires packetization prior to delivery through a network;
prior to said packetization, detecting whether said packets are transmitted through a device capable of accelerating the transmission of said packets;
when said device is detected, transmitting said packets through said device so that said packets are transmitted to said network more rapidly with less burden on the computer to which said device is attached than if said packets were not transmitted through said device. - View Dependent Claims (26, 27, 28, 29, 30)
-
-
31. A method of delivering data packets over a network comprising:
-
means for transmitting packets through a network;
prior to transmission of said packet by an application, means for detecting whether said packets are transmitted through a device capable of accelerating the transmission of said packets;
when said device is detected, means for transmitting said packets through said device so that said packets are transmitted to said network more rapidly than if said packets were not transmitted through said device. - View Dependent Claims (32, 33, 34, 35, 36)
-
-
37. A method of improving the speed with which packets are transmitted through a network comprising:
-
receiving packets intended for an application through a device, wherein said packets are first processed through a network stack;
obtaining the State_ID of the connection of said packet;
mapping the original format of said packet into the native format of said device;
interpreting and processing said packets in said native format using a core engine;
delivering processed data from said packets to an application or an API in a manner useful to said application or said API. - View Dependent Claims (38, 39, 40, 41, 42, 43)
-
-
44. A method of improving the speed with which packets are received from a network comprising:
-
means for receiving packets intended for an application through a device, wherein said packets are first processed through a network stack;
means for obtaining the State_ID of the connection of said packet;
means for mapping the original format of said packet into the native format of said device;
means for interpreting and processing said packets in said native format using a core engine;
means for delivering processed data from said packets to an application or an API in a manner useful to said application or said API. - View Dependent Claims (45, 46, 47, 48, 49, 50)
-
-
51. A method of accelerating the transmission of a packet through a network comprising:
-
a packet transmitted through a network, wherein said packet is transmitted in a UDP format with a specific ULP, wherein said ULP is native to at least one device through which said packets are transmitted;
operating an application containing API calls to said UDP and said ULP. - View Dependent Claims (52, 53, 54, 55, 56)
-
-
57. A method for virtualizing an application programming interface comprising:
-
detecting whether or not a device is present on a network and, if present, directing packets through said device;
translating API calls for said packets into a format native to, or recognized by, said device. - View Dependent Claims (58, 59, 60, 61)
-
-
62. A packet abstraction layer comprising:
-
obtaining the state of a connection for which data is to be transmitted;
when receiving said data, using said state to map the format of the packet within which said data is contained into the format native to the device within which the packet abstraction layer resides; and
when transmitting said data, using said state to format native to the device within which the packet abstraction layer resides to the format that is expected by a link partner. - View Dependent Claims (63, 64)
-
-
65. A system for accelerating the transmission of packets through a network comprising:
-
a network; and
packets transmitted through said network wherein said packets are offloaded in UDP format and said packets include an upper layer protocol which provides said packets with increased functionality. - View Dependent Claims (66, 67, 68)
-
-
69. A system for accelerating the transmission of packets through a network comprising:
-
a network;
an application;
a device communicatively coupled with said network;
wherein data is presented from said application to said device, and therafter, said device offloads the upper layer protocol and the user datagram protocol to create packets which are transmitted through said network. - View Dependent Claims (70, 71, 72, 73, 74)
-
-
75. A system for accelerating the transmission of packets through a network comprising:
-
a network;
an application;
a device communicatively coupled with said network;
wherein packets are presented from said network to said device, and therafter, said device removes the upper layer protocol and the user datagram protocol to reveal the data which is transmitted to said application. - View Dependent Claims (76, 77, 78, 79, 80)
-
-
81. A system for delivering data packets over a network comprising:
-
a network;
an application operating on a computer communicatively connected to said network;
a device communicatively connected to said network;
wherein a packet containing data useful to said application is sent through said network, and, prior to receipt of said data by said application, a method is provided for detecting whether said packets are transmitted through a device capable of accelerating the transmission of said packets and, when said device is detected, routing said packets through said device so that said data is transmitted to said application more rapidly than if said packets were not routed through said device. - View Dependent Claims (82, 83, 84, 85, 86)
-
-
87. A system for improving the speed with which packets are transmitted through a network comprising:
-
a network;
an application operating on a computer communicatively connected to said network;
a device communicatively connected to said network, wherein packets sent through said network to said application pass through said device and, within said device, packets are first processed through a network stack;
a State_ID of the connection of said packet is obtained;
the original format of said packet is mapped into the native format of said device; and
said packets are interpreted in said native format using a core engine. - View Dependent Claims (88, 89, 90, 91, 92, 93)
-
-
94. A system for accelerating the transmission of a packet through a network comprising:
-
a network;
a packet transmitted through said network, wherein said packet is transmitted in a UDP format with a specific ULP, and wherein said ULP is native to at least one device through which said packets are transmitted; and
an application containing API calls to said UDP and said ULP. - View Dependent Claims (95, 96, 97, 98, 99)
-
-
100. A system for virtualizing an application programming interface comprising:
-
a network;
packets transmitted through said network;
a device capable of translating information within said packets into a format native to, or recognized by, said device; and
a means for detecting whether or not said device is present on said network and, if present, directing said packets through said device. - View Dependent Claims (101, 102, 103, 104)
-
Specification