IP Library Granted Patent US 7,719,977
Granted Patent B2
US 7,719,977 · App. 12/105,536 · Granted May 18, 2010

Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks

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 7,719,977
App. No.
12/105,536
Granted
May 18, 2010
Kind
B2
Abstract

One embodiment of the present invention provides a system that facilitates dynamic allocation of upstream bandwidth in a passive optical network which includes a central node and at least one remote node. Each remote node is coupled to at least one logical entity, which corresponds to a device or a user, that transmits upstream data to the central node and receives downstream data from the central node. The central node is coupled to an external network outside of the passive optical network through a shared out-going uplink.

Claims (93)

1. A method for dynamically allocating upstream bandwidth in a passive optical network, the method comprising:

determining at an Optical Line Terminal (OLT) an upstream transmission threshold dynamically for a logical entity associated with an Optical Network Unit (ONU) based on one or more of the following:

the maximum allowable delay associated with a priority level assigned to the logical entity;

data speed of a shared out-going uplink at the OLT;

the logical entity's service level agreement; and

the total number of logical entities within that priority level;

receiving a request from the ONU to transmit upstream data from the logical entity, wherein the logical entity may not request to transmit more data than what is allowed by the transmission threshold;

issuing a grant to the ONU for transmitting upstream data;

in response to the grant, receiving upstream data from the ONU;

storing the received upstream data in a receiver buffer within the OLT;

keeping a record of outstanding upstream data which is granted for transmission from the ONU but not yet received by the OLT for each logical entity;

subtracting the size of outstanding upstream data from the unfilled space of the receiver buffer to calculate available space in the receiver buffer; and

transmitting the received upstream data on the shared out-going uplink.

2. The method of claim 1 ,

wherein the receiver buffer includes a number of FIFO queues, each of which buffers upstream data received from an associated logical entity; and

wherein transmitting the received upstream data involves retrieving and transmitting the upstream data stored in the receiver buffer to the out-going uplink according to a set of service level agreements.

3. The method of claim 2 , further comprising:

determining whether the receiver buffer has sufficient space to accommodate the upstream data to be transmitted as requested; and

determining whether the logical entity from which upstream data transmission is requested is scheduled to transmit data next.

4. The method of claim 1 , further comprising scheduling a number of logical entities within the passive optical network to transmit upstream data using a hierarchical round-robin scheme.

5. The method of claim 4 , wherein scheduling the logical entities to transmit upstream data comprises:

(1) grouping logical entities with the highest priority to form a top-priority level;

(2) allowing each logical entity in the top-priority level to transmit upstream data in a round-robin fashion by assigning a slot to each logical entity in the top-priority level;

(3) within the top-priority level, reserving at least one slot for lower-priority traffic;

(4) grouping logical entities with the next-highest priority to form a next-highest-priority level;

(5) allowing each logical entity in the next-highest-priority level to transmit data by assigning the reserved slot within the immediately higher-priority level to each logical entity in the next-highest-priority level in a round-robin fashion;

(6) within the next-highest-priority level, reserving at least one slot for lower-priority traffic; and

(7) repeating operations similar to operations (4)-(6) for logical entities with lower priorities until every logical entity is assigned a slot for transmitting upstream data according to its priority.

6. The method of claim 1 , wherein all the logical entities within the passive optical network are scheduled to transmit upstream data using a strict priority scheduling scheme.

7. The method of claim 1 , further comprising:

timing out the outstanding upstream data after a predetermined period.

8. The method of claim 2 , wherein retrieving and transmitting data stored in the receiver buffer to the out-going uplink according to a set of service level agreements involves retrieving and transmitting data stored in each FIFO queue using a hierarchical round-robin scheme in accordance with each logical entity's service level agreement.

9. The method of claim 1 , wherein a respective ONU includes a number of queues, each of which is associated with a logical entity and stores upstream data from that logical entity.

10. The method of claim 9 ,

wherein the request from an ONU reports the state of a queue within that remote node associated with a logical entity; and

wherein the request piggybacks on an upstream data transmission.

11. The method of claim 9 , wherein if a FIFO queue within the receiver buffer in the OLT is full, the method further comprises pausing the issuance of grants to the corresponding logical entity, thereby causing the queue associated with that logical entity within the corresponding ONU to become full, upon which the ONU generates a flow-control message to the corresponding logical entity to slow down the upstream data transmission from that device or user.

12. The method of claim 1 , further comprising:

periodically sending polls to the ONU for upstream data;

wherein the polling frequency for a corresponding logical entity reflects the service level agreement of that logical entity.

13. A system for dynamically allocating upstream bandwidth in a passive optical network, the system comprising:

a bandwidth allocation mechanism configured to determine at an Optical Line Terminal (OLT) an upstream transmission threshold dynamically for a logical entity associated with an Optical Network Unit (ONU) based on one or more of the following:

the maximum allowable delay associated with a priority level assigned to the logical entity;

data speed of a shared out-going uplink at the OLT;

the logical entity's service level agreement; and

the total number of logical entities within that priority level;

a request receiving mechanism configured to receive a request from the ONU to transmit upstream data from the logical entity, wherein the logical entity may not request to transmit more data than what is allowed by the transmission threshold;

a grant issuance mechanism configured to issue a grant to the ONU for transmitting upstream data;

a data receiving mechanism configured to receive upstream data from the ONU;

a storage mechanism configured to store the received upstream data in a receiver buffer within the OLT;

a record-keeping mechanism configured to keep a record of outstanding upstream data which is granted for transmission from the ONU but not yet received by the OLT for each logical entity;

a subtraction mechanism configured to subtract the size of outstanding upstream data from the unfilled space of the receiver buffer to calculate available space in the receiver buffer; and

a transmission mechanism configured to transmit the received upstream data on the shared out-going uplink.

14. The system of claim 13 ,

wherein the receiver buffer includes a number of FIFO queues, each of which buffers upstream data received from an associated logical entity; and

wherein while transmitting the received upstream data, the transmission mechanism is configured to retrieve and transmit the upstream data stored in the receiver buffer to the out-going uplink according to a set of service level agreements.

15. The system of claim 14 , wherein the storage mechanism is further configured to:

determine whether the receiver buffer has sufficient space to accommodate the upstream data to be transmitted as requested; and

determine whether the logical entity from which upstream data transmission is requested is scheduled to transmit data next.

16. The system of claim 13 , further comprising a scheduling mechanism configured to schedule a number of logical entities within the passive optical network to transmit upstream data using a hierarchical round-robin scheme.

17. The system of claim 16 , wherein while scheduling the logical entities to transmit upstream data, the scheduling mechanism is configured to:

(1) group logical entities with the highest priority to form a top-priority level;

(2) allow each logical entity in the top-priority level to transmit upstream data in a round-robin fashion by assigning a slot to each logical entity in the top-priority level;

(3) within the top-priority level, reserve at least one slot for lower-priority traffic;

(4) group logical entities with the next-highest priority to form a next-highest-priority level;

(5) allow each logical entity in the next-highest-priority level to transmit data by assigning the reserved slot within the immediately higher-priority level to each logical entity in the next-highest-priority level in a round-robin fashion;

(6) within the next-highest-priority level, reserve at least one slot for lower-priority traffic; and

(7) repeat operations similar to operations (4)-(6) for logical entities with lower priorities until every logical entity is assigned a slot for transmitting upstream data according to its priority.

18. The system of claim 13 , wherein all the logical entities within the passive optical network are scheduled to transmit upstream data using a strict priority scheduling scheme.

19. The system of claim 14 , further comprising:

a time-out mechanism configured to time out the outstanding upstream data after a predetermined period.

20. The system of claim 14 , wherein while retrieving and transmitting data stored in the receiver buffer to the out-going uplink according to a set of service level agreements, the transmission mechanism is configured to retrieve and transmit data stored in each FIFO queue using a hierarchical round-robin scheme in accordance with each logical entity's service level agreement.

21. The system of claim 13 , wherein a respective ONU includes a number of queues, each of which is associated with a logical entity and stores upstream data from that logical entity.

22. The system of claim 21 ,

wherein the request from an ONU reports the state of a queue within that ONU associated with a logical entity; and

wherein the request piggybacks on an upstream data transmission.

23. The system of claim 21 , wherein if a FIFO queue within the receiver buffer in the OLT is full, the grant issuance mechanism is further configured to pause the issuance of grants to the corresponding logical entity, thereby causing the queue associated with that logical entity within the corresponding ONU to become full, upon which the ONU generates a flow-control message to the corresponding logical entity to slow down the upstream data transmission from that device or user.

24. The system of claim 13 , further comprising:

a polling mechanism configured to periodically send polls to the ONU for upstream data;

wherein the polling frequency for a corresponding logical entity reflects the service level agreement of that logical entity.

25. An Optical Line Terminal (OLT) for dynamically allocating upstream bandwidth in a passive optical network, the OLT comprising:

a bandwidth allocator configured to determine dynamically an upstream transmission threshold for a logical entity associated with an Optical Network Unit (ONU) based on one or more of the following:

the maximum allowable delay associated with a priority level assigned to the logical entity;

data speed of a shared out-going uplink at the OLT;

the logical entity's service level agreement; and

the total number of logical entities within that priority level;

a request receiving mechanism configured to receive a request from the ONU to transmit upstream data from the logical entity, wherein the logical entity may not request to transmit more data than what is allowed by the transmission threshold;

a grant issuing mechanism configured to issue a grant to the ONU for transmitting upstream data;

a data receiving mechanism configured to receive upstream data from the ONU;

a storage mechanism configured to store the received upstream data in a receiver buffer within the OLT;

a record-keeping mechanism configured to keep a record of outstanding upstream data which is granted for transmission from the ONU but not yet received by the OLT for each logical entity;

a subtraction mechanism configured to subtract the size of outstanding upstream data from the unfilled space of the receiver buffer to calculate available space in the receiver buffer; and

a transmission mechanism configured to transmit the received upstream data on the shared out-going uplink.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE OF THE MERGER PREVIOUSLY RECORDED ON REEL 047642 FRAME 0417. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT, Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048521/0395 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047642/0417 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2010
From: TEKNOVUS, INC.
To: BROADCOM CORPORATION
Reel/Frame 024864/0231 →
RELEASE OF SECURITY INTEREST Recorded Mar 8, 2010
From: SILICON VALLEY BANK
To: TEKNOVUS, INC.
Reel/Frame 024035/0907 →
SECURITY AGREEMENT Recorded Feb 6, 2009
From: TEKNOVUS, INC.
To: VENTURE LENDING & LEASING V, INC.
Reel/Frame 022248/0158 →
SECURITY AGREEMENT Recorded Dec 15, 2008
From: TEKNOVUS, INC.
To: SILICON VALLEY BANK
Reel/Frame 021976/0588 →