At most once in a semantic system, sometimes lost messages. If your application is executing a request - reply, it should use a timeout to deal with any network or application failure. Always a good idea to request a timeout and set the timeout using the processing code. Published events or data stream, a method to ensure that messaging is converted into (ACKs) the concept of an acknowledgment message request - reply. In the NATS, the ACK message can be an empty, without a message payload.
Because the ACK can be empty, it can take up very little network bandwidth, but the idea of a simple ACK of fire and forget (fire-disposable) converted into a fire and know (fire-remember) the world, the sender may be determined by the other party received the message, or using scatter-gather (scatter gather) mode, is received by the other party.