# 6. Места установки ТСПУ в сети оператора

[← Оглавление](../README.md) · [← Раздел 5: Фильтр](05.md)

---

ТСПУ устанавливается **в разрыв каналов связи** оператора и может располагаться в нескольких различных точках его сети. Выбор точки установки влияет на тип трафика, который проходит через ТСПУ, на возможности диагностики и на общую нагрузку на оборудование.

<img width="1024"  alt="image" src="https://github.com/user-attachments/assets/e4c166dc-582b-4a20-bbb5-5066f78e8ec6" />

Если рассматривать сеть оператора связи от абонентов в сторону выхода в интернет, можно выделить три основных места установки, а также особый режим подключения — on-a-stick.

<img width="1024" alt="image" src="https://github.com/user-attachments/assets/c8d805d4-ae92-42c2-8959-8adb4140b64a" />

Каждая точка имеет свои особенности с точки зрения инкапсуляции трафика и возможностей траблшутинга. Некоторые точки более предпочтительны, другие — менее, но все они допустимы для установки ТСПУ.

Инкапсуляция на стыке оператора, в разрыв которого встаёт ТСПУ, зависит от технологий конкретного оператора и от места установки в его сети. Это могут быть чистые IP-пакеты, пакеты с VLAN-тегами (одним или двумя — QinQ), пакеты с MPLS-метками, PPPoE-пакеты и различные комбинации. ТСПУ должно уметь разбираться со всеми этими заголовками, чтобы добраться до IP-трафика и выполнить его обработку.

## 6.1. До BRAS/BPE/BNG (между абонентами и терминацией сессий)

Первая возможная точка установки — **между абонентами и устройствами терминации абонентских сессий**. Такими устройствами могут быть:

| Тип сети             | Устройства терминации сессий         |
| -------------------- | ------------------------------------ |
| **Широкополосный доступ** | BRAS, BPE, BNG                  |
| **Мобильные сети**   | GGSN, PGW                           |

Все эти устройства выполняют одну функцию — **терминируют абонентские сессии**. В дальнейшем они обобщённо именуются «BRAS» (условный BRAS).

При установке в этой точке ТСПУ располагается максимально близко к абонентам — до того, как трафик пройдёт через какую-либо обработку на стороне оператора.

### 6.1.1. Особенность: PPPoE-трафик

Основная особенность установки **до BRAS** — наличие **PPPoE-трафика**. Широкополосные абоненты подключаются к BRAS по протоколу PPPoE, и этот трафик представляет собой дополнительный уровень инкапсуляции, который необходимо обрабатывать.

Важно: PPPoE-трафик существует **только на участке до BRAS**. Выше BRAS (то есть ближе к интернету) PPPoE-трафика в нормально функционирующих сетях не бывает — BRAS терминирует PPPoE-сессии и дальше передаёт обычные IP-пакеты.

Наличие PPPoE не является критической проблемой — фильтры умеют работать с этой инкапсуляцией. Однако это дополнительная сложность, которую необходимо учитывать при настройке. Параметр **VLAN Mode** на фильтрах должен быть установлен в **QinQ**, чтобы обеспечить корректный поиск IP-заголовка внутри PPPoE-инкапсуляции (подробнее — в [разделе 5.1.1](05.md)).

## 6.2. До CGNAT (после BRAS) — наиболее удобная точка

Вторая точка установки — **между BRAS и CGNAT**. На этом участке BRAS уже терминировал абонентские сессии, но трафик ещё не прошёл трансляцию адресов (NAT).

Это, вероятно, **наиболее удобная точка** для установки ТСПУ по двум причинам:

1. **Отсутствие PPPoE** — трафик PPPoE уже терминирован на BRAS, что означает меньшее количество заголовков инкапсуляции для обработки;
2. **Видимость абонентских адресов** — серые (частные) IP-адреса абонентов ещё не прошли через NAT-трансляцию и доступны для анализа.

### 6.2.1. Видимость серых абонентских IP-адресов

На участке до CGNAT фильтры ТСПУ видят **серые** (частные) IP-адреса абонентов — те самые адреса, которые непосредственно назначены абонентским устройствам. Это даёт существенные преимущества при диагностике:

- Можно найти сессию **конкретного абонента** на фильтрах по его IP-адресу;
- Можно определить, что именно происходит с трафиком данного абонента;
- Можно исключить конкретного абонента из обработки DPI-листом (через параметр **No IP**) для диагностики проблем.

Эта возможность особенно ценна при траблшутинге — прямая связь между физическим абонентом и его сессиями на ТСПУ значительно ускоряет поиск и устранение проблем.

## 6.3. После CGNAT (ближе к выходу в интернет)

Третья точка установки — **после CGNAT**, ближе к выходу в общую сеть интернет. На этом участке трафик уже прошёл трансляцию адресов.

### 6.3.1. Только белые адреса, сложности траблшутинга

После CGNAT серых абонентских адресов **больше не видно** — на фильтрах ТСПУ будут присутствовать только **белые** (публичные) IP-адреса из NAT-пула оператора.

Это создаёт существенное неудобство при траблшутинге:

- **Невозможно напрямую связать** конкретного физического абонента с его сессией на ТСПУ — адрес источника в пакете является транслированным (белым), а не оригинальным (серым) адресом абонента;
- Для идентификации абонента необходимо **взаимодействовать с оператором** — запрашивать у него информацию о том, в какие порты и IP-адреса был транслирован конкретный абонент на CGNAT;
- Процесс диагностики становится **значительно более длительным** и требует координации между командой ТСПУ и оператором связи.

С точки зрения самой фильтрации (блокировки, распознавания протоколов) размещение после CGNAT не вносит каких-либо ограничений — функциональность ТСПУ остаётся полной. Неудобство касается исключительно диагностики и траблшутинга.

> **Примечание:** в ряде случаев подсистемы BRAS и CGNAT могут быть **совмещены в одном устройстве**. В этом случае участок «между BRAS и CGNAT» (наиболее удобная точка установки) попросту отсутствует — ТСПУ может быть установлено либо до этого комбинированного устройства, либо после него.

## 6.4. Режим On-a-stick (BRAS/CGNAT подключены петлёй)

Помимо трёх линейных точек установки, существует особый вариант размещения ТСПУ — когда сервисное оборудование оператора (BRAS и/или CGNAT) подключено **в режиме on-a-stick** (петлёй).

В режиме on-a-stick BRAS или CGNAT подключается к оператору **одним агрегированным каналом**, через который трафик уходит к устройству и возвращается обратно. Если ТСПУ установлено на этом участке, трафик **проходит через него дважды**.

```text
    Абоненты                                     Интернет
        │                                             │
        │         ┌────────────┐                      │
        └─────────┤    ТСПУ    ├──────────────────────┘
                  └──────┬─────┘
                         │  ↕ (трафик проходит дважды)
                  ┌──────┴─────┐
                  │BRAS / CGNAT│
                  │(on-a-stick)│
                  └────────────┘
```

Возможны три варианта подключения on-a-stick:

| Вариант                    | Что проходит через ТСПУ дважды                              |
| -------------------------- | ----------------------------------------------------------- |
| **BRAS on-a-stick**        | Трафик до BRAS + трафик после BRAS (сегменты 1 + 2)        |
| **CGNAT on-a-stick**       | Трафик до CGNAT + трафик после CGNAT (сегменты 2 + 3)      |
| **BRAS + CGNAT on-a-stick**| Трафик до обоих устройств + трафик после обоих (сегменты 1 + 3) |

### 6.4.1. Двойное прохождение трафика через ТСПУ

При подключении on-a-stick трафик проходит через ТСПУ **дважды**:

1. **Первый проход** — трафик от абонентов идёт через ТСПУ к BRAS/CGNAT;
2. **Второй проход** — после обработки на BRAS/CGNAT трафик возвращается через ТСПУ в сторону интернета (или обратно к абонентам — в зависимости от направления).

Это означает, что каждая абонентская сессия потенциально **видна фильтрам дважды**, причём на втором проходе адреса могут быть уже другими (после NAT-трансляции на CGNAT). Без дополнительных мер это приводит к удвоению количества сессий и удвоению нагрузки на ТСПУ.

### 6.4.2. Разделение по VLAN для обработки трафика одного направления

**Наиболее удобная конфигурация** при подключении on-a-stick — когда оператор чётко разделяет трафик по VLAN:

- **Один VLAN** несёт трафик **до** BRAS/CGNAT (от абонентов к сервисному оборудованию);
- **Другой VLAN** несёт трафик **после** BRAS/CGNAT (от сервисного оборудования в сторону интернета).

В этом случае на ТСПУ можно настроить обработку **только нужного VLAN** (например, трафика до CGNAT, где видны серые абонентские адреса), а второй VLAN — **прозрачно пропустить** на уровне балансировщика, даже не отправляя его на фильтры.

Это достигается через **flow rules** балансировщика (подробнее — в [разделе 4.4](04.md)):

- Правило с действием `balancing` — для VLAN, который нужно обрабатывать (трафик отправляется на фильтры);
- Правило с действием `bypass` — для VLAN, который нужно пропустить (трафик прозрачно проходит через балансировщик).

В результате фильтры обрабатывают трафик **только один раз**, каждый абонент виден единожды, путаницы с сессиями не возникает.

### 6.4.3. Проблемы двойной обработки и best practice

Если оператор **не может** чётко отделить трафик до и после BRAS/CGNAT (например, оба направления идут в одном VLAN), возникает ситуация **двойной обработки**. Её последствия:

- **Удвоение количества сессий** — одна и та же абонентская сессия видна фильтру дважды, причём с разными IP-адресами (до и после NAT-трансляции);
- **Путаница при траблшутинге** — сложно определить, какая из двух записей сессии соответствует реальному состоянию;
- **Двойная нагрузка на ТСПУ** — запас производительности должен быть рассчитан исходя из удвоенного объёма трафика.

Эта ситуация **нежелательна** и её следует избегать при проектировании. В лучшем варианте необходимо добиться от оператора информации о разделении трафика по VLAN и выбрать для обработки только нужное направление.

> **Пример из практики:** на пилотном проекте (Урал) один из операторов подключён по принципу on-a-stick к CGNAT (сегменты 2 + 3 на схеме). Оператор предоставил информацию о том, какие VLAN несут трафик до CGNAT, а какие — после. На балансировщике были отобраны только нужные VLAN и отправлены на фильтры. В результате фильтры видят нормальные абонентские сессии до CGNAT (с серыми адресами) и не обрабатывают транслированный трафик после CGNAT. Это — **best practice** подключения on-a-stick.

Возможен и **обратный подход**: вместо явного указания обрабатываемых VLAN можно исключить ненужные VLAN из обработки, а всё остальное — обрабатывать. Выбор подхода — вопрос удобства настройки для конкретной площадки.

---

[← Оглавление](../README.md) · [← Раздел 5: Фильтр](05.md) · [Раздел 7: Эшелонированная система →](07.md)
