[![](https://openthread.io/static/images/icon-github.svg)View source on GitHub](https://github.com/openthread/ot-docs/tree/main/site/en/guides/thread-primer/node-roles-and-types.md)

## Forwarding roles

[![OT Node Roles](https://openthread.io/guides/images/ot-primer-roles.png)](https://openthread.io/guides/images/ot-primer-roles.png)

In a Thread network, nodes are split into two forwarding roles:

### Mesh Extender

A Mesh Extender is a node that:

- forwards packets for network devices
- provides secure commissioning services for devices trying to join the network
- keeps its transceiver enabled at all times

### End Device

An End Device (ED) is a node that:

- communicates primarily with a single Mesh Extender
- does not forward packets for other network devices
- can disable its transceiver to reduce power

> [!IMPORTANT]
> **Key Point:** The relationship between a Mesh Extender and an End Device is a Parent-Child relationship. An End Device attaches to exactly one Mesh Extender. The Mesh Extender is always the Parent, the End Device the Child.

## Device types

Furthermore, nodes comprise a number of types.
[![OT Device Taxonomy](https://openthread.io/guides/images/ot-primer-taxonomy.png)](https://openthread.io/guides/images/ot-primer-taxonomy.png)

### Full Thread Device

A Full Thread Device (FTD) always has its radio on, subscribes to the
all-routers multicast address, and maintains IPv6 address mappings. There are
two types of FTDs:

- Extender-Capable Device (ECD)
- Full End Device (FED)

An Extender-Capable Device can be in either the Mesh Extender or
standby ECD role. In the standby role, it's always an End Device
(Child).

A FED is always an End Device (Child).

### Minimal Thread Device

A Minimal Thread Device does not subscribe to the all-routers
multicast address and forwards all messages to its Parent. There are
two types of MTDs:

- Minimal End Device (MED) --- transceiver always on, does not need to poll for messages from its parent
- Sleepy End Device (SED) --- normally disabled, wakes on occasion to poll for messages from its parent

An MTD can only operate as an End Device (Child).

### Upgrading and downgrading

When a standby ECD is the only node in reach of a new Thread device
wishing to join the Thread network, it can upgrade itself and operate
as a Mesh Extender:
[![OT End Device to Mesh Extender](https://openthread.io/guides/images/ot-primer-router-upgrade.png)](https://openthread.io/guides/images/ot-primer-router-upgrade.png)

Conversely, when a Mesh Extender has no children, it can downgrade
itself and operate as a standby ECD:
[![OT Mesh Extender to End Device](https://openthread.io/guides/images/ot-primer-router-downgrade.png)](https://openthread.io/guides/images/ot-primer-router-downgrade.png)

## Other roles and types

### Thread Leader

[![OT Leader and Border Router](https://openthread.io/guides/images/ot-primer-leader.png)](https://openthread.io/guides/images/ot-primer-leader.png)

The Thread Leader is a Mesh Extender that is responsible for managing
the set of Mesh Extenders in a Thread network. It is dynamically
self-elected for fault tolerance, and aggregates and distributes
network-wide configuration information.

> [!NOTE]
> **Note:** There is always a single Leader in each Thread network [partition](https://openthread.io/guides/thread-primer/node-roles-and-types#partitions).

### Border Router

A Border Router is a device that can forward information between a Thread
network and a non-Thread network (for example, Wi-Fi). It also configures a
Thread network for external connectivity.

Any device may serve as a Border Router.

> [!NOTE]
> **Note:** There can be multiple Border Routers in a Thread network.

## Partitions

[![OT Partitions](https://openthread.io/guides/images/ot-primer-partitions.png)](https://openthread.io/guides/images/ot-primer-partitions.png)

A Thread network might be composed of partitions. This occurs when a group of
Thread devices can no longer communicate with another group of Thread devices.
Each partition logically operates as a distinct Thread network with its own
Leader, Router ID assignments, and network data, while retaining the same
security credentials for all devices across all partitions.

Partitions in a Thread network do not have wireless connectivity between each
other, and if partitions regain connectivity, they automatically merge into a
single partition.

> [!IMPORTANT]
> **Key Point:** Security credentials define the Thread network. Physical radio connectivity defines partitions within that Thread network.

Note that the use of "Thread network" in this primer assumes a single partition.
Where necessary, key concepts and examples are clarified with the term "partition."
Partitions are covered in-depth later in this primer.

## Device limits

There are limits to the number of device types a single Thread network supports.

| Role | Limit |
|---|---|
| Leader | 1 |
| Mesh Extender | 32 |
| End Device | 511 per Mesh Extender |

Thread tries to keep the number of Mesh Extenders between 16 and
23. If an ECD attaches as an End Device and the number of Mesh
Extenders in the network is below 16, it automatically promotes itself
to a Mesh Extender.

## Recap

What you learned:

- A Thread device is either a Mesh Extender (Parent) or an End Device (Child)
- A Thread device is either a Full Thread Device (maintains IPv6 address mappings) or a Minimal Thread Device (forwards all messages to its Parent)
- A standby ECD can promote itself to a Mesh Extender, and vice versa
- Every Thread network partition has a Leader to manage Mesh Extenders
- A Border Router is used to connect Thread and non-Thread networks
- A Thread network might be composed of multiple partitions

## Check your understanding

A Thread network device can fulfill one of two forwarding roles. What are they? Child Node. Incorrect. Mesh Extender. Correct. End Device. Correct. Gateway. Incorrect. What are the two primary types of Thread device? Minimal Thread Device (MTD). Correct. Full Thread Device (FTD). Correct. Miniscule Thread Device (MTD). Incorrect. Sleepy End Device (SED). Incorrect. Which of the following statements about Mesh Extenders is not true? A Mesh Extender can disable its transceiver to reduce power. Devices that are functioning as Mesh Extenders do not disable their transceivers. (If they did, they'd be unable to function properly as a Mesh Extender.) A Mesh Extender forwards packets for network devices. This statement is true. A Mesh Extender keeps its transceiver enabled at all times. This statement is true. In order to function properly as a Mesh Extender, a device must keep its transceiver online at all times. A Mesh Extender provides secure commissioning services for devices trying to join the network. This statement is true. Commissioning is an important function of a Mesh Extender. When can a device upgrade itself to a Mesh Extender? When it is a standby Extender-Capable Device and it is the only node in reach of a new Thread device seeking to join the Thread network. That's right. Under these circumstances, a standby Extender-Capable Device can promote itself to a Mesh Extender. When it is an End Device seeking to join the Thread network. Incorrect. When it is a standby Extender-Capable Device and the Thread network has merged with a larger network. Incorrect. When can a Mesh Extender cause itself to stop acting as a Mesh Extender? When it has no children. That's correct. A Mesh Extender with no children may revert to a standby ECD on its own. When a new End Device is seeking to join the Thread network. Wrong. A Mesh Extender cannot revert to a standby ECD in this scenario. When another device on the network elects to become a Mesh Extender. This could be true. If the number of Mesh Extenders increases to 24 or more, existing Mesh Extenders can start evaluating whether to become a standby ECD. Consider a scenario where a Thread network contains two groups of nodes that have radio connectivity within the group, but not with members of the other group. What conclusion can one draw from this? There is more than one partition in that network. Correct. A partition is formed around each group of nodes that is able to communicate with one another. When there are multiple groups of nodes that can communicate amongst themselves, but not with members of other groups, one can infer that these groups each constitute a distinct partition. The network lost its Leader. Incorrect. All the Mesh Extenders in the network have gone offline. Incorrect. In that case, none of the nodes would be able to communicate with one another. What device is used to connect Thread and non-Thread networks? A Gateway. While in traditional networking, the term 'Gateway' does refer to a device that connects two networks, there is a more specific term in the context of a Thread network. A Border Router. Correct. A Border Router is used to connect Thread and non-Thread networks. A Firewall. That is not right. A Bridge. Incorrect. This term refers to a similar concept in traditional networking, namely, a device that connects two LANs that use the \*same\* network protocol. How many Leaders may a Thread network partition have? Either none or exactly one. This is wrong. A Thread network partition cannot have fewer than one Leader. One and only one. Correct. A Thread network partition may have one and only one Leader. More than one. Wrong. A Thread network partition cannot have multiple Leaders.