- •Многотерминальные системы - прообраз сети
- •Появление глобальных сетей
- •Первые локальные сети
- •Создание стандартных технологий локальных сетей
- •Современные тенденции
- •1.1.2. Вычислительные сети - частный случай распределенных систем
- •Мультипроцессорные компьютеры
- •Многомашинные системы
- •Вычислительные сети
- •Распределенные программы
- •1.1.3. Основные программные и аппаратные компоненты сети
- •1.1.4. Что дает предприятию использование сетей
- •1.2. Основные проблемы построения сетей
- •1.2.1. Связь компьютера с периферийными устройствами
- •1.2.2. Простейший случай взаимодействия двух компьютеров
- •1.2.3. Проблемы физической передачи данных по линиям связи
- •1.2.4. Проблемы объединения нескольких компьютеров
- •Топология физических связей
- •Организация совместного использования линий связи
- •Адресация компьютеров
- •1.2.5. Ethernet - пример стандартного решения сетевых проблем
- •1.2.6. Структуризация как средство построения больших сетей
- •Физическая структуризация сети
- •Логическая структуризация сети
- •1.2.7. Сетевые службы
- •1.3. Понятие «открытая система» и проблемы стандартизации
- •1.3.1. Многоуровневый подход. Протокол. Интерфейс. Стек протоколов
- •1.3.2. Модель osi
- •1.3.3. Уровни модели osi Физический уровень
- •Канальный уровень
- •Сетевой уровень
- •Транспортный уровень
- •Сеансовый уровень
- •Представительный уровень
- •Прикладной уровень
- •Сетезависимые и сетенезависимые уровни
- •1.3.4. Понятие «открытая система»
- •1.3.5. Модульность и стандартизация
- •1.3.6. Источники стандартов
- •1.3.7. Стандартные стеки коммуникационных протоколов
- •Стек osi
- •Стек tcp/ip
- •Стек ipx/spx
- •Стек NetBios/smb
- •1.4. Локальные и глобальные сети
- •1.4.1. Особенности локальных, глобальных и городских сетей
- •1.4.2. Отличия локальных сетей от глобальных
- •1.4.3. Тенденция к сближению локальных и глобальных сетей
- •1.5. Сети отделов, кампусов и корпораций
- •1.5.1. Сети отделов
- •1.5.2. Сети кампусов
- •1.5.3. Корпоративные сети
- •1.6. Требования, предъявляемые к современным вычислительным сетям
- •1.6.1. Производительность
- •1.6.2. Надежность и безопасность
- •1.6.3. Расширяемость и масштабируемость
- •1.6.4. Прозрачность
- •1.6.5. Поддержка разных видов трафика
- •1.6.6. Управляемость
- •1.6.7. Совместимость
- •Вопросы и упражнения
- •2.1. Линии связи
- •2.1.1. Типы линий связи
- •2.1.2. Аппаратура линий связи
- •2.1.3. Характеристики линий связи Типы характеристик и способы их определения
- •Спектральный анализ сигналов на линиях связи
- •Амплитудно-частотная характеристика, полоса пропускания и затухание
- •Пропускная способность линии
- •Связь между пропускной способностью линии и ее полосой пропускания
- •Помехоустойчивость и достоверность
- •2.1.4. Стандарты кабелей
- •Кабели на основе неэкранированной витой пары
- •Кабели на основе экранированной витой пары
- •Коаксиальные кабели
- •Волоконно-оптические кабели
- •2.2. Методы передачи дискретных данных на физическом уровне
- •2.2.1. Аналоговая модуляция
- •Методы аналоговой модуляции
- •Спектр модулированного сигнала
- •2.2.2. Цифровое кодирование
- •Требования к методам цифрового кодирования
- •Потенциальный код без возвращения к нулю
- •Метод биполярного кодирования с альтернативной инверсией
- •Потенциальный код с инверсией при единице
- •Биполярный импульсный код
- •Манчестерский код
- •Потенциальный код 2b1q
- •2.2.3. Логическое кодирование
- •Избыточные коды
- •Скрэмблирование
- •2.2.4. Дискретная модуляция аналоговых сигналов
- •2.2.5. Асинхронная и синхронная передачи
- •2.3. Методы передачи данных канального уровня
- •2.3.1. Асинхронные протоколы
- •2.3.2. Синхронные символьно-ориентированные и бит-ориентированные протоколы
- •Символьно-ориентированные протоколы
- •Протоколы с гибким форматом кадра
- •2.3.3. Передача с установлением соединения и без установления соединения
- •2.3.4. Обнаружение и коррекция ошибок
- •Методы обнаружения ошибок
- •Методы восстановления искаженных и потерянных кадров
- •2.3.5. Компрессия данных
- •2.4. Методы коммутации
- •2.4.1. Коммутация каналов
- •Коммутация каналов на основе частотного мультиплексирования
- •Коммутация каналов на основе разделения времени
- •Общие свойства сетей с коммутацией каналов
- •Обеспечение дуплексного режима работы на основе технологий fdm, tdm и wdm
- •2.4.2. Коммутация пакетов Принципы коммутации пакетов
- •Виртуальные каналы в сетях с коммутацией пакетов
- •Пропускная способность сетей с коммутацией пакетов
- •2.4.3. Коммутация сообщений
- •Вопросы и упражнения
- •Базовые технологии локальных сетей
- •3.1. Протоколы и стандарты локальных сетей
- •3.1.1. Общая характеристика протоколов локальных сетей
- •3.1.2. Структура стандартов ieee 802.X
- •3.2. Протокол llc уровня управления логическим каналом (802.2)
- •3.2.1. Три типа процедур уровня llc
- •3.2.2. Структура кадров llc. Процедура с восстановлением кадров llc2
- •3.3. Технология Ethernet (802.3)
- •3.3.1. Метод доступа csma/cd
- •Этапы доступа к среде
- •Возникновение коллизии
- •Время двойного оборота и распознавание коллизий
- •3.3.2. Максимальная производительность сети Ethernet
- •3.3.3. Форматы кадров технологии Ethernet
- •Кадр 802.3/llc
- •Кадр Raw 802.3/Novell 802.3
- •Кадр Ethernet dix/Ethernet II
- •Кадр Ethernet snap
- •Использование различных типов кадров Ethernet
- •3.3.4. Спецификации физической среды Ethernet
- •Стандарт 10Base-5
- •Стандарт 10Base-2
- •Стандарт 10Bаse-t
- •Оптоволоконный Ethernet
- •Домен коллизий
- •3.3.5. Методика расчета конфигурации сети Ethernet
- •Расчет pdv
- •Расчет pw
- •3.4. Технология Token Ring (802.5)
- •3.4.1. Основные характеристики технологии
- •3.4.2. Маркерный метод доступа к разделяемой среде
- •3.4.3. Форматы кадров Token Ring
- •Кадр данных и прерывающая последовательность
- •Приоритетный доступ к кольцу
- •3.4.4. Физический уровень технологии Token Ring
- •3.5. Технология fddi
- •3.5.1. Основные характеристики технологии
- •3.5.2. Особенности метода доступа fddi
- •3.5.3. Отказоустойчивость технологии fddi
- •3.5.4. Физический уровень технологии fddi
- •3.5.5. Сравнение fddi с технологиями Ethernet и Token Ring
- •3.6. Fast Ethernet и 100vg - AnyLan как развитие технологии Ethernet
- •3.6.1. Физический уровень технологии Fast Ethernet
- •Физический уровень 100Base-fx - многомодовое оптоволокно, два волокна
- •Физический уровень 100Base-tx - витая пара dtp Cat 5 или stp Type 1, две пары
- •Физический уровень 100Base-t4 - витая пара utp Cat 3, четыре пары
- •3.6.2. Правила построения сегментов Fast Ethernet при использовании повторителей
- •Ограничения длин сегментов dte-dte
- •Ограничения сетей Fast Ethernet, построенных на повторителях
- •3.6.3. Особенности технологии 100vg-AnyLan
- •3.7. Высокоскоростная технология Gigabit Ethernet
- •3.7.1. Общая характеристика стандарта
- •3.7.2. Средства обеспечения диаметра сети в 200 м на разделяемой среде
- •3.7.3. Спецификации физической среды стандарта 802.3z
- •Многомодовый кабель
- •Одномодовый кабель
- •Твинаксиальный кабель
- •3.7.4. Gigabit Ethernet на витой паре категории 5
- •Вопросы и упражнения
- •Построение локальных сетей по стандартам физического и канального уровней
- •4.1. Структурированная кабельная система
- •4.1.1. Иерархия в кабельной системе
- •4.1.2. Выбор типа кабеля для горизонтальных подсистем
- •4.1.3. Выбор типа кабеля для вертикальных подсистем
- •4.1.4. Выбор типа кабеля для подсистемы кампуса
- •4.2. Концентраторы и сетевые адаптеры
- •4.2.1. Сетевые адаптеры Функции и характеристики сетевых адаптеров
- •Классификация сетевых адаптеров
- •4.2.2. Концентраторы Основные и дополнительные функции концентраторов
- •Отключение портов
- •Поддержка резервных связей
- •Защита от несанкционированного доступа
- •Многосегментные концентраторы
- •Управление концентратором по протоколу snmp
- •Конструктивное исполнение концентраторов
- •4.3. Логическая структуризация сети с помощью мостов и коммутаторов
- •4.3.1. Причины логической структуризации локальных сетей Ограничения сети, построенной на общей разделяемой среде
- •Преимущества логической структуризации сети
- •Структуризация с помощью мостов и коммутаторов
- •4.3.2. Принципы работы мостов Алгоритм работы прозрачного моста
- •Мосты с маршрутизацией от источника
- •Ограничения топологии сети, построенной на мостах
- •4.3.3. Коммутаторы локальных сетей
- •4.3.4. Полнодуплексные протоколы локальных сетей Изменения в работе мас - уровня при полнодуплексной работе
- •Проблема управления потоком данных при полнодуплексной работе
- •4.3.5. Управления потоком кадров при полудуплексной работе
- •4.4. Техническая реализация и дополнительные функции коммутаторов
- •4.4.1. Особенности технической реализации коммутаторов
- •Коммутаторы на основе коммутационной матрицы
- •Коммутаторы с общей шиной
- •Коммутаторы с разделяемой памятью
- •Комбинированные коммутаторы
- •Конструктивное исполнение коммутаторов
- •4.4.2. Характеристики, влияющие на производительность коммутаторов
- •Скорость фильтрации и скорость продвижения
- •Коммутация «на лету» или с буферизацией
- •Размер адресной таблицы
- •Объем буфера кадров
- •4.4.3. Дополнительные функции коммутаторов
- •Поддержка алгоритма Spanning Tree
- •Трансляция протоколов канального уровня
- •Возможности коммутаторов по фильтрации трафика
- •Приоритетная обработка кадров
- •4.4.4. Виртуальные локальные сети
- •4.4.5. Типовые схемы применения коммутаторов в локальных сетях Сочетание коммутаторов и концентраторов
- •Стянутая в точку магистраль на коммутаторе
- •Распределенная магистраль на коммутаторах
- •Вопросы и упражнения
- •Сетевой уровень как средство построения больших сетей
- •5.1. Принципы объединения сетей на основе протоколов сетевого уровня
- •5.1.1. Ограничения мостов и коммутаторов
- •5.1.2. Понятие internetworking
- •5.1.3. Принципы маршрутизации
- •5.1.4. Протоколы маршрутизации
- •5.1.5. Функции маршрутизатора
- •Уровень интерфейсов
- •Уровень сетевого протокола
- •Уровень протоколов маршрутизации
- •5.1.6. Реализация межсетевого взаимодействия средствами tcp/ip
- •Многоуровневая структура стека tcp/ip
- •Уровень межсетевого взаимодействия
- •Основной уровень
- •Прикладной уровень
- •Уровень сетевых интерфейсов
- •Соответствие уровней стека tcp/ip семиуровневой модели iso/osi
- •5.2. Адресация в ip-сетях
- •5.2.1. Типы адресов стека tcp/ip
- •5.2.2. Классы ip-адресов
- •5.2.3. Особые ip-адреса
- •5.2.4. Использование масок в ip-адресации
- •5.2.5. Порядок распределения ip-адресов
- •5.2.6. Автоматизация процесса назначения ip-адресов
- •5.2.7. Отображение ip-адресов на локальные адреса
- •5.2.8. Отображение доменных имен на ip-адреса Организация доменов и доменных имен
- •Система доменных имен dns
- •5.3. Протокол ip
- •5.3.1. Основные функции протокола ip
- •5.3.2. Структура ip-пакета
- •5.3.3. Таблицы маршрутизации в ip-сетях
- •Примеры таблиц различных типов маршрутизаторов
- •Назначение полей таблицы маршрутизации
- •Источники и типы записей в таблице маршрутизации
- •5.3.4. Маршрутизация без использования масок
- •5.3.5. Маршрутизация с использованием масок Использование масок для структуризации сети
- •Использование масок переменной длины
- •Технология бесклассовой междоменной маршрутизации cidr
- •5.3.6. Фрагментация ip-пакетов
- •5.3.7. Протокол надежной доставки tcp-сообщений
- •Сегменты и потоки
- •Соединения
- •Реализация скользящего окна в протоколе tcp
- •5.4. Протоколы маршрутизации в ip-сетях
- •5.4.1. Внутренние и внешние протоколы маршрутизации Internet
- •5.4.2. Дистанционно-векторный протокол rip Построение таблицы маршрутизации
- •Этап 1 - создание минимальных таблиц
- •Этап 2 - рассылка минимальных таблиц соседям
- •Этап 3 - получение rip-сообщений от соседей и обработка полученной информации
- •Этап 4 - рассылка новой, уже не минимальной, таблицы соседям
- •Этап 5 - получение rip-сообщений от соседей и обработка полученной информации
- •Адаптация rip-маршрутизаторов к изменениям состояния сети
- •Методы борьбы с ложными маршрутами в протоколе rip
- •5.4.3. Протокол «состояния связей» ospf
- •5.5. Средства построения составных сетей стека Novell
- •5.5.1. Общая характеристика протокола ipx
- •5.5.2. Формат пакета протокола ipx
- •5.5.3. Маршрутизация протокола ipx
- •5.6. Основные характеристики маршрутизаторов и концентраторов
- •5.6.1. Маршрутизаторы
- •Классификация маршрутизаторов по областям применения
- •Основные технические характеристики маршрутизатора
- •Дополнительные функциональные возможности маршрутизаторов
- •5.6.2. Корпоративные модульные концентраторы
- •5.6.3. Стирание граней между коммутаторами и маршрутизаторами
- •Соотношение коммутации и маршрутизации в корпоративных сетях
- •Отказ от маршрутизации
- •Коммутаторы 3-го уровня с классической маршрутизацией
- •Маршрутизация потоков
- •Вопросы и упражнения
- •Глобальные сети
- •6.1. Основные понятия и определения
- •6.1.1. Обобщенная структура и функции глобальной сети Транспортные функции глобальной сети
- •Высокоуровневые услуги глобальных сетей
- •Структура глобальной сети
- •Интерфейсы dte-dce
- •6.1.2. Типы глобальных сетей
- •Выделенные каналы
- •Глобальные сети с коммутацией каналов
- •Глобальные сети с коммутацией пакетов
- •Магистральные сети и сети доступа
- •6.2. Глобальные связи на основе выделенных линий
- •6.2.1. Аналоговые выделенные линии Типы аналоговых выделенных линий
- •Модемы для работы на выделенных каналах
- •6.2.2. Цифровые выделенные линии
- •Технология плезиохронной цифровой иерархии pdh
- •Технология синхронной цифровой иерархии sonet/sdh
- •Применение цифровых первичных сетей
- •Устройства dsu/csu для подключения к выделенному каналу
- •6.2.3. Протоколы канального уровня для выделенных линий
- •Протокол slip
- •Протоколы семейства hdlc
- •Протокол ppp
- •6.2.4. Использование выделенных линий для построения корпоративной сети
- •6.3. Глобальные связи на основе сетей с коммутацией каналов
- •6.3.1. Аналоговые телефонные сети Организация аналоговых телефонных сетей
- •Модемы для работы на коммутируемых аналоговых линиях
- •6.3.2. Служба коммутируемых цифровых каналов Switched 56
- •6.3.3. Isdn - сети с интегральными услугами Цели и история создания технологии isdn
- •Пользовательские интерфейсы isdn
- •Подключение пользовательского оборудования к сети isdn
- •Адресация в сетях isdn
- •Стек протоколов и структура сети isdn
- •Использование служб isdn в корпоративных сетях
- •6.4. Компьютерные глобальные сети с коммутацией пакетов
- •6.4.1. Принцип коммутации пакетов с использованием техники виртуальных каналов
- •6.4.2. Сети х.25 Назначение и структура сетей х.25
- •Адресация в сетях х.25
- •Стек протоколов сети х.25
- •6.4.3. Сети Frame Relay Назначение и общая характеристика
- •Стек протоколов frame relay
- •Поддержка качества обслуживания
- •Использование сетей frame relay
- •6.4.4. Технология атм
- •Основные принципы технологии атм
- •Стек протоколов атм
- •Уровень адаптации aal
- •Протокол атм
- •Категории услуг протокола атм и управление трафиком
- •Передача трафика ip через сети атм
- •Сосуществование атм с традиционными технологиями локальных сетей
- •Использование технологии атм
- •6.5. Удаленный доступ
- •6.5.1. Основные схемы глобальных связей при удаленном доступе
- •Типы взаимодействующих систем
- •Типы поддерживаемых служб
- •Типы используемых глобальных служб
- •6.5.2. Доступ компьютер - сеть
- •Удаленный узел
- •Удаленное управление и терминальный доступ
- •6.5.3. Удаленный доступ через промежуточную сеть Общая схема двухступенчатого доступа
- •Технологии ускоренного доступа к Internet через абонентские окончания телефонных и кабельных сетей
- •Вопросы и упражнения
- •Средства анализа и управления сетями
- •7.1. Функции и архитектура систем управления сетями
- •7.1.1. Функциональные группы задач управления
- •7.1.2. Многоуровневое представление задач управления
- •7.1.3. Архитектуры систем управления сетями
- •Структуры распределенных систем управления
- •Платформенный подход
- •7.2. Стандарты систем управления
- •7.2.1. Стандартизуемые элементы системы управления
- •7.2.2. Стандарты систем управления на основе протокола snmp Концепции snmp-управления
- •Примитивы протокола snmp
- •Структура snmp mib
- •Форматы и имена объектов snmp mib
- •Формат сообщений snmp
- •Спецификация rmon mib
- •Недостатки протокола snmp
- •7.2.3. Стандарты управления osi
- •Агенты и менеджеры
- •Управление системами, управление уровнем и операции уровня
- •Информационная модель управления
- •Управляющие знания и деревья знаний
- •Использование древовидных баз данных для хранения управляющих знаний
- •Правила определения управляемых объектов
- •Протокол cmip и услуги cmis
- •Фильтрация
- •Синхронизация
- •Сравнение протоколов snmp и cmip
- •7.3. Мониторинг и анализ локальных сетей
- •7.3.1. Классификация средств мониторинга и анализа
- •7.3.2. Анализаторы протоколов
- •7.3.3. Сетевые анализаторы
- •7.3.4. Кабельные сканеры и тестеры
- •7.3.5. Многофункциональные портативные приборы мониторинга
- •Интерфейс пользователя
- •Функции проверки аппаратуры и кабелей
- •Сканирование кабеля
- •Статистика по коллизиям
- •Функции анализа протоколов
- •7.3.6. Мониторинг локальных сетей на основе коммутаторов Наблюдение за трафиком
- •Управление виртуальными сетями
- •Вопросы и упражнения
1.3. Понятие «открытая система» и проблемы стандартизации
Универсальный тезис о пользе стандартизации, справедливый для всех отраслей, в компьютерных сетях приобретает особое значение. Суть сети - это соединение разного оборудования, а значит, проблема совместимости является одной из наиболее острых. Без принятия всеми производителями общепринятых правил построения оборудования прогресс в деле «строительства» сетей был бы невозможен. Поэтому все развитие компьютерной отрасли в конечном счете отражено в стандартах - любая новая технология только тогда приобретает «законный» статус, когда ее содержание закрепляется в соответствующем стандарте.
В компьютерных сетях идеологической основой стандартизации является многоуровневый подход к разработке средств сетевого взаимодействия. Именно на основе этого подхода была разработана стандартная семиуровневая модель взаимодействия открытых систем, ставшая своего рода универсальным языком сетевых специалистов.
1.3.1. Многоуровневый подход. Протокол. Интерфейс. Стек протоколов
Организация взаимодействия между устройствами в сети является сложной задачей. Как известно, для решения сложных задач используется универсальный прием - декомпозиция, то есть разбиение одной сложной задачи на несколько более простых задач-модулей (рис. 1.20). Процедура декомпозиции включает в себя четкое определение функций каждого модуля, решающего отдельную задачу, и интерфейсов между ними. В результате достигается логическое упрощение задачи, а кроме того, появляется возможность модификации отдельных модулей без изменения остальной части системы.
Рис. 1.20. Пример декомпозиции задачи
При декомпозиции часто используют многоуровневый подход. Он заключается в следующем. Все множество модулей разбивают на уровни. Уровни образуют иерархию, то есть имеются вышележащие и нижележащие уровни (рис. 1.21). Множество модулей, составляющих каждый уровень, сформировано таким образом, что для выполнения своих задач они обращаются с запросами только к модулям непосредственно примыкающего нижележащего уровня. С другой стороны, результаты работы всех модулей, принадлежащих некоторому уровню, могут быть переданы только модулям соседнего вышележащего уровня. Такая иерархическая декомпозиция задачи предполагает четкое определение функции каждого уровня и интерфейсов между уровнями. Интерфейс определяет набор функций, которые нижележащий уровень предоставляет вышележащему. В результате иерархической декомпозиции достигается относительная независимость уровней, а значит, и возможность их легкой замены.
Рис. 1.21. Многоуровневый подход - создание иерархии задач
Средства сетевого взаимодействия, конечно, тоже могут быть представлены в виде иерархически организованного множества модулей. При этом модули нижнего уровня могут, например, решать все вопросы, связанные с надежной передачей электрических сигналов между двумя соседними узлами. Модули более высокого уровня организуют транспортировку сообщений в пределах всей сети, пользуясь для этого средствами упомянутого нижележащего уровня. А на верхнем уровне работают модули, предоставляющие пользователям доступ к различным службам - файловой, печати и т. п. Конечно, это только один из множества возможных вариантов деления общей задачи организации сетевого взаимодействия на частные подзадачи.
Многоуровневый подход к описанию и реализации функций системы применяется не только в отношении сетевых средств. Такая модель функционирования используется, например, в локальных файловых системах, когда поступивший запрос на доступ к файлу последовательно обрабатывается несколькими программными уровнями (рис. 1.22). Запрос вначале анализируется верхним уровнем, на котором осуществляется последовательный разбор составного символьного имени файла и определение уникального идентификатора файла. Следующий уровень находит по уникальному имени все основные характеристики файла: адрес, атрибуты доступа и т. п. Затем на более низком уровне осуществляется проверка прав доступа к этому файлу, а далее, после расчета координат области файла, содержащей требуемые данные, выполняется физический обмен с внешним устройством с помощью драйвера диска.
Рис. 1.22. Многоуровневая модель файловой системы
Многоуровневое представление средств сетевого взаимодействия имеет свою специфику, связанную с тем, что в процессе обмена сообщениями участвуют две машины, то есть в данном случае необходимо организовать согласованную работу двух «иерархий». При передаче сообщений оба участника сетевого обмена должны принять множество соглашений. Например, они должны согласовать уровни и форму электрических сигналов, способ определения длины сообщений, договориться о методах контроля достоверности и т. п. Другими словами, соглашения должны быть приняты для всех уровней, начиная от самого низкого - уровня передачи битов - до самого высокого, реализующего сервис для пользователей сети.
На рис. 1.23 показана модель взаимодействия двух узлов. С каждой стороны средства взаимодействия представлены четырьмя уровнями. Процедура взаимодействия этих двух узлов может быть описана в виде набора правил взаимодействия каждой пары соответствующих уровней обеих участвующих сторон. Формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называются протоколом.
Рис. 1.23. Взаимодействие двух узлов
Модули, реализующие протоколы соседних уровней и находящиеся в одном узле, также взаимодействуют друг с другом в соответствии с четко определенными правилами и с помощью стандартизованных форматов сообщений. Эти правила принято называть интерфейсом. Интерфейс определяет набор сервисов, предоставляемый данным уровнем соседнему уровню. В сущности, протокол и интерфейс выражают одно и то же понятие, но традиционно в сетях за ними закрепили разные области действия: протоколы определяют правила взаимодействия модулей одного уровня в разных узлах, а интерфейсы - модулей соседних уровней в одном узле.
Средства каждого уровня должны отрабатывать, во-первых, свой собственный протокол, а во-вторых, интерфейсы с соседними уровнями.
Иерархически организованный набор протоколов, достаточный для организации взаимодействия узлов в сети, называется стеком коммуникационных протоколов.
Коммуникационные протоколы могут быть реализованы как программно, так и аппаратно. Протоколы нижних уровней часто реализуются комбинацией программных и аппаратных средств, а протоколы верхних уровней - как правило, чисто программными средствами.
Программный модуль, реализующий некоторый протокол, часто для краткости также называют «протоколом». При этом соотношение между протоколом - формально определенной процедурой и протоколом - программным модулем, реализующим эту процедуру, аналогично соотношению между алгоритмом решения некоторой задачи и программой, решающей эту задачу.
Понятно, что один и тот же алгоритм может быть запрограммирован с разной степенью эффективности. Точно так же и протокол может иметь несколько программных реализации. Именно поэтому при сравнении протоколов следует учитывать не только логику их работы, но и качество программных решений. Более того, на эффективность взаимодействия устройств в сети влияет качество всей совокупности протоколов, составляющих стек, в частности, насколько рационально распределены функции между протоколами разных уровней и насколько хорошо определены интерфейсы между ними.
Протоколы реализуются не только компьютерами, но и другими сетевыми устройствами - концентраторами, мостами, коммутаторами, маршрутизаторами и т. д. Действительно, в общем случае связь компьютеров в сети осуществляется не напрямую, а через различные коммуникационные устройства. В зависимости от типа устройства в нем должны быть встроенные средства, реализующие тот или иной набор протоколов.
Чтобы еще раз пояснить понятия «протокол» и «интерфейс», рассмотрим пример, не имеющий отношения к вычислительным сетям, а именно обсудим взаимодействие двух предприятий А и В; связанных между собой деловым сотрудничеством. Между предприятиями существуют многочисленные договоренности и соглашения, такие, например, как регулярные поставки продукции одного предприятия другому. В соответствии с этой договоренностью начальник отдела продаж предприятия А регулярно в начале каждого месяца посылает официальное сообщение начальнику отдела закупок предприятия В о том, сколько и какого товара может быть поставлено в этом месяце. В ответ на это сообщение начальник отдела закупок предприятия В посылает в ответ заявку установленного образца на требуемое количество продукции. Возможно, процедура взаимодействия этих начальников включает дополнительные согласования, в любом случае существует установленный порядок взаимодействия, который можно считать «протоколом уровня начальников». Начальники посылают свои сообщения и заявки через своих секретарей. Порядок взаимодействия начальника и секретаря соответствует понятию межуровневого интерфейса «начальник - секретарь». На предприятии А обмен документами между начальником и секретарем идет через специальную папку, а на предприятии В начальник общается с секретарем по факсу. Таким образом, интерфейсы «начальник - секретарь» на этих двух предприятиях отличаются.
После того как сообщения переданы секретарям, начальников не волнует, каким образом эти сообщения будут перемещаться дальше - обычной или электронной почтой, факсом или нарочным. Выбор способа передачи - это уровень компетенции секретарей, они могут решать этот вопрос, не уведомляя об этом своих начальников, так как их протокол взаимодействия связан только с передачей сообщений, поступающих сверху, и не касается содержания этих сообщений. На рис. 1.24 показано, что в качестве протокола взаимодействия «секретарь-секретарь» используется обмен письмами. При решении других вопросов начальники могут взаимодействовать по другим правилам-протоколам, но это не повлияет на работу секретарей, для которых не важно, какие сообщения отправлять, а важно, чтобы они дошли до адресата. Итак, в данном случае мы имеем дело с двумя уровнями - уровнем начальников и уровнем секретарей, и каждый из них имеет собственный протокол, который может быть изменен независимо от протокола другого уровня. Эта независимость протоколов друг от друга и делает привлекательным многоуровневый подход.
Рис. 1.24. Пример многоуровневого взаимодействия предприятий