> ## Documentation Index
> Fetch the complete documentation index at: https://dragonwingdocs.qualcomm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# QRTR Addressing and Messages

> Node, port, service, control-path, and message-header addressing.

QRTR uses endpoint addresses for direct delivery and service names for discovery. The router header carries enough information for each peer router to classify, route, and deliver a message.

## Endpoint addresses

A client or server is identified by two values:

* **Node ID** – Identifies the processor hosting the endpoint.
* **Port ID** – Identifies a port within that node, assigned when the endpoint is created.

A service name is also identified by two values:

* **Service ID** – Identifies the service.
* **Instance ID** – Identifies a particular instance of that service (useful when multiple instances run).

When a server registers a service name, the router advertises the service name together with its node and port address. A client can then resolve the service name before sending data.

## Control-path events

Routers use control messages to propagate:

* Node status (a processor came up or went down)
* Service registration (a service started or stopped)
* Client connections (a client connected or disconnected)
* Flow-control notifications (a destination is ready or not ready for more data)

A client should handle the loss or arrival of a service as a state transition rather than assuming that a previously resolved address remains valid forever.

## Message header

The router adds a header to each message that identifies the protocol version, message type, source, destination, payload length, and whether the receiver should confirm delivery. This header carries enough information for the router to deliver the message without needing a separate connection.
