WO1998020652A1 - Method and apparatus for detecting disabled physical devices and deleting undeliverable cells - Google Patents

Method and apparatus for detecting disabled physical devices and deleting undeliverable cells Download PDF

Info

Publication number
WO1998020652A1
WO1998020652A1 PCT/US1997/020469 US9720469W WO9820652A1 WO 1998020652 A1 WO1998020652 A1 WO 1998020652A1 US 9720469 W US9720469 W US 9720469W WO 9820652 A1 WO9820652 A1 WO 9820652A1
Authority
WO
WIPO (PCT)
Prior art keywords
state
cells
destination
interval
disabled
Prior art date
Application number
PCT/US1997/020469
Other languages
French (fr)
Inventor
Brian Holden
Brian Alleyne
Darren Braun
Original Assignee
Integrated Telecom Technology, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Integrated Telecom Technology, Inc. filed Critical Integrated Telecom Technology, Inc.
Priority to CA002281691A priority Critical patent/CA2281691A1/en
Publication of WO1998020652A1 publication Critical patent/WO1998020652A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1553Interconnection of ATM switching modules, e.g. ATM switching fabrics
    • H04L49/1576Crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • H04L49/309Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0064Admission Control
    • H04J2203/0067Resource management and allocation
    • H04J2203/0071Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5636Monitoring or policing, e.g. compliance with allocated rate, corrective actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management

Definitions

  • This invention relates primarily to a class of digital communication systems known as asynchronous transfer mode (ATM) switching systems and more generally to intercomputer communications architectures.
  • ATM synchronous transfer mode
  • the invention more specifically relates to systems and methods for removing undeliverable cells in an output routing table within an ATM network.
  • a building block in a switch-fabric architecture ATM switch system is a structure known as a switch element.
  • a switch element provides packet signal routing from one of a plurality of input ports to one or more of a plurality of output ports by maintaining an array of crosspoints for connecting any input port to any output port.
  • Switch elements may be aggregated in various patterns to provide arbitrarily large N by N possible interconnection of input ports to output ports.
  • RT routing table
  • ORT output routing table
  • IRT input routing table
  • RTs buffering cells as they flow through various switch devices, including RTs
  • a shared pool more effectively utilizes available memory.
  • a shared pool is also more susceptible to various types of "blocking," wherein cells which are delayed within the shared pool block the passage of other cells through the device when these other cells might otherwise be able to be transmitted through a device.
  • blocking cells which are delayed within the shared pool block the passage of other cells through the device when these other cells might otherwise be able to be transmitted through a device.
  • Increasing demands for communications speed and capacity have created a need for a higher performance ATM architecture as described in 60/033,029.
  • This architecture differs from an earlier architecture designed by one of the inventors of the present invention in that the primary shared pool memory areas are associated with an input routing table (IRT) and output routing table (ORT) .
  • IRT input routing table
  • ORT output routing table
  • Shared pool buffer memories associated with individual switch elements are generally used only when handling multicast traffic.
  • the new architecture is different also in that it provides for a number of virtual outputs (VOs) for each output line from an ORT and a number of virtual inputs (Vis) for each input line to an IRT.
  • VOs virtual outputs
  • Vis virtual inputs
  • the ORT and IRT are combined into a single device referred to as a Quad Routing Table (QRT) .
  • the QRT may be used in connection with a switch fabric constructed of switch elements (SEs) as described in earlier applications or may be used in connection with a switch fabric made up of update quad switch elements (QSEs) as described in 60/033,029.
  • a VO of a QRT connects to a PHY.
  • a PHY for
  • PHYsical connection generally represents a connection to a different physical device.
  • the different PHYs might be trunk lines to different cities; in a wide-area-network router, the PHYs might be connecting to different floors in a building; in a local-area-network switch, the PHYs might be different individual workstations.
  • the term VO should be understood to be connected to a PHY, unless the context requires otherwise.
  • a particular problem that can arrive in a switch architecture with VOs and some type of shared buffer space is what happens when one of the physical connections to which a VO is connected unexpectedly becomes disabled or broken. In general, it will take some time for higher layer communication protocols to detect that a VO cannot receive data.
  • cells queued for the disabled VO may fill up the buffer pool in the ORT, thus degrading the performance of delivery of cells directed to other VOs which remain operational.
  • cells queued for the disabled VO may fill up the buffer pool in the ORT, thus degrading the performance of delivery of cells directed to other VOs which remain operational.
  • the cell effectively becomes stale and delivery of stale cells would be worse than non-delivery of those cells.
  • identifying and eliminating from an ATM system stale or undeliverable cells is referred to as cell flushing .
  • Some prior-art ATM architectures do not have specific mechanisms for detecting and flushing cells in an ORT that are directed to a particular disabled VO. If one of the VOs breaks, traffic to that VO back up, disrupting traffic to other VOs of the ORT. In this case, the only alternative is to reset the entire ORT, thereby deleting all of the cells that are pending in the ORT.
  • a different technique is to have a mechanism within the ORT that accurately knows the rate that a VO is expected to be able to receive cells. In this technique, if one of the VOs stops accepting cells, the ORT can force that VO to accept cells anyway at the rate it would expect the VO to normally accept cells. This solution is complex to implement, however, in terms of both hardware and processing of cells.
  • a different technique is to include a special flushing dequeue routine, different from the normal dequeue mechanism, for removing undeliverable or late cells.
  • This solution is also complex to implement and expensive in terms of gates and processing.
  • the invention is a method and/or mechanism for detecting when a particular VO has stopped accepting cells.
  • the detection system can be implemented in a very small number of gates by defining an interval which is longer than the interval in which it would be expected that a VO would indicate it could accept at least one cell.
  • a flag is then set to a first state at the start time of the interval. Whenever during the interval a VO indicates that it is ready to accept a cell, the flag state is changed to an active state.
  • the flag for a VO is examined and if it remains in the first state set at the beginning of the interval, it is concluded that a VO has become disabled.
  • cells in an ORT directed to a disabled VO are marked with a lowest priority and are processed during otherwise inactive bandwidth time by the ORT using the normal ORT dequeue routine to clear the cells from the ORT memory.
  • a variation on a simply embodiment includes a additional enable bit per VO. The enable bit is set by the ORT controller to indicate that a VO is enabled. Once a VO has been marked disabled, it remains marked disabled until the controller resets the enable bit.
  • the invention may be described in terms of the transmit or egress UTOPIA interface having a function called the WatchDog.
  • the WatchDog exists to protect the QRT Virtual Output queues from overflow in the event that a PHY sink connected to a VO goes off line or stops requesting cells.
  • the WatchDog can be configured by way of the UTOPIA_CONFIG register in the processor interface.
  • the WatchDog can be turned off or set to tolerate either OC-3, DSl or DSO level outputs.
  • the WatchDog operates by observing the liveliness of the Transmit ATM Cell Available signals.
  • the cells intended for that PHY are played out using the standard dequeue mechanism with otherwise normal UTOPIA signalling (in one variation) at the lowest priority whenever spare bandwidth is available. This is done in the event that the PHY can accept these cells and the nature of the cell available response dormancy is due to a stuck-at fault. Cells also may be dequeued by the normal dequeue routine without playing-them out to the PHY.
  • FIG. 1 is a block diagram of one type of ATM network in which the present invention may be employed.
  • Fig. 2 is a block diagram of an ORT showing a cell flushing counter registers and a watchdog routine according to one embodiment of the invention.
  • FIG. 1 shows a representation of an ATM network 10 as an example of an ATM architecture with virtual outputs, in which the invention may be employed.
  • ATM network 10 contains input transmission line 110, input routing tables (IRTs) 120, an N x N switch matrix 150, output routing tables (ORTs) 170, and output transmission lines 180.
  • IRT 120 input routing tables
  • ORTs output routing tables
  • IRT 120 cell buffer memory 122 and configuration memory 124.
  • ORT 170 cell buffer memory 172 and configuration memory 174.
  • ATM cells which are digitized packets corresponding to a voice or video signal or a data stream, are sent through an input transmission line 110 into a connecting IRT 120.
  • the IRT 120 ascertains the cell's routing and determines an entry point into the switch matrix path, based on a particular algorithm, including a random-entry algorithm.
  • Cells are arranged in queues within a buffer memory 122 associated with IRT 120 and are then transmitted through the switch matrix 150. Upon exiting the switch matrix, a cell is sent to one (or possibly more than one in the case of multicast cells) of the N ORTs corresponding to the cell's destination address.
  • received cells are queued in a plurality of queues in cell buffer 172 and subsequently transmitted onto a connecting output transmission line 180.
  • queues are defined on a per VO basis.
  • VOs actively signal back to ORT, in response to a poll from the ORT, each time that they are ready to accept a next cell. In this manner, an ATM network can route audio, video or data signals, each requiring different bandwidth and transmission speeds.
  • VCs virtual channels
  • a VC can be thought of as a sequential stream of cells flowing from a source to a destination, generally representing a single connection such as a single telephone call.
  • the channel is referred to as a virtual channel because there is not generally a dedicated path within the ATM switch from the source to the destination; the actual path may vary from transmission to transmission, or even during transmission, depending upon the type of traffic sent, whether congestion occurs, or other factors.
  • each input transmission line can carry cells from a plurality of virtual inputs (Vis) , which number 31 in a specific embodiment.
  • each output transmission line can send cells to a plurality of virtual outputs (VOs) , which number 31 in a specific embodiment.
  • the ATM switch can keep track of 16K VCs and a particular VC can occur between any VI and any VO.
  • a VC may be thought of as a stream of cells travelling from a particular VI to a particular VO and having a particular transmission priority.
  • cells or VCs are assigned a service class (SC) (sometimes referred to as a priority) .
  • SC service class
  • the SC defines certain handling within the ATM switch, such as priority of throughput or the amount of available bandwidth that a particular VC is allowed to occupy.
  • cells in an ORT are grouped and queued according to VOs. Supporting VOs allows the cell to be routed to different physical receivers out of the same ORT output line, with data multiplexed to the different output receivers by a device outside of the ORT.
  • the invention comprises an improved ORT 170 that includes a watchdog mechanism for detecting when any of its VOs have stopped accepting cells.
  • An embodiment also includes a mechanism for flushing cells.
  • cell flushing is accomplished by marking cells to be flushed, such as with a particular SC level, and then processing those cells out of the ORT cell buffer in the normal way during otherwise idle cell cycles.
  • Fig. 2 show a more detailed example of an ORT 170 with memory locations 176a-c for recording and determining the status of VOs.
  • a counter 176e is provided within ORT 170 in order to time an interval that is set to be longer than the MAXIM expect internal between a VO indicating acceptance of cells.
  • Other, more complex embodiments that shown in Fig. 2 are possible, which use multiple counters, possibly one counter per VO.
  • the diagram of Fig. 2 represents a simpler and easier to implement embodiment. It will be understood that counter 176d and flags
  • 176a-c may be implemented in a variety of ways.
  • One mechanism for implementing counter 176d is as a simple binary counter associated with a QRT and shared among devices in the ORT, combined with an interval compare counter which is settable to a specific interval for an ORT.
  • One mechanism for implementing flags 176a-c is as three dedicated bits per VO. At the end of every interval, the current active/disable bit for a VO is ORed with the history (or broken) bit for that VO and the results stored back in the history bit.
  • the invention defines a minimum expected rate (MER) . More than one MER may ⁇ ⁇ P ⁇ >1
  • TS o -rl -H H > 4-1 4-1 > rl X J CO W 0 r-i ⁇ ⁇ ⁇ •H ⁇ A to -rl ⁇ -H Cn a X >! ⁇ 0 ⁇ P 4-1 TS •rl cd rd 4-1 ⁇ W ⁇ cd ⁇ 0 0 4-1 rd cd TS 4-> A 4-1 O 4-1
  • watchdog routine 176e may be understood to be hardware and/or software components to interact with the elements just described to accomplish the described functions. Routine 176e will be tightly integrated with the function of controller 172 which provides other ORT functions as described in the cited provisional application and as known in the art. Among those functions will be signaling to higher layer protocols that a VO has become disabled.
  • flushing is accomplished without the need for additional cell removal routines by marking cells to be removed and then processing those cells according to the standard routing routine during otherwise idle cell-cycles.
  • this is accomplished by defining a priority or service class (SC) that is lower than any active priority, and marking any cell directed to a disabled VO with this different priority, which can be referred to as a flush priority.
  • SC priority or service class
  • the ORT fetches a cell from ORT buffer 171 with the flush priority and either just deletes it or sends it to output line 180 to the appropriate VO on the chance that the VO can actually receive the cell even though it has not indicated that it is ready to receive a cell. In this way, cells are flushed from the ORT without the need for a different flush routine.
  • an ATM control processor may be notified that a particular VO has stopped accepting cells and higher layer protocols will handle the disconnection and signal to a transmitter to stop transmitting cells.
  • a message is sent back to IRT 120 to inform the IRT to stop sending cells through the switch to that ORT.

Abstract

A system and method for flushing cells in an ATM network sets an interval timer during which it would be expected that an active physical output would indicate it could accept a cell. When an interval elapses, a physical output that has not indicated it is ready to accept a cell is marked as disabled and may remain so until the output is reset. Cells in an output queue to a disabled cell are flushed during periods when no higher priority cells are available to be sent.

Description

METHOD AND APPARATUS FOR DETECTING DISABLED PHYSICAL DEVICES AND DELETING UNDELIVERABLE CELLS
This application claims priority from provisional patent application 60/029,543 filed November 8, 1996 and from provisional patent application 60/033,029 filed December 12, 1996, both of which are incorporated herein by reference for all purposes.
BACKGROUND OF THE INVENTION This invention relates primarily to a class of digital communication systems known as asynchronous transfer mode (ATM) switching systems and more generally to intercomputer communications architectures. The invention more specifically relates to systems and methods for removing undeliverable cells in an output routing table within an ATM network. A building block in a switch-fabric architecture ATM switch system is a structure known as a switch element. A switch element provides packet signal routing from one of a plurality of input ports to one or more of a plurality of output ports by maintaining an array of crosspoints for connecting any input port to any output port. Switch elements may be aggregated in various patterns to provide arbitrarily large N by N possible interconnection of input ports to output ports.
Another building block in a switch-fabric architecture ATM switch system is a structure known as a routing table (RT) . In an ATM switch there generally is functionally an output routing table (ORT) and an input routing table (IRT) .
One solution to the problem of buffering cells as they flow through various switch devices, including RTs, is the use of a shared pool of memory for storing queued cells. A shared pool more effectively utilizes available memory. However, a shared pool is also more susceptible to various types of "blocking," wherein cells which are delayed within the shared pool block the passage of other cells through the device when these other cells might otherwise be able to be transmitted through a device. Increasing demands for communications speed and capacity have created a need for a higher performance ATM architecture as described in 60/033,029. This architecture differs from an earlier architecture designed by one of the inventors of the present invention in that the primary shared pool memory areas are associated with an input routing table (IRT) and output routing table (ORT) . Shared pool buffer memories associated with individual switch elements are generally used only when handling multicast traffic. The new architecture is different also in that it provides for a number of virtual outputs (VOs) for each output line from an ORT and a number of virtual inputs (Vis) for each input line to an IRT. In one specific embodiment, the ORT and IRT are combined into a single device referred to as a Quad Routing Table (QRT) . The QRT may be used in connection with a switch fabric constructed of switch elements (SEs) as described in earlier applications or may be used in connection with a switch fabric made up of update quad switch elements (QSEs) as described in 60/033,029.
In various reference materials and in the 60/029,543 application, a VO of a QRT connects to a PHY. A PHY (for
PHYsical connection) generally represents a connection to a different physical device. In a telephone network, the different PHYs might be trunk lines to different cities; in a wide-area-network router, the PHYs might be connecting to different floors in a building; in a local-area-network switch, the PHYs might be different individual workstations. Throughout this document, the term VO should be understood to be connected to a PHY, unless the context requires otherwise. A particular problem that can arrive in a switch architecture with VOs and some type of shared buffer space is what happens when one of the physical connections to which a VO is connected unexpectedly becomes disabled or broken. In general, it will take some time for higher layer communication protocols to detect that a VO cannot receive data. During that time, cells queued for the disabled VO may fill up the buffer pool in the ORT, thus degrading the performance of delivery of cells directed to other VOs which remain operational. Furthermore, in many ATM applications, such as live telephone or video, once a cell has been delayed even a short time from when it was expected, the cell effectively becomes stale and delivery of stale cells would be worse than non-delivery of those cells. In various references in the art, identifying and eliminating from an ATM system stale or undeliverable cells is referred to as cell flushing .
Some prior-art ATM architectures do not have specific mechanisms for detecting and flushing cells in an ORT that are directed to a particular disabled VO. If one of the VOs breaks, traffic to that VO back up, disrupting traffic to other VOs of the ORT. In this case, the only alternative is to reset the entire ORT, thereby deleting all of the cells that are pending in the ORT.
A different technique is to have a mechanism within the ORT that accurately knows the rate that a VO is expected to be able to receive cells. In this technique, if one of the VOs stops accepting cells, the ORT can force that VO to accept cells anyway at the rate it would expect the VO to normally accept cells. This solution is complex to implement, however, in terms of both hardware and processing of cells.
A different technique is to include a special flushing dequeue routine, different from the normal dequeue mechanism, for removing undeliverable or late cells. This solution is also complex to implement and expensive in terms of gates and processing.
What is needed is a method or apparatus for an ATM architecture having shared resources in an output routing table that allows the ORT to effectively detect and delete cells directed to physical connections or virtual outputs that are disabled. SUMMARY OF THE INVENTION The invention is a method and/or mechanism for detecting when a particular VO has stopped accepting cells. In one embodiment, the detection system can be implemented in a very small number of gates by defining an interval which is longer than the interval in which it would be expected that a VO would indicate it could accept at least one cell. A flag is then set to a first state at the start time of the interval. Whenever during the interval a VO indicates that it is ready to accept a cell, the flag state is changed to an active state. At the end of the interval, the flag for a VO is examined and if it remains in the first state set at the beginning of the interval, it is concluded that a VO has become disabled. In a very compact implementation, only two bits of state per VO are necessary, and a single interval count is used for all VOs. In a further aspect of the invention, cells in an ORT directed to a disabled VO are marked with a lowest priority and are processed during otherwise inactive bandwidth time by the ORT using the normal ORT dequeue routine to clear the cells from the ORT memory. A variation on a simply embodiment includes a additional enable bit per VO. The enable bit is set by the ORT controller to indicate that a VO is enabled. Once a VO has been marked disabled, it remains marked disabled until the controller resets the enable bit.
In a specific embodiment, the invention may be described in terms of the transmit or egress UTOPIA interface having a function called the WatchDog. The WatchDog exists to protect the QRT Virtual Output queues from overflow in the event that a PHY sink connected to a VO goes off line or stops requesting cells. The WatchDog can be configured by way of the UTOPIA_CONFIG register in the processor interface. The WatchDog can be turned off or set to tolerate either OC-3, DSl or DSO level outputs. The WatchDog operates by observing the liveliness of the Transmit ATM Cell Available signals. When a PHY is detected to have stopped accepting cells, the cells intended for that PHY are played out using the standard dequeue mechanism with otherwise normal UTOPIA signalling (in one variation) at the lowest priority whenever spare bandwidth is available. This is done in the event that the PHY can accept these cells and the nature of the cell available response dormancy is due to a stuck-at fault. Cells also may be dequeued by the normal dequeue routine without playing-them out to the PHY.
Numerous alternative implementations are possible and the invention should not be limited except as in the attached claims. The invention will be further understood with reference to the drawings of specific embodiments described below.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram of one type of ATM network in which the present invention may be employed.
Fig. 2 is a block diagram of an ORT showing a cell flushing counter registers and a watchdog routine according to one embodiment of the invention.
DETAILED DESCRIPTION OF THE DRAWINGS
Fig. 1 shows a representation of an ATM network 10 as an example of an ATM architecture with virtual outputs, in which the invention may be employed. ATM network 10, as illustrated, contains input transmission line 110, input routing tables (IRTs) 120, an N x N switch matrix 150, output routing tables (ORTs) 170, and output transmission lines 180. Associated with IRT 120 is cell buffer memory 122 and configuration memory 124. Associated with ORT 170 is cell buffer memory 172 and configuration memory 174. ATM cells, which are digitized packets corresponding to a voice or video signal or a data stream, are sent through an input transmission line 110 into a connecting IRT 120. The IRT 120 ascertains the cell's routing and determines an entry point into the switch matrix path, based on a particular algorithm, including a random-entry algorithm.
Cells are arranged in queues within a buffer memory 122 associated with IRT 120 and are then transmitted through the switch matrix 150. Upon exiting the switch matrix, a cell is sent to one (or possibly more than one in the case of multicast cells) of the N ORTs corresponding to the cell's destination address. Within the ORT 170, received cells are queued in a plurality of queues in cell buffer 172 and subsequently transmitted onto a connecting output transmission line 180. In one embodiment, queues are defined on a per VO basis. In a further embodiment, VOs actively signal back to ORT, in response to a poll from the ORT, each time that they are ready to accept a next cell. In this manner, an ATM network can route audio, video or data signals, each requiring different bandwidth and transmission speeds.
In one type of ATM in which the invention may be employed, in order to manage cells flowing through an ATM network, cells are grouped into virtual channels (VCs) . A VC can be thought of as a sequential stream of cells flowing from a source to a destination, generally representing a single connection such as a single telephone call. The channel is referred to as a virtual channel because there is not generally a dedicated path within the ATM switch from the source to the destination; the actual path may vary from transmission to transmission, or even during transmission, depending upon the type of traffic sent, whether congestion occurs, or other factors.
In the specific embodiment shown, each input transmission line can carry cells from a plurality of virtual inputs (Vis) , which number 31 in a specific embodiment. Likewise, each output transmission line can send cells to a plurality of virtual outputs (VOs) , which number 31 in a specific embodiment. The ATM switch can keep track of 16K VCs and a particular VC can occur between any VI and any VO. A VC may be thought of as a stream of cells travelling from a particular VI to a particular VO and having a particular transmission priority.
In many ATM switches, cells or VCs are assigned a service class (SC) (sometimes referred to as a priority) . The SC defines certain handling within the ATM switch, such as priority of throughput or the amount of available bandwidth that a particular VC is allowed to occupy. In one type of ATM network in which the invention may be effectively employed, cells in an ORT are grouped and queued according to VOs. Supporting VOs allows the cell to be routed to different physical receivers out of the same ORT output line, with data multiplexed to the different output receivers by a device outside of the ORT.
In general terms, the invention comprises an improved ORT 170 that includes a watchdog mechanism for detecting when any of its VOs have stopped accepting cells. An embodiment also includes a mechanism for flushing cells. In an embodiment, cell flushing is accomplished by marking cells to be flushed, such as with a particular SC level, and then processing those cells out of the ORT cell buffer in the normal way during otherwise idle cell cycles. Fig. 2 show a more detailed example of an ORT 170 with memory locations 176a-c for recording and determining the status of VOs. According to an embodiment, in order to detect when a VO has become disabled, a counter 176e is provided within ORT 170 in order to time an interval that is set to be longer than the MAXIM expect internal between a VO indicating acceptance of cells. Other, more complex embodiments that shown in Fig. 2 are possible, which use multiple counters, possibly one counter per VO. The diagram of Fig. 2 represents a simpler and easier to implement embodiment. It will be understood that counter 176d and flags
176a-c may be implemented in a variety of ways. One mechanism for implementing counter 176d is as a simple binary counter associated with a QRT and shared among devices in the ORT, combined with an interval compare counter which is settable to a specific interval for an ORT. One mechanism for implementing flags 176a-c is as three dedicated bits per VO. At the end of every interval, the current active/disable bit for a VO is ORed with the history (or broken) bit for that VO and the results stored back in the history bit.
Mechanism For Detecting That A VO Has Stopped Accepting Cells
In order to detect a disabled VO, the invention defines a minimum expected rate (MER) . More than one MER may Φ P β >1
4-> X X o 4-1 •H H *. CO
0\ -P •rl ϋ J O > -rl X - — o φ -H O •* rd X TS -r| •rl 4H X! > > Φ
-P X 0 Φ TJ o to r-i 4-1 X r-i -P S-i cd 1 . O r- 4-1
J β -P 4-> X φ 3 cd 3 -rl £ rd Φ -H φ Cn β • O SH to rd to > A -H 4J f^ φ -P 4-> g X O β 4-1 A 4-1 u β r-l cd TS 4J Φ • l φ cd X -rl t» g 0 O rd & TS - . 0 cd β φ -H H φ β a Cn -P r! β X!
•rl to > U O O φ o Φ Φ •rl J EH 3 > TS Cn rd TS r- -H +J β rd φ Φ φ
TS o -rl -H H > 4-1 4-1 > rl X J CO W 0 r-i φ β β •H β A to -rl Φ -H Cn a X >! υ 0 P 4-1 TS •rl cd rd 4-1 ϋ W ϋ cd β 0 0 4-1 rd cd TS 4-> A 4-1 O 4-1
X! φ to 4-1 β 4-1 cd ϋ X β W β φ a r-i β to Φ ^~. •H to β 4-> 4J -rl o g to Φ β -H cd •P •rl ϋ TS «. 3 0 « , Cn X O rd TS -H -r| . A φ >1 Φ - l •rl X β 4-1 .
Φ 3 X 4-> cd S rd 4H A -rl IS Φ cd 4-1 Φ TS a τi J rd g 3 A En Φ to ^-. φ 0 0 to J cd X β φ rd Φ to EH to to β o φ 0 rd g Φ ϋ X -rl 4-1 υ A -i υ rd X 4-1 •H X > TS 4-1 W τi to A -rl Φ ϋ a 3 ϋ r-i SH τi 2s X! •rl
•H O X TS 4-1 Φ Φ -H CO Φ cd . 0 4-1 3 g g a 4-1 -r| to a H • A
4H r-i rd Φ 4-1 P o TS 4-1 A S-i TS ϋ β CO cd 0 φ rd TS o g ϋ -rl 4-1 S Φ
-rl r-i φ O O O X to 4H β 0 rd β 3 SH φ φ X ϋ A 3 «. β > -rl X -rl β XI β υ -H X CO > a φ Cn cd rd X 4-> Φ >H to 0 -P to to φ φ φ to •H S 4-> X rd 4J o
Φ 3 P a cd TS 3 r-i u to Φ w rd cd 4-1 φ A A >l Φ β ri Φ H a Φ X r-i 3 0 φ Cn » 1 ft Φ X -rl S-i φ cd Φ g o φ 0 4H rd φ Cn 4-> to TS g Φ u φ r-i x: o -P β 4-> φ X g ϋ -P a 0 to g A -rl > X 4H rH β cd β o X rd 0 4-1 > β •rl β > 4J cd 0 to - Φ 4-> rd rd 4-1 0 >1 to A 0 •rl SH rd cd Φ O β 3 to φ 0 CO rH 3 -i SH X cd 1 rd g rl Φ cd SH •H cd o Φ X o to g A rl rd ϋ r-i rH TS rd VO rd r-i A to Φ TS β SH rd a β to 0 Φ X ϋ A o ϋ φ -rl rd o 4-1 r-i φ X φ vo 4-1 r^ g rd β -rl > 3 Φ 0 Φ X
•H o T3 -rl g cd u TS β ^ r-i •H U ϋ β t rd H > Φ U β rH rH φ
> Φ -P •rl φ β 4J Φ rd 0 0 Φ o Φ o Λ -r| en r-i X to rl X 0 rd Cn ϋ β β O
4-1 -P β -P g 0 X A X 3 g EH O J rd X -rl -P rl φ 5 X β β cd O Cn co 3 r-i 0 Φ •r| H Cn -P β a g 4-> 4-1 H O -rl 3 to β Φ φ 4-> τ> 0 -r| -rl 4H o
A r-i Φ > -P 4-> 4-1 •rl cd -rl Φ TS Φ -i 3 -P φ -rl O 4-i -P β O Φ Φ O to o o Q rd a β to β g X cd 1 TS 0 g 0 a ^ TS > O O -rl > r-i g 3 4-1 •rl > X
«. X -r| cd cd Φ J 4-1 0 4-1 r-i β A •H rd rl Φ r-t to H -rl A β β ϋ to Φ r-i > 4-1 β ϋ r-i rd g -P •H υ EH Φ 4-1 cd Cn Cn β rl rd cd g Φ XI X o 4->
O Φ φ β β •H Φ -rl to cd rd Φ ϋ o g -rl φ Φ rd φ to EH g ϋ a -H cd
> > Φ X Φ φ •rl g rd g a -H SH 4-) Φ cd Φ • l X to SH rl a -H to < -rl -rl ft -P s o A . 4-1 X XI •r| g g 4-1 Φ 4-) rd X φ g -P φ J τi -P S X ϋ
4-> en -P 3 φ TS 4J φ 0 β -P O 4-1 X 0 -r| Φ 4-1 «. φ O 4-1 β β o 3 Φ β φ β TS τi β «. X φ TS 4-1 ϋ Φ β rd O -rl -P 4-1 4-1 4H X cd O XI 3 •rl «. φ cd Λ > 3 x:
Φ φ r-i -rl 1 φ τi 4-1 -P Φ β to 3 a > φ 0 4-1 ϋ 4-1 4-1 A rH to g •*. -H 4H 4-1 β 3 TS r-i o β cd X rd β >1 to 0 g O >1 -P -rl β rH Φ β φ D 4J
Φ •H 0 β r-i β cd - 4-1 -P •rl φ ϋ 0 X to 4-1 TS < r-i «. TS Φ O X cd Φ 0 VO U Φ to
4H 4-1 3 φ rd •H « ω r-i Φ υ ϋ -rl cd rd « β g +J 4-1 ϋ a SH t Φ X cd
4H Φ to β CO - W TS r-i φ > O Φ rd r-i φ > W -rl -H •H -P Φ β Φ H a 4->
•H TS β 0 r- g 4-1 Φ -P φ β co Φ X cd . SH g TS to 3 Φ cd rl 0 XI to o
TS rd to •H β r-i * to o ϋ cd Φ > 0 H ϋ β 4-1 Φ 4-> 0 rl to •rl 4-1 SH Φ O 4-»
Φ X -rl +J Φ Φ Φ TS 3 ϋ rl β φ X H to Φ 4-1 Φ Φ A Φ ». Φ 4-1 co J Φ cd
A -P 0 Φ 0 X φ -1—1 φ rd 0 0 •rl >1 •P 0 X φ -rl O β X to g 4-> O a •rl ϋ 3 4-1 X! TS
0 EH β A 4-1 r-i rl A X -i 4H 3 4-) Φ •H -P φ β 3 Φ X β 4H to t Φ
4H r-i « 3 cd A to -P cd 0 ϋ β β X 4-1 to •H X 0 υ EH 3 -rl -P 4-» SH r-i Φ O Pn to β cd < 0 a r-i 4-1 cd 0 H 4-> TS Φ -rl 4J β β φ o EH J o 4H Cn -H -rl SH S •rl en cd 4J cd co P Φ Φ Φ VO to β cd -rl > a rd Φ Φ
<s Φ 3 β Φ X a X -H υ Cn β cn to o TS CO •rl Φ X cd -r| >1 . Φ rl to β 4H O β 0 X Φ -P TS TS υ Φ β o β H φ φ g +J g 4-1 rl cd 0 TS -P β o Φ o •H « r-i 4-1 4J o φ rd X! •rl •rl -H o to 4-) 4-1 cd Φ Φ rd o 3 -P φ cd O SH r^ 4H w -rl υ rl φ TS 4J > > H r-i rd cd SO r! rl SH β -P SH rd 3 0
00 Φ g to XI rd φ g -rl TS TS β cd rd rl u r 3 φ SH «. cd >1 υ 0 -P -P O o τi -rl υ φ en 0 3 r-i r-i 0 Φ X XI rd β φ -rl H to en 4-> Φ A TS Φ A X CO φ -H g β β ϋ es1 3 3 ϋ > ϋ vo Cn β TS rd β rd -P vo TS rd -P rd ϋ -P 4-1 r-i
Φ β 4-> XI H cd 0 φ Φ o 0 ϋ β >ι cd t -H φ β β Φ 0 X r-i β Φ φ r-i 3 -H Φ cd
A 0 -H 3 -P ϋ r-i A rl ϋ & < H A Φ rH co Cn •H -H g - J rd r-i rd rl TS Φ to A to
Figure imgf000010_0001
In the illustration shown, watchdog routine 176e may be understood to be hardware and/or software components to interact with the elements just described to accomplish the described functions. Routine 176e will be tightly integrated with the function of controller 172 which provides other ORT functions as described in the cited provisional application and as known in the art. Among those functions will be signaling to higher layer protocols that a VO has become disabled.
Mechanism For Removing (Flushing) Cells
Once the ORT has determined that a particular VO is no longer able to accept cells, some type of action must be taken to remove and discard those cells from the ORT cell buffer 171 that are addressed to that VO.
According to a further embodiment of the invention, flushing is accomplished without the need for additional cell removal routines by marking cells to be removed and then processing those cells according to the standard routing routine during otherwise idle cell-cycles.
In a specific variation of this embodiment, this is accomplished by defining a priority or service class (SC) that is lower than any active priority, and marking any cell directed to a disabled VO with this different priority, which can be referred to as a flush priority. Within the ORT, whenever there are no cells to send at any of the functional priorities, the ORT fetches a cell from ORT buffer 171 with the flush priority and either just deletes it or sends it to output line 180 to the appropriate VO on the chance that the VO can actually receive the cell even though it has not indicated that it is ready to receive a cell. In this way, cells are flushed from the ORT without the need for a different flush routine.
At a higher layer, an ATM control processor may be notified that a particular VO has stopped accepting cells and higher layer protocols will handle the disconnection and signal to a transmitter to stop transmitting cells. In one embodiment, a message is sent back to IRT 120 to inform the IRT to stop sending cells through the switch to that ORT.
The invention has now been explained in accordance with specific embodiments, however, many variations will be obvious to those skilled in the art. The invention should therefore not be limited except as provided in the attached claims and allowable equivalents.

Claims

WHAT IS CLAIMED IS:
1. A method within an ATM output routing table for detecting that an output queue destination has become inactive, comprising: defining a time interval with a beginning and an ending, said time interval substantially longer than an expected interval between when a destination would indicate it was ready to receive a cell; at said beginning, setting a state for said destination to a disabled state; during said interval, setting said state to an active state if said destination indicates it is ready to receive a cell; and at said ending, marking said destination disabled if said state remains in a disabled state.
2. The method according to claim 1 further comprising: at said beginning, setting at least one state bit for each of a plurality of destinations to a disabled state; during said interval, setting a state bit for a particular destination to active if said particular destination indicates it is ready to receive a cell; and at said ending, marking each destination as disabled if a bit corresponding to that destination remains in a disabled state.
3. The method according to claim 1 further comprising checking the state of an enable bit to determine whether a first state bit contains valid data.
4. The method according to claim 1 wherein said interval is set to be substantially longer than the expected time between two indications from the slowest destination that it is ready to receive a cell.
5. The method according to claim 4 further comprising: if said destination is marked disabled, deleting any pending cells in said routing table directed to said destination.
6. The method according to claim 5 further comprising: if said destination is marked disabled, marking pending cells to said destination in said routing table as cells to be deleted; deleting marked cells during otherwise idle bandwidth.
7. The method according to claim 4 further comprising: if said destination is marked disabled, changing a priority of pending cells to a priority below the lowest active priority; and handling cells marked with the lowest priority using a dequeue routine also used for handling other cells when there are no higher priority cells to be output.
8. A circuit capable of detecting disabled destinations comprising: an interval count for counting an interval during which a destination would be expected to accept a cell; a first memory for holding state for a destination, said memory set to a first state at the beginning of an interval counted by said interval count; a watchdog routine for detecting when said destination is ready to accept a cell and for changing said memory to a second state in response thereto, said watchdog routine further enabled at the end of said interval to determine if said memory is in said first state or said second state and to take action to delete any pending cells for said destination if said memory is in said first state.
9. The device according to claim 8 further comprising a second memory for storing the final state of said first memory during a next interval.
10. The device according to claim 9 further comprising a third memory for storing an enable state of said destination.
11. An output routing table capable of detecting disabled destinations comprising: a counter signal input; a connection to a plurality of virtual outputs, at least one virtual output able to indicate to said output routing table that it is able to accept a cell; a plurality of first state memories capable of holding at least two states per virtual output, said memories set to a first state at the beginning of an interval counted by said interval counter; a watchdog routine for detecting when virtual outputs are ready to accept a cell and for changing said state memories corresponding to said virtual outputs to a second state said watchdog routine further enabled at the end of said interval to determine if said memory is in said first state or said second state.
12. The device according to claim 11 further comprising: a plurality of second state memories for storing states of said virtual outputs at the end of a previous interval during a next interval.
13. The device according to claim 12 further comprising a plurality of third state memories for storing an enable state of said destination.
14. The device according to claim 11 wherein said watchdog routing is further capable of marking pending cells to a virtual outputs based on a the value of said state memory.
15. A method for sending cells in a network through a switch with a shared buffer pool comprising: receiving cells from a plurality of sources into a shared buffer pool prior to sending said cells to a plurality of outputs, said outputs individually indicating that they are ready to receive cells from said pool; determining an interval that is longer than the longest interval expected between two indications that the slowest output is ready to accept a cell from said pool; initiating a count and setting a bit per said outputs to a first state; when any output indicates it is ready to accept a cell, setting a bit associated with that output to a second state; detecting an ending of said interval at examining the state of bits associated with said outputs; marking an output as disabled when a bit corresponding to that output remains in said first state; sending cells from said pool to active outputs according to a standard send routine; deleting cells from said pool to disabled outputs according to said standard send routine.
PCT/US1997/020469 1996-11-08 1997-11-07 Method and apparatus for detecting disabled physical devices and deleting undeliverable cells WO1998020652A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA002281691A CA2281691A1 (en) 1996-11-08 1997-11-07 Method and apparatus for detecting disabled physical devices and deleting undeliverable cells

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US2954396P 1996-11-08 1996-11-08
US60/029,543 1996-11-08
US3302996P 1996-12-12 1996-12-12
US60/033,029 1996-12-12

Publications (1)

Publication Number Publication Date
WO1998020652A1 true WO1998020652A1 (en) 1998-05-14

Family

ID=26705059

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/020469 WO1998020652A1 (en) 1996-11-08 1997-11-07 Method and apparatus for detecting disabled physical devices and deleting undeliverable cells

Country Status (2)

Country Link
CA (1) CA2281691A1 (en)
WO (1) WO1998020652A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0376597A2 (en) * 1988-12-29 1990-07-04 AT&T Corp. Packet selection for packet distribution arrangements
EP0624015A2 (en) * 1993-05-07 1994-11-09 Roke Manor Research Limited Improvements relating to ATM communication systems
US5539747A (en) * 1993-08-24 1996-07-23 Matsushita Electric Industrial Co., Ltd. Flow control method
US5570358A (en) * 1992-07-17 1996-10-29 Nokia Telecommunications Oy Method for Implementing switching in time or space domain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0376597A2 (en) * 1988-12-29 1990-07-04 AT&T Corp. Packet selection for packet distribution arrangements
US5570358A (en) * 1992-07-17 1996-10-29 Nokia Telecommunications Oy Method for Implementing switching in time or space domain
EP0624015A2 (en) * 1993-05-07 1994-11-09 Roke Manor Research Limited Improvements relating to ATM communication systems
US5539747A (en) * 1993-08-24 1996-07-23 Matsushita Electric Industrial Co., Ltd. Flow control method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FAN R ET AL: "EXPANDABLE ATOM SWITCH ARCHITECTURE (XATOM) FOR ATM LANS", SERVING HUMANITY THROUGH COMMUNICATIONS. SUPERCOMM/ICC, NEW ORLEANS, MAY 1 - 5, 1994, vol. VOL. 1, no. -, 1 May 1994 (1994-05-01), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 402 - 409, XP000438948 *

Also Published As

Publication number Publication date
CA2281691A1 (en) 1998-05-14

Similar Documents

Publication Publication Date Title
US6134218A (en) Many dimensional congestion detection system and method
US6535484B1 (en) Method and apparatus for per traffic flow buffer management
US5629928A (en) Dynamic fair queuing to support best effort traffic in an ATM network
US5864539A (en) Method and apparatus for a rate-based congestion control in a shared memory switch
JP3652759B2 (en) Packet flow monitoring and control method
US7072350B2 (en) Polling response selection using request monitoring in a network switch apparatus
EP1317825B1 (en) System and method for controlling the multicast traffic of a data packet switch
JP3128654B2 (en) Supervisory control method, supervisory control device and switching system
WO1998026628A9 (en) Many dimensional congestion detection system and method
US5751698A (en) System and method for automatically identifying and analyzing active channels in an ATM network
EP0841832A2 (en) Promiscuous network monitoring utilizing multicasting within a switch
CA2224606C (en) A distributed buffering system for atm switches
JPH10173661A (en) Packet switcher and congestion information system
US7787468B2 (en) Switch with function for assigning queue based on a declared rate transfer
JPH09512683A (en) ATM architecture and switching elements
US6195352B1 (en) System and method for automatically identifying and analyzing currently active channels in an ATM network
US6192049B1 (en) Jitterless and lossless switching fabric with network routing
US6169727B1 (en) Device and method of notifying and controlling congestion in asynchronous transfer mode network
US6769043B1 (en) Ensuring fair access to upstream trunk bandwidth in ATM subtended configurations
US20020150047A1 (en) System and method for scheduling transmission of asynchronous transfer mode cells
US6226298B1 (en) Method and apparatus for detecting disabled physical devices and deleting undeliverable cells
WO1998020652A1 (en) Method and apparatus for detecting disabled physical devices and deleting undeliverable cells
Fahmy A survey of ATM switching techniques
US6647011B1 (en) Method and system for switching using an arbitrator
JP4428775B2 (en) Method and system for processing the release order of soft permanent connections

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 2281691

Country of ref document: CA

Ref country code: CA

Ref document number: 2281691

Kind code of ref document: A

Format of ref document f/p: F

122 Ep: pct application non-entry in european phase