logo суббота
10 января 2009г.

Компьютерные сети - простейшие основы принципов работы (часть 6)

 воскресенье, 28 сентября 2008г. 21:10 (оригинал)  amarao_san amarao_san

краткая суть предыдущих уроков: уровни. 1,2.

Сегодня мы чуть-чуть поговорим о ppp.

Предыдущая беседа просто-таки наводила всеми силами на мысль, что есть второй уровень. И есть мак-адреса на нём.

Так вот, это не так. Второй уровень есть. А мак-адреса, может есть, а может и нет... Дело в том, что ethernet (и производные от него стандарты) обширны, могучи, популярны... - но не единствены. Помимо ethernet-семейста есть и другие протоколы второго уровня. С ethernet'ом совершенно не совместимые. Большинство из них (ATM, Frame Relay, IDSN) нас, как домашних пользователей (и даже админов, ура), не касаются. Хотя есть один весьма и весьма важный протокол второго уровня, который активно используется. Это PPP. Point to Point протокол. Протокол точка-точка.

Как очевидно из названия, этот протокол позволяет доставлять информацию из точки А в точку Б и из точки Б в точку А. Исходное применение этого протокола - организация стека протоколов (т.е. подпорки для вышестоящих уровней) на непотребных каналах связи (т.е. каналах связи, ничего не подозревающих о сетях). Например, через com-шнурок. Или LPT. Или через модемы. (да-да, обычные шипящие модемы. Они ничего не знают об интернете, и даже не умеют изображать из себя устройства первого уровня толком...). Чтобы это неподтребство для вышестоящих протоколов выглядело правильно и хорошо, должен быть особый протокол второго уровня, который бы это непотребство каким-то образом сглаживал.

Одной из проблем "непотребных устройств" заключается в том, что они вовсе не готовы по первому свисту начинать что-то куда-то передавать.

ATZ
OK
ATM0L0+MS=11&N60
OK
ATDP3333333
OK

И только после такого (хорошо, если такого, бывает и хуже) шаманства модем начинает передавать байтики. Или не начинает, если вместо OK мы получим, например, NO CARRIER. Или CARRIER LOST. Или LOL GTFO. Или NO DIAL TONE. Или ещё какую ошибку.

Обычный" протокол вышестоящего уровня совершенно не имеет намерения разбираться что там случилось и что модему надо говорить. Так что приходится использовать протокол, который понимает, что связи просто так не бывает, что она может рваться. Это, собственно, PPP. Заодно там есть место и для пароля (того самого, что на интернет-карточках печатают).

Важно понимать, что все эти особенности (а их у PPP по сравнению с ethernet'ом очень много) остаются на втором уровне. Третий (нам пока неизвестный) уровень работает так, как нам нужно. Это главная заслуга ppp.

Данные в ppp помещаются в кадры, но помимо кадров с данными, ppp ещё передаёт управляющие кадры. Например, вопрос "ты хто?" и ответ на него. Или сообщение "PNH", означающее окончание сессии. При этом, от узла, который делает сессию, ppp хочет много данных. (например, номер телефона, логин, пароль).

В случае шнурка LPT-LPT, примерно то же самое, только без "номера телефона". Кстати, можно с паролем (паранойя) или без.

PPP был бы умирающим стандартом, если бы не нашлись идиоты, которые бы его не прикрутили в обычные (нормальные) сети.

И назвали это PPPoE. Пыпыпы-о-малое-Е. PPP over Ethernet. Суть этого кошмара: мы вместо капризного модема используем существующий второй уровень (родимые маки, коммутаторы и прочие хорошо работающие вещи), и используем его как обычный модем. Т.е. устройство, которое принимает/передаёт данные. Не доверяя ему, мы помещаем данные не сразу в ethernet-кадры, но в собственные кадры, которые в свою очередь, помещаются во внутрь ethernet-кадров.

В замен мы получаем геморрой, возможность шифровать трафик на канальном уровне (ppp позволяет это) и (главное, ради чего ppp прикручивали к ethernet'у) - возможность спросить (передать) логин/пароль.

Так что в случае использования PPPoE работа выглядит так: компьютер, используя Ethernet, ищет сервер PPPoE в канальном сегменте. Находит его. Пытается установить соединение, в ходе соединения говорит логин/пароль, устанавливает соединение. Теперь, у нас вместо нормального ethernet есть ненормальный ppp, с которым всё-таки можно возлежать как с канальным протоколом (чтобы там насчёт этого не говорила Библия).

Обратите внимание: так же, как WiFi не совместим на физическом уровне с Ethernet, так же и PPP не совместим с Ethernet'ом. Он его может использовать - но не может сосуществовать (просто потому, что не использует адресацию Ethernet'а).

Подобное засовывание одного в другое, минуя иерархию уровней (например, засовывание протокола в качестве содержимого равного ему по уровню протокола, или даже старшего) называется инкапсуляцией. На самом деле обычное иерархическое использование протоколов (PDU третьего помещаются как полезная нагрузка второго, PDU второго - полезная нагрузка первого) тоже инкапсуляция. Но поскольку данный процесс естественен и дозволен Библией, Кораном и Торой, то его обычно не называют инкапсуляцией.

Комментарии Комментарии (0)   Теги ,
Google BookmarksDiggRedditdel.icio.usMa.gnoliaTechnoratiSlashdotYahoo My WebNews2.ruВаау!БобрДобр.ruMemori.ruМоёМесто.ruMister WongSEOmarksЗакладки I.UARUmarkzЯндекс.ЗакладкиBPoster.net




 Комментарии (0)

Комментарии RSS


 Добавить комментарий

 Имя
 Email
 Сайт


 Последние записи  amarao_san


Еще →