Протоколы сетевого взаимодействия
Модель OSI представляет собой стандартизированный каркас и общие рекомендации, требования же к конкретным компонентам сетевого программного обеспечения задаются протоколами.
Протокол является стандартом в области сетевого программного обеспечения и определяет совокупность функциональных и эксплуатационных требований к какому-либо его компоненту, которых придерживаются производи гели этого компонента. Требования протокола могут отличаться от требований эталонной модели OSI.
Международный институт инженеров по электротехнике и радиоэлектронике (IEEE) разработал стандарты дня протоколов передачи данных в локальных сетях. Эти стандарты описывают методы доступа к сетевым каналам данных и называются IEEE 802.
Протоколы сетевого взаимодействия можно классифицировать по степени близости к физической среде передачи данных:
§ протоколы нижнего уровня, распространяемые на канальный и физический уровни модели OSI;
§ протоколы среднего уровня, распространяемые на сетевой, транспортный и сеансовый уровни OSI;
§ протоколы верхнего уровня, распространяемые на уровень представления и прикладной уровень модели OSI.
Каждая из реализаций протоколов вышестоящих уровней использует в процессе своей работы реализации протоколов нижестоящих уровней.
Протоколы нижнего уровня OSIсоответствуют уровню сетевых аппаратных средств и нижнему уровню сетевого программного обеспечения. Среди наиболее распространенных стандартов данного уровня можно выделить:
§ стандарт NDIS (Network Driver Interface Specification спецификация интерфейса сетевых драйверов), разработанный совместно фирмами Microsoft и 3Com;
§ стандарт ODI (Open DataLink Interface - открытый интерфейс связи), разработанный совместно фирмами Novell и Apple Computer.
Данные стандарты позволяют реализовывать протоколы среднего уровня независимо от сетевых аппаратных средств и обеспечиваю! совместное функционирование разнотипных протоколов среднего уровня. Универсальный интерфейс канального уровня представлен на рис. 7.5. Производители сетевых аппаратных средств, как правило, разрабатывают драйверы, удовлетворяющие обоим стандартам.
Драйвер сетевого адаптера является последним программным компонентом перед физическим уровнем модели OSI и называется подуровнем управления доступом к среде MAC (Media Access Control):
Рис. 7.5. Универсальный интерфейс канального уровня
- подуровень МАС ориентирован на выполнение таких функций, как непосредственное управление доступом к передающей среде, проверка пакетов сообщений на наличие ошибок;
- подуровень LLC (Logical Linc Control) считается независимым от особенностей физической передающей среды и используемых методов доступа к каналам передачи данных. Стандарты по разработке интерфейсов для связи реализаций протоколов среднего уровня модели OSI с драйверами сетевых аппаратных средств как раз относятся прежде всего к подуровню LLC.
Протоколы среднего уровня распространяются на сетевой, транспортный и сеансовый уровни эталонной модели. По типу межкомпьютерного обмена эти протоколы можно классифицировать на сеансовые (протоколы виртуального соединения) и дейтаграммные протоколы.
Сеансовые протоколы определяют организацию передачи информации между компьютерами по так называемому виртуальному каналу в три этапа: установление виртуального канала (установка сеанса); реализация непосредственного обмена информацией; уничтожение виртуального канала (разъединение).
В сеансовых протоколах порядок следования пакетов при передаче соответствует их исходному порядку в сообщении, а передача осуществляется с подтверждением доставки, а в случае потери отправленных пакетов они передаются повторно.
При использовании дейтаграммных протоколов пакеты сообщений передаются так называемыми дейтаграммами независимо друг от друга, поэтому порядок доставки пакетов каждого сообщения может не соответствовать их исходному порядку в сообщении. При этом пакеты сообщений передаются без подтверждения.
Таким образом, с точки зрения достоверности, сеансовые протоколы являются более предпочтительными, зато скорость передачи при использовании дейтаграммных протоколов гораздо выше.
Любой протокол среднего уровня предусматривает такие этапы реализации межкомпьютерного обмена, как инициализация связи, непосредственный информационный обмен, завершение обмена.
Наиболее часто используемыми наборами протоколов среднего уровня являются:
- набор протоколов SPX/IPX, используемый в локальных сетях, функционирующих под управлением сетевой операционной системы NetWare;
- протоколы NetBIOS и NetBEUI, поддерживаемые большинством сетевых операционных систем и используемых только в локальных сетях;
- протоколы ТСР/IР, являющиеся стандартом для глобальной сети Internet, используемые в локальных сетях и поддерживаемые большинством сетевых операционных систем.
Набор протоколов 8РХ/1РХ используется в сетевой операционной системе Netware фирмы Novell.
Протокол IPX (Internetwork Packet Exchange — межсетевой обмен пакетами) является дейтаграммным протоколом и соответствует сетевому уровню эталонной модели. Применяется для выполнения функций адресации при обмене пакетами сообщений.
Протокол SPX (Swquenced Packet Exchange — последовательный обмен пакетами) является сеансовым протоколом и соответствует транспортному и сеансовому уровням эталонной модели. По степени близости к самому низкому уровню эталонной модели протокол SPX находится над протоколом IPX и использует этот протокол.
Драйвер, реализующий протокол SPX, использует в процессе своей работы драйвер, реализующий протокол IРХ. Протокол IРХ является более быстродействующим, чем протокол SРХ. Важным недостатком протоколов SРХ и IРХ является несовместимость с протоколами ТСР/IР, используемыми в глобальной сети Internet.
Для подключения локальной сети Netware к Internet используется один из способов:
- непосредственная инсталляция на каждом сетевом компьютере драйверов, реализующих набор протоколов ТСР/IР;
- подключение локальной сети к Internet через шлюз IPX-XP.
Протоколы NetBIOS и NetBEUI разработаны фирмой IВМ и предназначены только для локальных компьютерных сетей.
Протокол NetBIOS (Network Basic Input/Output System базовая система ввода-вывода) соответствует сетевому, транспортному и сеансовому уровням эталонной модели. Реализация данного протокола обеспечивает прикладной интерфейс, используемый для создания сетевых программных приложений.
Протокол NetBEUI (Extended User Interface NetBIOS расширенный пользовательский интерфейс NetBIOS) является модификацией предыдущего протокола и распространяется только на сетевой и транспортный уровни.
Реализация протоколов NetBIOS и NetBEUI обеспечивает решение таких задач, как поддержка имен, поддержка сеансового и дейтаграммного взаимодействия, получение информации о состоянии сети,
Достоинствами протоколов NetBIOS и NetBEUI являются: удобная адресация, высокая производительность, самонастройка и хорошая защита от ошибок, экономное использование оперативной памяти. Недостатки NetBIOS и NetBEUI связаны с отношением к глобальным сетям: отсутствие поддержки функций маршрутизации и низкая производительность.
Семейство протоколов ТСР/IР было разработано для объединения различных компьютерных сетей в одну глобальную сеть, получившую название Internet.
Семейство протоколов ТСР/IР включает протоколы, относящиеся как к средним, так и другим уровням модели OSI:
§ прикладной уровень и уровень представления: протокол передачи файлов FTP, протоколы электронной почты SМТР, РОРЗ. IМАР4, протоколы удаленного доступа SLIP, РРР, Telnet, протокол сетевой файловой системы NPS, протокол управления сетями SNMP, протокол передачи гипертекста НТTР и др.;
§ сеансовый и транспортные уровни: протоколы ТСР и UDP;
§ сетевой уровень: протоколы IР, ICMP, IGMP;
§ канальный уровень: протоколы ARP, RARP.
Дейтаграммный протокол IР (Internet Protocol) является основным для сетевого уровня и обеспечивает маршрутизацию предаваемых пакетов сообщений.
Протокол ICMP (Internet Control Message Protocol) отвечает за обмен сообщениями об ошибках и другой важной информацией с программными средствами сетевого уровня на другом компьютере, маршрутизаторе или шлюзе.
Протокол IGMP (Internet Group Management Protocol) используется для отправки 1Р-пакетов множеству компьютеров в сети.
Протокол ТСР (Transmission Control Protocol) является протоколом сетевого уровня и обеспечивает надежную передачу данных между двумя компьютерами путем организации виртуального канала обмена и использования его для передачи больших массивов данных.
Протокол UDP (User Datagram Protocol) реализует гораздо более простой сервис передачи, обеспечивая надежную доставку данных без установления логического соединения.
Протоколы верхнего уровня соответствуют уровню пользователей и прикладных программ и распространяются на уровень представления и прикладной уровень эталонной модели сетевого взаимодействия. Наиболее распространенными являются следующие высокоуровневые протоколы:
- протоколы перенаправления запросов и обмена сообщениями SМВ, NСР;
- протокол управления сетями SNМР;
- протокол сетевой файловой системы NFS;
- протокол вызова удаленных процедур RPC:
- протоколы, повышающие эффективность использования протоколов ТСР/IР среднего уровня DNS, DHSP;
- протоколы удаленного доступа к компьютерным ресурсам SLIP, РРР, Теlnet;
— протокол передачи файлов FТР;
— протокол передачи гипертекста НТТР; протоколы электронной почты SМТР, РОРЗ, IМАР4;
- протокол организации электронных конференций и системы новостей NNТР.
Протокол SМВ (Server Message Blocks блоки серверных сообщений), разработанный совместно корпорациями Microsoft, Intel и IВМ, используется в сетевых операционных системах Windows, LAN Manager, LAN Server. Данный протокол определяет серии команд, используемых для передачи информации между сетевыми компьютерами.
Протокол NCP (Netware Core Protocol - протокол ядра Netware) разработан фирмой Novell и используется в сетевых ОС Netware.
Протокол SNМР (Simple Network Management Protocol простой протокол управления сетью) осуществляет гибкое и полное управление сетью, предполагая выполнение администратором следующих функций: управление конфигурацией, управление доступом к общим сетевым ресурсам, управление производительностью, управление подготовкой к восстановлению, управление восстановлением. При этом любая из функций управления должна обеспечивать решение трех базовых задач:
- получение информации о состоянии управляемого объекта;
- анализ полученной информации и выработка управляющих воздействий;
- передача управляющих воздействий на исполнение.
Протокол NFS (Network File System — сетевая файловая система) предназначен для предоставления универсального интерфейса работы с файлами для различных операционных систем, сетевых архитектур и протоколов среднего уровня.
Протокол RPC (Remote Procedure Call — сервис вызова удаленных процедур) предназначен для организации межпрограммных взаимодействий для сети «клиент-сервер» и обеспечивает связь между процессами-клиентами и процессами-серверами, функционирующими на разных компьютерах сети.
Протокол DNS (Domain Name Systems — система доменных имен) предназначен для установления соответствия между смысловыми символьными именами и IР-адресами компьютеров.
Протокол DHCP (Dynamic Host Configuration Protocol — протокол динамической конфигурации компьютеров) позволяет автоматически назначать IР-адреса подключаемых к сети компьютеров и изменять их при перемещении из одной подсети в другую.
Протокол SLIP (Serial Line Internet Protocol - протокол Internet последовательного соединения) обеспечивает работу протоколов ТСР/IР при коммутируемом телефонном соединении.
Протокол РРР (Point-to_Point Protocol — протокол «точка-точка») обеспечивает установление соединения и реализацию непосредственного обмена информацией, а также (по сравнению со SLIP) позволяет решать следующие задачи:
§ конфигурация и проверка качества связи; подтверждение подлинности (аутентификация) удаленного пользователя;
§ динамическое присвоение адресов IР и управление этими адресами;
§ обнаружение и коррекция ошибок и др.
Протокол РРТР (Point-To-Point Tunneling Protocol - туннельный протокол «точка-точка») ориентирован на поддержку мультипротокольных виртуальных частных сетей (Virtual Private Networks), предоставляя возможность удаленным пользователям иметь безопасный доступ к корпоративным сетям по Internet.
Протокол Теlnet является общепризнанным стандартом удаленного дистанционного управления в Internet, позволяющим в режиме командной строки запускать и выполнять программы на компьютере, с которым установлено удаленное соединение.