Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Мельников Д. А. - Организация и обеспечение безопасности информационно-технологических сетей и систем - 2012

.pdf
Скачиваний:
728
Добавлен:
15.07.2016
Размер:
20.96 Mб
Скачать

Глава 5. Транспортная служба ИТС

Взаимодействие процессов, происходящих в ГВМ и ТВМ, обес­ печивается СПД, которая включает в себя (рис. 5.1): базовую СПД, осуществляющую с помощью узлов связи маршрутизацию пакетов, каналы связи и средства управления ими, подключающие ЭВМ к узлам связи.

Сеть организует виртуальные каналы и соединения между ЭВМ, а также доставку пакетов. В отношении ЭВМ сеть является единой системой, реализующей фиксированный набор функций, определенных сетевым протоколом, например протоколом Х.25. Эти функции, во-первых, недостаточны по сравнению с возлагаемыми на ИТС функциями (удаленный ввод заданий, доступ к процессам, передача файлов и др.) и, во-вторых, для надежного взаимодействия ЭВМ, поскольку не обеспечивают проверку доступности при орга­ низации взаимодействия процессов, преобразование данных в паке­ ты, сохранение работоспособности сети при уничтожении пакетов из-за отказов оборудования и перегрузок и др.

По этим причинам в ИТС для взаимодействия процессов и од­ новременно с этим для взаимодействия ЭВМ с СПД создается транс­ портная служба, назначение которой - организация одного для всей вычислительной сети интерфейса между процессами. Транспортная служба устраняет разрыв между услугами, необходимыми для эф­ фективного функционирования процессов и ЭВМ, и возможностя­ ми, реализованными в СПД.

Транспортная служба - это распределенная между многими ЭВМ система, состоящая из транспортных модулей, связывающих ЭВМ с СПД. Транспортные модули (ТМ) реализуют функции уров­ ня 4 ЭМВОС - управление передачей данных между процессами че­ рез СПД. Формы представления данных, передаваемых между взаи­ модействующими процессами, и процедуры, реализуемые транс­ портной службой, определяются транспортным протоколом (прото­ колом передачи данных).

Транспортная сеть (рис. 5.1) включает в себя транспортную службу и СПД, что в совокупности обеспечивает единый способ взаи­ модействия всех процессов и ЭВМ, подключенных к сети. Транспорт­ ная сеть вводит транспортный интерфейс - правило взаимодействия процессов (рис. 5.2). Транспортный интерфейс базируется на общесе­ тевой системе адресации процессов и портов. Он устанавливает форму

Раздел I.

73

представления данных, передаваемых между процессами, и набор процедур (функций) для организации соединений между процессами и обмена данными по установленным соединениям. Транспортный интерфейс определяется транспортным протоколом, в соответствии с которым строятся транспортные модули и организуется взаимодейст­ вие процессов в вычислительной сети.

л г ЛГ|11 интерфейс

A--.F — главные и терминальные ЭВМ ТМ — транспортный модуль

Рис. 5.1. Транспортная сеть

74

Глава 5. Транспортная служба ИТС

5.1. Транспортный протокол

Функция транспортного протокола двояка. С одной стороны, транспортный протокол определяет средства, необходимые для взаимодействия процессов, и, следовательно, ЭВМ с сетью, постро­ енной по правилам, определяемым сетевым протоколом Х.25. В этой части транспортный протокол в дополнение к средствам, предос­ тавляемым сетью, обеспечивает функционирование процессов при сбоях и отказах СПД, приводящих к потере пакетов и самопроиз­ вольному разъединению виртуальных каналов. В таких ситуациях транспортный протокол должен обеспечивать восстановление нор­ мального режима функционирования.

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

исборку из пакетов принимаемых сообщений. Транспортный прото­ кол, занимая более высокий уровень, чем сетевой протокол, «скрыва­ ет» от процессов специфику функционирования СПД. Наряду с этими функциями транспортный протокол должен предоставлять возмож­ ность вводить приоритеты для некоторых видов обслуживания, засек­ речивать передаваемые данные путем их шифрования и др.

Основные функции транспортного протокола - создание соеди­ нений между портами процессов и передача сообщений через уста­ новленные соединения. Создание системы портов, необходимых для взаимодействия совокупности процессов, обеспечивающих ре­ шение прикладной задачи, является функцией управления сеансами (сессиями), относящийся к уровню 5. В ИТС, функционирование ко­ торой не требует организации связи сложной конфигурации между многими процессами, создание портов может быть возложено на транспортные модули, которые в этом случае реализуют функции 4

и5 уровней управления процессами обработки данных в ЭВМ.

ЭВМ "А"

ЭВМ "В"

ЭВМ "С"

<\V< П роц ессы

Т р а н сп о р тн ы й и н т е р ф е й с

■ 9-1

Рис. 5 .2 . Транспортный интерфейс

Раздел I.

75

5.2. Структура сообщений

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

Средства управления передачей данных транспортного уров­ ня делят сообщения на пакеты, которые последовательно вводятся в

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

Таблица 4

Процедуры транспортного интерфейса

Кл асс

Устан овл ен и е соеди н ен и я и р азъ еди н ен и е

П ередача д а н н ы х

С и н хр он и зац и я

Д ей тагр ам м н ая служ ба

П ер еклю чен и е

Наи м ен о ван и е

Ож и дан и е

Со ед и н ен и е

Со гл аси е

Отказ

Отм ен а

Ра зъ ед и н ен и е

Разр ы в

Пер ед ач а

Пр и ем

Отм ен а п ер едач и

Отм ен а п р и ем а

Пр ер ы ван и е

Пр и ем п р ер ы ван и я Рестар т

Пер ед ач а

де й т агр ам м ы

Пр и ем

де й т агр ам м ы

Пер ек лю ч ен и е

Ф ун кц и я

П о д го то вка к у ст ан о вл ен и ю соеди н ен и я

Уста н о вл ен и е со ед и н ен и я

Со гл а си е н а у стан о вл ен и е со еди н ен и я О тк аз в у ст ан о вл ен и и со еди н ен и я О тм ен а ож и д ан и я Р а зъ ед и н ен и е

Н еу п р авл я ем ы й р азр ы в соеди н ен и я

В ы дач а со о б щ ен и я д л я уд а л ен н о го п р оц есса Готовн ость к п р и ем у со о б щ ен и й

Отм ен а п р о ц ед ур ы п ер едач и

Отм ен а готовн о сти к п р и ем у

Пер ед ач а п р ер ы ван и я

Готовн ость к п р и ем у п р ер ы ван и я

По вто р н ы й стар т

Пер ед ач а д ей т агр ам м ы

Готовн ость к п р и ем у д ей т агр ам м ы

И зм е н ен и е адр еса м естн ого порта

76

Глава 5. Транспортная служба ИТС

5.3. Процедуры транспортного интерфейса

Состав процедур, реализуемых транспортным протоколом для обеспечения транспортного интерфейса, представлен в табл. 4. Б от­ ношении использования процедур, взаимодействующие процессы (местный и удаленный) равноправны, т.е. каждый из них может ини­ циировать установление соединения, передачу и прием сообщений, разъединение и др. Указанные процедуры реализуются транспортны­ ми модулями систем - ГВМ и ТВМ - и инициируются процессами с помощью операторов обращения к процедурам. Выполнение проце­ дуры-оператора можно рассматривать как команду, интерпретируе­ мую транспортной службой и исполняемую транспортной сетью. Ко­ гда удаленный процесс в качестве реакции на команду инициирует процедуру транспортного интерфейса, действие удаленного процесса, определяемое этой процедурой, можно рассматривать как ответ.

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

5.4. Функционирование транспортной службы

Основные функции транспортной службы представлены в табл.4, как классы процедур, обеспечивающих реализацию соответст­ вующих функций. В ИТС должны существовать процессы, «готовые» взаимодействовать с процессами, создаваемыми пользователями. Го­ товность процесса к установлению соединения порождается процеду­ рой «Ожидание». В момент инициализации любой ЭВМ в ней должен быть активизирован, по крайней мере, один процесс, ожидающий ус­ тановления соединения. Такого рода процессы порождаются коман­ дой «Ожидание», в ответ на которую местная транспортная служба от­ крывает порт, связываемый с этим процессом.

Активизируемый процесс, например терминал, формирует команду «Соединение», содержащую адрес процесса, с которым необ­ ходимо установить соединение. Этот адрес, являясь общесетевым, будет интерпретирован в адрес транспортного модуля, т.е. ЭВМ, и,

Раздел I.

77

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

Блоки связи формируются в транспортных модулях на каждом конце соединения и содержат в себе следующие параметры соеди­ нения: 1) адрес порта местной транспортной службы; 2) адрес мест­ ного процесса; 3) адрес порта удаленной транспортной службы; 4) адрес удаленного процесса; 5) состояние связи (установлена, разъ­ единена, разорвана); 6) параметры услуг, обеспечиваемых связью; 7) емкость передающего и принимающего буферов, используемых для хранения сообщений; 8) очередные номера N(S) - передаваемого и N(R) - принимаемого сообщения; 9) максимальные номера M(S) - передаваемого и M(R) - принимаемого сообщения. Фрагменты бло­ ков связи изображены на рис.3.1. Соединение установлено, когда в местном и удаленном транспортных модулях созданы блоки связи, идентифицирующие соединение. При организации соединения номера сообщений N(S) и N(R) устанавливаются в 0, а максимальные номера M(S) и M(R) должны быть равны по крайней мере 1.

Передача сообщений организуется на основе кредитов - разре­ шений на прием определенного числа сообщений. Кредит характери­ зуется максимальным номером принимаемого сообщения M(R), и зна­ чение M(R)-N(R) определяет число сообщений, которое может принять транспортная служба. Кредиты передаются с командой «Прием», фор­ мируемой процессом на противоположном конце соединения. Эта ко­ манда сообщает передающему модулю максимальный номер сообще­ ния M(S), который может быть принят удаленным транспортным мо­ дулем. Доставка сообщений производится процедурой «Передача». Ко­ личество реализуемых процедур «Передача» определяется имеющимся кредитом - наибольшим номером передаваемого сообщения M(S). Процедуры «Отмена передачи» и «Отмена приема» аннулируют выпол­ нение процедур «Передача» и «Прием». Процедура «Отмена приема»

изымает кредиты на передачу сообщений.

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

78 Глава 5. Транспортная служба ИТС

переносимый протоколом Х.25 через сеть вне зависимости от со­ стояния передачи других пакетов. Для подготовки к приему таких пакетов удаленный процесс в период установления соединения должен инициировать процедуру «Прием прерывания».

В результате сбоев в работе оборудования и ошибок при переда­ че сообщений транспортные модули могут выйти из синхронизма, что проявляется в нарушении последовательности номеров сообщений. В этом случае передача сообщений прекращается и выполняется проце­ дура «Сброс», приводящая к уничтожению очередей сообщений и пе­ редаче пакета «Запрос сброса» в виртуальный канал. Этим пакетом уда­ ленный процесс извещается о сбросе средств взаимодействия. Транс­ портные модули уничтожают блоки связи и начинают повторно вы­ полнять действия по установлению нового соединения.

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

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

Связь между процессами закрывается процедурами «Разъедине­ ние» и «Разрыв». Первая закрывает соединение упорядоченным обра­ зом: в ответ на запрос «Разъединение» удаленный процесс посылает ко­ манду «Разъединение» после передачи последнего сообщения; по полу­ чении команды «Разъединение» соединение в сети передачи данных и блоки связи аннулируются. Процедура «Разрыв» инициируется про­ цессом при нарушении связи в местном транспортном модуле и вызы­ вает немедленное прекращение связи. При этом удаленному процессу посылается диагностическая информация о причине прекращения связи, все выданные в транспортную службу и не доставленные сооб­ щения стираются, и виртуальное соединение ликвидируется.

Глава 6. Протоколы высокого уровня в ИТС

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

Протоколы высокого уровня устанавливают стандартные для се­ ти способы (процедуры) выполнения прикладных функций. Необхо­ димость стандартизации способов вызвана неоднородностью ИТС - разнотипностью ЭВМ, операционных систем и терминалов. Реализа­ ция соответствующих протоколов в отношении организации и логиче­ ского подключения портов к процессам возлагается на средства сеан­ сового уровня управления, а в отношении сопряжения разнородных процессов - на средства представительского уровня - службу пред­ ставления данных. Важнейшая функция службы представления дан­ ных - сделать возможным сопряжение разнотипных терминалов с про­ граммами, т.е. с порожденными ими процессами. Одной из главных функций этой службы является шифрование данных пользователя.

Рис. 6.1. Организация взаимодействия процессов

80

Глава 6. Протоколы высокого уровня в ИТС

В качестве терминалов - источников данных могут выступать клавиатуры, манипуляторы типа «мышь», устройства ввода с маг­ нитных носителей, электронных накопителей и др., а в качестве терминалов - устройств вывода - символьные дисплеи с различными размерами экранов, алфавитами и способами отображения данных (символьный, строчный, страничный), графические дисплеи, печа­ тающие устройства с разным алфавитом и длиной строк и пр. При всем многообразии типов ЭВМ, ОС и программ должно быть воз­ можным взаимодействие каждой программы с терминалами любого типа. Аналогичные проблемы возникают при вводе заданий в ЭВМ, оснащенных различными ОС, каждая из которых работает со спе­ цифичным языком управления заданиями; при перемещении фай­ лов между различными ЭВМ, функционирующими под управлени­ ем разных ОС; при распределенной обработке данных, выполняе­ мой несколькими программами, находящимися в разных ЭВМ сети.

Служба представления данных (уровень 6 ЭМВОС) обеспечи­ вает стандартные способы взаимодействия процессов при решении задач в вычислительной сети и образует единый интерфейс для ОС и прикладных программ (рис. 6.1). Эти функции реализуются про­ граммными интерпретаторами и трансляторами, которые преобра­ зуют данные и процедуры, соответствующие протоколам взаимо­ действия процессов, в форму, определяемую спецификой исполь­ зуемых для организации процессов ОС и ЭВМ.

Прикладной

уровень

Уровень

представления

Рис. 6.2. Сопряжение программы с терминалом

6.1.Протокол виртуального терминала

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

Раздел I.

81

описания структуры данных (порождаемых и отображаемых тер­ миналом), алфавита и его управляющих символов, порядка обмена управляющей информацией и данными. Прикладные программы разрабатываются с ориентацией на виртуальные терминалы и со­ прягаются с реальными терминалами в соответствии с рис. 6.2. Ин­ терфейс между программой и терминалом определяется протоколом виртуального терминала (ПВТ), в соответствии с которым интерпре­ тируются операторы ввода-вывода, входящие в текст программы. Сообщения, передаваемые от программы в транспортную сеть, ин­ терпретируются средствами терминальной системы в структуры данных, коды символов, команды и ответы, соответствующие типу реального терминала, обслуживаемого ТВМ.

Для организации взаимодействия реальных терминалов с дру­ гими компонентами ИТС - программами и терминалами - ITU-T ре­ комендует схему, приведенную на рис. 6.3. Виртуальный терминал взаимодействует с системами ИТС в соответствии с интерфейсом Х.25, определяющим порядок передачи данных через сеть с коммутацией пакетов. Процедуры взаимодействия с сетью, преобразования пакетов в символы и обратно, а также управления реальным терминалом реа­ лизуются ГВМ или ТВМ, к которой подключен реальный терминал.

Основные функции виртуального терминала обеспечиваются пакетным адаптером данных (ПАД), один из способов построения ко­ торого определен Рекомендацией Х.З ITU-T. ПАД (средство сборкиразборки пакетов) является посредником между посимвольным терминалом, вводящим и выводящим данные в виде последователь­ ности символов, и СПД. На адаптер возлагаются следующие основ­ ные функции:

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

оразборка полей данных пакетов на символы;

оуправление установлением соединения между терминалом и системами СПД и разъединением;

огенерация управляющих сигналов для посимвольного терми­ нала;

опередача символов с необходимыми стартстопными сигнала­ ми в терминал и прием символов из терминала;

ораспознавание и интерпретация сигналов прерывания и раз­ рыва, формируемых терминалом.

Указанные функции реализуются в нескольких модификаци­ ях, выбор которых определяется 18 параметрами. Значения пара­ метров, настраивающих пакетный адаптер на один из возможных режимов функционирования, могут устанавливаться, читаться и изменяться каждым из двух взаимодействующих процессов (мест­ ным и удаленным терминалом).