Message-oriented Communication
Message Oriented Communication (Socket)
A socket is a communication end point to which an application can write data that are to be sent out over the underlying network, and from which incoming data can be read.
A socket forms an abstraction over the actual port that is used by the local operating system for a specific transport protocol.
Common operations include:
socket: create a new communication end pointbind: attach a local address to a socketlisten: tell operating system what the maximum number of pending connection requests should beaccept: block caller until a connection request arrivesconnect: actively attempt to establish a connectionsend: send some data over the connectionreceive: receive some data over the connectionclose: release the connection
Message-Passing Interface (MPI)
MPI is designed for parallel applications and as such is tailored to transient communication.
Support different network protocol stacks.
Common operations include:
MPI_bsend: append outgoing message to a local send buffer (transient asynchronous communication)MPI_send: send a message and wait until copied to local or remote bufferMPI_ssend: send a message and wait until transmission starts (synchronous communication)MPI_sendrecv: send a message and wait for reply (strongest form of synchronous communication)MPI_isend: pass reference to outgoing message, and continueMPI_issend: pass reference to outgoing message, and wait until receipt startsMPI_recv: receive a message; block if there is noneMPI_irecv: check if there is an incoming message, but do not block
Last updated
Was this helpful?