Обеспечивает передачу данных дейтаграммным способом протокол

Обновлено: 17.05.2024

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

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

3. И, наконец, еще одним замечательным свойством сетей Ethernet является их хорошая расширяемость, то есть возможность подключения новых узлов.

Другие базовые сетевые технологии, такие как Token Ring и FDDI, хотя и обладают индивидуальными чертами, в то же время имеют много общего с Ethernet. В первую очередь, это применение регулярных фиксированных топологий ("иерархическая звезда" и "кольцо"), а также разделяемых сред передачи данных. Существенные отличия одной технологии от другой связаны с особенностями используемого метода доступа к разделяемой среде. Так, отличия технологии Ethernet от технологии Token Ring во многом определяются спецификой заложенных в них методов разделения среды — случайного алгоритма доступа в Ethernet и метода доступа путем передачи маркера в Token Ring.

В сетях с коммутацией пакетов сегодня применяется два класса механизмов передачи пакетов:

ü дейтаграммная передача;

ü виртуальные каналы.

Примерами сетей, реализующих дейтаграммный механизм передачи, являются сети Ethernet, IP и IPX. С помощью виртуальных каналов передают данные сети X.25, frame relay и ATM. Сначала мы рассмотрим базовые принципы дейтаграммного подхода.

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

Выбор следующего узла — например, коммутатора Ethernet или маршрутизатора IP/IPX — происходит только на основании адреса узла назначения, содержащегося в заголовке пакета. Решение о том, какому узлу передать пришедший пакет, принимается на основе таблицы, содержащей набор адресов назначения и адресную информацию, однозначно определяющую следующий (транзитный или конечный) узел. Такие таблицы имеют разные названия — например, для сетей Ethernet они обычно называются таблицей продвижения (forwarding table), а для сетевых протоколов, таких как IP и IPX, — таблицами маршрутизации (routing table). Далее для простоты будем пользоваться термином "таблица маршрутизации" в качестве обобщенного названия такого рода таблиц, используемых для дейтаграммной передачи на основании только адреса назначения конечного узла.

В таблице маршрутизации для одного и того же адреса назначения может содержаться несколько записей, указывающих, соответственно, на различные адреса следующего маршрутизатора. Такой подход используется для повышения производительности и надежности сети. В примере на рис. 7.4 пакеты, поступающие в маршрутизатор R1 для узла назначения с адресом N2, А2, в целях баланса нагрузки распределяются между двумя следующими маршрутизаторами — R2 и R3, что снижает нагрузку на каждый из них, а значит, уменьшает очереди и ускоряет доставку. Некоторая "размытость" путей следования пакетов с одним и тем же адресом назначения через сеть является прямым следствием принципа независимой обработки каждого пакета, присущего дейтаграммным протоколам. Пакеты, следующие по одному и тому же адресу назначения, могут добираться до него разными путями и вследствие изменения состояния сети, например отказа промежуточных маршрутизаторов.


Рис. 7.4. Дейтаграммный принцип передачи пакетов.

Такая особенность дейтаграммного механизма как размытость путей следования трафика через сеть также в некоторых случаях является недостатком. Например, если пакетам определенной сессии между двумя конечными узлами сети необходимо обеспечить заданное качество обслуживания. Современные методы поддержки QoS работают эффективней, когда трафик, которому нужно обеспечить гарантии обслуживания, всегда проходит через одни и те же промежуточные узлы.


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

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

Блок данных транспортного уровня называется сегментом (segment), либо дейтаграммой

Блок данных сетевого уровня называется пакетом (packet). Блок данных канального уровня называется кадром (frame). Единица данных физического уровня – бит (bit).

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

Как же обстоят дела на самом деле? В действительности, для существующих сетевых технологий существует только один стандартизованный интерфейс. Это интерфейс между сетевым и канальным уровнями. И даже такая, казалось бы, малость приносит огромную пользу. Ведь что такое интерфейс между сетевым и канальным уровнями? Это интерфейс между программной и аппаратной частью системы! Следовательно, стандартизация этого интерфейса

привела к возможности независимой разработки оборудования и программного обеспечения, к независимости разработчиков ПО от производителей оборудования и наоборот.

Теперь перейдем к рассмотрению протоколов.

Ясно, что на каждом уровне функционирует свой протокол. Следовательно, для обеспечения передачи информации, эти протоколы должны быть соответствующим образом согласованы друг с другом, то есть, нужно рассматривать не каждый протокол в отдельности, а некий набор взаимодействующих протоколов. Для таких наборов существует свое определение – стек протоколов. (CCNA1 2.3.x.x)

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

В качестве примеров стеков протоколов можно привести стеки TCP/IP, IPX/SPX, NetBIOS/SMB. Примерами базовых сетевых технологий могут являться технологии Ethernet, PPP, Frame Relay, ATM и многие другие. В этом курсе мы с вами займемся рассмотрением базовых сетевых технологий локальных сетей, но предварительно обзорно рассмотрим некоторые популярные стеки протоколов.

Начнем со стека протоколов TCP/IP. (CCNA1 2.4.3.x, 2.4.8.x)

коммутацией пакетов, обеспечивающей обмен данными между разнородными вычислительными системами, установленными в исследовательских институтах. Для разработки обеспечения связи между неоднородными сетями DARPA финансировало исследования Стэндфордского университета, а так же компании Bolt, Beranek and Newman (BBN). Результатом этих исследований стал набор протоколов Internet.

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

Значительный вклад в развитие стека TCP/IP внес университет Беркли, реализовав протоколы стека в своей версии ОС UNIX. Широкое распространение ОС UNIX привело и к широкому распространению протокола IP и других протоколов стека. На этом же стеке работает глобальная сеть Internet.

Чем же можно объяснить широкое распространение и лидирующую роль стека TCP/IP?

В первую очередь, это объясняется следующими его свойствами:

9 это наиболее завершенный стандартный стек сетевых протоколов, имеющий многолетнюю

9 этот стек представляет собой набор открытых стандартов, которые могут быть свободно

использованы любым разработчиком;

9 практически все сети передают основную часть своего трафика с помощью протокола

TCP/IP, кроме того, это метод получения доступа к самой большой глобальной сети – Internet, то есть, этот стек является стандартом де-факто;

9 все современные операционные системы поддерживают стек TCP/IP.

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


Протоколы TCP/IP делятся на 4 уровня.

Самый нижний, четвертый уровень, условно соответствует физическому и канальному уровням модели OSI. Этот уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные стандарты физического и канального уровня, другими словами – любую Базовую Сетевую Технологию. Обычно при появлении новой технологии локальных или глобальных сетей она быстро включается в стек TCP/IP за счет разработки соответствующего RFC, определяющего метод инкапсуляции пакетов IP в ее кадры. Существует также мнение, что этот уровень можно ассоциировать с интерфейсом между вторым и третьим уровнем модели OSI, то есть, с единственным стандартизованным интерфейсом. На самом деле, в зависимости от точки зрения, оба взгляда можно считать верными, поскольку вопрос соответствия уровней – в значительной степени терминологический.

доставку пакетов до узла назначения, но старается это сделать (этот метод доставки называется

Далее давайте составим графическое представление различных версий проекций уровней модели TCP/IP на уровни модели OSI.




Также может существовать модификация проекции, при которой уровень сетевых интерфейсов модели TCP/IP будет соответствовать интерфейсу между вторым и третьим уровнями модели OSI:

Теперь рассмотрим следующий стек протоколов, который в свое время занимал доминирующее положение среди остальных. Это стек IPX/SPX.

Этот стек является оригинальным стеком протоколов фирмы Novell, который она разработала для своей сетевой операционной системы NetWare еще в начале 80-х годов. Протоколы Internetwork Packet Exchange (IPX) и Sequenced Packet Exchange (SPX), которые дали имя стеку, являются прямой адаптацией протоколов XNS фирмы Xerox, которые были распространены в гораздо меньше степени, чем IPX/SPX. В 80-е годы и в начале 90-х протоколы IPX/SPX лидировали по количеству установок. Это было обусловлено тем, что сама ОС Novell NetWare занимала лидирующее положение с долей установок в мировом масштабе превышавшей

80%. В связи с тем, что стек IPX/SPX являлся проприетарным (собственностью разработчика) его использование сторонними разработчиками было ограничено и от разработчиков требовалось приобретение лицензии. В это время на рынок вышел мощный конкурент – стек TCP/IP, который кроме открытости стандартов обладал еще рядом преимуществ, и популярность стека IPX/SPX пошла на убыль. В настоящее время этот стек практически не используется.

Семейство протоколов фирмы Novell и их соответствие модели OSI представлено на рисунке.


На верхнем уровне, соответствующем прикладному, представительному и сеансовому уровням OSI, работают протоколы NCP и SAP. Протокол NCP (NetWare Core Protocol) является протоколом взаимодействия сервера NetWare и оболочки рабочей станции.

C помощью этого протокола рабочая станция производит подключение к серверу, отображает каталоги сервера на локальные буквы дисководов, просматривает файловую систему сервера, копирует удаленные файлы, изменяет их атрибуты и т.п., а также осуществляет разделение сетевого принтера между рабочими станциями. SAP (Service Advertising Protocol) – протокол объявления о сервисе – дает возможность сетевым устройствам обмениваться информацией об имеющихся сетевых сервисах. Серверы и маршрутизаторы используют SAP для объявления о своих сервисных услугах и сетевых адресах. Протокол SAP позволяет сетевым устройствам постоянно корректировать данные о том, какие сервисные услуги имеются сейчас в сети. При старте серверы используют SAP для оповещения оставшейся части сети о своих услугах. Когда сервер завершает работу, то он использует SAP для того, чтобы известить сеть о прекращении действия своих услуг.

Особенности стека IPX/SPX обусловлены особенностями ОС NetWare, а именно ориентацией ее ранних версий (до 4.0) на работу в локальных сетях небольших размеров, состоящих из персональных компьютеров со скромными ресурсами. Поэтому Novell нужны были протоколы, на реализацию которых требовалось минимальное количество оперативной памяти (ограниченной в IBM-совместимых компьютерах под управлением MS-DOS 640 Кбайтами) и которые бы быстро работали на процессорах небольшой вычислительной мощности. В результате, ранние протоколы стека IPX/SPX хорошо работали в небольших локальных сетях, и значительно хуже – в глобальных сетях, так как слишком перегружали медленные связи широковещательными пакетами, которые интенсивно используются несколькими протоколами этого стека (например, для установления связи между клиентами и серверами). Этот недостаток стека также повлиял на его распространенность наряду с необходимостью получения лицензии на использование.

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

Стек NetBIOS/SMB появился в 1984 г., благодаря разработкам фирмы IBM, которая спустя три года после выпуска первого компьютера IBM PC, в целях расширения стандартных функций базовой системы ввода/вывода (BIOS) разработала программный интерфейс (API) NetBIOS – Network Basic Input/Output System. Это расширение применялось для взаимодействия между сетевыми ресурсами, но не предусматривало низкоуровневого протокола для передачи данных по сети. Такой протокол появился в 1985 г. и был объединен с NetBIOS в связке NetBEUI (NetBIOS Extended User Interface).

NetBEUI создавался в расчете на небольшие рабочие группы (до 255 узлов) и не имел функций маршрутизации.

Протокол SMB используется в операционных системах Windows. Он является проприетарным (закрытым) стандартом, и Microsoft предоставляет спецификации SMB только сертифицированным партнерам. SMB постоянно дорабатывается (обновления выходят с каждой новой версией Windows).

Стек NetBIOS/SMB и его проекцию на модель OSI можно изобразить так:


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

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

9 Управление сессиями. Создание и разрыв логического канала между рабочей станцией и сетевыми ресурсами файлового сервера.

9 Файловый доступ. Рабочая станция может обратиться к файл-серверу с запросами на

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

9 Сервис печати. Рабочая станция может ставить файлы в очередь для печати на сервере и

получать информацию об очереди печати.

Несмотря на коммерческий статус протокола SMB, существует свободно распространяемый программный пакет Samba, обеспечивающий ограниченную поддержку сервисов SMB для ОС Unix/Linux. Поскольку основными протоколами Unix-систем являются протоколы стека TPC/IP, то в Samba для совместимости применяется NetBIOS over TCP/IP.

Автора: © Виталий Бочаров, Владимир Недеркин, Александр Трофимов

Читайте также: