IP Library Granted Patent US 8,780,705
Granted Patent B2
US 8,780,705 · App. 13/258,807 · Granted Jul 15, 2014

Apparatus, communications system and method for optimizing data packet flow

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,780,705
App. No.
13/258,807
Granted
Jul 15, 2014
Kind
B2
Abstract

A datagram flow optimizer apparatus comprises a buffer resource capable of receiving and temporarily storing a plurality of datagrams in respect of a forward path. The apparatus also comprises and a buffer controller arranged to implement, when in use, buffering of received datagrams by the buffer resource until a predetermined threshold number of datagrams has been stored by the buffer resource. The apparatus further comprises an acknowledgement regulator arranged to use the buffer resource to manipulate temporal spacing between acknowledgements of datagrams on a reverse path. The buffer controller is arranged to permit forwarding on the forward path of datagrams stored by the buffer resource in response to the predetermined threshold number of stored datagrams being reached.

Claims (47)

1. A datagram flow optimizer apparatus comprising:

a buffer resource including:

a first component capable of receiving and temporarily storing a plurality of datagrams in respect of a forward path; and

a second component capable of receiving and temporarily storing a plurality of acknowledgements of the datagrams received on a reverse path;

a buffer controller arranged to implement, when in use:

retaining of the datagrams by the first component in response to less than a predetermined threshold number of the datagrams having been stored by the first component, wherein the buffer controller comprises a flow control mode detector, the flow control mode detector being capable of measuring datagram size, measuring datagram inter-arrival time, and detecting an acknowledgement of a datagram on the reverse path, wherein the flow control mode detector is arranged to identify a substantially constant size of received datagrams over a period of time and to identify a substantially constant inter-arrival time over the period of time in respect of the received datagrams; and

forwarding on the forward path of the datagrams retained by the first component in response to the predetermined threshold number of the datagrams being reached, wherein the forwarding comprises forwarding in bursts; and

an acknowledgement regulator arranged to use the second component to manipulate temporal spacing between the acknowledgements of the datagrams on the reverse path in order to even out spacing between transmissions of the acknowledgements by the datagram flow optimizer apparatus on the reverse path.

2. An apparatus as claimed in claim 1 , wherein:

the buffer controller is arranged to detect a flow control mode being employed in respect of the forward path and implement the retaining of the datagrams in response to the flow control mode being a delay tolerant flow control mode.

3. An apparatus as claimed in claim 2 , wherein the flow control mode is a congestion avoidance phase.

4. An apparatus as claimed in claim 1 , wherein the predetermined threshold number of datagrams is set to an initial value and incrementally increased with time.

5. An apparatus as claimed in claim 4 , wherein the buffer controller is arranged to receive an advertised window size, the predetermined threshold number of datagrams being incrementally increased up to a proportion of the advertised window size.

6. An apparatus as claimed in claim 1 , wherein the temporal spacing between the acknowledgements of the datagrams is defined by a ratio, N, of transmission of datagrams to acknowledgements, the ratio, N, being:

N=f avg — downlink /f avg — uplink ,

where: f avg — downlink is an average forward path datagram arrival rate, and f avg — uplink is an average reverse path acknowledgement arrival rate.

7. An apparatus as claimed in claim 1 , wherein the temporal spacing between acknowledgements is defined by a bit rate corresponding to receipt of a plurality of acknowledgements over a predetermined period of time.

8. An apparatus as claimed in claim 1 , wherein the acknowledgement regulator is to set a rate of the transmissions by the datagram flow optimizer of the acknowledgements of the datagrams on the reverse path equal to a rate of receipt by the datagram flow optimizer apparatus of the acknowledgements of the datagrams on the reverse path.

9. An apparatus as claimed in claim 1 , wherein the forwarding of the datagrams from the buffer resource on the forward path is controlled by the buffer controller so as to ensure a reverse path data rate that corresponds to maintenance of a forward path data rate.

10. A communications system comprising:

an intermediate node comprising:

a buffer resource including:

a first component capable of receiving and temporarily storing a plurality of datagrams in respect of a forward path; and

a second component capable of receiving and temporarily storing a plurality of acknowledgements of the datagrams received on a reverse path;

a buffer controller arranged to implement, when in use:

retaining of the datagrams by the first component in response to less than a predetermined threshold number of the datagrams having been stored by the first component; and

forwarding on the forward path of the datagrams retained by the first component in response to the predetermined threshold number of the datagrams being reached, wherein the forwarding comprises forwarding in bursts; and

an acknowledgement regulator arranged to use the second component to manipulate temporal spacing between the acknowledgements of the datagrams on the reverse path in order to even out spacing between transmissions of the acknowledgements by the datagram flow optimizer apparatus on the reverse path;

a source node arranged to send the plurality of datagrams to a destination node on the forward path via the intermediate node; and

another destination node capable of communicating with the intermediate node; wherein the intermediate node is arranged to assign to the another destination node at least part of bandwidth unused by the destination node during storing of the datagrams by the datagram flow optimizer apparatus, thereby temporarily increasing bandwidth available for communications on the forward path with the another destination node.

11. A system as claimed in claim 10 , wherein the intermediate node is capable of communicating with the destination node via a wireless interface.

12. A system as claimed in claim 10 , wherein an application processor constitutes the destination node.

13. A system as claimed in claim 12 , wherein a User Equipment (UE) comprises the application processor.

14. A system as claimed in claim 10 , wherein a Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (UTRAN) comprises the intermediate node.

15. A system as claimed in claim 10 , wherein the intermediate node is electrically coupled to the destination node.

16. A system as claimed in claim 10 , wherein the intermediate node is supported by a first thread and the destination node is supported by a second thread.

17. A system as claimed in claim 14 , wherein the source node is arranged to send the plurality of datagrams pursuant to a Transmission Control Protocol (TCP).

18. A method of optimizing datagram flow, the method comprising:

receiving a plurality of datagrams in respect of a forward path;

storing the datagrams in a buffer;

determining a number of the datagrams that has been stored in the buffer;

retaining the datagrams in the buffer in response to a number of the datagrams stored in the buffer being less than a predetermined threshold number;

forwarding on the forward path of the datagrams in response to the predetermined threshold number of the datagrams being reached, the forwarding in bursts;

receiving acknowledgements of the datagrams on a reverse path in respect of the forwarded datagrams; and

transmitting the acknowledgements along the reverse path, comprising manipulating temporal spacing between the acknowledgements of the datagrams on the reverse path in order to even out spacing between transmissions of the acknowledgements along the reverse path, the manipulating comprising setting a rate of transmitting the datagrams on the reverse path equal to a rate of receiving the acknowledgements of the datagrams on the reverse path.

19. The method of claim 18 , further comprising identifying a substantially constant size of received datagrams over a period of time.

20. The method of claim 18 , further comprising identifying a substantially constant inter-arrival time received datagrams over a period of time.

Assignments (26)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2021
From: NXP B.V.
To: FUTURE LINK SYSTEMS, LLC
Reel/Frame 055115/0491 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050744/0097 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
MERGER Recorded Jan 3, 2017
From: FREESCALE SEMICONDUCTOR, INC.
To: NXP USA, INC.
Reel/Frame 041144/0363 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SUPPLEMENT TO THE SECURITY AGREEMENT Recorded Jun 16, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039138/0001 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0285 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0387 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037357/0334 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →