IP Library Granted Patent US 8,031,598
Granted Patent B2
US 8,031,598 · App. 12/427,106 · Granted Oct 4, 2011

Flow-rate-regulated burst switches

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,031,598
App. No.
12/427,106
Granted
Oct 4, 2011
Kind
B2
Abstract

Burst-switching nodes using a common-memory or a time shared space switch and employing flow-rate control are disclosed. Within a switching node, data bursts are segmented into data segments of a fixed size with some segments containing information bits as well as null bits. A switching node handles data streams allocated different flow rates and, for any data stream, the internal flow rate through the switching node can be higher than the external flow rate due to null padding of segmented data. The switching node is provided with a sufficient internal capacity expansion in order to offset the effect of null padding. A controller of the switching node is provided with a flow-rate-regulation apparatus to enable scheduling the transfer of data segments across the switching node in a manner that guarantees adherence to the allocated information flow rates.

Claims (39)

1. A method of burst switching comprising:

receiving at a core controller of a fast-switching optical core node, connecting to a plurality of edge nodes, flow-rate requirements for a set of data streams, each data stream defined by a source edge node and a destination edge node;

determining, for said each data stream, a respective burst size;

determining, for said each data stream, a respective inter-burst interval;

presenting said respective burst size and said respective inter-burst interval to a scheduler for determining instants of time at which bursts belonging to said each data stream are to be received at the optical core node;

communicating indications of said respective burst size and said instants of time to a source edge node of said each data stream;

receiving, at each edge node, data packets of arbitrary sizes from respective data sources;

associating each data packet with a data stream from among a number S, S>1, of predefined data streams;

segmenting each data packet into data segments each of a predefined maximum size;

storing said data segments and respective sizes into a data memory organized into K memory segments, K>S, each for storing a data segment; and

storing in at least one control memory:

two stream-tracking arrays each having S entries and indicating an address in said data memory of a front data segment and a last data segment belonging to each of said S data streams;

a linkage array having K entries indicating addresses in said data memory of intervening data segments for each data stream; and

an occupancy tracking array indicating unused segments of said data memory.

2. The method of claim 1 further comprising:

receiving at said core controller a reading of an edge time counter coupled to an edge controller of a respective edge node from among said plurality of edge nodes;

transmitting to said edge controller a corresponding reading of a core time counter coupled to said core controller; and

determining, that said edge controller is time locked to said core controller when said reading of said edge time counter equals said corresponding reading of a core time counter.

3. The method of claim 1 wherein said respective burst size equals a predefined value for said each data stream and said respective inter-burst interval equals said predefined value divided by said a flow-rate requirement of said each data stream.

4. The method of claim 1 wherein said respective burst size is proportional to a flow-rate requirement of said each data stream so that said respective inter-burst interval is constant for said bursts belonging to said each data stream.

5. The method of claim 1 further comprising allowing a guard time, at least equal to switching latency of said optical core node, between said successive bursts.

6. The method of claim 1 further comprising imposing a lower bound, exceeding switching latency of said optical core node, on said respective burst size.

7. The method of claim 1 further comprising imposing a first upper bound on said respective burst size and imposing a second upper bound on said inter-burst interval.

8. The method of claim 2 further comprising an edge controller of each edge node of said plurality of edge nodes exchanging time-counter reading with said core controller in order to maintain time locking of said each edge node to said core controller.

9. The method of claim 1 further comprising each edge node of said plurality of edge nodes:

defining a subset of data streams emanating from said each edge node;

receiving data packets of arbitrary sizes from respective data sources;

associating each data packet with a data stream from among said subset of data streams;

determining flow-rate requirements for said subset of data streams;

communicating said flow-rate requirements for said subset of data streams to said core controller;

receiving from said core controller indications of a permissible burst size and scheduled instants of time for receiving bursts belonging to each data stream of said subset of data streams;

aggregating data packets of said each data stream of said subset of data streams into bursts constrained by said permissible burst size; and

transmitting said bursts to said optical core node at said scheduled instants of time.

10. The method of claim 1 further comprising:

padding an incomplete last segment of a packet with null bits; and

selecting said data memory so that a ratio of said predefined maximum size to the time required to write and read a data segment exceeds the combined flow rate allocations of said S data streams by an amount sufficient to offset segmentation waste caused by said null bits.

11. The method of claim 1 further comprising:

selecting said respective inter-burst interval to equal a same fixed interval for said each data stream; and

determining said respective burst size according to said fixed interval and a flow-rate requirement corresponding to said each data stream.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 054305/0505 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CLEARINGHOUSE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046485/0644 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032425/0867 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027143/0717 →