# Data Plane

![](https://habrastorage.org/files/acb/a47/d41/acba47d41cdd4bd5be609823a10745d4.png)\
\&#xNAN;*Туннельная метка — то же, что и транспортная, просто длинное слово «транспортное» не помещалось в заголовок.*

**0.** Между R1 и R6 уже построен транспортный LSP с помощью протокола LDP или RSVP TE. То есть R1 известна транспортная метка и выходной интерфейс к R6.\
**1.** R1 получает от клиента CE1 некий L2 кадр на AC интерфейс (то может оказаться Ethernet, TDM, ATM итд. — не имеет значения).\
**2.** Этот интерфейс привязан к определённому идентификатору клиента — VC ID — в некотором смысле аналогу VRF в L3VPN. R1 даёт кадру сервисную метку, которая сохранится до конца пути неизменной. VPN-метка является внутренней в стеке.\
**3.** R1 знает точку назначения — IP-адрес удалённого PE-маршрутизатора — R6, выясняет транспортную метку и вставляет её в стек меток MPLS. Это будет внешняя — транспортная метка.\
**4.** Пакет MPLS путешествует по сети оператора через P-маршрутизаторы. Транспортная метка меняется на новую на каждом узле, сервисная остаётся без изменений.\
**5.** На предпоследнем маршрутизаторе снимается транспортная метка — происходит [PHP](http://lookmeup.linkmeup.ru/#term487). На R6 пакет приходит с одной сервисной VPN-меткой.\
**6.** PE2, получив пакет, анализирует сервисную метку и определяет, в какой интерфейс нужно передать распакованный кадр.

![](https://habrastorage.org/files/a19/5a9/98a/a195a998a800472a97d486a8d3ec41a4.gif)

Если вы читали [предыдущий выпуск про L3VPN](https://linkmeup.ru/blog/204.html), то в вопросе передачи пользовательского трафика не увидите ничего нового — пара MPLS-меток и передача по транспортному LSP. Ingress PE проверяет какие метки поставить и в какой интерфейс отправить, P меняет транспортную метку, а Egress PE по метке VPN принимает решение, в какой AC-интерфейс передать полученный кадр.


---

# 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://linkmeup.gitbook.io/sdsm/12.-mpls-l2vpn/1.-vpws/0.-data-plane.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.
