IP Library Granted Patent US 8,855,126
Granted Patent B2
US 8,855,126 · App. 13/604,734 · Granted Oct 7, 2014

Fast data packet transfer operations

Inventors: Mark V. Deisinger (Shoreview, MN); Allyn Smith (Shoreview, MN); John A. Peters (Coon Rapids, MN)
Assignee: Unisys Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,855,126
App. No.
13/604,734
Granted
Oct 7, 2014
Kind
B2
Abstract

A fast send method may be selectively implemented for certain data packets received from an application for transmission through a network interface. When the fast send method is triggered for a data packet, the application requesting transmission of the data packet may be provided a completion notice nearly immediately after the data packet is received. The fast send method may be used for data packets similar to previously-transmitted data packets for which the information in the data packet is already vetted. For example, a data packet with a similar source address, destination address, source port, destination port, application identifier, and/or activity identifier may have already been vetted.

Claims (39)

1. A method, comprising:

receiving a first data packet from an application;

pausing execution of the application;

queuing the first data packet for transmission;

resuming execution of the application when a completion code is received;

adding information regarding the first data packet to a table when the first data packet is successfully transmitted;

receiving a second data packet from the application; and

queuing the second data packet for transmission without pa using execution of the application when the second data packet matches the information regarding the first data packet stored in the table.

2. The method of claim 1 , in which the step of adding information regarding the first data packet comprises adding at least one of an application identifier, an activity identifier, a local address, a local port, a remote address, and a remote port to the table.

3. The method of claim 1 , further comprising throttling transmission of additional data packets without pausing execution of the application.

4. The method of claim 1 , in which the application is executing in an emulated environment.

5. The method of claim 1 , in which the data packet is a user datagram packet (UDP).

6. A computer program product, comprising:

a non-transitory computer readable medium comprising:

code to receive a first data packet from an application;

code to pause execution of the application;

code to queue the first data packet for transmission;

code to resume execution of the application when a completion code is received;

code to add information regarding the first data packet to a table when the first data packet is successfully transmitted;

code to receive a second data packet the application; and

code to queue the second data packet for transmission without pausing execution of the application when the second data packet matches the information regarding the first data packet stored in the table.

7. The computer program product of claim 6 , in which the medium further comprises code to add at least one of an application identifier, an activity identifier, a local address, a local port, a remote address, and a remote port to the table.

8. The computer program product of claim 6 , in which the medium further comprises code to throttle transmission of additional data packets without pausing execution of the application.

9. The computer program product of claim 6 , in which the medium further comprises code to execute the application in an emulated environment.

10. The computer program product of claim 6 , in which the data packet is a user datagram packet (UDP).

11. An apparatus, comprising:

a memory;

a network interface; and

a processor coupled to the memory and to the network interface, in which the processor is configured:

to receive a first data packet from an application;

to pause execution of the application;

to queue the first data packet for transmission on the network interface;

to resume execution of the application when a completion code is received;

to add information regarding the first data packet to a table when the first data packet is successfully transmitted

to receive a second data packet from the application; and

to queue the second data packet for transmission on the network interface without pausing execution of the application when the second data packet matches the information regarding the first data packet stored in the table.

12. The apparatus of claim 11 , in which the processor is further configured to add at least one of an application identifier, an activity identifier, a local address, a local port, a remote address, and a remote port to the table.

13. The apparatus of claim 11 , in which the processor is further configured to execute the application in an emulated environment.

14. The apparatus of claim 11 , in which the data packet is a user datagram packet (UDP).

Assignments (6)
AMENDED AND RESTATED PATENT SECURITY AGREEMENT Recorded Jun 27, 2025
From: UNISYS CORPORATION; UNISYS HOLDING CORPORATION; UNISYS NPL, INC.; UNISYS AP INVESTMENT COMPANY I
To: COMPUTERSHARE TRUST COMPANY, N.A., AS COLLATERAL TRUSTEE
Reel/Frame 071759/0527 →
RELEASE OF SECURITY INTEREST Recorded Oct 28, 2020
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: UNISYS CORPORATION
Reel/Frame 054231/0496 →
SECURITY INTEREST Recorded Oct 6, 2017
From: UNISYS CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 044144/0081 →
PATENT SECURITY AGREEMENT Recorded Apr 27, 2017
From: UNISYS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL TRUSTEE
Reel/Frame 042354/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 26, 2013
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL TRUSTEE
To: UNISYS CORPORATION
Reel/Frame 030082/0545 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2013
From: DEUTSCHE BANK TRUST COMPANY
To: UNISYS CORPORATION
Reel/Frame 030004/0619 →
Continuity (1)
Related Publication 20140064293A1 · Mar 6, 2014