# Control Plane и Data Plane

Перед тем, как окунуться в глубокий омут управления маршрутами, сделаем последнее лирическое отступление. Надо разобраться с понятиями в заголовке главы.\
В своё время, читая [MPLS Enabled Application](http://www.amazon.com/MPLS-Enabled-Applications-Emerging-Developments-Technologies/dp/0470014539), я сломал свой мозг на них. Просто никак не мог сообразить, о чём авторы ведут речь.\
Итак, дабы не было конфузов у вас.\
Это не уровни модели, не уровни среды или моменты передачи данных – это весьма абстрактное деление.\
Управляющий уровень (**Control Plane**) – работа служебных протоколов, обеспечивающих условия для передачи данных.\
Например, когда запускается BGP, он пробегает все свои состояния, обменивается маршрутной информацией итд.\
Или в MPLS-сети LDP распределяет метки на префиксы.\
Или STP, обмениваясь BPDU, строит L2-топологию.

Всё это примеры процессов Control Plane. То есть это подготовка сети к передаче – организация коммутации, наполнение таблицы маршрутизации.

Передающий уровень (**Data Plane**) – собственно передача полезных данных клиентов.

Часто случается так, что данные двух уровней ходят в разных направлениях, “навстречу друг другу”. Так в BGP маршруты передаются из AS100 в AS200 для того, чтобы AS200 могла передать данные в AS100.

![](http://habrastorage.org/storage2/d7c/9fb/f7d/d7c9fbf7dfcbe6bd3e11c29512f7853a.gif)

Более того, на разных уровнях могут быть разные парадигмы работы. Например, в MPLS Data Plane ориентирован на создание соединения, то есть данные там передаются по заранее определённому пути – LSP.\
А вот сам этот путь подготавливается по стандартным законам IP – от хоста к хосту.

Важно понять назначение уровней и в чём разница.

Для BGP это принципиальный вопрос. Когда вы анонсируете свои маршруты, фактически вы создаёте путь для *входящего трафика*. То есть маршруты исходят от вас, а трафик к вам.


---

# 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/8.-bgp-i-ip-sla/2.-bgp/2.-nastroika-bgp-i-praktika/3.-control-plane-i-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.
