Claims Analysis
Total Claims: 25
Claim 1
Independent Claim
93 words
A method of controlling the congestion of data cells in a network having a plurality of switching nodes and a plurality of incoming virtual circuits at each node, said method comprising the steps of assigning an initial cell buffer to each virtual circuit at each node, storing incoming cells for virtual circuits in their respective buffers and removing cells from the buffers for forward routing, characterized by dynamically allocating buffer space selectively to ones of the incoming circuits at a node in response to signals requesting increased or decreased data window sizes, respectively.
Claim 2
Dependent Claim
26 words
The method of claim 1 wherein the step of assigning an initial buffer further comprises assigning an initial buffer of predetermined size to each virtual circuit.
Claim 3
Dependent Claim
56 words
The method of claim 2 wherein the predetermined size of the initial buffer is less than the size of a full data window, wherein a full data window is defined as the product of the maximum transmission bit rate of the virtual circuit multiplied by a nominal factor representing round trip propagation time in the network
Claim 4
Dependent Claim
67 words
The method of claim 1 wherein the step of dynamically allocating buffer space to a virtual circuit further comprises allocating a full data window in response to a signal requesting a larger buffer space, wherein a full data window is defined as the product of the maximum transmission bit rate of the virtual circuit multiplied by a nominal factor representing round trip propagation time in the network.
Claim 5
Dependent Claim
34 words
The method of claim 4 further comprising the step of requesting a larger buffer space based on the amount of data waiting to be sent for the said virtual circuit at the cell source.
Claim 6
Dependent Claim
40 words
The method of claim 4 wherein the step of dynamically allocating a full data window further comprises determining if sufficient free buffer space exists at each node of the virtual circuit to perform the allocation and denying the request otherwise.
Claim 7
Dependent Claim
29 words
The method of claim 1 wherein the step of dynamically allocating buffer space further comprises allocating space to a virtual circuit in one or more blocks of fixed size.
Claim 8
Dependent Claim
25 words
The method of claim 1 wherein the step of allocating buffer space further comprises allocating space to a virtual circuit in blocks of variable size.
Claim 9
Dependent Claim
48 words
The method of claim 7 or claim 8 further comprising the step of determining the size of a block to be allocated at each node of a virtual circuit based on the amount of data waiting to be sent for the said virtual circuit at the cell source.
Claim 10
Dependent Claim
47 words
The method of claim 9 wherein the step of dynamically allocating buffer space in response to a request for a larger buffer further comprises determining if sufficient free buffer space exists at each node of the virtual circuit to perform the allocation and denying the request otherwise.
Claim 11
Dependent Claim
37 words
The method of claim 9 further comprising the step of determining the size of a block to be allocated based on the amount of packet data already buffered for the said virtual circuit at each said node.
Claim 12
Dependent Claim
38 words
The method of claim 11 further comprising the step of determining the size of a block to be allocated at each node of a virtual circuit based on the amount of free buffer space at each said node.
Claim 13
Dependent Claim
47 words
The method of claim 11 wherein the step of dynamically allocating buffer space in response to a request for a larger buffer further comprises determining if sufficient free buffer space exists at each node of the virtual circuit to perform the allocation and denying the request otherwise.
Claim 14
Dependent Claim
108 words
The method of claim 13 wherein the step of determining if sufficient free buffer space exists at each node further comprises transmitting a control message along a virtual circuit from the first node in the circuit to the last node in the circuit, writing information into the control message as it passes through each node describing the amount of free buffer space that can be allocated at the node, and selecting the amount of buffer space assigned to the virtual circuit at each node to be equal to the smallest amount available at any node of the virtual circuit based on the final results in the control message.
Claim 15
Dependent Claim
129 words
The method of claim 13 wherein the step of determining if sufficient free buffer space exists at each node further comprises transmitting control message along a virtual circuit from the first node in the circuit to the last node in the circuit, the control message containing information representing whether a large or small amount of data is buffered at the initial node for the virtual circuit and information representing the availability of free buffer space at the initial node, overwriting said information in the control message with new information as it passes through each node if the new information at a node is more restrictive, and selecting the amount of buffer space assigned to the virtual circuit at each node based on the final results in the control message.
Claim 16
Dependent Claim
60 words
The method of claim 14 wherein the step of determining if sufficient free buffer space exists at each node further comprises performing the selecting step at the final node, and returning a second control message from the last node through each node of the virtual circuit, and adjusting the allocation at each node in response to the second control message.
Claim 17
Dependent Claim
66 words
The method of claim 14 wherein the step of determining if sufficient free buffer space exists at each node further comprises returning the control message from the last node in the virtual circuit to the first node in the virtual circuit, performing the selecting step at the initial node, transmitting a second control message from the first node to the last node to perform the allocation.
Claim 18
Dependent Claim
42 words
The method of claim 2 wherein the size of the initial cell buffer is equal to the size of a full data window divided by the square root of the maximum number of virtual circuits that can simultaneously exist in any node.
Claim 19
Dependent Claim
39 words
The method of claim 1 or claim 2 or claim 3 or claim 4 or claim 7 or claim 8 further comprising the step of discarding data for a virtual circuit during buffer overflow for the said virtual circuit.
Claim 20
Dependent Claim
69 words
The method of claim 1 or claim 2 or claim 3 or claim 4 or claim 7 or claim 8 further comprising the step of requesting a reduction in the allocated buffer space for the virtual circuit after a prior increase of the buffer space above the initial buffer space based on the amount of data waiting to be sent for the said virtual circuit at the cell source.
Claim 21
Dependent Claim
53 words
The method of claim 20 wherein the step of requesting a reduction in the allocated buffer space for the virtual circuit after a prior increase of the buffer space above the initial buffer space is further based on the amount of data already buffered for the said virtual circuit at each said node.
Claim 22
Dependent Claim
48 words
The method of claim 21 wherein the step of requesting a reduction in the allocated buffer space for the virtual circuit after a prior increase of the buffer space above the initial buffer space is further based on the amount of free buffer space at each said node.
Claim 23
Dependent Claim
102 words
The method of claim 1 wherein the step of dynamically allocating buffer space further comprises transmitting a control message along a virtual circuit from the first node in the circuit to the last node in the circuit, writing information into the control message as it passes through each node describing the amount of free buffer space that can be allocated at the node, and selecting the amount of buffer space assigned to the virtual circuit at each node to be equal to the smallest amount available at any node of the virtual circuit based on the final results in the control message.
Claim 24
Dependent Claim
54 words
The method of claim 23 wherein the step of dynamically allocating buffer space further comprises performing the selecting step at the final node, and returning a second control message from the last node through each node of the virtual circuit, and adjusting the allocation at each node in response to the second control message.
Claim 25
Dependent Claim
66 words
The method of claim 24 wherein the step of determining if sufficient free buffer space exists at each node further comprises returning the control message from the last node in the virtual circuit to the first node in the virtual circuit, performing the selecting step at the initial node, transmitting a second control message from the first node to the last node to perform the allocation.