×

System and method for preserving message order while employing both programmed I/O and DMA operations

  • US 5,887,134 A
  • Filed: 06/30/1997
  • Issued: 03/23/1999
  • Est. Priority Date: 06/30/1997
  • Status: Expired due to Term
First Claim
Patent Images

1. A method of transmitting messages between nodes of a distributed computer system using a combination of memory mapped programmed I/O (PIO) commands and memory mapped DMA commands to transmit each of a subset of the messages, comprising steps of:

  • initiating the transmission of a multipart message from a first node to a second node of the distributed computer system by sending to a network interface of the first node a sequence of PIO store and DMA store commands, each PIO store and DMA store command specifying a respective component of the multipart message to be stored in a respective specified memory mapped location in the second node, the sequence of the PIO store and DMA store commands corresponding to a predefined message component order;

    at the first node'"'"'s network interface;

    receiving the sequence of PIO and DMA commands corresponding to the multipart message;

    storing each PIO and DMA command received by the first node'"'"'s network interface in a queue, wherein the PIO and DMA commands are stored in the queue in a same order as they are received by the first node'"'"'s network interface, which corresponds to the predefined message component order; and

    packetizing the PIO and DMA commands stored in the queue to generate an ordered stream of data transfer packets whose order corresponds to the predefined message component order, and transmitting the ordered stream of data transfer packets to the second node so as to store the respective components of the multipart message in their respective specified memory locations in the second node in a same order as the predefined message component order, the transmitting step preserving packet order within the ordered stream of data transfer packets.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×