Читать книгу: «Создание и обслуживание сетей в Windows 7», страница 3

Шрифт:

Сетевой уровень

Сетевой уровень (Network Layer) – один из важнейших уровней модели взаимодействия открытых систем. Поскольку для построения сети могут использоваться различные технологии, а то и вовсе сеть может состоять из нескольких сегментов с абсолютно разными сетевыми топологиями, чтобы «подружить» эти сегменты, требуется специальный механизм. В качестве такого механизма и выступает сетевой уровень.

Кроме определения физических адресов всех участников сети, данный уровень отвечает за нахождение кратчайших путей доставки данных, то есть умеет выполнять маршрутизацию пакетов. При этом постоянно отслеживается состояние сети и определяются новые маршруты, если возникают «заторы» на пути следования данных. Благодаря маршрутизации данные всегда доставляются с максимальной скоростью.

Сетевой уровень для доставки данных между разными сетевыми сегментами использует особую адресацию. Так, вместо MАC-адресов применяется пара чисел – номер сети и номер компьютера в этой сети. Использование нумерации позволяет составить точную карту сети независимо от топологии сегментов и определить альтернативные пути передачи данных.

На практике функции сетевого уровня выполняет маршрутизатор.

Транспортный уровень

Транспортный уровень (Transport Layer) служит для организации гарантированной доставки данных, для чего используется уже подготовленный канал связи. При этом отслеживается правильная последовательность передачи и приема пакетов, восстанавливаются потерянные или отсеиваются дублирующие. При необходимости данные фрагментируются (разбиваются на более мелкие пакеты) или дефрагментируются (объединяются в большой пакет), что повышает надежность скорость доставки данных.

На транспортном уровне предусмотрено пять классов сервиса с различными уровнями надежности. Они различаются скоростью, возможностями восстановления данных и т. п. Например, некоторые классы работают без предварительной установки связи и не гарантируют доставку пакетов в правильной их последовательности. В этом случае за выбор маршрута отвечают промежуточные устройства, которые попадаются на пути следования данных. Классы с установкой связи начинают свою работу с установки маршрута и только после того, как маршрут будет определен, начинают последовательную передачу данных.

Благодаря такому подходу всегда можно найти компромисс между скоростью и качеством доставки данных.

Сеансовый уровень

Сеансовый уровень (Session Layer) используется для создания и управления сеансом связи на время, необходимое для передачи данных. Время сеанса зависит лишь от объема информации, которая должна быть передана. Поскольку этот объем может быть существенным, используются разные механизмы, позволяющие контролировать данный процесс.

Для управления сеансом применяется маркер, обладатель которого гарантирует себе право на связь. Кроме того, используются служебные сообщения, с помощью которых, например, стороны могут договариваться о способе передачи данных или сообщать о завершении передачи данных и освобождении маркера.

Чтобы передача данных была успешной, создаются специальные контрольные точки, которые позволяют начать повторную передачу данных практически с того места, на котором произошел непредвиденный обрыв связи. В данном случае работают также механизмы синхронизации данных, определяются права на передачу данных, поддерживается связь в периоды неактивности и т. п.

Уровень представления данных

Уровень представления данных, или представительский уровень (Representation Layer), является своего рода проходным уровнем, основная задача которого – кодирование и декодирование информации в представление, понятное вышестоящему и нижестоящему уровню. С его помощью обеспечивается совместимость компьютерных систем, использующих разные способы представления данных.

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

Прикладной уровень

Прикладной уровень (Application Layer) – последний «бастион» между пользователем и сетью. Он поддерживает связь пользовательских приложений, то есть программ, с сетевыми сервисами и службами на всех уровнях модели ISO/OSI, обеспечивает передачу служебной информации, синхронизирует взаимодействие прикладных процессов и т. д.

Глава 6
Протоколы передачи данных

Понятие протокола

В предыдущей главе мы познакомились с эталонной моделью, описывающей принцип и правила подготовки, приема и передачи данных через любой канал связи. Каждый из ее семи уровней для выполнения своих функций в подготовке или обработке данных использует стандартные процедуры межуровневого обмена информацией и протоколы передачи данных. Поэтому получается, что модель ISO/OSI является теоретической основой функционирования сети, а сетевые протоколы – это то, что превращает теорию в практику.

Протокол передачи данных – это набор правил и соглашений, которые описывают способ передачи данных между объектами в сети.

Для обслуживания модели взаимодействия открытых систем используется достаточно большое количество сетевых протоколов. Многие из них специфичны и часто выполняют только одно конкретное действие, но делают это быстро и, самое главное, правильно. Существуют также более продвинутые и функциональные протоколы, которые могут совершать определенные действия, выполняя работу сразу нескольких уровней модели. Есть даже целые семейства (стеки) протоколов, которые являются составной частью протоколов с общим названием, например стеки протоколов TCP/IP или IPX/SPX.

ПРИМЕЧАНИЕ

Модель ISO/OSI разрабатывалась тогда, когда уже были разработаны многие протоколы, в частности TCP/IP. Ее главной задачей была стандартизация работы сетей. Однако, когда модель была принята окончательно, оказалось, что она имеет много недостатков. В частности, самым слабым звеном модели стал транспортный уровень. По этой причине существует достаточно много протоколов, которые выполняют работу сразу несколькихуровней, что противоречит самой модели открытых систем.

Различают низкоуровневые и высокоуровневые протоколы.

Низкоуровневые работают на самых нижних уровнях модели ISO/OSI и, как правило, имеют аппаратную реализацию, что позволяет использовать их в таких сетевых устройствах, как концентраторы, мосты, коммутаторы и т. д.

Высокоуровневые протоколы работают на верхних уровнях модели ISO/OSI и обычно реализуются программным путем. Это позволяет создавать любое количество протоколов разного применения, делая их настолько гибкими, как того требует современная ситуация.

В табл. 6.1 приведены названия некоторых популярных протоколов и их положение в модели взаимодействия открытых систем.

Таблица 6.1. Популярные протоколы модели ISO/OSI

Основные протоколы

Как вы уже могли заметить, количество протоколов, обслуживающих модель взаимодействия открытых систем, достаточно велико. Принцип работы части этих протоколов, особенно низкоуровневых, не представляет особого интереса. Но принцип работы и возможности некоторых протоколов, с работой которых приходится сталкиваться каждый день (таких как TCP/IP, UDP, POP3 и т. д.), все же стоит знать.

Стеки протоколов

Выше уже упоминалось, что за организацию работы всех уровней модели ISO/OSI часто отвечают стеки протоколов. Плюсом их использования является то, что все протоколы, входящие в стек, разработаны одним производителем, а значит, они способны работать максимально быстро и эффективно.

За время существования сетей было разработано несколько таких стеков протоколов, среди которых наиболее популярными являются TCP/IP, IPX/SPX, NetBIOS/SMB, Novell NetWare, DECnet и др.

В состав стеков включены протоколы, работающие на разных уровнях модели ISO/OSI, однако обычно выделяют только три типа протоколов: транспортный, сетевой и прикладной.

Преимущество использования стеков протоколов заключается в том, что протоколы, работающие на нижних уровнях, применяют стандартные и давно отлаженные сетевые протоколы, такие как Ethernet, FDDI и т. д. Эти протоколы аппаратно реализованы, поэтому возможно использовать одно и то же оборудование для разных типов сетей и тем самым достигать их совместимости на аппаратном уровне. Что касается высокоуровневых протоколов, то каждый из стеков имеет свои преимущества и недостатки. Часто случается и так, что нет жесткой привязки «один протокол – один уровень», то есть один протокол может работать сразу на двух-трех уровнях.

Привязка

Важным моментом в функционировании сетевого оборудования, в частности сетевого адаптера, является привязка протоколов. На практике она позволяет использовать разные стеки протоколов при обслуживании одного сетевого адаптера. Например, можно одновременно использовать стеки TCP/IP и IPX/SPX: если при попытке установления связи с адресатом с помощью первого стека произошла ошибка, то автоматически происходит переключение на протокол из следующего стека. В этом случае важна очередность привязки, поскольку она влияет на использование того или иного протокола из разных стеков.

Вне зависимости от того, какое количество сетевых адаптеров установлено в компьютере, привязка может осуществляться как по принципу «один к нескольким», так и по принципу «несколько к одному», то есть один стек протоколов может обслуживать сразу несколько сетевых адаптеров или несколько стеков – работу одного адаптера.

TCP/IP

Стек протоколов TCP/IP (Transmission Control Protocol/Internet Protocol) на сегодня является наиболее распространенным и универсальным. Он работает в локальных сетях любых масштабов. Кроме того, это единственный из протоколов, который позволяет работать в глобальной сети Интернет.

Протокол был создан в далеких 70-х годах прошлого века управлением Министерства обороны США. Именно с его подачи началась разработка универсального протокола, который позволил бы соединить любые два компьютера, как бы далеко друг от друга они ни находились. Конечно, они преследовали собственную цель – обеспечить постоянную связь с центром управления, даже если все вокруг будет разрушено в результате военных действий. Так была образована глобальная сеть ARPAnet, которую министерство активно использовало в своих целях.

Толчком к дальнейшему усовершенствованию и широкому распространению стека TCP/IP стал тот факт, что его поддержка была реализована в компьютерах с операционной системой UNIX. В результате популярность TCP/IP возросла.

В данный стек входит достаточно много протоколов, работающих на различных уровнях, но свое название он получил благодаря двум из них – TCP и IP.

TCP (Transmission Control Protocol) – транспортный протокол, предназначенный для управлением передачей данных в сетях, использующих стек TCP/IP. IP (Internet Protocol) – протокол сетевого уровня, предназначенный для доставки данных в составной сети с использованием одного из транспортных протоколов, например TCP или UDP.

Нижний уровень стека TCP/IP использует стандартные протоколы передачи данных, что делает возможным его применение в сетях с использованием любых сетевых технологий и на компьютерах с любой операционной системой.

Изначально протокол TCP/IP разрабатывался для применения в глобальных сетях, именно поэтому он является максимально гибким. В частности, благодаря способности «дробления» пакетов данные доходят до адресата вне зависимости от качества канала связи. Кроме того, благодаря наличию IP-протокола становится возможной передача данных между сегментами сети с разной топологией и способом передачи данных.

Недостатком TCP/IP-протокола является сложность администрирования сети. Для нормального функционирования сети требуется наличие дополнительных серверов, например DNS, DHCP и т. д., поддержание работы которых и занимает большую часть времени системного администратора. Тем не менее, как говорится, результат налицо.

IPX/SPX

Стек протоколов IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) является разработкой и собственностью компании Novell. Он был разработан для нужд операционной системы Novell NetWare, которая еще недавно занимала одну из лидирующих позиций среди серверных операционных систем.

Протоколы IPX и SPX работают на сетевом и транспортном уровнях модели ISO/OSI соответственно, поэтому отлично дополняют друг друга. Протокол IPX может передавать данные с помощью датаграмм, используя для этого информацию о маршрутизации в сети. Однако для того, чтобы передать данные по найденному маршруту, необходимо сначала установить соединение между отправителем и получателем. Этим и занимается протокол SPX или любой другой транспортный протокол, работающий в паре с IPX.

К сожалению, стек протоколов IPX/SPX изначально ориентирован на обслуживание сетей с небольшим количеством компьютеров, поэтому его использование в больших сетях, особенно на низкоскоростных линиях связи, крайне неэффективно.

NetBIOS/SMB

Достаточно популярный стек протоколов, разработкой которого занимались компании IBM и Microsoft соответственно, ориентированный на использование в продуктах этих компаний. Как и у TCP/IP, на физическом и канальном уровне стека NetBIOS/SMB работают стандартные протоколы, такие как Ethernet, Token Ring и др., что делает возможным его использование в паре с любым активным сетевым оборудованием. На верхних же уровнях работают протоколы NetBIOS (Network Basic Input/Output System) и SMB (Server Message Block).

Протокол NetBIOS был разработан в середине 80-х годов прошлого века, но вскоре был заменен на более функциональный протокол NetBEUI (NetBIOS Extended User Interface), позволяющий организовать очень эффективный обмен информацией в сетях, состоящих не более чем из 200 компьютеров.

Для обмена данными между компьютерами используются логические имена, присваиваемые компьютерам динамически при их подключении к сети. При этом таблица имен распространяется на каждый компьютер сети. Поддерживается также работа с групповыми именами, что позволяет передавать данные сразу нескольким компьютерам.

Главные плюсы протокола NetBEUI – скорость работы и очень скромные требования к ресурсам. Если требуется организовать быстрый обмен данными в небольшой сети, состоящей из одного сегмента, – лучшего протокола не найти. Кроме того, для доставки сообщений соединение не обязательно должно быть установлено: в случае отсутствия соединения протокол использует датаграммный метод, когда сообщение снабжается адресом получателя и отправителя и «пускается в путь», переходя от одного компьютера к другому.

Однако NetBEUI обладает и существенным недостатком: он полностью лишен понятия о маршрутизации пакетов, поэтому его использование в сложных составных сетях не имеет смысла.

Что касается протокола SMB (Server Message Block), то с его помощью организуется работа сети на трех высших уровнях – сеансовом, уровне представления и прикладном уровне. Именно при его использовании становится возможным доступ к файлам, принтерам и другим ресурсам сети. Данный протокол несколько раз совершенствовался (вышло три его версии), что позволило применять его даже в таких современных операционных системах, как Microsoft Windows Vista и Windows 7. Кроме того, протокол SMB универсален и может работать в паре практически с любым транспортным протоколом, например TCP и SPX.

HTTP

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

Протокол HTTP (HyperText Transfer Protocol) разрабатывался специально для получения и передачи данных по Интернету. Он работает по технологии «клиент – сервер», которая подразумевает, что есть клиенты, запрашивающие информацию, и есть сервер, который эти запросы обрабатывает и отсылает ответ. Примером работы данного протокола является просмотр веб-страницы в браузере: в этом случае браузер выполняет роль клиента, а компьютер, на котором находится вебстраница, – роль сервера.

HTTP работает на уровне приложений. Это означает, что данный протокол должен пользоваться услугами транспортного протокола, в качестве которого по умолчанию выступает протокол TCP.

Первая версия протокола HTTP была разработана еще в начале 90-х годов прошлого века и на то время полностью удовлетворяла пользователей своими возможностями. Но со временем, когда в Интернет пришла графика и динамика, возможностей протокола перестало хватать и он постепенно начал изменяться в лучшую сторону.

В своей работе протокол использует понятие URI (Uniform Resource Identifier) – уникального идентификатора ресурса, в качестве которого обычно выступает адрес веб-страницы, файла или любого другого логического объекта. При этом URI поддерживает работу с параметрами, что позволяет расширять функциональность протокола. Так, используя параметры, можно указать, в каком формате и кодировке вы хотите получить ответ от сервера. Это в свою очередь позволяет передавать с помощью HTTP не только текстовые документы, но и любые двоичные данные.

Основным недостатком протокола HTTP является избыточный объем текстовой информации, необходимой для того, чтобы клиент мог правильно отобразить полученный от сервера ответ. При большом объеме содержимого веб-страницы это может создавать излишне большой трафик, что уменьшает скорость отображения полезного содержимого. Кроме того, протокол полностью лишен каких-либо механизмов сохранения состояния, что делает невозможной навигацию по веб-страницам посредством одного лишь HTTP-протокола. Для устранения этого неудобства можно использовать вместе с HTTP сторонние протоколы или же работать с браузером, имеющим продвинутые методы обработки HTTP-запросов.

Бесплатно
59 ₽

Начислим

+2

Покупайте книги и получайте бонусы в Литрес, Читай-городе и Буквоеде.

Участвовать в бонусной программе

Жанры и теги

Возрастное ограничение:
0+
Дата выхода на Литрес:
24 февраля 2011
Дата написания:
2010
Объем:
288 стр. 131 иллюстрация
ISBN:
978-5-49807-499-3
Правообладатель:
Питер (Айлиб)
Формат скачивания:
Текст
Средний рейтинг 4,7 на основе 265 оценок
По подписке
Текст
Средний рейтинг 4,2 на основе 40 оценок
По подписке
Текст, доступен аудиоформат
Средний рейтинг 3,8 на основе 11 оценок
По подписке
Текст, доступен аудиоформат
Средний рейтинг 4,4 на основе 153 оценок
По подписке
Текст, доступен аудиоформат
Средний рейтинг 4,9 на основе 46 оценок
По подписке
Текст
Средний рейтинг 5 на основе 5 оценок
По подписке
Текст
Средний рейтинг 4,6 на основе 12 оценок
Текст
Средний рейтинг 4 на основе 139 оценок
По подписке
Текст
Средний рейтинг 4,4 на основе 7 оценок
По подписке
Текст
Средний рейтинг 4,5 на основе 2 оценок
По подписке
Текст
Средний рейтинг 3,7 на основе 3 оценок
По подписке
Текст
Средний рейтинг 3,8 на основе 6 оценок
По подписке
Текст
Средний рейтинг 3,5 на основе 6 оценок
По подписке
Текст
Средний рейтинг 4,8 на основе 4 оценок
По подписке
Текст PDF
Средний рейтинг 4,5 на основе 4 оценок
По подписке
Текст PDF
Средний рейтинг 0 на основе 0 оценок
По подписке
Текст
Средний рейтинг 4,9 на основе 8 оценок
По подписке
Текст
Средний рейтинг 3,3 на основе 3 оценок
По подписке
Текст
Средний рейтинг 0 на основе 0 оценок
По подписке