Наверно тот у кого доступ в интернет осуществляется по ADSL заглядывал в настройки модема и натыкался на параметры vpi/vci. Впервые с ними столкнувшись возникает резонный вопрос «что это и для чего?» В этой статье я решила рассказать немного подробнее о том как осуществляется доступ по технологии ADSL, про PPPoE и конечно же про параметры vpi/vci.
Доступ по технологии ADSL осуществляется с помощью DSL модема на стороне абонента и DSLAM'а на стороне провайдера. Наверно правильнее будет говорить DSL-технология (Digital Subscriber Line), но чаще можно услышать ADSL (Asymmetric Digital Subscriber Line), это самый распространенный вид из xDSL. И в этой статье я хочу немного рассказать именно про ADSL.
Ассиметричность (из названия) заключается в разной пропускной способности каналов, у абонента скорость закачки выше чем отдачи.
Наверно каждый провайдер при подключении абонента, выдает абоненту инструкцию со схемой как все включить, чтоб заработало. И первая половина картинки (до сплитера А включительно) снизу всем обладателям ADSL-интернета должна показаться знакомой.
![image](https://habrastorage.org/getpro/habr/post_images/c0c/819/569/c0c8195693c5cd938273a2c2b8487073.gif)
А вот вторая часть, это уже дела провайдерские =)
Одно из главных преимуществ технологии DSL для абонентов — это возможность пользоваться телефоном и интернетом одновременно.
Чтобы это обеспечить, DSL использует более высокий диапазон частот на линии (промежуток АВ) в отличии от телефона. Для разделения этих частот используются сплитеры, как на стороне абонента, так и на стороне провайдера.
Дальше по схеме у абонента за сплитером включен модем, а у провайдера за сплитером DSLAM.
DSLAM (DSL Access Multiplexer) собирает множество абонентских линий и направляет их выше в магистраль провайдера. Его можно сравнить с большим свичем, он также работает на втором уровне модели OSI.
АТМ (Asynchronous Transfer Mode) это протокол коммутации ячеек, который передает данные в ячейках фиксированного размера и обеспечивает канальный уровень модели OSI.
ATM очень хорошо работает на низкоскоростных каналах до 2 Мбит и может поддерживать несколько логических соединений по одному физическому каналу. Стандарты АТМ обеспечивают передачу разнородного трафика (цифровых, голосовых и мультимедийных данных) по одним и тем же системам и линиям связи.
Эти преимущества стали причиной использования АТМ между модемом абонента и DSLAM'ом.
ATM — протокол ориентированный на соединение и всегда устанавливает виртуальный канал (virtual circuit) перед началом передачи данных.
Для идентификации этого канала используется пара значений VPI/VCI.
![image](https://habrastorage.org/getpro/habr/post_images/f16/50c/63d/f1650c63d4e91c06e159d728344eebf1.gif)
На DSL-модеме абонента и на абонентском порту на DSLAM'е эти значения должны совпадать. До абонента может идти несколько виртуальных каналов (несколько пар vpi/vci).
На DSLAM'е назначаются VLAN'ы для определенных виртуальны каналов абонентских портов и трафик уходит теггированным на роутер, где терминируются абонентские PPPoE сессии.
![image](https://habrastorage.org/getpro/habr/post_images/34f/b03/63b/34fb0363b803f289a1fccdedfa27aac8.gif)
Также на DSLAM'е могут применяться различные фильтры к определенным видам трафика, осуществляться маркировка пакетов для организации QoS.
После того как абонентский трафик ушел тегированным с DSLAM'а, он проходит через цепочку свичей провайдера и попадает на агрегационный роутер.
Агрегационный роутер выполняет следующие функции:
Кому любопытно, привожу пример настройки агрегационного роутера =)
Настройка роутера для терминации PPPoE:
Запускаем PPPoE сессию и смотрим, что у нас получилось:
Увидеть сколько сейчас создано сессий, можно с помощью команды.
PPPoE-ROU#sh pppoe summ
PTA: Locally terminated sessions
FWDED: Forwarded sessions
TRANS: All other sessions (in transient state)
TOTAL PTA FWDED TRANS
TOTAL 2 2 0 0
GigabitEthernet0/1 2 2 0 0
Когда абонент подключается через PPPoE, для него создается на основе Virtual-Template свой интерфейс — Virtual-Access, сокращенно он обозначается Vi.
PPPoE-ROU#sh caller
Чтобы оборвать сессию PPPoE абонента 11101@pppoe с роутера, необходимо ввести «clear int vi2».
Получить более полную информацию (адрес, который был выдан из пула и статистику) о PPPoE сессии можно с помощью команды:
PPPoE-ROU#sh caller full
User: 11102@pppoe, line Vi2, service PPPoE
Connected for 1d04h, Idle for 1d03h
Timeouts: Limit Remaining Timer Type
— — —
PPP: LCP Open, PAP (<-), IPCP
IP: Local 10.0.0.1, remote 172.16.0.2
Counts: 14720708 packets input, 1911626778 bytes, 0 no buffer
0 input errors, 0 CRC, 0 frame, 0 overrun
10736210 packets output, 3331626512 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
Количество абонентов будет расти и надо не забывать проверять пул адресов, чтоб всем хватило =)
PPPoE-ROU#sh ip local pool
Pool Begin End Free In use Blocked
PPPoE 172.16.0.1 172.16.0.254 50 77 0
Еще одна довольна полезная команда:
PPPoE-ROU#sh pppoe sess
2 sessions in LOCALLY_TERMINATED (PTA) State
2 sessions total
Вот мы пробежались коротенько по пути от абонентского модема до агрегационного роутера. Очень хотелось рассказать о том как осуществлется доступ на всех этапах, чтобы сформировать картину в целом. И надеюсь теперь при подключении к интернету через ADSL модем, вы не будете винить его за неторопливость — ведь он выполняет много дел для вас =)
Доступ по технологии ADSL осуществляется с помощью DSL модема на стороне абонента и DSLAM'а на стороне провайдера. Наверно правильнее будет говорить DSL-технология (Digital Subscriber Line), но чаще можно услышать ADSL (Asymmetric Digital Subscriber Line), это самый распространенный вид из xDSL. И в этой статье я хочу немного рассказать именно про ADSL.
Ассиметричность (из названия) заключается в разной пропускной способности каналов, у абонента скорость закачки выше чем отдачи.
Наверно каждый провайдер при подключении абонента, выдает абоненту инструкцию со схемой как все включить, чтоб заработало. И первая половина картинки (до сплитера А включительно) снизу всем обладателям ADSL-интернета должна показаться знакомой.
![image](https://habrastorage.org/getpro/habr/post_images/c0c/819/569/c0c8195693c5cd938273a2c2b8487073.gif)
А вот вторая часть, это уже дела провайдерские =)
Одно из главных преимуществ технологии DSL для абонентов — это возможность пользоваться телефоном и интернетом одновременно.
Чтобы это обеспечить, DSL использует более высокий диапазон частот на линии (промежуток АВ) в отличии от телефона. Для разделения этих частот используются сплитеры, как на стороне абонента, так и на стороне провайдера.
Дальше по схеме у абонента за сплитером включен модем, а у провайдера за сплитером DSLAM.
DSLAM (DSL Access Multiplexer) собирает множество абонентских линий и направляет их выше в магистраль провайдера. Его можно сравнить с большим свичем, он также работает на втором уровне модели OSI.
Немного про АТМ.
АТМ (Asynchronous Transfer Mode) это протокол коммутации ячеек, который передает данные в ячейках фиксированного размера и обеспечивает канальный уровень модели OSI.
ATM очень хорошо работает на низкоскоростных каналах до 2 Мбит и может поддерживать несколько логических соединений по одному физическому каналу. Стандарты АТМ обеспечивают передачу разнородного трафика (цифровых, голосовых и мультимедийных данных) по одним и тем же системам и линиям связи.
Эти преимущества стали причиной использования АТМ между модемом абонента и DSLAM'ом.
ATM — протокол ориентированный на соединение и всегда устанавливает виртуальный канал (virtual circuit) перед началом передачи данных.
Для идентификации этого канала используется пара значений VPI/VCI.
- VPI Virtual path identifier — идентификатор виртуального пути.
- VCI Virtual call identifier — идентификатор виртуального канала.
![image](https://habrastorage.org/getpro/habr/post_images/f16/50c/63d/f1650c63d4e91c06e159d728344eebf1.gif)
На DSL-модеме абонента и на абонентском порту на DSLAM'е эти значения должны совпадать. До абонента может идти несколько виртуальных каналов (несколько пар vpi/vci).
Что происходит с трафиком на DSLAM'е?
На DSLAM'е назначаются VLAN'ы для определенных виртуальны каналов абонентских портов и трафик уходит теггированным на роутер, где терминируются абонентские PPPoE сессии.
![image](https://habrastorage.org/getpro/habr/post_images/34f/b03/63b/34fb0363b803f289a1fccdedfa27aac8.gif)
Также на DSLAM'е могут применяться различные фильтры к определенным видам трафика, осуществляться маркировка пакетов для организации QoS.
Агрегация.
После того как абонентский трафик ушел тегированным с DSLAM'а, он проходит через цепочку свичей провайдера и попадает на агрегационный роутер.
Агрегационный роутер выполняет следующие функции:
- агрегация трафика приходящего с DSLAM'а
- установление PPPoE сессий
- применение политик QoS
- маршрутизация трафика от абонентов дальше в интернет
Кому любопытно, привожу пример настройки агрегационного роутера =)
Настройка роутера для терминации PPPoE:
aaa new-model ! ! |
Включаем ааа (Authentication, Authorization, Accounting) |
aaa authentication ppp default local ! ! ! ! ! |
Указываем, что аутентификация будет проводится через локальные учетные записи, это сделано для того чтобы не нагружать конфиг. Обычно для aaa используется RADIUS сервер. |
username 11101@pppoe password 0 pass01 username 11102@pppoe password 0 pass02 ! ! |
А это те самые локальные записи «логин — пароль». |
bba-group pppoe PPPoE_TEST virtual-template 1 pppoe limit per-mac 10 ! ! ! ! |
Создаем профайл для PPPoE указываем, какой интерфейс будет «шаблоном» для виртуальных интерфейсов, которые создаются при установлении PPPoE сессии. И ограничиваем количество сессий PPPoE, установленных с одного MAC-адреса. |
interface Loopback0 ip address 10.0.0.1 255.255.255.255 ! |
|
interface GigabitEthernet0/1.10 description User 11101@pppoe encapsulation dot1Q 10 pppoe enable group PPPoE_TEST ! interface GigabitEthernet0/1.20 description User 11102@pppoe encapsulation dot1Q 20 pppoe enable group PPPoE_TEST ! |
Создаем сабинтерфейс с инкапсуляцией IEEE 802.1Q, т.е. на него будем принимать vlan 10 в первом случае и 20 во втором. И разрешаем на этом интерфейсе подключение PPPoE. |
interface Virtual-Template1 ip unnumbered Loopback0 peer default ip address pool PPPoE ppp authentication pap ! ! ! |
Создаем «шаблон» для всех будущих интерфейсов Virtual-Access (Vi) адрес, которые будут создаваться при подключении абонентов. Указываем из какого пула выдаем адреса абонентом PPPoE и тип авторизации у нас будет PAP. |
ip local pool PPPoE 172.16.0.1 172.16.0.254 |
А это сам пул адресов. |
Запускаем PPPoE сессию и смотрим, что у нас получилось:
Увидеть сколько сейчас создано сессий, можно с помощью команды.
PPPoE-ROU#sh pppoe summ
PTA: Locally terminated sessions
FWDED: Forwarded sessions
TRANS: All other sessions (in transient state)
TOTAL PTA FWDED TRANS
TOTAL 2 2 0 0
GigabitEthernet0/1 2 2 0 0
Когда абонент подключается через PPPoE, для него создается на основе Virtual-Template свой интерфейс — Virtual-Access, сокращенно он обозначается Vi.
PPPoE-ROU#sh caller
Line | User | Service | Active Time | Idle Time |
Vi2 | 11101@pppoe | PPPoE | 1d04h | 1d03h |
Vi5 | 11102@pppoe | PPPoE | 00:23:39 | 00:02:00 |
Чтобы оборвать сессию PPPoE абонента 11101@pppoe с роутера, необходимо ввести «clear int vi2».
Получить более полную информацию (адрес, который был выдан из пула и статистику) о PPPoE сессии можно с помощью команды:
PPPoE-ROU#sh caller full
User: 11102@pppoe, line Vi2, service PPPoE
Connected for 1d04h, Idle for 1d03h
Timeouts: Limit Remaining Timer Type
— — —
PPP: LCP Open, PAP (<-), IPCP
IP: Local 10.0.0.1, remote 172.16.0.2
Counts: 14720708 packets input, 1911626778 bytes, 0 no buffer
0 input errors, 0 CRC, 0 frame, 0 overrun
10736210 packets output, 3331626512 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
Количество абонентов будет расти и надо не забывать проверять пул адресов, чтоб всем хватило =)
PPPoE-ROU#sh ip local pool
Pool Begin End Free In use Blocked
PPPoE 172.16.0.1 172.16.0.254 50 77 0
Еще одна довольна полезная команда:
PPPoE-ROU#sh pppoe sess
2 sessions in LOCALLY_TERMINATED (PTA) State
2 sessions total
Uniq | ID | PPPoE | RemMAC | Port | Source | VA State | SID | LocMAC | VA-st |
888 | 9193 | 0017.9aa0.75fd | Gi0/1.10 | Vt1 | Vi2 | PTA | 0023.5e2b.691a | VLAN:10 | UP |
985 | 39929 | 001e.52f7.d544 | Gi0/1.20 | Vt1 | Vi5 | PTA | 0023.5e2b.691a | VLAN:20 | UP |
Вот мы пробежались коротенько по пути от абонентского модема до агрегационного роутера. Очень хотелось рассказать о том как осуществлется доступ на всех этапах, чтобы сформировать картину в целом. И надеюсь теперь при подключении к интернету через ADSL модем, вы не будете винить его за неторопливость — ведь он выполняет много дел для вас =)