Method and apparatus for input/output link retry, failure...

Multiplex communications – Pathfinding or routing – Switching a message which includes an address header

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C370S231000, C370S236000, C370S400000

Reexamination Certificate

active

06181704

ABSTRACT:

BACKGROUND OF THE INVENTION
The present invention relates generally to methods and apparatuses for controlling the flow of data between nodes (or two points) in a computer network, and more particularly to a method and apparatus for controlling the flow of data between two nodes (or two points) in a system area network.
For the purposes of this application, the term “node” will be used to describe either an origination point of a message or the termination point of a message. The term “point” will be used to refer to a transient location in a transmission between two nodes. The present invention includes communications between either a first node and a second node, a node and a switch, which is part of a link, between a first switch and a second switch, which comprise a link, and between a switch and a node.
An existing flow control protocol, known as Stop and Wait ARQ, transmits a data packet and then waits for an acknowledgment (ACK) before transmitting the next packet. As data packets flow through the network from one point to the next point, latency becomes a problem. Latency results from the large number of links and switches in fabrics which make up the network. This is because each packet requires an acknowledgment of successful receipt from a receiving node before the next data packet is sent from a transmitting node. Consequently, there is an inherent delay due to the transit time for the acknowledgment to reach the transmitting node from the receiving node.
One solution, which is known as Go Back n ARQ, uses sequentially numbered packets, in which a sequence number is sent in the header of the frame containing the packet. In this case, several successive packets are sent without waiting for the return of the acknowledgment. According to this protocol, the receiving node only accepts the packets in the correct order and sends request numbers (RN) back to the transmitting node. The effect of a given request number is to acknowledge all packets prior to the requested packet and to request transmission of the packet associated with the request number. The go back number n is a parameter that determines how many successive packets can be sent from the transmitter in the absence of a request for a new packet. Specifically, the transmitting node is not allowed to send packet i+n before i has been acknowledged (i.e., before i+1 has been requested). Thus, if i is the most recently received request from the receiving node, there is a window of n packets that the transmitter is allowed to send before receiving the next acknowledgment. In this protocol, if there is an error, the entire window must be resent as the receiving node will only permit reception of the packets in order. Thus, even if the error lies near the end of the window, the entire window must be retransmitted. This protocol is most suitable for large scaled networks having high probabilities of error.
In an architecture that permits large data packets, unnecessarily retransmitting excess packets can become a significant efficiency concern. For example, retransmitting an entire window of data packets, each on the order of 4 Gigabytes, would be relatively inefficient.
Other known flow control protocols require retransmission of only the packet received in error. This requires the receiver to maintain a buffer of the correctly received packets and to reorder them upon successful receipt of the retransmitted packet. While keeping the bandwidth requirements to a minimum, this protocol significantly complicates the receiver design as compared to that required by Go Back n ARQ.
The present invention is therefore directed to the problem of developing a method and apparatus for controlling the flow of data between nodes in a system area network that improves the efficiency of the communication without overly complicating the processing at the receiving end.
SUMMARY OF THE INVENTION
The present invention provides a method for transmitting data in a network from a source node to a destination node. According to the method of the present invention, data packets are transmitted from the source node to at least one intermediary point. Each of the packets is assigned a corresponding sequence number by the source node.
A copy of each packet is retained in a buffer at the source node until an acknowledgment is received that the packet was successfully received by an intermediary point. At the intermediary point, an intermediate point sequence number is assigned to each packet received by the intermediary point.
The present invention provides an apparatus for communicating data between two links of a fabric made of multiple links. The apparatus includes two switches and a buffer. The first switch is disposed in a first point of a link and transmits the data packets from the first point in the link to a second point in the link. The first switch assigns first point sequence numbers to the packets, which first point sequence numbers are independent from source sequence numbers assigned by a source of the packets. The buffer disposed in the first point, is coupled to the first switch and stores each packet until receiving either an acknowledgment that the packet was successfully received or an error indication that a received version of the packet included at least one error. The second switch is disposed in the second point, receives each of the transmitted data packets, and upon receipt of an error free packet sends an acknowledgment to indicate successful receipt of the error free packet and all packets in sequence between a last acknowledged packet and the error free packet. The second switch also assigns second point sequence number to all received packets, which second point sequence numbers are independent from the first point sequence numbers.


REFERENCES:
patent: 5260933 (1993-11-01), Rouse
patent: 5459725 (1995-10-01), Bodner et al.
patent: 5809025 (1998-09-01), Timbs
patent: 5933435 (1999-08-01), Shah et al.
patent: 5959995 (1999-09-01), Wicki et al.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and apparatus for input/output link retry, failure... 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 apparatus for input/output link retry, failure..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for input/output link retry, failure... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2542724

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.