Acknowledging Reception

When a driver sends an acknowledgment, it is said to work in the asynchronous mode.

In asynchronous mode, the incoming message context is detached from the Fulfillment Provisioning service orders and a responder will have to create another context to send the response back. A context may be a TCP connection for instance.

The opposite of asynchronous mode is synchronous mode.

In synchronous mode, the driver does not acknowledge the incoming message and lets the responder send the response using the same context. A typical example is a northbound system that sends TCP messages to Fulfillment Provisioning and wants to receive the response directly on the same connection.

A driver session can send a negative functional acknowledgment for a request according to information extracted by the Parser or by the Framer.

It can also send a negative acknowledgment because of an issue that occurred during message processing.

For example, an acknowledgment may contain a header and an acknowledgment message. If the parser cannot decode the message header or it cannot validate the fields, the driver can return an error code in the acknowledgment message.

The decision to send an acknowledgment is made at the protocol flow level. The asynchronous protocol is often considered a more robust solution than a synchronous protocol, because service orders processing can take a very long time (sometimes several days, depending on the network element availability), and maintaining a connection for such a period of time would simply not work.