Multiplex communications – Pathfinding or routing – Switching a message which includes an address header
Reexamination Certificate
1998-03-19
2001-06-12
Nguyen, Chau (Department: 2663)
Multiplex communications
Pathfinding or routing
Switching a message which includes an address header
C370S446000
Reexamination Certificate
active
06246690
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates to a flow controlled transmitting port according to Ethernet specifications in a computer network, and in particular to buffering data frames between a shared resource and a flow controlled transmitting port.
BACKGROUND OF THE INVENTION
The institute of electrical and electronic engineers (IEEE) has created a Ethernet specification 802.3X dated 1998. This specification standardizes a way in which transmitting and receiving ports communicate with each other. One of the requirements of this specification is that a receiving port can flow control a corresponding transmitting port between an enabled state and a blocking state. In a particular situation where a flow controllable transmitting port is located, a plurality of transmitting ports receives data from a shared resource. This shared resource sends data frames to the individual transmitting ports. Buffers are placed between the transmitting ports and the shared resource to buffer the movement of data frames from the shared resource to the corresponding data port. When a transmitting port is in the blocked state, the buffer can overflow and no longer accept data from the shared resource.
The buffers and shared resources in many situations are designed to transfer data so reliably, that if a specific buffer becomes full, and the shared resource has a data frame to transfer to that buffer, the shared resource will stop any further operation until the specific data frame can be transferred to the specific buffer. This is a very simple and reliable design, and already exists in many applications. The creation of receive ports which can flow control corresponding transmitting ports, is a new development and can cause existing buffers to quickly overflow and stop operation of the shared resource. This is disadvantageous because the remaining transmitting ports serviced by the shared resource may be able to transmit, and have data frames waiting in the shared resource for sending to corresponding transmitting ports. However, because a single transmitting port is in the block state, and its corresponding buffer overfilled, the shared resource is no longer operating. In this way a single transmitting port in the block state can prevent or disable all other ports associated with a shared resource to stop operation.
This is quite often the case in cross point switches of an Ethernet network. The shared resource is a FIFO with associated logic that sends data frames from the FIFO to corresponding buffers and transmitting ports. The creation of flow controllable transmitting ports, while beneficial in many ways, creates a problem in that the remaining transmitting ports of a shared resource can easily be rendered useless which reduces the operation of the network.
SUMMARY AND OBJECTS OF THE INVENTION
It is a primary object of the present invention to comply with IEEE standard 802.3X of 1998, and provide transmitting ports which are flow controllable, and which will not cause existing buffers and shared resources to stop operation when a transmitting port is in the block state for an extended period of time.
The present invention accomplishes this object by providing a transmitting port with a port control logic means that monitors the data movement between the buffer and the transmiting port.
When the buffer has data for transmission, it sends a valid data signal to the transmitting port. When the transmitting port receives the valid data signal, and is able to transmit a data frame, the transmitting port sends an “unload” signal to the data buffer. The data buffer then unloads the data to the transmitting port, and the transmitting port transmits the data to the corresponding receiving port.
A flow control timer means monitors the unload and valid data signals between the buffer and the transmitting port. When the flow control timer means reads a valid data signal, but no unload signal, the flow control timing means begins measuring time. When the measured time exceeds a predetermined value, the flow control timer means generates a “discard frames” signal to the port control logic. When the port control logic receives the discard frame signal, the port control logic removes data frames from the buffer.
The data frames can be removed from the buffer by either generating the unload signal, and instead of transmitting the data frame to the receive port, the frame is just discarded. This would then restart the flow control timer and restart the measuring of time.
As an alternative, the frames could be discarded by the port control logic without resetting the timer and the measuring of time. The port control logic is then provided with means to remove the data frames without generating the unload signal, or the flow control timer does not reset when the discard claims signal is present or the transmitting port is still blocked. In this latter case there is an additional signal from the port control logic to the flow control timer indicating whether the transmitting port is in the enabled state or the blocking state. When the port control logic indicates that the port is returned to the enabled state, the flow control timer then resets and removes the discard frames signal. The predetermined time value is different depending on whether or not the timer is reset after each unload, or only reset after the transmitting port returns to the enabled state.
In this way, the present invention is able to just replace the existing transmitting ports with a flow control port and keep the rest of the system operating without having other transmitting ports be disabled due to a block transmitter overflowing its corresponding buffer and stopping operation of the shared resource. At worst, a block port will only cease operation of a shared resource for the predetermined time, and then only if the corresponding buffer overfills. The remaining circuitry of the Ethernet system, and in particular the shared resource and buffers of the corresponding switch can remain the same and do not need to be completely redesigned to operate with a flow controlled port. This allows the new IEEE 802.3X specification to be implemented quickly and inexpensively. The design and test of a new chip is therefore minimized.
REFERENCES:
patent: 4897833 (1990-01-01), Kent et al.
patent: 4941143 (1990-07-01), Twitty et al.
patent: 5805589 (1998-09-01), Hochschild et al.
patent: 5822300 (1998-10-01), Johnson et al.
patent: 5936962 (1999-08-01), Haddock et al.
patent: 5936964 (1999-08-01), Valko et al.
patent: 5953335 (1999-09-01), Erimli et al.
patent: 6021115 (2000-02-01), Simpson et al.
patent: 6052376 (2000-04-01), Wills
patent: 6072772 (2000-06-01), Charny et al.
Boxer Lawrence A.
DiPlacido Bruno
3Com Corporation
McGlew and Tuttle , P.C.
Nguyen Chau
Trinh D.
LandOfFree
Method and device for controlling data flow in a computer... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and device for controlling data flow in a computer..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and device for controlling data flow in a computer... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2443401