Electrical computers and digital processing systems: multicomput – Computer network managing – Computer network monitoring
Reexamination Certificate
2001-10-31
2002-10-01
Meky, Moustafa M. (Department: 2153)
Electrical computers and digital processing systems: multicomput
Computer network managing
Computer network monitoring
C709S217000
Reexamination Certificate
active
06460080
ABSTRACT:
FIELD
The invention generally relates to communications across a data network and in particular to a credit based flow control scheme for use over a Virtual Interface Architecture or the like.
BACKGROUND
Standard user-level networking architecture such as Virtual Interface (VI) Architecture enables distributed applications to perform low overhead communication over System Area Networks (SANs). The Virtual Interface (VI) Architecture is described in the Virtual Interface Architecture Specification, Version 1.0, Dec. 16, 1997. With the advent of System Area Networks (SANs), low latency and high bandwidth interconnects have become a reality. This has opened new horizons for cluster computing. The centralized in-kernel protocol processing in legacy transports (e.g., TCP/IP) prohibits applications from realizing the potential raw hardware performance offered by underlying high-speed networks. Virtual Interface (VI) Architecture standard has further made it possible to perform low overhead communication using off-the shelf SAN hardware. However, building high-level applications using primitives provided by VI Architecture is complex and requires substantial development efforts because the VI Architecture does not provide transport level functionality such as flow control, buffer management, fragmentation and reassembly. Moreover, it is impractical to implement existing network protocols such as the Transmission Control Protocol (TCP) over VI Architecture because this would result in unnecessary additional overhead. TCP uses a sliding window flow control protocol that uses sequence numbers, acknowledgments, error detection, retransmission of lost packets, etc., because the underlying network is presumed to be inherently unreliable. SANs have very low error rates and high reliability levels offered by VI Architecture (reliable delivery and reliable reception) and consider transport errors catastrophic. Thus, due to the reliable delivery and reliable reception of VIs, which break connection on extremely rare transport errors and guarantee exactly once, intact, in order data delivery, many of the functions performed by TCP to ensure reliability are redundant and would add unnecessary overhead.
Therefore, a need exists for a communication service that provides some transport level services over the VI Architecture, such as flow control, buffer management, fragmentation and reassembly, without adding unnecessary overhead.
SUMMARY
According to an embodiment of the invention, a method of sending data from a local endpoint system to a remote endpoint system across a network is provided. The local endpoint system includes a plurality of work queues for posting data transfer requests. It is determined if a sufficient number of send credits is available at the local endpoint system. A data packet is sent from the local endpoint system over the network if a sufficient number of send credits are available. Otherwise, if a sufficient number of send credits is not available at the local endpoint system, a credit request packet is sent from the local endpoint system to the remote endpoint system, and the local endpoint system waits for a credit response packet from the remote endpoint system before sending a data packet.
According to an embodiment of the invention, a method of receiving data at a local endpoint system across a network. The local endpoint system includes a plurality of work queues for posting data transfer requests, one or more registered send and receive buffers, and one or more application receive buffers. A packet is received and it is determined whether the packet is a data packet. Several steps are performed if it is a data packet. The system is polled for any additional packets that have been received by the local endpoint system. The data for all the received packets is copied from the registered receive buffers to one or more application buffers. These registered buffers which have been copied are then made available. The number of receive credits is updated based on the additional available receive buffers.
REFERENCES:
patent: 4449182 (1984-05-01), Rubinson et al.
patent: 4475192 (1984-10-01), Fernow et al.
patent: 4703475 (1987-10-01), Dretzka et al.
patent: 5432784 (1995-07-01), Ozveren
patent: 5453982 (1995-09-01), Pennington et al.
patent: 5483526 (1996-01-01), Ben-Numn et al.
patent: 5610745 (1997-03-01), Bennett
patent: 5617409 (1997-04-01), Ozveren et al.
patent: 5633867 (1997-05-01), Ben-Nun et al.
patent: 5636371 (1997-06-01), Yu
patent: 5737535 (1998-04-01), Bagley et al.
patent: 5748613 (1998-05-01), Kilk et al.
patent: 5799155 (1998-08-01), Yasue et al.
patent: 5825748 (1998-10-01), Barkey et al.
patent: 5852602 (1998-12-01), Sugawara
patent: 6044406 (2000-03-01), Barkey et al.
patent: 6092108 (2000-07-01), DiPlacido et al.
patent: 6134617 (2000-10-01), Weber
patent: 6163834 (2000-12-01), Garcia et al.
patent: 6237038 (2001-05-01), Yasue et al.
patent: 6249819 (2001-06-01), Hunt et al.
patent: 6321276 (2001-11-01), Forin
patent: 6360220 (2002-03-01), Forin
Angelos Bilas and Edward W. Felten, “Fast RPC on the SHRIMP Virtual Memory Mapped Network Interface”, InJournal of Parallel and Distributed Computing, Feb. 1997, pp. 1-22.
M. Blumrich et al., “Virtual Memory Mapped Network Interface for the SHRIMP Multicomputer”,Proceedings of the 21st Annual Symposium on Computer Architecture, 1994, pp. 142-153.
Chi-Chao Chang and Thorsten von Eicken, “A Software Architecture for Zero-Copy RPC in Java”,CS Technical Report 98-1708, Cornell University, Sep. 1998, pp. 1-15.
Stefanos N. Damianakis, Cezary Dubnicki, and Edward W. Felten, “Stream Sockets on SHRIMP”, Technical Report TR-513-96, Dept. of Computer Science, Princeton University, Feb. 1996.
Dave Dunning et al., “The Virtual Interface Architecture”,IEEE MICRO, Mar./Apr. 1998, vol. 18, No. 2, pp. 66-76.
Thorsten von Eicken et al., U-Net A User-Level Network Interface for Parallel and Distributed Computing,Proc. of the 15th ACM Symposium on Operating System Principles, 1995, pp. 1-13.
Rajesh S. Madukkarumukumana, Calton Pu, and Hemal V. Shah, “Harnessing User-Level Networking Architectures for Distributed Object Computing over High-Speed Networks”, InProceedings of 2nd USENIX Windows NT Symposium, 1998.
Giles Muller et al., “Fast Optimized Sun RPC Using Automatic Program Specialization”, InProceedings of the International Conference on Distributed Computing Systems(ICDCS-18), May 1998.
Scott Pakin, Vijay Karamcheti, and Andrew A. Chien, “Fast Messages: Efficient, Portable Communication for Workstation Clusters and MPPs”,IEEE Concurrency, 1997.
Steven H. Rodrigues, Thomas E. Anderson and David E. Culler, “High-Performance Local Area Communication With Fast Sockets”,USENIX 1997 Conference, 1997.
Matthew J. Zelesko and David R. Cheriton, “Specializing Object-Oriented RPC for Functionality and Performance”, InProceedings of the International Conference on Distributed Computing Systems(ICDCS-16), May 1996.
Olan M. Zimmer and Andrew A. Chien, “The Impact of Inexpensive Communication on a Commercial RPC System”, Aug. 1998.
Madukkarumukumana Rajesh S.
Shah Hemal V.
Antonelli Terry Stout & Kraus LLP
Intel Corporation
Meky Moustafa M.
LandOfFree
Credit based flow control scheme over virtual interface... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Credit based flow control scheme over virtual interface..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Credit based flow control scheme over virtual interface... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2981654