An F-channel can permit as much concurrency as a nonFIFO channel and yet retain the properties of a FIFO channel that leads to simplicity of reasoning in design and proofs of the correctness of distributed algorithms. This is one of the major reasons that makes it preferable to a FIFO channel and make its implementation important. This and other reasons for its superiority over a FIFO channel are discussed, and it is proposed that systems should provide implementation of F-channels. Reasons are discussed for this proposal which are based on the principle that a system should provide an interface to the users that makes algorithm design easy and that leads to efficient user efforts and system operation. Implementation of an F-channel on top of a nonFIFO channel is presented. >
['Mohan Ahuja']
An implementation of F-channels, a preferable alternative to FIFO channels