ваемые, связные процессоры. Линейный адаптер (ЛА) подключается с одной стороны к одному из каналов ввода-вывода ЭВМ и с другой стороны к АПД, обслуживающей данный канал связи. По-другому можно сказать, что линейный адаптер является интерфейсной схемой, обеспечивающей сопряжение аппаратуры передачи данных с ЭВМ. Интерфейс реализует следующие функции:
- дешифрирует команды, поступающие от устройств ввода-вывода ЭВМ и преобразует их в сигналы, управляющие работой АПД;
- преобразует последовательности слов, поступающие по каналу ввода-вывода ЭВМ в последовательность битов, передаваемых далее через АПД в линию связи. Выполняет обратное преобразование принимаемых от АПД сигналов;
- осуществляет буферизацию данных;
- формирует и передает в каналы ввода-вывода ЭВМ информацию о готовности/неготовности и работоспособности аппаратуры линейного адаптера и аппаратуры АПД.
В вычислительных системах, обеспечивающих работу многочисленных пользователей, линейные адаптеры не получили широкого распространения в связи с большими аппаратными затратами. Необходимо каждого пользователя или каждый канал связи обеспечить отдельным линейным адаптером.
Мультиплексор передачи данных (МПД)– устройство, обеспечивающее сопряжение ЭВМ с несколькими каналами связи. МПД подключается точно также и реализует те же функции, что и линейный адаптер и отличается только возможностью по соответствующим командам каналов ввода-вывода ЭВМ подключать к ним требуемый канал связи, то есть выбранного пользователя или пользователей.
Для расширения функциональных возможностей МПД и разгрузки центрального процессора, в его состав вводится «свой» микропроцессор, работающий по собственной программе. Программа может храниться либо в памяти компьютера, либо в памяти микропроцессора, которая может также использоваться в качестве буферной памяти для временного хранения сообщений, передаваемых между ЭВМ и каналами связи. За счет этого снижается частота обращений ЭВМ к МПД, что позволяет подключать к МПД скоростные каналы связи. Примером функции, расширяющей возможности МПД является повышение достоверности передаваемых и принимаемых данных за счет выявления ошибок и повторного их приема или передачи.
Полное отделение предварительной обработки сообщений от функций центрального процессора могут обеспечить связные процессоры. Связной процессор представляет собой микро- или мини-
ЭВМ, к которой в качестве периферийных устройств подключаются ЛА и АПД. Сам связной процессор подключается к какому-либо каналу ввода-вывода ЭВМ посредством адаптера межмашинной связи и исполняет роль ее сателлита. Им реализуются все функции управления каналами связи, а также предварительная обработка сообщений, за счет чего существенно уменьшается нагрузка на центральный процессор.
6.4 Особенности программных средств телеобработки
Принцип телеобработки заключается в обработке сообщений, посылаемых абонентами (пользователями) по каналам связи из абонентских пунктов (с рабочих мест) в ЭВМ и возврат результатов пользователям. Процесс обработки сообщений, в основном, реализуется с помощью операционной системы (ОС), системных обрабатывающих или прикладных программ. Однако при этом необходимо выполнить ряд дополнительных функций: установить соединение с ЭВМ через коммутируемые каналы; начать и завершить работу по установленным для пользователей правилам; иметь возможность редактирования принимаемых и отправляемых сообщений, например, путем вставки даты, времени суток, номера сообщения и т.д.; произвести, при необходимости, обработку сообщений, содержащих ошибки; возобновить обработку сообщений после отказа технических средств – рестарта. В системах телеобработки имеется также возможность обмена сообщениями между пользователями – через ЭВМ. Для реализации всех перечисленных функций необходимы программы управления вводом выводом данных через мультиплексоры передачи данных (МПД) и аппаратуру передачи данных (АПД), обычно включаемые в состав ОС. Совокупность программ, обеспечивающих взаимодействие сообщений пользователя с его прикладными программами, находящимися в ЭВМ, названа программами телекоммуникационного метода доступа (ТМД).
Программы ТМД могут обеспечивать пользователя как набором только простейших средств управления работой с сообщениями, так и расширенными возможностями. Расширенные возможности программ ТМД включают автоматическое управление ресурсами телеобработки и предоставляют пользователям гибкий язык высокого уровня для управления потоками сообщений между абонентскими пунктами (АП - АП) – коммутация сообщений, а также между АП и прикладными программами (ЭВМ) – обработка сообщений.
Схема обработки сообщений под управлением программ телекоммуникационного доступа представлена на рисунке 6.6.
С помощью языка управления сообщениями можно активизировать каналы связи и управлять передачей сообщений между ЭВМ и АП. Можно также вставлять и удалять символы управления каналами связи, использовать и освобождать буфера для хранения сообщений после их приема и при отправления; направлять сообщения к абонентским пунктам и прикладным программам, проводить корректировку и специальную обработку сообщений, содержащих ошибки.
Телеобработку сообщений можно выполнить примерно в следующем порядке.
1. На абонентском пункте подготавливается сообщение путем набора его на клавиатуре или оно подготовлено заранее и может быть введено в канал с магнитного диска, перфоленты или магнитной ленты.
2. Абонентский пункт передает сообщение через АПД в канал связи и далее опять через АПД и аппаратуру сопряжения с ЭВМ (ЛА или МПД) сообщение попадает в оперативную память. Находясь в оперативной памяти, сообщение с помощью программ телекоммуникационного доступа (ТМД) ставится во входную очередь, проходит первоначальный контроль и при необходимости перекодируется во внутренний код ЭВМ. При обнаружении ошибки в передающий пункт направляется сигнал об ошибке, инициирующий повторную передачу.
3. Сообщение может быть подвергнуто редактированию – удалению или вставке управляющих символов, включению даты, времени и порядкового номера сообщения.
4. После входной обработки сообщение поступает либо в очередь на обработку прикладной программой, либо в очередь к каналу связи и после возможного ре-
дактирования выводится по каналу к адресуемому абоненту.
5. Если сообщение предназначено для прикладной программы, то средствами ТМД данные из сообщения передаются в рабочую область программы. После этого сообщение исключается из очереди на обработку.
6. Прикладная программа генерирует ответные сообщения, которые средствами ТМД обеспечиваются адресами и прочими атрибутами сообщения и поступают в выходную очередь.
7. Выходные сообщения могут, при необходимости, подвергаться дополнительной обработке в виде кодового преобразования, редактирования, фиксации в системном журнале компьютера и др.
8. Завершением телеобработки является выборка средствами ТМД сообщения (оно по-прежнему находится в оперативной памяти компьютера) из выходной очереди (по порядку) и передача его через соответствующий канал связи абоненту.
Вопросы и задания для самопроверки
6.1. Дайте определение системы телеобработки.
6.2. Поясните назначение и функции абонентских пунктов (АП).
6.3. Каким способом абонентские пункты подключались к ЭВМ?
6.4. Что подразумевается под аппаратурой передачи данных (АПД). Ее назначение?
6.5. Дайте определение канала связи.
6.6. Знаете ли вы, для чего применяются мультиплексоры передачи данных (МПД)?
6.7. Определите понятие «выделенный канал».
6.8. Поясните определения двухточечного и многоточечного соединений.
6.9. Каким образом можно скоммутировать связь между двумя абонентами?
6.10. Приведите пример возможного эффективного использования системы телеобработки.
6.11. Назовите типы линий связи в системе телеобработки.
6.12. Что такое полоса пропускания динии связи, какое влияние она оказывает на прохождение сигнала?
6.13. Как построить амплитудно-частотную характеристику линии связи?
6.14. Дайте определение пропускной способности канала. Напишите зависимость пропускной способности канала связи от его полосы пропускания (формула Шеннона).
6.15. Каким образом можно повысить информационность сигнала?
6.16. Назовите способы модуляции.
6.17. Приведите примеры способов аналоговой модуляции.
6.18. С помощью какого устройства осуществляют модуляцию?
6.19. С какой целью применяют кодирование сигналов?
6.20. Каким образом можно «привязать» синхросигнал к информационному сигналу?
6.21. К какому виду аппаратуры относят модемы в системах телеобработки?
6.22. Расскажите о назначении модемов.
6.23. Какую роль играет синхронизация при передаче и обработке сигналов?
6.24. Как делятся каналы в зависимости от порядка передачи данных? Поясните на примерах порядок работы каналов для каждого вида передачи данных.
6.25. Кратко опишите назначение и основные функции линейных (сетевых) адаптеров.
6.26. Кратко опишите назначение и основные функции мультиплексоров передачи данных.
6.27. Дайте пояснение понятию связного процессора.
6.28. Какие функции возложены на программы телекоммуникационного доступа?
6.29. В каком порядке рекомендуется выполнять телеобработку сообщений?
Глава седьмая
Вычислительные сети
7.1 С чего все начиналось
Появление первых вычислительных машин почти сразу определило и ближайшие задачи в процессе их развития – это наращивание вычислительной мощности. Развитие началось в 50-х годах прошлого столетия. Компьютеры тех лет отличались громоздкостью, дороговизной и тем, что эксплуатировать их могли только специально обученные люди. Поэтому для эксплуатации вычислительных машин создавались отдельные структуры, включающие специалистов по электронике и программистов различной специализации. Чаще всего эти структуры называли вычислительными центрами. Компьютеры вычислительных центров не были приспособлены к интерактивной работе пользователей. Напомним, что понятие интерактивности в данном контексте означает двустороннюю связь между пользователем и компьютером. Машины использовались либо для решения отдельных задач, либо в режиме, так называемой, пакетной обработки.
Процесс пользования вычислительными средствами протекал примерно в такой последовательности. Пользователь или пользователи излагали свои проблемные задачи программистам, которые с помощью существующих языков программирования разрабатывали программы для этих задач. Программы задач и данные к ним переносились (набивались) на перфокарты (перфоленты и другие носители) и вводились через специальные устройства ввода в компьютер (память компьютера) через накопители на магнитных лентах (магнитофоны), магнитные барабаны, а позднее через накопители на магнитных дисках. Ввод осуществлялся сразу некоторой совокупности программ (задач) – пакетами, и поэтому такой режим обработки был назван пакетным.
По завершении последовательного выполнения задач их результаты в виде распечаток на устройствах печати (принтерах) передавались пользователям. Ввод программ (задач) и наблюдение за их решением осуществлялся специально подготовленным персоналом – операторами. При этом пользователи даже не появлялись вблизи компьютеров (чаще всего их не впускали даже в вычисли
тельные центры) и они не представляли себе ту вычислительную машину, на которой решалась их задача. Пакетный режим обработки данных оказался в то время самым эффективным использованием вычислительной техники.
Вычислительные машины управлялись с помощью пультов управления, и прогрессивным инструментом являлась пишущая машинка, с помощью которой можно было ввести нужные команды и узнать реакцию компьютера, получив напечатанный на этой же машинке ответ компьютера. Такой способ управления, конечно же, требовал определенных специальных знаний, и для обычного пользователя это было бы просто не под силу.
По мере развития и совершенствования вычислительной техники, появились новые средства взаимодействия человека с компьютером (как теперь говорят, новый интерфейс) в виде клавиатуры и алфавитно-цифровых дисплеев, получивших впоследствии название терминалов.
Теперь намного улучшились условия диалога оператора и компьютера. Появилась возможность управлять процессами решения задач уже не одному оператору, а сразу нескольким операторам. Появилась возможность автоматизировать процесс программирования задач.
Чуть позже появилась возможность взаимодействовать с компьютером, находясь не в непосредственной близости с ним, а на некотором отдалении.
Программисты уже могли работать с компьютером, находясь на своем рабочем месте. Появились и некоторые, как теперь таких
называют, продвинутые пользователи, умеющие работать со своими программами (задачами) непосредственно. Начали развиваться интерактивные терминальные системы, работающие теперь уже в режиме с разделением времени. Каждый пользователь получал в свое распоряжение терминал с клавиатурой, и оборудование, обеспечивающее его подключение к компьютеру (модем), и мог вести с ЭВМ диалог.
Терминалы стали «выходить» за пределы вычислительных центров и рассредоточиваться по всему предприятию и даже за его пределами. И хотя вычислительные мощности оставались централизованными, такие функции, как ввод-вывод данных стали распределенными. Терминалы соединялись с компьютерами сначала через телефонные, а затем выделенные кабельные сети с помощью модемов. Пример такой структуры представлен на рисунке 7.1.
Реакция вычислительных систем была достаточно быстрой, и пользователи не замечали параллельной работы с этим же компьютером других пользователей.
Теперь пользователь мог получить доступ к общей информации (к общим файлам) и периферийным устройствам, чувствовал себя единоличным хозяином компьютера. Он мог запустить свою программу в любое время и почти сразу же получить результат.
Позже появились системы, реализующие связи компьютер-компьютер, в том числе и удаленные. В таких системах появились возможности обмена данными и файлами между компьютерами в автоматическом режиме и другие, что и является базовым механизмом вычислительной сети.
Таким образом, многотерминальные системы, работающие в режиме с разделением времени «подтолкнули» развитие вычислительной техники в направлении создания вычислительных региональных и глобальных сетей. Какую выгоду, какую пользу получают пользователи, применяя такие способы обработки информации и данных? Сетевая обработка – качественно новая организация обработки данных.
7.2 Эффект сетевой обработки данных
Прежде всего, пользователи вычислительных сетей имеют возможность обмена различной информацией, в том числе, и данными, используемыми в различных областях производственной сферы. Информационные связи позволяют коллективам пользователей решать задачи моделирования сложных систем, выполнять проекты, используя распределенные в сети программное обеспечение и базы данных. Кроме этого, они также имеют полную доступность к ресурсам любой части сети. Например, возможность использовать память ЭВМ узлов сети для хранения данных и их
процессоры для обработки этих данных. Пользователям доступнопрограммное обеспечение, имеющееся в сети и базы данных, размещенные в сети.
Вычислительные сети позволяют повысить уровень загрузки ЭВМ, программного обеспечения и баз данных. Это обусловлено тем, что вычислительная сеть обслуживает большое число пользователей, поэтому нагрузка, создаваемая ими всеми на сеть подвержена колебаниям в меньшей степени, чем нагрузка, создаваемая одним пользователем в силу ее случайности. Например, если средне квадратическое отклонение нагрузки, создаваемой одним пользователем равно σ, то n пользователей создают нагрузку, среднее квадратическое отклонение которой равно , то есть в раз меньше, создаваемой одним пользователем. Практика показала, что за счет лучшей загрузки ресурсов сети, стоимость обработки данных средствами сети снижается в полтора Ошибка! Не указано имя файла.раза и более по сравнению с обработкой данных на несвязанных ЭВМ.
7.3 Характеристики сети
Основными характеристиками сети называют: операционные возможности, время доставки сообщений, производительность и стоимость обработки данных.
Операционные возможности сети связывают с дополнительными возможностями, обеспечивающими пользователей вычислительных сетей. К таковым можно отнести следующие возможности:
- удаленный ввод заданий с любых терминалов, которые будут выполняться на какой-то другой ЭВМ, обладающий требуемыми вычислительными ресурсами в диалоговом или, например, в пакетном режиме;
- передача текстовых, звуковых сообщений или изображений между пользователями;
- передача наборов данных (файлов) между любыми ЭВМ сети;
- доступ к удаленным файлам, обработка этих файлов, хранимых на удаленных ЭВМ;
- выдача или получение справок об информационных и программных ресурсах;
- защита данных и ресурсов от несанкционированного доступа;
- пользование базами данных, размещенных на нескольких ЭВМ (распределенными базами данных);
- распределенная обработка данных;
- параллельная обработка несколькими ЭВМ и др.
Производительность сети определяют суммарной номинальной (паспортной) производительностью главных ЭВМ.
Время доставки сообщений определяется как среднестатистическое значение времени от момента передачи сообщения в сеть, до момента получения его адресатом.
Цена обработки информации формируется из стоимости объема ресурсов (процессорное время, объем памяти – количество передаваемых данных и др.), используемых для ввода данных и их обработки, а также от режима передачи и обработки данных на участках сети.
Названные характеристики зависят от структуры сети (ее состава), метода передачи данных, способов установления соединений между абонентами сети, выбора маршрутов и т.д.
Характеристики, конечно же, зависят и от нагрузки, создаваемой на сеть пользователями и определяемой числом терминалов работающих в рассматриваемый отрезок времени и интенсивностью взаимодействия, то есть количеством данных, перемещаемых за единицу времени на данном участке.
7.4 Модель ЭВМ, работающей в сети
Процессы, происходящие в локальной вычислительной машине, не назовешь простыми. Представьте, что нашей задачей является необходимость обратиться к файлу, размещенному на магнитном диске и, в котором, находятся требуемые нам данные. Запрос вначале анализируется соответствующими программами состав символьного имени файла и определяется его уникальный идентификатор. Затем по уникальному имени определяются адрес его нахождения, права доступа к файлу и далее после расчета координат области файла, содержащей требуемые данные, выполняется физическая передача его внешнему устройству вывода - терминалу. Этот пример показывает сколь много действий необходимо выполнить системе, чтобы выполнить сравнительно простую операцию. А если система (ЭВМ) работает в сети? Насколько усложняются процессы обработки информации, и возрастает их количество.
Известно, что для решения сложных задач используется универсальный прием – декомпозиция, то есть разбиение одной сложной задачи на несколько более простых задач-модулей. Каждому модулю определяется его основная функция и правила их взаимодействия для достижения общей конечной цели – получения результата решения.
При декомпозиции часто используется многоуровневый подход. Суть его заключается в том, что все множество модулей разбивается на уровни. Уровни образуют иерархию, то есть нижеле-
жащие уровни являются подчиненными по отношению к верхним. Модули одного уровня для выполнения своих задач обращаются с запросами только к модулям непосредственно примыкающего нижележащего уровня. Результаты же работы модулей некоторого уровня могут быть переданы только модулям соседнего вышеле-жащего уровня. Правила взаимодействия уровней по вертикали назвали интерфейсами. Интерфейс определяет набор функций, которые нижележащий уровень предоставляет вышележащему. Важным в такой структуре является возможность модификации отдельных модулей без изменения остальной части системы.
На основе описанного выше логического подхода для решенияможет быть построена многоуровневая модель компьютера, в которой для каждого уровня определен полный перечень функций и операций, включая и названия уровней. Взаимодействия между уровнями реализуются через систему интерфейсов. Взаимодействие через интерфейс можно иллюстрировать примером взаимодействия директора и его подчиненного, например, секретаря. Директор может отдавать свои распоряжения секретарю либо устно, либо через селекторную связь, или с помощью журнала распоряжений и исполнений.
С помощью такой модели легче описать и понять процессы, происходящие в компьютере и тем более процессы, происходящие между компьютерами, взаимодействующими в сети или через систему межкомпьютерной связи. В начале 80-х годов рядом международных организаций по стандартизации при участии фирм разработчиков и изготовителей вычислительной техники была предложена модель, названная моделью взаимодействия открытых систем (Open System Interconnection, OSI) или моделью OSI. Указанная модель показана на рисунке 7.2. Из рисунка сразу можно сделать вывод сколь много функций выполняет аппаратура компьютера и его программное обеспечение для того, чтобы предварительно обработать и передать информацию (сообщение) от одного пользователя другому. Приведем краткие функциональные характеристики каждого уровня.
Физический уровень. Физический уровень (Physical layer) преобразует информацию, обрабатываемую процессором в параллельном коде, в последовательность бит (физических сигналов) и направляет в физический канал связи, где передающей средой могут работать: витая пара (пара свитых проводов), коаксиальный кабель (по типу телевизионного) или оптоволоконный кабель. Для этого уровня важна не только передающая среда, характеризующаяся такими характеристиками как полоса пропускания, пропускная способность, помехозащищенность, волновое сопротивление, но и параметры электрических сигналов, например, крутизна фронтов импульсов, уровни напряжений или токов, тип кодирования сигналов и др.
В компьютере функции физического уровня выполняются сетевым адаптером или последовательным портом.
Канальный уровень. На физическом уровне информация (данные) пересылаются без учета возможной занятости линии связи. Задача проверки доступности передающей среды возложена на канальный уровень (Data Link layer). Передаваемые биты данных группируются в последовательности названные кадрами (frames). Каждый кадр предваряется заголовком, содержащим некий код, обозначающий его начало, адреса отправителя и получателя и
управляющее поле, несущее служебную информацию, необходимую при процессе его «транспортировки». Затем следует последовательность данных стандартизированного объема, и заключает кадр, так называемый, концевик, определяющий окончание кадра. Формат кадра показан на рисунке 7.3. Такая структура данных обеспечивает корректность передачи, а контрольная сумма данных, помещенная в концевике, используется в качестве индикатора наличия или отсутствия ошибки.
Описанная структура данных применяется для их передачи в локальных сетях, но только с совершенно определенной топологией связей, как на рисунке 7.4.
Обратите внимание на рисунок 7.2. Канальные уровни двух компьютеров соединены стрелкой с надписью «Протокол». Это означает, что взаимодействие этих уровней выполняется в соответствии с некими формализованными правилами, называемыми протоколами, и определяющими последовательность и формат сообщений, которыми обмениваются компьютеры. Примерами протоколов канального уровня в современных сетях и ЭВМ можно назвать протоколы Ethernet, Token Ring, FDDI, 100VG-AnyLAN. Тем не менее, в сетях любых сложных топологий и технологий, функций канального уровня для транспортировки сообщений оказывается недостаточно, поэтому в модели OSI решение этой задачи выполняют сетевой и транспортный уровни.
Сетевой уровень (Network layer). Сетевые уровни компьютеров и коммуникационного оборудования сетей служат для образования единой транспортной системы, объединяющей множество сетей. Здесь следует сделать остановку. Дело в том, что на сетевом уровне термин сеть принято наделять специфическим значением. Под сетью понимают совокупность компьютеров, соединенных между собой в соответствии с одной из стандартных топологий (см. рис. 7.4) и применяющих для передачи информации один из протоколов канального уровня, определенный для данной топологии.
Внутри сети доставка сообщений (данных) обеспечивается канальными уровнями компьютеров. А за доставку данных между сетями отвечают сетевые уровни. Сетевые уровни также поддерживают возможность правильного выбора маршрута коммуникационным оборудованием сети. Это выполняется даже в том случае, когда структура связей между соединяемыми сетями отличается от принятой в протоколах канального уровня. Следует заметить, что сети могут использовать совершенно различные принципы передачи сообщений между пользователями.
Сети соединяются между собой коммуникационными устройствами, называемыми маршрутизаторами (рис. 7.5). Задачей маршрутизаторов является передача сообщения от пользователя-отправителя (А), находящегося в одной сети пользователю-получателю (В), находящемуся в другой сети. При этом число маршрутизаторов может быть значительным. Таким образом, маршрут представляет собой последовательность маршрутизаторов, через которые проходит пакет. Проблема выбора пути называется
маршрутизацией, и ее решение является одной из главных задач сетевого уровня. Сообщения сетевого уровня принято называть пакетами (packets). Пакет состоит из заголовка и поля данных. Ниже по тексту в качестве примера приведена структура заголовка пакета, соответствующая требованиям протокола IP (рис. 7.6).
Для общей ориентировки опишем содержание полей заголовка.
Поле «Номер версии» (Version) указывает версию протокола IP.
Поле «Длина заголовка» (IHL) указывает значение длины заголовка, измеренное в 32-битовых словах. Обычно длина заголовка - 20 байт (пять 32-битовых слов), но при увеличении объема служебной информации в поле «Опции», заголовок может иметь 60 байт.
Поле «Тип сервиса» (Type of Service) указывает приоритетность пакета (PR) двоичными значениями от 0 до 7. Ноль – нормальный пакет – низкий приоритет, семь – пакет с управляющей информацией – высокий приоритет. Маршрутизаторы и компьютеры могут обрабатывать пакеты с более высокими приоритетами в первую очередь. Бит D (delay) этого поля со значение 1 обозначает требование к выбору маршрута для доставки пакета с минимальной задержкой. Бит T (throughput) – требует от канала связи максимальной пропускной способности, а бит R (reliability) – максимизации надежности доставки. Резервные биты (окрашены) имеют нулевые значения.
Поле «Общая длина» (Total Length) означает общую длину пакета с учетом заголовка и поля данных. Стандартом предусмотрена длина пакета до 576 байт.
Поле «Идентификатор пакета» (Identification) - используется для распознавания пакетов. Если пакет разбит на подпакеты –