Тема 2. Протоколы и стеки протоколов

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

Существует достаточно много стеков протоколов, широко применяемых в сетях. Это и стеки, являющиеся международными и национальными стандартами, и фирменные стеки, получившие распространение благодаря распространенности оборудования той или иной фирмы. Примерами популярных стеков протоколов могут служить стек IPX/SPX фирмы Novell, стек TCP/IP, используемый в сети Internet и во многих сетях на основе операционной системы UNIX, стек OSI международной организации по стандартизации, стек DECnet корпорации Digital Equipment и некоторые другие.

Стеки протоколов разбиваются на три уровня:

- сетевые;

- транспортные;

- прикладные.

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

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

- DDP(Datagram Delivery Protocol – Протокол доставки дейтаграмм).Протокол передачи данных Apple, используемый в Apple Talk.

- IP(Internet Protocol – Протокол Internet). Протокол стека TCP/IP, обеспечивающий адресную информацию и информацию о маршрутизации.

- IPX(Internetwork Packet eXchange – Межсетевой обмен пакетами) в NWLink.Протокол Novel NetWare, используемый для маршрутизации и направления пакетов.

- NetBEUI(NetBIOS Extended User Interface – расширенный пользовательский интерфейс базовой сетевой системы ввода вывода).Разработанный совместно IBM и Microsoft, этот протокол обеспечивает транспортные услуги для NetBIOS.

Транспортные протоколы

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

- ATP(Apple Talk Protocol – Транзакционный протокол Apple Talk) иNBP(Name Binding Protocol – Протокол связывания имен). Сеансовый и транспортный протоколы Apple Talk.

- NetBIOS (Базовая сетевая система ввода вывода).NetBIOS Устанавливает соединение между компьютерами, а NetBEUI предоставляет услуги передачи данных для этого соединения.

- SPX(Sequenced Packet eXchange – Последовательный обмен пакетами) в NWLink.Протокол Novel NetWare, используемый для обеспечения доставки данных.

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

Прикладные протоколы

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

- AFP(Apple Talk File Protocol – Файловый протокол Apple Talk).Протокол удаленного управления файлами Macintosh.

- FTP(File Transfer Protocol – Протокол передачи файлов). Протокол стека TCP/IP,используемый для обеспечения услуг по передачи файлов.

- NCP(NetWare Core Protocol – Базовый протокол NetWare). Оболочка и редиректоры клиента Novel NetWare.

- SNMP(Simple Network Management Protocol – Простой протокол управления сетью).Протокол стека TCP/IP, используемый дляуправления и наблюдения за сетевыми устройствами.

- HTTP (Hyper Text Transfer Protocol) – протокол передачи гипертекста и другие протоколы.

Тема 3. Стек OSI

Следует различать стек протоколов OSI и модель OSI рис.3.1. Стек OSI – это набор вполне конкретных спецификаций протоколов, образующих согласованный стек протоколов. Этот стек протоколов поддерживает правительство США в своей программе GOSIP. Стек OSI в отличие от других стандартных стеков полностью соответствует модели взаимодействия OSI и включает спецификации для всех семи уровней модели взаимодействия открытых систем

Рис. 3.1 Стек OSI

На физическом и канальном уровнях стек OSI поддерживает спецификации Ethernet, Token Ring, FDDI, а также протоколы LLC, X.25 и ISDN.

На сетевом уровне реализованы протоколы, как без установления соединений, так и с установлением соединений.

Транспортный протокол стека OSI скрывает различия между сетевыми сервисами с установлением соединения и без установления соединения, так что пользователи получают нужное качество обслуживания независимо от нижележащего сетевого уровня. Чтобы обеспечить это, транспортный уровень требует, чтобы пользователь задал нужное качество обслуживания. Определены 5 классов транспортного сервиса, от низшего класса 0 до высшего класса 4, которые отличаются степенью устойчивости к ошибкам и требованиями к восстановлению данных после ошибок.

Сервисы прикладного уровня включают передачу файлов, эмуляцию терминала, службу каталогов и почту. Из них наиболее перспективными являются служба каталогов (стандарт Х.500), электронная почта (Х.400), протокол виртуального терминала (VT), протокол передачи, доступа и управления файлами (FTAM), протокол пересылки и управления работами (JTM). В последнее время ISO сконцентрировала свои усилия именно на сервисах верхнего уровня.

Тема 4. Архитектура стека протоколов Microsoft TCP/IP

Набор многоуровневых протоколов, или как называют стек TCP/IP, предназначен для использования в различных вариантах сетевого окружения. Стек TCP/IP с точки зрения системной архитектуры соответствует эталонной модели OSI (Open Systems Interconnection – взаимодействие открытых систем) и позволяет обмениваться данными по сети приложениям и службам, работающим практически на любой платформе, включая Unix, Windows, Macintosh и другие.

Рис. 3.2 Соответствие семиуровневой модели OSI и четырехуровневой модели TCP/IP

Реализация TCP/IP фирмы Microsoft [1] соответствует четырехуровневой модели вместо семиуровневой модели, как показано на рис. 3.2. Модель TCP/IP включает большее число функций на один уровень, что приводит к уменьшению числа уровней. В модели используются следующие уровни:

- уровень Приложения модели TCP/IP соответствует уровням Приложения, Представления и Сеанса модели OSI;

- уровень Транспорта модели TCP/IP соответствует аналогичному уровню Транспорта модели OSI;

- межсетевой уровень модели TCP/IP выполняет те же функции, что и уровень Сети модели OSI;

- уровень сетевого интерфейса модели TCP/IP соответствует Канальному и Физическому уровням модели OSI.

Уровень Приложения

Через уровень Приложения модели TCP/IP приложения и службы получают доступ к сети. Доступ к протоколам TCP/IP осуществляется посредством двух программных интерфейсов (API – Application Programming Interface):

- Сокеты Windows;

- NetBIOS.

Интерфейс сокетов Windows, или как его называют WinSock, является сетевым программным интерфейсом, предназначенным для облегчения взаимодействия между различными TCP/IP – приложениями и семействами протоколов.

Интерфейс NetBIOS используется для связи между процессами (IPC – Interposes Communications) служб и приложений ОС Windows. NetBIOS выполняет три основных функции:

- определение имен NetBIOS;

- служба дейтаграмм NetBIOS;

- служба сеанса NetBIOS.

В таблице 3.1 приведено семейство протоколов TCP/IP.

Таблица 3.1

Название протокола Описание протокола
WinSock Сетевой программный интерфейс
NetBIOS Связь с приложениями ОС Windows
TDI Интерфейс транспортного драйвера (Transport Driver Interface) позволяет создавать компоненты сеансового уровня.
TCP Протокол управления передачей (Transmission Control Protocol)
UDP Протокол пользовательских дейтаграмм (User Datagram Protocol)
ARP Протокол разрешения адресов (Address Resolution Protocol)
RARP Протокол обратного разрешения адресов (Reverse Address Resolution Protocol)
IP Протокол Internet(Internet Protocol)
ICMP Протокол управляющих сообщений Internet (Internet Control Message Protocol)
IGMP Протокол управления группами Интернета (Internet Group Management Protocol),
NDIS Интерфейс взаимодействия между драйверами транспортных протоколов
FTP Протокол пересылки файлов (File Transfer Protocol)
TFTP Простой протокол пересылки файлов (Trivial File Transfer Protocol)

Уровень транспорта

Уровень транспорта TCP/IP отвечает за установления и поддержания соединения между двумя узлами. Основные функции уровня:

- подтверждение получения информации4

- управление потоком данных;

- упорядочение и ретрансляция пакетов.

В зависимости от типа службы могут быть использованы два протокола:

- TCP (Transmission Control Protocol – протокол управления передачей);

- UDP (User Datagram Protocol – пользовательский протокол дейтаграмм).

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