
- •Державний комітет зв’язку та інформатизації України
- •Современные проблемы информационных сетей
- •Инструменты и ресурсы
- •Формат пакета ping.
- •Программа tracert в Windows.
- •Порядок вызова
- •Программа tcpdump (снифер) сетевой анализатор для поиска неисправностией в сети и отладки сетевых приложений.
- •Использование tcpdump
- •Выходная информация, формируемая tcpdump
- •Программа netstat
- •4. Интерфейсы
- •Маршрутная таблица
- •Статистика протоколов
- •Процессы
- •Типы процессов
- •Прикладные процессы
- •Атрибуты процессов
- •Реальный (rgid) и эффективный (egid) идентификаторы группы
- •Жизненный путь процесса
- •Сигналы
- •Взаимодействие между процессами
- •Организация каналов
- •Взаимодействие между процессами
- •Размер канала
- •Функции к разделу fifo
- •Пример приложения клиент-сервер, использующего fifo для обмена данными. Клиент посылает серверу сообщенияHello, а сервер выводит это сообщение на терминал.
- •Права доступа к объекту
- •Идентификаторы и имена в ipc
- •Tcp как потоковый протокол
- •Чтение длины записи
- •Функции разрешения имён
- •Преобразование имён хостов
- •Аккуратное размыкание соединение
- •Вызов shutdown
- •Алгоритм Найгла
- •Программная реализация архитектуры клиент – сервер
- •1.2 Разработка программ в архитектуре “клиент-сервер”
- •Заполнение адресной структуры и получение сокета
- •Привязка известного порта и вывод listen
- •Принятие соединения.
- •Обмен данными
- •Программный интерфейс сокетов
- •Сокеты во FreeBsd
- •Типы соединения
- •Адресация
- •Адресация Internet
- •Interface сокетов
- •Создание сокета
- •Програмныйинтерфейс сокетов
- •Поддержка различных типов сокетов в доменах
- •Пример использования сокетов
- •Sdl-описание протокола сеансового уровня эталонной модели взаимосвязи открытых систем
- •Основные понятия
- •Описание служб
- •Описание протоколов
- •Службы ядра сеансового уровня
- •Блок данных протокола
- •Ясо-описание протокола сеансового уровня
- •Разбиение блока сеансового протокола
- •Описание блока блк-дир
- •Описание блока блк-исп
- •Описание процессов дир и рдт
- •Описание процесса исп
Sdl-описание протокола сеансового уровня эталонной модели взаимосвязи открытых систем
ЭТАЛОННАЯ МОДЕЛЬ ВЗАИМОСВЯЗИ ОТКРЫТЫХ СИСТЕМ
Основные понятия
Возможности языка SDLпроиллюстрируем на реальном примере описания протокола ядра сеансового уровня эталонной модели взаимосвязи открытых систем (BOС). Эталонная модель ВОС является абстрактным описанием структуры и правил взаимодействия узла связи.
Чтобы упростить описание функционирования эталонной модели ВОС, она рассматривается расчлененной на так называемые уровни, что позволяет представить функцию, реализуемую узлом связи, в виде совокупности подфункций, реализуемых каждым из уровней. Для наглядности эти уровни располагают вертикально один над другим и нумеруют снизу вверх.
Каждый уровень считается состоящим из отдельных элементов. Элемент некоторого N-roуровня может взаимодействовать:
в своей системе — только с элементами смежных уровней (т.е. (N+D-roи (N-l)-ro), в чужой системе — только с элементом, расположенным в уровне с тем же номером N (с «равноуровневым» элементом, «напарником»).
Самый верхний уровень взаимодействует с пользователем системы, а самый нижний — со средой передачи (каналом связи).
Взаимодействие со смежными уровнями рассматривается как состоящее из отдельных служб (рис. ), которые нижележащий уровень оказывает вышележащему (службы направлены снизу вверх). На рис. введены следующие обозначения: d— N-элемент; а — N-служба; с — N-протокол;b— N-примитив;
а' — (N-D-служба; b' — (N-1)-примитив.
Точки на границе между уровнями, через которые взаимодействуют два элемента, лежащие в двух смежных уровнях, называются точками доступа служб, или, короче, точками доступа. Для взаимодействия двух равноуровневых элементов, лежащих а разных системах, между ними должно быть установлено соединение. Чтобы обеспечить это соединение, каждый из двух элементов должен использовать службы элементов нижележащего уровня, те, в свою очередь, должны обратиться к нижележащим уровням и т. д., пока не будут запрошены службы самых нижних уровней. Нижние уровни взаимодействуют с помощью канала связи. Пользователи двух систем (участники диалога) взаимодействуют, запрашивая каждый службы верхнего уровня своей системы.
Правила взаимодействия двух элементов N-го уровня называют протоколом N-гoуровня.
При описании служб и протоколов N-гo уровня рассматривается только его взаимодействие со смежными (n+1)-м и(n-1)-m уровнями в своей системе и с тем же N-м уровнем — в другой. Впредь, для краткости, мы будем иногда опускать слово «элемент» и говорить, например, «взаимодействие двух уровней», а не «взаимодействие элементов двух уровней».
Описание служб
Описание служб опирается на модель, в которой служба рассматривается как взаимодействие между пользователем N-службы, расположенным в (n+1)-m уровне, и поставщиком N-службы, расположенным в N-м уровне. Взаимодействие между пользователем и поставщиком описывается в терминах так называемых примитивов. Примитив — это логически выделенный элементарный акт взаимодействия между пользователем и поставщиком, который не может быть прерван никаким другим взаимодействием. Примитивы могут быть направлены и вверх, и вниз (см. рис. ).
В зависимости от требующейся службы примитивы бывают разных категорий: примитивы установления соединения, примитивы передачи данных, примитивы разъединения и т.п. Помимо этого различают примитивы четырех типов:
примитив-запрос — примитив, выдаваемый пользователем поставщику для возбуждения некоторой службы;
примитив-индикация — примитив, выдаваемый поставщиком пользователю либо для возбуждения некоторой процедуры, либо для оповещения о том, что некоторая процедура была возбуждена равноуровневым пользователем в другой системе;
примитив-ответ — примитив, выдаваемый пользователем поставщику для завершения процедуры, возбужденной ранее поставщиком (с помощью примитива-индикации);
примитив-подтверждение — примитив, выдаваемый поставщиком пользователю для завершения процедуры, возбужденной ранее этим пользователем (с помощью примитива-запроса).
Все процедуры взаимодействия осуществляются либо с помощью примитивов четырех типов (запрос-индикация-ответ-подтверждение), либо с помощью примитивов
двух типов (запрос-индикация), либо с помощью примитива одного типа (индикация).
Вместе с примитивами могут передаваться данные и параметры, такие как адреса, требования к соединению, к максимальной длине пересылаемых блоков, сообщения и т.п. Совокупность параметров и данных, передаваемых вместе с примитивами из уровня в уровень через точку доступа, называется блоком данных службы (БДС).