1. A parallel processing system including a plurality of processing nodes interconnected in a prescribed manner for passing messages directly between the processing nodes and message passing protocol apparatus at each node for sending and receiving said messages, said messages containing information identifying a protocol type to which a message belongs, said protocol type identifying rules for processing the message, an identification of a task being processed using the protocol type and data, said protocol apparatus comprising: input means for receiving a message from a first node connected to the input means and including means for signaling to the first node that the input means is empty, output means for sending a message to the input means of a second connected node only when the input means at the second node signals that it is empty, a protocol processor for independently performing protocol input functions and output functions on messages received and to be transmitted, respectively, according to the protocol type identified in the message; and a memory accessible by the protocol processor for storing state information individually pertaining to each task being processed and containing protocol status information for controlling the operations of the input and output functions pertaining to each task, said input and output functions operating to change the state information.