9
Протокол PPPoE
Технология использования стека PPP в сети Ethernet является относительно новой, но уже
получила достаточное распространение. На данный момент она определяется документом
RFC 2516, который был разработан и выпущен в феврале 1999 года.
Технология PPPoE на данный момент является одной из самых дешевых и
распространенных при предоставлении пользователям доступа к услугам Интернет в жилых
комплексах на базе Ethernet и при использовании технологии DSL.
При этом будет поддерживаться аутентификация пользователей по протоколам PAP и CHAP,
динамическое выделение IP - адресов пользователям, назначение адреса шлюза, DNS-сервера
и т.д.
Так как принципом работы PPPoE является установление соединения "точка-точка" поверх
общей среды Ethernet, то процесс функционирования PPPoE должен быть разделен на две
стадии. В первой стадии два устройства должны сообщить друг другу свои адреса и
установить начальное соединение, а во второй стадии запустить сессию PPP.
Стадия установления соединения
Стадия установления соединения между клиентом (компьютером пользователя) и сервером
(концентратором доступа провайдера) делится на несколько этапов.
На первом этапе клиент посылает широковещательный запрос (адрес назначения - broadcast
address) (PADI PPPoE Active Discovery Initiation) на поиск сервера со службой PPPoE. Этот
запрос получают все пользователи сети, но ответит на него только тот, у кого есть поддержка
службы PPPoE. Ответный пакет от концентратора доступа (PADO PPPoE Active Discovery
Offer) посылается в ответ клиенту, но если в сети есть много устройств со службой PPPoE, то
клиент получит много пакетов PADO. В этом случае, программное обеспечение клиента
выбирает необходимый ему концентратор доступа и посылает ему пакет (PADR PPPoE
Active Discovery Request) с информацией о требуемой службе (требуемый класс
обслуживания зависит от услуг провайдера), имя провайдера и т.д. После получения запроса,
концентратор доступа подготавливается к началу PPP сессии и посылает клиенту пакет
PADS (PPPoE Active Discovery Session-confirmation). Если все запрашиваемые клиентом
службы доступны (в состав этого пакета входит уникальный номер сессии, присвоенный
концентратором), то начинается второй этап - стадия установленной сессии. Если требуемые
клиентом услуги не могут быть предоставлены, клиент получает пакет PADS с указанием
ошибки в запросе услуги.
Стадия установленной сессии
Сессия начинается с использованием пакетов PPP. Принцип работы протокола PPP был
рассмотрен выше. При установлении PPP-сессии пользователь может быть
аутентифицирован при помощи RADIUS, и его трафик будет учитываться как при обычном
модемном доступе. Ему можно назначить динамический IP- адрес из пула адресов
концентратора, установить настройки шлюза и DNS-сервера. Желательно, чтобы
концентратор доступа посылал периодические запросы клиенту для определения его
состояния. Эта операция необходима для того, чтобы клиент, который по какой-либо
причине не оборвал сессию корректным образом, не считался существующим, и для него не
резервировались ресурсы концентратора доступа.
Завершение соединения PPPoE происходит по инициативе клиента или концентратора
доступа при помощи посылки пакета PADT (PPPoE Active Discovery Terminate).В протоколе
PPPoE предусмотрены некоторые дополнительные функции, например, такие как защита от
DoS атак (Denial of Service). Защита от некоторых типов DoS атака реализована путем
добавления в пакеты PADI специального поля AC-Cookie, которое позволяют концентратору
доступа ограничивать количество одновременных сессий PPPoE на одного клиента.