A method is disclosed for facilitating multicast operation in a network in which a data unit is multicast from a root node to a plurality of leaves via a plurality of branching point nodes in response to feedback processed at each branching point node. At least one cell forwarding technique is selected from a plurality of cell forwarding techniques at the respective branching point nodes. The cell forwarding techniques facilitate multicast operation by controlling forwarding and discard of multicast cells. The forwarding techniques are realized via use of a buffer ring in which cells are stored prior to forwarding. Manipulating head and tail pointers associated with the buffer ring allows for a plurality of desirable forwarding techniques.

Patent
   5991298
Priority
Jan 12 1996
Filed
Jan 10 1997
Issued
Nov 23 1999
Expiry
Jan 10 2017
Assg.orig
Entity
Large
21
276
EXPIRED
1. A method for forwarding a multicast data unit from a branching node to at least one of a plurality of coupled downstream nodes, comprising the steps of:
determining, the eligibility of respective nodes to receive said multicast data unit based upon a specified multicast data unit forwarding technique selected from a plurality of multicast data unit forwarding techniques; and
forwarding said data unit to selected ones of said coupled downstream nodes based upon said specified data unit forwarding technique, wherein the selected ones of the coupled downstream nodes at least at some times form a subset of the coupled downstream nodes.
10. A method for forwarding a multicast data unit from a branching node to at least one of a plurality of coupled downstream nodes, comprising the steps of:
determining, the eligibility of respective nodes to receive said multicast data unit based upon a specified multicast data unit forwarding technique selected from a plurality of multicast data unit forwarding techniques; and
forwarding said data unit to selected ones of said coupled downstream nodes based upon said specified data unit forwarding technique, wherein the forwarding step includes the further step of employing a data unit forwarding technique in which no downstream node is allowed to lag behind another downstream node by more than k data units.
6. A method for forwarding a multicast data unit from a branching node to at least one of a plurality of coupled downstream nodes, comprising the steps of:
determining, the eligibility of respective nodes to receive said multicast data unit based upon a specified multicast data unit forwarding technique selected from a plurality of multicast data unit forwarding techniques; and
forwarding said data unit to selected ones of said coupled downstream nodes based upon said specified data unit forwarding technique, wherein the forwarding step includes the further step of employing a data unit forwarding technique in which loss of data units is prevented between the branching point node and a distinguished subset of downstream nodes in the multicast connection.
20. A multicast apparatus for transmitting multicast data units in a multicast connection from a branching node to a plurality of downstream nodes, comprising:
a memory in each downstream node for receiving multicast data units;
a circuit for providing information indicating fullness of the downstream node memory, the circuit providing such fullness information to the branching node in accordance with a point-to-point flow control technique; and
a circuit in each branching node for processing the fullness information in accordance with a data unit forwarding technique selectable from a plurality of data unit forwarding techniques, wherein the selected data unit forwarding technique prevents data unit loss for a variable subset (p) of downstream nodes connected thereto.
22. A multicast apparatus for transmitting multicast data units in a multicast connection from a branching node to a plurality of downstream nodes, comprising:
a memory in each downstream node for receiving multicast data units;
a circuit for providing information indicating fullness of the downstream node memory, the circuit providing such fullness information to the branching node in accordance with a point-to-point flow control technique; and
a circuit in each branching node for processing the fullness information in accordance with a data unit forwarding technique selectable from a plurality of data unit forwarding techniques, wherein the selected data unit forwarding technique prevents any downstream node from lagging behind any other downstream node by more than k data units.
8. A method for forwarding a multicast data unit from a branching node to at least one of a plurality of coupled downstream nodes, comprising the steps of:
determining, the eligibility of respective nodes to receive said multicast data unit based upon a specified multicast data unit forwarding technique selected from a plurality of multicast data unit forwarding techniques; and
forwarding said data unit to selected ones of said coupled downstream nodes based upon said specified data unit forwarding technique, wherein the forwarding step includes the further step of employing a technique in which loss of data is prevented between the branching node and a variable subset of (p) downstream nodes in the multicast connection having most recently provided a feedback update to the branching node.
18. A multicast apparatus for transmitting multicast data units in a multicast connection from a branching node to a plurality of downstream nodes, comprising:
a memory in each downstream node for receiving multicast data units;
a circuit for providing information indicating fullness of the downstream node memory, the circuit providing such fullness information to the branching node in accordance with a point-to-point flow control technique; and
a circuit in each branching node for processing the fullness information in accordance with a data unit forwarding technique selectable from a plurality of data unit forwarding techniques, wherein the selected data unit forwarding technique prevents loss of data units between the branching point node and a distinguished subset of downstream nodes connected thereto.
12. A multicast apparatus for transmitting multicast data units in a multicast connection from a branching node to a plurality of downstream nodes, comprising:
a memory in each downstream node for receiving multicast data units;
a circuit for providing information indicating fullness of the downstream node memory, the circuit providing such fullness information to the branching node in accordance with a point-to-point flow control technique; and
a circuit in each branching node for processing the fullness information in accordance with a data unit forwarding technique selectable from a plurality of data unit forwarding techniques; and
a forwarding circuit in each branching node for forwarding the multicast data unit to selected ones of the plurality of downstream nodes responsive to the selected data unit forwarding technique, wherein the selected ones of the downstream nodes at least at some times form a subset of the plurality of downstream nodes.
2. The method of claim 1 wherein said eligibility determining step includes analyzing feedback updates received from respective downstream nodes.
3. The method of claim 1 including the further step of employing a data unit forwarding ring buffer to execute said specified data unit forwarding technique.
4. The method of claim 1 wherein the forwarding step includes the further step of employing a data unit forwarding technique in which no downstream node is allowed to lead ahead of another downstream node by more than k data units.
5. The method of claim 1 wherein the forwarding step includes the further step of employing a data unit forwarding technique in which loss of data is prevented between the branching node and each downstream node in the multicast connection.
7. The method of claim 6 including the further step of designating a non-distinguished subset of downstream nodes in the multicast connection which are not entirely protected from data loss.
9. The method of claim 8 including the further step of including at least the (p) most recent feedback updates to determine the downstream nodes in the distinguished subset, where (p) is an input.
11. The method of claim 10 wherein the data units are grouped into frames, and including the further step of discarding any remaining portion of a frame if a downstream node lags behind another downstream node by k data units while the frame is being transmitted.
13. The apparatus of claim 12 further including a circuit in each downstream node for providing feedback updates indicating memory fullness to the branching node.
14. The apparatus of claim 12 wherein the branching point node includes a data unit forwarding ring buffer having a head pointer and a tail pointer.
15. The apparatus of claim 12 wherein the branching point node further includes a buffer system for storing incoming data units prior to forwarding of such incoming data units from said buffer system to the ring buffer.
16. The apparatus of claim 12 wherein the selected data unit forwarding technique prevents any downstream node from leading ahead of any other downstream node by more than k data units.
17. The apparatus of claim 12 wherein the selected data unit forwarding technique prevents loss of data units between the branching node and each downstream node connected thereto.
19. The apparatus of claim 18 wherein the selected data unit forwarding technique does not prevent loss for a non-distinguished subset of downstream nodes connected thereto.
21. The apparatus of claim 20 wherein the members of the variable subset (p) are the (p) downstream nodes most recently having provided memory fullness information to the branching node, where (p) is an input.
23. The apparatus of claim 22 wherein the data units are grouped into frames, and wherein any portion of a frame remaining to be transmitted is discarded when a downstream node lags behind another downstream node by k data units while the frame is being transmitted.

A claim of priority is made to U.S. Provisional Patent Application No. 60/009,919 entitled A RELIABLE AND FLEXIBLE MULTICAST MECHANISM FOR ABR SERVICE IN ATM NETWORKS, filed Jan. 12, 1996.

The present invention is generally related to Asynchronous Transfer Mode networks, and more particularly to multicasting within such networks.

The advent of high-speed, cell-based, connection-oriented Asynchronous Transfer Mode ("ATM") networks creates a need for a reliable and flexible multicast mechanism that can support traditional LAN-based applications. Multicast functionality is required for implementation of "webcasting," routing, address-resolution and other inter-networking protocols. One of the early contributions to the ATM forum, "LAN Emulation's Needs For Traffic Management" by Keith McCloghrie, ATM Forum 94-0533, described multipoint connections in support of multicasting as one of the high-level requirements for LAN emulation. Such requirements may be viewed as including at least the same level of performance from an emulated LAN as from a traditional LAN in all respects, including multicast capability.

Known techniques for implementing multicast generally fall into two categories: "slowest-leaf wins" and "best-effort delivery." Slowest-leaf wins implies that the slowest leaf of the multicast connection determines the progress of the entire connection. While this technique prevents cell loss, it may be undesirable from the point of view of public-carrier networks where it is important to avoid allowing an arbitrary end-system from controlling the performance of the network. "Best-effort delivery" implies that cells are dropped for leaves that are unable to maintain a predetermined pace. While this technique prevents an arbitrary leaf from controlling the performance of the network, dropping cells in order to maintain performance may also be undesirable, as for example with loss sensitive transfers such as computer data transmission. While these techniques might be suitable for some multicast applications, neither technique provides a satisfactory multicast mechanism for the broad range of applications encountered in high-speed networks.

In a network where a data unit is multicast in a connection from a root node to a plurality of leaves via a plurality of branching point nodes, at least one forwarding technique selected from a plurality of forwarding techniques is implemented at each branching point node. The forwarding techniques facilitate multicast operation by controlling forwarding of multicast data units, and different connections may employ different forwarding techniques. Possible forwarding techniques that may be employed include a Prevent-Loss (PL) technique, a Prevent-Loss for Distinguished Subsets (PL(n)) technique, a Prevent-Loss for Variable Subset (p/n) technique, a K-Lag technique and a K-Lead technique.

Each branching point node includes a forwarding buffer which may be modeled as a ring buffer with two pointers: a head pointer and a tail pointer. A buffer system is also provided and data units are stored in the buffer system upon receipt before entering the ring buffer. The tail pointer points to the first received and buffered data unit in the series of the most recently received data units from upstream that has not yet been forwarded to any branch. The head pointer points to the oldest data unit that needs to be forwarded downstream to any branch. Thus, the data units stored in the ring buffer between the head and tail pointers need to be forwarded to one or more branches. The tail pointer advances by one buffer in a counter-clockwise direction with the forwarding of the most recent data unit in the ring and the arrival of the next most recent data unit that has not yet been forwarded to any branch. The head pointer advances as needed to indicate the current oldest data unit in the ring buffer. The advancement of the head pointer depends on the particular forwarding technique chosen from a range of possible techniques, each of which provides a different service guarantee. Each buffer, i, in the ring has an associated counter called a reference count, r(i), that counts the number of branches to which the data unit in the buffer must be forwarded. If the index (i) increases from head pointer to tail pointer, then one may observe that r(i) is a monotonically increasing function. Each time the tail pointer moves to a new buffer, the corresponding reference count is set to n, the number of downstream branches being serviced by that reference counter. Each time the data unit is forwarded to one of those branches, the reference counter is decremented by one. When the reference counter corresponding to the buffer at the position of the head pointer reaches 0,the head pointer is advanced in the counter-clockwise direction to the next buffer with a non-zero reference counter. Under no circumstance is the head pointer advanced beyond the tail pointer. Alternatively, there can be multiple instances of head and tail pointers with their associated reference counters where each instance can service a different disjoint subset of branches each with a possibly different service guarantee. In this case, it is important to advance the tail pointer only in relation to the head pointers from other subsets to avoid violating the service guarantees associated with those subsets of branches. In another alternative embodiment there can be a per-branch counter rather than a per-data unit buffer counter. The general principles of the mechanism remain the same. Different service guarantees can be supported by the above mechanism such as a Prevent-Loss (PL) technique, a Prevent-Loss for Distinguished Subsets (PL(n)) technique, a Prevent-Loss for Variable Subset (p/n) technique, a K-Lag technique, a K-Lead technique and other guarantees.

The Prevent-Loss (PL) technique prevents data loss within a connection. In particular, the Prevent-Loss technique ensures that each data unit that is received is forwarded to each branch. However, if a branch performs poorly, the effect of this poor performance may eventually propagate towards the root node and thereby affect all of the branches.

The Prevent-Loss (PL) technique is realized by ensuring that the tail pointer never overtakes the head pointer in all circumstances. The head pointer can advance only after its data unit has been forwarded to each branch, i.e., only when the reference count has decreased to zero. This implements the Prevent-Loss technique.

The Prevent-Loss for Distinguished Subsets technique guarantees delivery of the multicast data unit to predetermined subsets of branches in the multicast connection. More particularly, transmission to a distinguished subset of branches is made according to the Prevent-Loss technique described above. Hence, there is no data loss in this distinguished subset. A non-distinguished subset of branches consisting of the remaining branches in the connection, is not guaranteed delivery of the multicast data unit. Hence, the distinguished subsets of branches are insulated from possible poor performance by branches in the non-distinguished subset of branches.

The Prevent-Loss for Distinguished Subsets technique is implemented by using a separate set of reference counters for each distinguished subset of branches. The head pointer is advanced only after all members of the distinguished subset have been served. This makes it possible, for example, to provide a lossless service to the members of the distinguished subset of branches.

The K-Lag technique is realized by ensuring that the head pointer is advanced together with the tail pointer such that it is no more than a distance of K from the tail pointer. If the tail pointer is K data unit buffer positions ahead of the head pointer in the counter-clockwise direction, the data unit at the tail pointer is forwarded to any branch and the tail pointer advanced along with the head pointer one buffer position counter-clockwise, i.e., the data unit in the buffer position of the original head pointer is no longer guaranteed to be forwarded. It is possible that the data unit at the previous head pointer positions may yet be forwarded before being overwritten by that at the tail pointer. In an alternative embodiment, such a data unit can be deleted and not forwarded any more. It should also be noted that K must be at least 1. Different values of K give rise to different levels of service.

In a variation of the K-Lag technique, K-EPD (early packet discard), each branch is allowed to lag by up to K data units, as set by an upper memory bound associated with the branch. If the tail pointer is K buffer positions ahead of the head pointer in the counter-clockwise direction and the head pointer is pointing to a data unit in the middle of the frame, then the head pointer is advanced up to the End Of Frame data unit or one position before the tail pointer, to prevent forwarding of all data units associated with the respective frame and thus avoid the waste of network bandwidth and resources.

In the K-Lead technique, the fastest branches cannot be ahead of any other branches by more than K data units. The K-Lead technique is realized by ensuring that the tail pointer is not advanced more that a distance of K from the head pointer. If the tail pointer is K buffer positions ahead of the head pointer in the counter-clockwise direction, the data unit at the tail pointer may not be forwarded to any branch.

In the Prevent-Loss for Variable Subset (p/n) forwarding technique there is no data loss for p out of n branches. This is achieved as a variant to the PL technique. In this technique, the tail pointer is allowed to advance beyond the head pointer, as long as the corresponding reference counter is less than n-p. This ensures that a given data unit copy is delivered to at least p branches. It is possible that the unincluded branch may overflow at some point. However, the performance of the possibly overflowing branch does not affect the performance of branches in the subset of p branches. Hence, the technique provides protection for a subset of branches where the members of the subset are determined contemporaneously with the forwarding calculation.

The invention will be more fully understood in view of the following Detailed Description of the Invention and Drawing, of which:

FIG. 1 is a block diagram of an ATM switch for providing reliable and flexible multicast;

FIG. 2 is a block diagram of a network topology which illustrates forwarding techniques;

FIG. 3 illustrates a ring buffer;

FIG. 4 is a flow diagram which illustrates a Prevent-Loss for Variable Subset (p/n) technique; and

FIG. 5 is a diagram which illustrates the K-EPD technique.

FIG. 1 illustrates a switch 10 for achieving reliable and flexible multicast functionality for an Asynchronous Transfer Mode ("ATM") network. The switch 10 has a plurality of input ports 12 and output ports 14, each of which may include an associated buffer such as a First-In First-Out ("FIFO") memory 16, 17, respectively. The input ports 12 and output ports 14 are interconnected by a switch fabric 18 such that a data unit 19, as for example a cell, frame or packet, entering any of the input ports 12 may be transmitted through the switch fabric 18 to any of the output ports 14. In particular, when one input port is using one or more output ports, any other input can use any unused output ports. The output FIFOs 17 may be sized to cope with latency such that the switch is non-blocking, i.e., each FIFO 16 at the input side may be sized to achieve a target bandwidth utilization given the round trip latencies affecting the control loop, and each output FIFO 17 may be sized to cope with such latencies in the data forwarding path. Further, the switch is provided with hardware multicast capability.

Referring now to FIG. 2, the multicast forwarding techniques will be described with regard to the illustrated tree network topology. The tree topology includes a root node 20, a plurality of branching point nodes ("branches") 22, 24 and a plurality of end-nodes, end-systems or leaves 26, 28, 30, 32. The end-systems may be hosts, routers, or switches that terminate the tree. The branching nodes 22, 24, which stem from the root node, are "parent" nodes having a plurality of "child" nodes stemming therefrom in the multicast tree. Data 34, such as cells, packets or frames, flow from the root node 20 to the branching point nodes 22, 24, and then to the leaves 26-32. Feedback updates 36 flow from the leaves to the branching point nodes in accordance with a point-to-point flow control technique as is known in the art. While illustrated with a single level of branching point nodes, the actual implementation may have multiple levels of branching point nodes. It should also be understood that the branching point nodes may feed either leaves, as illustrated, or other branching point nodes or combinations thereof depending upon the topology of the multicast tree.

Referring to FIGS. 2 and 3, at each branching point node, the forwarding buffer may be modeled as a ring buffer 35 with two pointers: a head pointer 37 and a tail pointer 39. An order retaining buffer system such as the FIFO 16 is also provided and data units are stored in the buffer system upon receipt before entering the ring buffer 35. The tail pointer 39 points to the first received and buffered data unit in the series of the most recently received data units from upstream that has not yet been forwarded to any branch. The head pointer 37 points to the oldest data unit that needs to be forwarded downstream to any branch. Thus, the data units stored in the ring buffer between the head and tail pointers need to be forwarded to one or more branches. The tail pointer advances by one buffer in a counter-clockwise direction with the forwarding of the most recent data unit in the ring and the arrival of the next most recent data unit that has not yet been forwarded to any branch. The head pointer advances as needed to indicate the current oldest data unit in the ring buffer. The advancement of the head pointer depends on the particular forwarding technique chosen from a range of possible techniques, each of which provides a different service guarantee. Each buffer, i, in the ring has an associated counter called a reference count, r(i), that counts the number of branches to which the data unit in the buffer must be forwarded. If the index (i) increases from head pointer to tail pointer, then one may observe that r(i) is a monotonically increasing function. Each time the tail pointer moves to a new buffer, the corresponding reference count is set to n, the number of downstream branches being serviced by that reference counter. Each time the data unit is forwarded to one of those branches, the reference counter is decremented by one. When the reference counter corresponding to the data unit buffer at the position of the head pointer reaches 0, the head pointer is advanced in the counter-clockwise direction to the next data unit buffer with a non-zero reference counter. Under no circumstance is the head pointer advanced beyond the tail pointer.

In an alternative embodiment, there can be multiple instances of head and tail pointers with their associated reference counters where each instance can service a different disjoint subset of branches each with a possibly different service guarantee. In this case, it is important to only advance the tail pointer in relation to the head pointers from other subsets to avoid violating the service guarantee associated with those subsets of branches.

In yet another embodiment, there can be a per-branch counter rather than a per-data unit buffer counter. The general principles of the mechanism remain the same.

The root node 20 as well as the branching point nodes 22, 24 execute the multicast forwarding technique. Any one of a plurality of forwarding techniques may be employed at the branching point nodes to support service guarantees for the branches of the multipoint connection. The forwarding techniques function to control the forwarding of multicast data units, and may protect portions of the multicast tree from the effects of poorer performing portions. Forwarding techniques may include a Prevent-Loss (PL) technique, a Prevent-Loss for Distinguished Subsets (PL(n)) technique, a Prevent-Loss for Variable Subset (p/n) technique, a K-Lag technique, a K-Lead technique and techniques offering other service guarantees.

Prevent-Loss (PL) is a forwarding technique where data unit loss is prevented by adjusting transmission of multicast data units so that each branch receives a copy of each multicast data unit. Prevent-Loss is realized by ensuring that the tail pointer never overtakes the head pointer in all circumstances. If the tail pointer is one, data unit buffer position behind the head pointer in the counter-clockwise direction (the ring is full), the data unit at the tail pointer may not be forwarded to any branch. This data unit may be forwarded only when the head pointer advances, i.e., when the reference count of the data unit at the head pointer becomes zero. Depending on the duration of such poor performance, the effect may propagate towards the root of the multicast tree, eventually affecting all leaves.

The Prevent-Loss for Distinguished Subsets technique guarantees delivery of the multicast data unit to a predetermined subsets of branches in the multicast connection. More particularly, transmission to a distinguished subset of branches is made according to the Prevent-Loss technique described above. Hence, there is no data loss in this distinguished subset. A non-distinguished subset of branches consisting of the remaining branches in the connection, is not guaranteed delivery of the multicast data unit. Hence, the distinguished subsets of branches are insulated from possible poor performance by branches in the non-distinguished subset of branches.

The Prevent-Loss for Distinguished subsets technique is implemented by using a separate set of reference counters for each distinguished subset of branches. The head pointer is advanced only after all members of the distinguished subset have been served. This makes it possible, for example, to provide a lossless service to the members of the distinguished subset of branches. Further, it should be understood that there may be more than one distinguished subset.

In the Prevent-Loss for Variable Subset (p/n) forwarding technique there is no data loss for p out of n branches. This is achieved as a variant to the PL technique. In this technique, the tail pointer is allowed to advance beyond the head pointer, as long as the corresponding reference counter is less than n-p. This ensures that a given data unit copy is delivered to at least p branches. It is possible that the unincluded branch may overflow at some point. However, the performance of the possibly overflowing branch does not affect the performance of branches in the subset of p branches. Hence, the technique provides protection for a subset of branches where the members of the subset are determined contemporaneously with the forwarding calculation.

One embodiment of the Variable Subset technique is illustrated in FIG. 4. In a first step 40 an integer p is entered, where p is a selectable input. At iteration n=0, inquiry is made whether p feedback updates have been received from at least p branches as determined in step 42. Fewer feedback updates may be processed if a timeout occurs in step 44 before p feedback updates are collected. More feedback updates may be processed if a group of feedback updates pushing the total above p arrives contemporaneously. A processed update X(0) is then calculated in step 46 as the median of the gathered feedback updates. A variance v(0) is then calculated in step 50 for use as described below.

A FIFO queue 51 is maintained in the switch for each branch in the multicast connection. The fullness of such FIFO queues is indicative of absence of feedback updates from the associated branches. At an iteration n=m, feedback updates are obtained from p leaves. If at least one leaf fails to deliver a feedback update in the previous iteration (n-1) as determined in step 52, fewer than p leaves are utilized by adjusting the number of leaves required in step 54. Given the following definitions:

q(i)=fullness of forwarding FIFO queue i branch;

q(j,m)=fullness of forwarding FIFO queue j branch at iteration m;

x(m)=median of q(i,m) at iteration m;

v(m)=variance of q(i,m) at iteration m;

x(m,m-1)=median of q(i,m) over iterations m and m-1; and

v(m,m-1)=variance of q(i,m) over iterations m and m-1, then

an outlier (j) at time (n=m) is removed from the pool and is not to be waited for at n=m+l if the following is true:

[q(j,m)-x(m)]2 >v(m) or

[q(j,m)-x(m,m-1)2 >v(m,m-1), where

v(m)=Σi [((q(i)-x(m))/p]2,

v(m-1,m-2)=Σi Σj [((q(i)q(j)-x(m-1, m-2))/p]2,

x(m)=median of p updates, and

x(m-1, m-2)=median of p updates at both time instances.

However, if a feedback update is received from the previously silent node while updates are being gathered, then that feedback update is included in the calculation. Hence, v(m) is calculated in step 50, and any branches which have not provided a feedback update in the previous iteration should not be considered in the next iteration are detected in step 52.

If all leaves were unresponsive in the previous "y" iterations, where "y" is a small number like 1, 2 or 3, then the processed update is computed with fewer than p updates. If an update is received from a specified leaf, that update is added to the pool for processing. Further, if the outbound FIFO for a specified leaf or branch is stale (i.e., if that FIFO corresponds to a branch that is not being considered), then four steps may be executed: (A) drop the p earliest data units in the FIFO; or (B) forward the p earliest data units in the FIFO; or (C) drop the p latest data units in the FIFO; or (D) forward the p latest data units and drop the remaining data units in the FIFO. In cases C and D, the FIFO for the specified leaf is considered to be RESTARTED.

Referring to FIGS. 2 and 5, in the K-Lag service, the slowest branches are guaranteed to not lag the fastest by more than K data units. The K-Lag service is realized by ensuring that the head pointer is advanced together with the tail pointer such that it is no more than a distance of K from the tail pointer. If the tail pointer is K data unit buffer positions ahead of the head pointer in the counter-clockwise direction and if the data unit at the tail pointer has been forwarded to any branch, then the tail pointer is advanced along with the head pointer one data unit buffer position counter-clockwise. In this circumstance the data unit in the buffer position of the original head pointer is no longer guaranteed to be forwarded. It is possible that the data unit at the previous head pointer positions may yet be forwarded before being overwritten by that at the tail pointer. In an alternative embodiment, such a data unit can be deleted and not forwarded any more. It should also be noted that K must be at least 1. Different values of K give rise to different levels of service.

In a variation of the K-Lag technique, K-EPD, each branch is allowed to lag by up to K data units, as set by an upper memory bound associated with the leaf. If the tail pointer is K data unit buffer positions ahead of the head pointer in the counter-clockwise direction and the head pointer is pointing to a data unit in the middle of the frame, then the head pointer is advanced up to the end of the frame data unit or one position before the tail pointer, to prevent forwarding of all data units associated with the respective frame and thus avoid the waste of network bandwidth and resources.

In the K-Lead technique, the fastest branches cannot be ahead of any other branches by more that K data units. The K-Lead technique is realized by ensuring that the tail pointer is not advanced more that a distance of K from the head pointer. If the tail pointer is K data unit buffer positions ahead of the head pointer in the counter-clockwise direction, the data unit at the tail pointer may not be forwarded to any branch.

Having described the preferred embodiments of the invention, it will now become apparent to one of skill in the art that other embodiments incorporating the presently disclosed method and apparatus may be used. Accordingly, the invention should not be viewed as limited to the disclosed embodiments, but rather should be viewed as limited only by the spirit and scope of the appended claims.

Nair, Raj Krishnan, Hunt, Douglas H.

Patent Priority Assignee Title
10957445, Oct 05 2017 Hill-Rom Services, Inc. Caregiver and staff information system
11257588, Oct 05 2017 Hill-Rom Services, Inc. Caregiver and staff information system
11688511, Oct 05 2017 Hill-Rom Services, Inc. Caregiver and staff information system
6216167, Oct 31 1997 AVAYA MANAGEMENT L P Efficient path based forwarding and multicast forwarding
6412011, Sep 14 1998 AT&T Properties, LLC; AT&T INTELLECTUAL PROPERTY II, L P Method and apparatus to enhance a multicast information stream in a communication network
6484209, Oct 31 1997 AVAYA MANAGEMENT L P Efficient path based forwarding and multicast forwarding
6636510, May 28 1998 WSOU Investments, LLC Multicast methodology and apparatus for backpressure-based switching fabric
6704576, Sep 27 2000 AT&T Corp Method and system for communicating multimedia content in a unicast, multicast, simulcast or broadcast environment
6914901, Dec 05 2001 Cisco Technology, Inc. System and method for communicating using multiple memory banks
6996071, Apr 30 2001 Adtran Inc. Binary decision tree-based arbitrator for packetized communications
7216186, Sep 27 2001 Intel Corporation Controlling data flow between processor systems
7280542, Oct 25 2002 Sound View Innovations, LLC Multicasting system and method for use in an access node's ATM switch fabric
7450503, Dec 24 2002 Cisco Technology, Inc.; Cisco Technology, Inc System and method to multicast guaranteed and best-effort traffic in a communications network
7480239, Nov 27 2001 Cisco Technology, Inc Method and apparatus for true priority based connection establishment within a PNNI ATM network
7532574, Oct 02 2003 Cisco Technology, Inc. Method and apparatus for improved priority based connection establishment within a PNNI ATM network
7567556, Feb 20 2003 RPX CLEARINGHOUSE LLC Circulating switch
7945816, Nov 30 2005 AT&T INTELLECTUAL PROPERTY II, L P ; AT&T Properties, LLC Comprehensive end-to-end storage area network (SAN) application transport service
8458528, Nov 30 2005 AT&T Intellectual Property II, L.P. Comprehensive end-to-end storage area network (SAN) application transport service
8498304, Dec 18 2009 Fujitsu Limited Communication controller
8605717, Feb 19 2004 RPX CLEARINGHOUSE LLC Two-dimensional circulating switch
8677190, Nov 30 2005 AT&T Intellectual Property II, L.P. Comprehensive end-to-end storage area network (SAN) application transport service
Patent Priority Assignee Title
3804991,
3974343, Jan 10 1975 ALCATEL NETWORK SYSTEMS, INC Small modular communications switching system with distributed programmable control
4069399, Nov 17 1975 Northern Electric Company, Limited TDM PCM Communication system
4084228, Nov 30 1973 Compagnie Honeywell Bull Process management structures and hardware/firmware control
4240143, Dec 22 1978 Unisys Corporation Hierarchical multi-processor network for memory sharing
4603382, Feb 27 1984 International Business Machines Corporation Dynamic buffer reallocation
4715030, Aug 04 1986 General Electric Company Local area network bridge
4727537, Dec 24 1985 Avaya Technology Corp Flow control arrangement for the transmission of data packets to a communication network
4737953, Aug 04 1986 General Electric Company Local area network bridge
4748658, Jul 16 1986 Telcordia Technologies, Inc Architecture for allocating resources in a telecommunications network
4797881, Mar 12 1987 HUGHES LAN SYSTEMS, INC Bridge system for connecting networks
4821034, Feb 06 1987 Qlogic Corporation Digital exchange switch element and network
4837761, May 26 1987 Fujitsu Limited Header driven type packet switching system
4849968, Sep 06 1985 Washington University; WASHINGTON UNIVERSITY, A CORP OF MO Buffer management system
4870641, Mar 30 1988 Telcordia Technologies, Inc Multichannel bandwidth allocation
4872157, Mar 31 1988 American Telephone and Telegraph Company, AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Architecture and organization of a high performance metropolitan area telecommunications packet network
4872159, Mar 31 1988 American Telephone and Telegraph Company AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Packet network architecture for providing rapid response time
4872160, Mar 31 1988 American Telephone and Telegraph Company, AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Integrated packetized voice and data switching system
4872197, Oct 02 1986 DTI Peripherals, Inc. Dynamically configurable communications network
4878216, Mar 02 1987 Fujitsu Limited Method for management of logical channels for ISDN packet service
4893302, Mar 31 1988 American Telephone and Telegraph Company, AT&T Bell Laboratories; BELL TELEPHONE LABORATORIES, INCORPORATED, A CORP OF NY ; AMERICAN TELEPHONE AND TELEGRAPH COMPANY, A CORP OF NY Arrangement for switching concentrated telecommunications packet traffic
4893307, Feb 29 1988 International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION, A CORP OF NY Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network
4894824, Mar 31 1988 American Telephone and Telegraph Company, AT&T Bell Laboratories; BELL TELEPHONE LABORATORIES, INCORPORATED, A CORP OF NY ; AMERICAN TELEPHONE AND TELEGRAPH COMPANY, A CORP OF NY Control network for a rapid connection circuit switch
4897833, Oct 16 1987 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Hierarchical arbitration system
4897841, Jan 11 1989 HUGHES LAN SYSTEMS, INC System and method for bridging local area networks using concurrent broadband channels
4899333, Mar 31 1988 American Telephone and Telegraph Company AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Architecture of the control of a high performance packet switching distribution network
4920531, Feb 19 1987 Fujitsu Limited Header driven packet switching system and method
4922503, Oct 28 1988 Mitel Corporation Local area network bridge
4933938, Mar 22 1989 Hewlett-Packard Company Group address translation through a network bridge
4942574, Mar 31 1988 American Telephone and Telegraph Company, AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Concurrent resource request resolution mechanism
4947390, Mar 22 1989 Hewlett-Packard Company Method for data transfer through a bridge to a network requiring source route information
4953157, Apr 19 1989 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Programmable data packet buffer prioritization arrangement
4956839, Jul 22 1988 Hitachi, Ltd. ATM switching system
4958341, Mar 31 1988 AT&T Bell Laboratories; Bell Telephone Laboratories, Incorporated; American Telephone and Telegraph Company Integrated packetized voice and data switching system
4979100, Apr 01 1988 SPRINT INTERNATIONAL COMMUNICATIONS CORPORATION, A CORP OF DE Communication processor for a packet-switched network
4993018, Feb 06 1987 Fujitsu Limited Self-routing switching system with multiple link connections between incoming and outgoing lines
5014192, May 06 1985 Motorola Inc System for locating a file in a logical ring by sequentially forwarding access request with file system name and file name
5021949, Feb 29 1988 International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION, A CORP OF NY Method and apparatus for linking an SNA host to a remote SNA host over a packet switched communications network
5029164, Apr 13 1990 ENTERASYS NETWORKS, INC Congestion avoidance in high-speed network carrying bursty traffic
5060228, Nov 19 1988 Fujitsu Limited Bridge communication system
5067123, Jul 03 1989 Fujitsu Limited System for controlling data transmission in ATM switching network
5070498, Aug 04 1989 Fujitsu Limited Call control system in ATM switch
5083269, Jan 10 1989 Kabushiki Kaisha Toshiba Buffer device suitable for asynchronous transfer mode communication
5084867, Sep 19 1990 Fujitsu Limited Routing method and routing system for switching system having a plurality of paths
5084871, Oct 16 1987 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Flow control of messages in a local area network
5090011, Dec 23 1988 Hitachi, Ltd. Packet congestion control method and packet switching equipment
5090024, Aug 23 1989 ATHEROS POWERLINE LLC; ATHEROS COMMUNICATIONS, INC Spread spectrum communications system for networks
5093827, Sep 21 1989 AVAYA Inc Control architecture of a multi-node circuit- and packet-switching system
5093912, Jun 26 1989 International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, N Y 10504, A CORP OF NY Dynamic resource pool expansion and contraction in multiprocessing environments
5115429, Aug 02 1990 Motorola, Inc Dynamic encoding rate control minimizes traffic congestion in a packet network
5119369, Jul 05 1989 Hitachi, Ltd. Packet switch communication network using packet having virtual channel identifier
5119372, May 10 1989 AT&T Bell Laboratories Multi-access ATD multiplexer with congestion detection circuitry
5128932, Aug 27 1990 TTI Inventions A LLC Traffic flow control and call set-up in multi-hop broadband networks
5130975, Dec 15 1989 NEC Corporation Dual port memory buffers and a time slot scheduler for an ATM space division switching system
5130982, Jun 30 1989 AT&T Bell Laboratories Fully shared communications network
5132966, Mar 23 1989 Juniper Networks, Inc Call control with transmission priority in a packet communication network of an ATM type
5146474, Mar 23 1990 Siemens Aktiengesellschaft Circuit arrangement for the routine testing of an interface between line terminator groups and the switching matrix network of a PCM telecommunication switching system
5146560, May 31 1989 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Apparatus for processing bit streams
5150358, Aug 23 1990 American Telephone and Telegraph Company Serving constant bit rate traffic in a broadband data switch
5151897, Mar 20 1990 FUJITSU LIMITED, 1015, KAMIKODANAKA, NAKAHARA-KU, KAWASAKI-SHI, KANAGAWA 211, JAPAN Inter-LAN connection apparatus and inter-LAN connection method
5157657, Dec 07 1988 Telstra Corporation Limited Communications method for a shared-medium communications method
5163045, Oct 01 1990 American Telephone and Telegraph Company Communications network arranged to transport connection oriented and connectionless messages
5163046, Nov 30 1989 AT&T Bell Laboratories Dynamic window sizing in a data network
5179556, Aug 02 1991 WASHINGTON UNIVERSITY A CORP OF MO Bandwidth management and congestion control scheme for multicast ATM networks
5179558, Jun 22 1989 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Routing apparatus and method for high-speed mesh connected local area network
5185743, Feb 08 1990 Fujitsu Limited Signaling cell switching system
5191582, Aug 14 1991 TranSwitch Corporation Method and apparatus for the high speed modification of a packet address field of a transmitted packet in a frame relay system
5191652, Nov 13 1989 International Business Machines Corporation Method and apparatus for exploiting communications bandwidth as for providing shared memory
5193151, Aug 30 1989 ENTERASYS NETWORKS, INC Delay-based congestion avoidance in computer networks
5197067, Sep 18 1989 Fujitsu Limited Packet communication system using a telephone switching network and a data flow control method
5198808, Sep 20 1988 NEC Corporation Matrix switch apparatus with a diagnosis circuit having stand-by ports and reduced size matrix switching elements
5199027, Mar 14 1989 Alcatel N.V. Communication switching system
5239539, Mar 20 1990 Dosa Advances LLC Controller for distributing loads among call processors
5253247, Aug 20 1990 Kabushiki Kaisha Toshiba Traffic control method and traffic control system for controlling cell traffic in an asynchronous transfer mode communication network
5253248, Jul 03 1990 AT&T Bell Laboratories Congestion control for connectionless traffic in data networks via alternate routing
5255264, Sep 26 1991 IPC Systems, Inc Distributed control switching network for multi-line telephone communications
5255266, Oct 20 1990 Fujitsu Limited ATM switching unit
5257311, Apr 30 1991 Fujitsu Limited System for monitoring ATM cross-connecting apparatus by inside-apparatus monitoring cell
5258979, Mar 20 1990 Fujitsu Limited ATM communication system with optimal traffic control by changing the allocated bandwidth
5265088, Jun 03 1991 Fujitsu Limited; Nippon Telegraph and Telephone Corporation Cross-connection apparatus for B-ISDN
5267232, Aug 31 1990 Kabushiki Kaisha Toshiba Method of controlling data transmission in ATM network with cell loss priority level
5268897, Nov 09 1990 Fujitsu Limited Route switching system in communications network
5271010, Oct 20 1990 Dosa Advances LLC Virtual identifier conversion system
5272697, Feb 23 1990 American Telephone and Telegraph Company Apparatus and method for time multiplexing a resource among a plurality of entities
5274641, Aug 20 1990 Kabushiki Kaisha Toshiba ATM communication system
5274768, May 28 1991 TRUSTEES OF THE UNIVERSITY OF PA, THE,; TRUSTEES OF THE UNIVERSITY OF PENNSYLVANIA, THE, High-performance host interface for ATM networks
5280469, Jun 18 1991 Fujitsu Limited; Nippon Telegraph and Telephone Public Corporation System for monitoring normality of operation of ATM cross-connecting apparatus
5280470, Nov 21 1990 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Bandwidth and congestion management in accessing broadband ISDN networks
5282201, Dec 22 1987 Sun Microsystems, Inc Dynamic packet routing network
5283788, Sep 10 1990 Fujitsu Limited ISDN D channel congestion control method
5285446, Nov 27 1990 NEC Corporation Cell flow control unit and method for asynchronous transfer mode switching networks
5287349, Feb 05 1991 Fujitsu Limited ATM exchange system
5287535, May 07 1991 Fujitsu Limited Switching node in label multiplexing type switching network
5289462, Aug 19 1992 Toshiba Global Commerce Solutions Holdings Corporation Traffic management in packet communications networks
5289463, May 30 1991 Alcatel Cit Method of managing flows in a wideband integrated services digital telecommunications network
5289470, Dec 14 1992 International Business Machines Corp.; International Business Machines Corp Flexible scheme for buffer space allocation in networking devices
5291481, Oct 04 1991 AMERICAN TELEPHONE AND TELEGRAPH COMPANY A CORP OF NY Congestion control for high speed packet networks
5291482, Jul 24 1992 AT&T Bell Laboratories High bandwidth packet switch
5295134, Mar 19 1991 Fujitsu Limited In-service activator for a broadband exchanger
5301055, Oct 01 1991 TTI Inventions A LLC Scheduler for multicast cell transmission
5301184, Nov 08 1991 Fujitsu Limited Control system for switching duplicated switch units in ATM exchange
5301190, Aug 06 1990 Fujitsu Limited Communication device having relaying and switching function
5301193, Nov 14 1990 Fujitsu Limited Delay distortion suppressing system for ATM communication system
5303232, May 25 1990 Ericsson AB High performance asynchronous transfer mode switch
5305311, May 20 1992 XEROX CORPORATION A CORP OF NEW YORK Copy network providing multicast capabilities in a broadband ISDN fast packet switch suitable for use in a local area network
5309431, Mar 19 1990 Dosa Advances LLC Route regulating apparatus
5309438, Apr 12 1991 ANDO ELECTRIC CO , LTD ATM cell delay circuit for ISDN system
5311586, Oct 31 1991 AVAYA Inc Dynamic routing-administration
5313454, Apr 01 1992 Cisco Technology, Inc Congestion control for cell networks
5313458, Jun 03 1991 Fujitsu Limited Traffic control system
5315586, Jun 28 1991 Ciena Corporation Resource reallocation for flow-enforced user traffic
5319638, Sep 12 1991 TTI Inventions A LLC Link-by-link congestion control for packet transmission systems
5321695, May 01 1991 Hewlett-Packard Company Port arrival identification for computer network packets
5323389, Aug 14 1992 Ericsson AB ATM cell interface and method for dispatching an ATM cell
5325356, May 20 1992 XEROX CORPORATION, A CORPORATION OF NEW YORK Method for aggregating ports on an ATM switch for the purpose of trunk grouping
5327420, May 20 1992 Xerox Corporation Method for building multi-bit parallel Batcher/banyan networks
5327424, Apr 07 1992 ENTERASYS NETWORKS, INC Automatically configuring parallel bridge numbers
5333131, Aug 17 1990 Hitachi, Ltd.; Hitachi Software Engineering Co., Ltd. Packet switching method and system with self-routing switch
5333134, Jan 24 1991 Fujitsu Limited Connection hold control system
5335222, Aug 09 1990 Fujitsu Limited Traffic control system for asynchronous transfer mode exchange
5335325, Jun 22 1989 Sun Microsystems, Inc High-speed packet switching apparatus and method
5339310, Mar 14 1991 Fujitsu Limited; Nippon Telegraph and Telephone Corp. Switching apparatus for switched network of asynchronous transfer mode
5339317, Aug 28 1991 MATSUSHITA ELECTRIC INDUSTRIAL CO , LTD Packet communications network and communications method
5339318, Oct 24 1991 Fujitsu Limited VPI and VCI assignment system in ATM system
5341366, Mar 18 1992 Fujitsu Limited Connection admission control system
5341373, Feb 05 1991 Fujitsu Limited Congestion relieving system in a communication system
5341376, Jul 27 1990 NEC Corporation ATM cell format conversion system
5341483, Dec 22 1987 Sun Microsystems, Inc Dynamic hierarchial associative memory
5345229, Sep 17 1992 International Business Machines Corporation Adaptive switching apparatus for multi-stage networks
5350906, Nov 25 1992 First Data Corporation; The Western Union Company Currency transfer system and method using fixed limit cards
5351146, Mar 01 1993 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P All-optical network architecture
5355372, Aug 19 1992 Juniper Networks, Inc Threshold-based load balancing in ATM switches with parallel switch planes related applications
5357506, Dec 13 1991 NEC Corporation ATM self-routing switching system having input buffers adaptively controlled by contention test results
5357507, Aug 24 1993 Rockstar Consortium US LP Fast connection admission control for ATM networks
5357508, Apr 27 1992 International Business Machines Corporation Connectionless ATM network support using partial connections
5357510, Feb 19 1992 Fujitsu Limited Apparatus and a method for supervising and controlling ATM traffic
5359600, Feb 14 1992 Nippon Telegraph and Telephone Corporation; NEC Corporation; Hitachi, LTD; Fujitsu Limited High throughput supervisory system for ATM switching systems transporting STM-N signals
5361251, Mar 20 1991 Fujitsu Limited Passing cell monitoring device operated using an ATM switching unit
5361372, Dec 27 1991 ENTERASYS NETWORKS, INC Memory management for data transmission networks
5363433, May 08 1991 Fujitsu Limited Information acquisition system
5363497, May 17 1989 IBM Corporation System for removing section of memory from first system and allocating to second system in a manner indiscernable to both operating systems
5365514, Mar 01 1993 IBM Corporation Event driven interface for a system for monitoring and controlling a data communications network
5369570, Nov 14 1991 Method and system for continuous integrated resource management
5371893, Dec 27 1991 International Business Machines Corporation Look-ahead priority arbitration system and method
5373504, Apr 09 1992 Fujitsu Limited Apparatus and a method for setting a communication path
5375117, Dec 21 1990 Fujitsu Limited Maintenance communication control system in an ISDN service
5377262, Dec 30 1991 AVAYA Inc Telecommunication switching system having adaptive routing switching nodes
5377327, Apr 22 1988 ENTERASYS NETWORKS, INC Congestion avoidance scheme for computer networks
5379297, Apr 09 1992 Network Equipment Technologies, Inc Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode
5379418, Feb 28 1990 Hitachi, Ltd.; The Sanwa Bank Limited Highly reliable online system
5390170, Oct 13 1992 Nortel Networks Limited Method and apparatus providing for bootstrapping of switches in an ATM network or the like
5390174, Jun 26 1992 Siemens Aktiengesellschaft Method for handling information contained in a header portion of message cells transmitted in asynchronous transfer mode
5390175, Dec 20 1993 Lucent Technologies Inc Inter-cell switching unit for narrow band ATM networks
5392280, Apr 07 1994 Mitsubishi Electric Research Laboratories, Inc Data transmission system and scheduling protocol for connection-oriented packet or cell switching networks
5392402, Jun 29 1993 Intellectual Ventures II LLC Broadband intelligent telecommunications network and method employing a resource system to support network services
5394396, Oct 19 1990 Fujitsu Limited Supervision control system
5398235, Nov 15 1991 Mitsubishi Denki Kabushiki Kaisha Cell exchanging apparatus
5398242, Apr 07 1992 ENTERASYS NETWORKS, INC Automatically configuring LAN numbers
5400333, Apr 07 1992 ENTERASYS NETWORKS, INC Detecting LAN number misconfiguration
5400337, Apr 06 1992 Ericsson AB Method for ATM switch core interface
5402415, Apr 22 1993 Washington University Multicast virtual circuit switch using cell recycling
5412648, Dec 25 1992 Juniper Networks, Inc Packet switching system for forwarding packets from input buffers using idle/busy status of output buffers
5414703, Oct 08 1990 Kabushiki Kaisha Toshiba Asynchronous cell switch
5418942, Jul 06 1989 RALPHALPHA, LLC System and method for storing and managing information
5420858, May 05 1993 Nortel Networks Limited Method and apparatus for communications from a non-ATM communication medium to an ATM communication medium
5420988, Aug 31 1990 International Business Machines Corporation Establishing logical paths through a switch between channels and control units in a computer I/O system
5422879, Jun 30 1989 SGS-Thomson Microelectronics Limited Data flow control mechanism utilizing low level flow control codes
5425021, Jan 28 1993 International Business Machines Corporation Packet switching resource management within nodes
5425026, Jan 05 1993 Juniper Networks, Inc Multi-protocol packet switching network
5426635, Sep 08 1993 AT&T IPM Corp Method for adaptive control of windows and rates in networks
5432713, Dec 26 1991 Fujitsu Limited; Nippon Telegraph and Telephone Corporation Usage parameter control circuit for effecting policing control in an ATM network
5432784, Jul 26 1993 ENTERASYS NETWORKS, INC Flow control method and apparatus for systems with long distance links
5432785, Oct 21 1992 TTI Inventions A LLC Broadband private virtual network service and system
5432908, Jul 10 1991 International Business Machines Corporation High speed buffer management of share memory using linked lists and plural buffer managers for processing multiple requests concurrently
5436886, Jul 14 1994 Nortel Networks Limited ATM switch in dual switch plane operation
5436893, Dec 05 1992 AHEAD COMMUNICATIONS SYSTEMS, INC ATM cell switch suitable for multicast switching
5440547, Jan 07 1993 Kabushiki Kaisha Toshiba Data-transfer routing management for packet-oriented digital communication system including ATM networks
5444702, Sep 14 1992 ADAPTIVE CORPORATION Virtual network using asynchronous transfer mode
5446733, Mar 22 1993 Fujitsu Limited Congestion processing mode and congestion processing circuit in frame relay exchange apparatus
5446737, Feb 07 1994 International Business Machines Corporation Method and apparatus for dynamically allocating shared resource access quota
5446738, Dec 29 1992 Electronics and Telecommunications Research Institute ATM multiplexing system
5448559, May 07 1993 Roke Manor Research Limited; Siemens Aktiengesellschaft ATM communication system with interrogation of output port servers for available handing capacity
5448621, Aug 02 1993 CDC PROPRIETE INTELLECTUELLE Dynamic reallocation of spectral capacity in cellular communication systems
5450406, Apr 20 1993 Kabushiki Kaisha Toshiba ATM communication system with high speed connection-less service function
5452296, Nov 12 1992 NEC Corporation Asynchronous transfer mode communication system
5452330, Jul 06 1992 ENTERASYS NETWORKS, INC Bus-oriented switching system for asynchronous transfer mode
5454299, Apr 30 1993 Robot-Coupe SNC Food processor
5455820, May 20 1993 NEC Corporation Output-buffer switch for asynchronous transfer mode
5455825, Apr 28 1994 Mitsubishi Electric Research Laboratories, Inc Tag-based scheduling system for digital communication switch
5457687, Sep 02 1993 Network Equipment Technologies, Inc Method and apparatus for backward explicit congestion notification (BECN) in an ATM network
5459743, Aug 30 1991 Dosa Advances LLC Address decision system having address check system
5461611, Jun 07 1994 INTERGRAPH HARDWARE TECHNOLOGIES COMPANY INC Quality of service management for source routing multimedia packet networks
5463629, Jul 13 1992 Verizon Patent and Licensing Inc Dynamic channel allocation method and system for integrated services digital network
5463775, Jun 10 1991 International Business Machines Corporation System and method for performing monitoring of resources in a data processing system in real time
5465331, Dec 23 1992 International Business Machines Corporation Apparatus having three separated and decentralized processors for concurrently and independently processing packets in a communication network
5465365, Dec 31 1992 AT&T IPM Corp Apparatus and methods for making a portion of a first name space available as a portion of a second name space
5469003, Nov 05 1992 Xilinx, Inc Hierarchically connectable configurable cellular array
5473608, Apr 11 1991 GALILEO INTERNATIONAL, L L C Method and apparatus for managing and facilitating communications in a distributed heterogeneous network
5475679, Dec 08 1994 Nortel Networks Limited Large capacity ATM switch
5479401, Aug 14 1992 Ericsson AB ATM cell interface and method for dispatching an ATM cell
5479402, Mar 05 1991 Fujitsu Limited Logical channel setting system for ATM network
5483526, Jul 20 1994 ENTERASYS NETWORKS, INC Resynchronization method and apparatus for local memory buffers management for an ATM adapter implementing credit based flow control
5485453, Feb 15 1993 Telefonaktiebolaget L M Ericsson Method for handling redundant switching planes in packet switches and a packet switch for carrying out the method
5485455, Jan 28 1994 ENTERASYS NETWORKS, INC Network having secure fast packet switching and guaranteed quality of service
5487063, Mar 19 1991 Fujitsu Limited Point-to-multipoint connection system
5488606, Sep 20 1993 Fujitsu Limited Procedure for switching-over systems
5491691, Aug 16 1994 NXP, B V F K A FREESCALE SEMICONDUCTOR, INC Method and apparatus for pacing asynchronous transfer mode (ATM) data cell transmission
5491694, Jan 28 1994 ENTERASYS NETWORKS, INC System and method for allocating a shared resource among competing devices
5493566, Dec 15 1992 Telefonaktiebolaget L M. Ericsson Flow control system for packet switches
5497369, Nov 06 1990 Hewlett-Packard Company Multicast switch circuits
5499238, Nov 06 1993 Electronics and Telecommunications Research Institute; Korea Telecommunication Authroity Asynchronous transfer mode (ATM) multiplexing process device and method of the broadband integrated service digital network subscriber access apparatus
5504741, Feb 15 1993 Mitsubishi Denki Kabushiki Kaisha Data queuing apparatus and ATM cell switch based on shifting and searching
5504742, Oct 20 1992 Fujitsu Limited Broadband ISDN remote multiplexer
5506834, Dec 01 1993 Fujitsu Limited Communication apparatus for communicating between LANS through a wide area network
5506839, Nov 24 1993 Fujitsu Limited Congestion control method, terminal adapter using the method and communications system using the terminal adapter
5506956, Apr 07 1993 Sprint Communications Company L.P. Error correction and channel restoration apparatus for T1 digital links
5509001, Oct 18 1991 Fujitsu Limited Apparatus and method for controlling cells input to ATM network
5509007, Jan 16 1992 Fujitsu Limited Cell multiplexing apparatus handling multiple items of information
5511070, May 20 1992 Xerox Corporation Reservation ring mechanism for controlling contention in a broadband ISDN fast packet switch suitable for use in a local area network
5513134, Feb 21 1995 Verizon Laboratories Inc ATM shared memory switch with content addressing
5513178, May 19 1993 Fujitsu Limited Cell multiplexing apparatus in ATM network
5513180, May 14 1991 Fujitsu Limited Television signal and ATM cell switching system
5515359, Aug 26 1994 Binary Services Limited Liability Company Credit enhanced proportional rate control system
5517615, Aug 15 1994 Unisys Corporation Multi-channel integrity checking data transfer system for controlling different size data block transfers with on-the-fly checkout of each word and data block transferred
5519690, Nov 08 1993 Hitachi, Ltd. Communication control apparatus having function for limiting frame reception and switching system with the same
5519698, May 20 1992 Xerox Corporation Modification to a reservation ring mechanism for controlling contention in a broadband ISDN fast packet switch suitable for use in a local area network
5521905, Jul 22 1993 Kakusai Denshin Denwa Co., Ltd. Adaptive traffic control apparatus and method for controlling connection of arriving calls
5521915, Jul 21 1994 Alcatel Cit Synchronous digital channel cell assembly and disassembly device, synchronous digital channel switching center, and asynchronous digital channel switching center
5521916, Dec 02 1994 AT&T Corp. Implementation of selective pushout for space priorities in a shared memory asynchronous transfer mode switch
5521917, Mar 03 1994 Juniper Networks, Inc Asynchronous transfer mode switching system capable of reducing capacity of management table
5521923, Aug 27 1993 ALCATEL USA RESOURCES, INC Method and facility for temporarily storing data packets, and exchange with such a facility
5523999, Nov 19 1991 Fujitsu Limited Packet data switching system
5524113, Aug 30 1993 Washington University ATM switch interface
5526344, Apr 15 1994 ALCATEL USA, INC Multi-service switch for a telecommunications network
5528588, Sep 14 1994 Ericsson AB Multicast shared memory
5528590, May 11 1994 Fujitsu Limited ATM-UNI-LAN communication method and apparatus
5528591, Jan 31 1995 Binary Services Limited Liability Company End-to-end credit-based flow control system in a digital communication network
5530695, Dec 15 1993 NEC Corporation UPC-based traffic control framework for ATM networks
5533009, Feb 03 1995 TTI Inventions A LLC Bandwidth management and access control for an ATM network
5533020, Oct 31 1994 IBM Corporation ATM cell scheduler
5535196, Oct 28 1991 Fujitsu Limited Police system of ATM exchange
5535197, Sep 26 1991 IPC Systems, Inc Shared buffer switching module
5537394, Nov 04 1993 Fujitsu Limited Routing system for communications network
5541912, Oct 04 1994 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Dynamic queue length thresholds in a shared memory ATM switch
5544168, Aug 02 1991 Ericsson AB ATM switching arrangement
5544169, Feb 19 1992 Fujitsu Limited Apparatus and a method for supervising and controlling ATM traffic
5544170, Mar 16 1990 Fujitsu Limited ATM transmission system with a variable transmission rate
5546389, Jul 13 1993 ALCATEL N V Method of controlling access to a buffer and a device for temporary storage of data packets and an exchange with such a device
5546391, Mar 04 1993 International Business Machines Corporation Central shared queue based time multiplexed packet switch with deadlock avoidance
5546392, Mar 09 1992 Racal-Datacom, Limited Communications bus and controller
5550821, Mar 18 1994 Fujitsu Limited ATM remote maintenance connection establishing system
5553057, Feb 10 1994 Fujitsu Limited AIS transmission method in ATM communication system, transmission side ATM unit and ATM communication system
5553068, Mar 19 1990 Fujitsu Limited ATM cell broadcasting system
5555243, Jun 02 1994 Fujitsu Limited Self routing exchange and exchange system
5555265, Feb 28 1994 Fujitsu Limited Switching path setting system used in switching equipment for exchanging a fixed length cell
5557607, Apr 28 1994 PMC-SIERRA, INC Methods and apparatus for enqueueing and dequeueing data cells in an ATM switch fabric architecture
5559798, Apr 19 1995 THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT Data segmentation within a renegotiated bit-rate service transmission system
5561791, Apr 10 1995 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Method and apparatus for conditioning timed program independent of transport timing
5568479, Jun 15 1993 Fujitus Limited System of controlling miscellaneous means associated with exchange
5570348, Apr 28 1994 PMC-SIERRA, INC Method and apparatus for enqueueing data cells in an ATM switch fabric architecture
5570361, Feb 19 1992 Fujitsu Limited Apparatus and a method for supervising and controlling ATM traffic
5570362, Mar 16 1994 Fujitsu Limited System for transferring variable length cells under ATM
5572522, Apr 28 1994 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Asynchronous transfer mode switch with multicasting ability
5577032, Sep 11 1992 Fujitsu Limited Broadcast service system
5577035, Mar 23 1994 Ericsson AB Apparatus and method of processing bandwidth requirements in an ATM switch
5583857, Mar 17 1994 Fujitsu Limited Connection admission control method and system in a network for a bandwidth allocation based on the average cell rate
5583858, Sep 30 1993 Fujitsu Semiconductor Limited Asynchronous transfer mode switching device
5583861, Apr 28 1994 PMC-SIERRA, INC ATM switching element and method having independently accessible cell memories
5584037, Mar 01 1994 Intel Corporation Entry allocation in a circular buffer
5590132, Feb 05 1991 Fujitsu Limited Congestion relieving system in a communication system
5602829, Jun 20 1994 Fujitsu Limited Method and apparatus for adjusting throughput of transmission data to be transmitted to network
5610913, Mar 17 1994 Fujitsu Limited Switching equipment for performing a switching operation for a high-speed packet in broadband Integrated Services Digital Network
5623405, Jul 24 1991 Fujitsu Limited Accounting system and method for asynchronous transfer mode network
5625846, Dec 18 1992 Fujitsu Limited Transfer request queue control system using flags to indicate transfer request queue validity and whether to use round-robin system for dequeuing the corresponding queues
5724351, Apr 15 1995 Scaleable multicast ATM switch
JP484943,
//////////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Jan 10 1997Fujitsu Network Communications, Inc.(assignment on the face of the patent)
Jan 10 1997Fujitsu Limited(assignment on the face of the patent)
Jan 17 1997HUNT, DOUGLAS H ASCOM NEXION, INC ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0084320387 pdf
Jan 17 1997NAIR, RAJ KRISHNANASCOM NEXION, INC ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0084320387 pdf
Jun 09 1997ASCOM TIMEPLEX, INC FUJITSU NETWORK COMMUNICATIONS, INC ASSENT TO PATENT ASSIGNMENTS0086890428 pdf
Jun 09 1997ASCOM TIMEPLEX, INC ASCOM NEXION, INC ASSENT TO PATENT ASSIGNMENTS0086890428 pdf
Jun 09 1997ASCOM TIMEPLEX, INC ASCOM TIMEPLEX TRADING A G , A CORP OF SWITZERLANDASSENT TO PATENT ASSIGNMENTS0086890428 pdf
Jun 09 1997ASCOM TIMEPLEX TRADING A G FUJITSU NETWORK COMMUNICATIONS, INC ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0086620166 pdf
Jun 09 1997ASCOM NEXION, INC , A DELAWARE CORPORATIONASCOM TIMEPLEX TRADING A G , A CORP OF SWITZERLANDASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0086590404 pdf
Jun 24 1997FUJITSU NETWORK COMMUNICATIONS, INC FUJITSU LIMITED, A JAPANESE CORPORATIONAGREEMENT FOR ASSIGNMENT OF JOINT OWNERSHIP TRANSFERRING 100% UNDIVIDED INTEREST REDACTED AGREEMENT ATTACHED 0086990457 pdf
Date Maintenance Fee Events
May 22 2003M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Apr 28 2006ASPN: Payor Number Assigned.
Jun 07 2007REM: Maintenance Fee Reminder Mailed.
Nov 23 2007EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Nov 23 20024 years fee payment window open
May 23 20036 months grace period start (w surcharge)
Nov 23 2003patent expiry (for year 4)
Nov 23 20052 years to revive unintentionally abandoned end. (for year 4)
Nov 23 20068 years fee payment window open
May 23 20076 months grace period start (w surcharge)
Nov 23 2007patent expiry (for year 8)
Nov 23 20092 years to revive unintentionally abandoned end. (for year 8)
Nov 23 201012 years fee payment window open
May 23 20116 months grace period start (w surcharge)
Nov 23 2011patent expiry (for year 12)
Nov 23 20132 years to revive unintentionally abandoned end. (for year 12)