Протоколы канального уровня SLIP и PPP
На канальном уровне используются протоколы SLIP (Serial Link Internet Protocol - межсетевой протокол для последовательного канала) и PPP (Point-to-Point Protocol - протокол "точка-точка").
Протоколы канального уровня SLIP и PPP применяются как на коммутируемых линиях, так и на выделенных телефонных каналах. С их помощью к глобальной сети подключается большинство индивидуальных пользователей, а также небольшие локальные сети. Подобные линии связи могут обеспечивать скорость передачи данных до 115200 бит/с.
Serial Line Internet Protocol (SLIP)
Согласно RFC-1055 впервые SLIP был включен в качестве средства доступа к IP-сети в пакет фирмы 3COM-UNET. В 1984 г. Рик Адамс реализовал SLIP для BSD 4.2, и таким образом SLIP стал достоянием Internet в целом. Обычно этот протокол применяют как на выделенных, так и на коммутируемых линиях связи со скоростью передачи от 1200 до 19200 бит/с.
Такие операционные системы, как FreeBSD, Linux, NetBSD, которые можно свободно скопировать и установить на своем персональном компьютере, или HP-UX, которая поставляется вместе с рабочими станциями Hewlett-Packard, имеют в своем арсенале программные средства типа sliplogin (FreeBSD) или slp (HP-UX), обеспечивающие работу компьютера в качестве SLIP-сервера для удаленных пользователей, подключающихся к IP-сети по телефону. Хотя в стандарте SLIP нет определения понятия "SLIP-сервер", обычно используют термины "SLIP-клиент" для компьютера, инициирующего физическое соединение, и "SLIP-сервер" для машины, постоянно включенной в IP-сеть.
В рамках протокола SLIP осуществляется фрагментация IP-пакетов, при этом SLIP-пакет должен начинаться символом ESC (восьмеричное 333 или десятичное 219) и заканчиваться символом END (восьмеричное 300 или десятичное 192). Стандарт не определяет размер SLIP-пакета, поэтому любой интерфейс имеет специальное поле, в котором пользователь должен указать эту длину. SLIP-модуль не анализирует поток данных и не выделяет какую-либо информацию в этом потоке, а также не позволяет выполнять какие-либо действия, связанные с адресами, т.к. в структуре пакета не предусмотрены поле адреса и его специальная обработка. Компьютеры, взаимодействующие по SLIP, обязаны знать свои IP-адреса заранее. SLIP не предусматривает корректировку ошибок линии связи, и коррекция ошибок возлагается на протоколы транспортного уровня - TCP, UDP. В стандартное SLIP не предусмотрена компрессия данных, но существуют варианты протокола с такими возможностями.
Point to Point Protocol (PPP)
Согласно RFC-1661 данный протокол обеспечивает стандартный метод взаимодействия двух узлов сети. Предполагается, что обеспечивается двунаправленная одновременная передача данных. Как и в SLIP, данные разбиваются на пакеты, которые передаются от узла к узлу упорядоченно. В отличие от SLIP, PPP позволяет одновременно передавать по линии связи пакеты различных протоколов. Кроме того, PPP предполагает процесс автоконфигурации обеих взаимодействующих сторон. Собственно говоря, PPP состоит из трех частей: механизма инкапсуляции (encapsulation), протокола управления соединением (link control protocol) и семейства протоколов управления сетью (network control protocols).
Под датаграммой в PPP понимается информационная единица сетевого уровня (применительно к IP - IP-пакет). Под фреймом понимают информационную единицу канального уровня (согласно модели OSI). Для обеспечения быстрой обработки информации длина фрейма PPP должна быть кратна 32 битам. Фрейм состоит из заголовка и хвоста, между которыми содержаться данные. Датаграмма может быть инкапсулирована в один или несколько фреймов (Рис.2). Пакетом называют информационную единицу обмена между модулями сетевого и канального уровней. Обычно каждому пакету ставится в соответствие один фрейм, за исключением тех случаев когда канальный уровень требует большей фрагментации данных или, наоборот, объединяет пакеты для более эффективной передачи.
В поле "Протокол" указывается тип инкапсулированной датаграммы. Существуют специальные правила кодирования протоколов в этом поле (см. ISO 3309 и RFC-1661). В поле "Информация" записывается собственно пакет данных, а в поле "Хвост" добавляется заполнитель для выравнивания на 32-битовую границу. По умолчанию длина фрейма PPP устанавливается в 1500 байт, но в это число не входит длина поля "Протокол".
Рис. 2. PPP-фрейм
Протокол управления соединением предназначен для установки соглашения между узлами сети о параметрах инкапсуляции (размер фрейма и т.п.), кроме того, он позволяет проводить идентификацию узлов. Первой фазой установки соединения является проверка готовности физического уровня передачи данных. При этом такая проверка может осуществляться периодически, позволяя реализовать механизм автоматического восстановления физического соединения, как это бывает при работе через модем по коммутируемой линии. Если физическое соединение установлено, то узлы начинают обмен пакетами протокола управления соединением, настраивая параметры сессии. Любой пакет, отличный от пакета протокола управления соединением, не обрабатывается во время этого обмена. После установки параметров соединения возможен переход к идентификации. После всех этих действий происходит настройка параметров работы с протоколами межсетевого обмена (IP, IPX и т.п.). Для каждого из них используется свой протокол управления. Для завершения работы по протоколу PPP по сети передается пакет завершения работы протокола управления соединением.
Процедура конфигурации сетевых модулей операционной системы для работы по протоколу PPP более сложна, чем для протокола SLIP, однако возможности PPP-соединения гораздо более широкие. Например, при работе через модем модуль PPP сам восстанавливает соединение при потере несущей частоты. Кроме того, модуль PPP автоматически определяет параметры фреймов, в то время как при SLIP их надо задавать вручную.
Point-to-Point Tunneling Protocol (PPTP)
Протокол PPTP - туннельный протокол "точка-точка" - продвинул концепцию PPP на шаг вперед: этот протокол "заворачивает" в PPTP-обертку PPP-пакеты. С эксплуатационной точки зрения, разница между PPP и PPTP заключается только в следующем: чтобы создать PPP-канал, вы набираете номер телефона, а чтобы создать PPTP-канал, вы "набираете" IP-адрес.
Как и в случае с PPP, пакеты PPTP "заворачиваются", транспортируются на другой конец канала (в данном случае в систему, обозначенную IP-адресом, упомянутым в предыдущем абзаце), и "разворачиваются". в результате между дв4умя системами создается "частная виртуальная сеть", по которой передаются пакеты PPTP. Чтобы этот канал был действительно частным, PPTP поддерживает ряд возможностей защиты, вплоть до шифрования всех данных пакета.
Таким образом, с помощью протоколов PPP и SLIP можно установить глобально-сетевое соединение по коммутируемым линиям, ISDN, сетям X.25 и другим каналам. И PPP, и SLIP характеризуются относительной нечувствительностью к помехам в линии и задержкам приема пакетов.
Протокол PPP более гибок, чем SLIP. Принцип его работы заключается в "заворачивании" пакетов транспортных протоколов TCP, IPX или NBF в пакет особого формата и транспортировке завернутого таким образом пакета по каналу ГВС (глобальной вычислительной сети). На другом конце соединения пакет "разворачивается", и исходные пакеты передаются по локальной сети. После установления соединения все эти операции становятся полностью прозрачными для приложений - приложения видят абсолютно нормальные пакеты TCP, IPX и NBF (хотя эти пакеты могут прибывать несколько медленнее, чем по локальной сети).
SLIP менее гибок. Он представляет собой, по сути дела, расширение IP, предназначенное для работы по низкоскоростным каналам, поэтому и поддерживает только IP-сети. Кроме того, он менее устойчив к помехам в линии. Сервис RAS (Remote Access Services - служба удаленного доступа) операционной системы Windows NT поддерживает SLIP, главным образом, для совместимости с серверами ГВС, работающими на базе ОС UNIX.
PPTP обладает наибольшими функциональными возможностями по сравнению с SLIP и PPP, позволяя устанавливать частные виртуальные защищенные каналы связи.
Дата добавления: 2015-05-13; просмотров: 2194;