# UDP Considerations

The SNMP driver implemented in the server works only via UDP protocol. This causes a number of considerations as compared to devices operating over the TCP protocol. For example, if the Modbus TCP driver does not receive a response from the slave node during the *Request Timeout*, this means that communication with the slave node is lost and all tags associated with the driver must go to the *BadNoCommunication* state. This happens because TCP provides reliable data transfer. UDP does not guarantee data delivery, therefore, if the response from the target device is not received during the Request Timeout, only the tags associated with this request will go to the *BadNoCommunication* state.

### Diagnostics <a href="#h.th4k692qxt9s" id="h.th4k692qxt9s"></a>

Use of UDP as transport protocol brings its own aspects to the use of diagnostic variables described in the “Devices” [<mark style="color:blue;">section</mark>](/tags-and-devices/devices/diagnostics.md). The *CommunicationEstablished* and *CommunicationLost* variables should not be used to diagnose driver operation, as they do not reflect the state of the communication channel between the driver and the target device.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.monokot.io/tags-and-devices/snmp-connectivity/udp-considerations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
