Технологии сетевой передачи данных по коммутируемым каналам

ТЕЛЕКОММУНИКАЦИИ

УДК 681.324

ТЕХНОЛОГИИ СЕТЕВОЙ ПЕРЕДАЧИ ДАННЫХ ПО КОММУТИРУЕМЫМ КАНАЛАМ

ЛЕВЫКИН В.М., САЕНКО А.В.____________

Рассматриваются вопросы реализации удаленного взаимодействия компонентов сети по модемным коммутируемым каналам. Представлены результаты анализа технологий, основанных на FTP, MAPI, RAS, TAPI, Win32 API. Для каждой из перечисленных технологий были разработаны программные модули, позволяющие вести автоматическую передачу данных в фоновом режиме, и выявлены области возможного их использования.

1. Актуальность

В современных компьютерных корпоративных системах все шире используются технологии не только распределенного размещения ресурсов, но и удаленного доступа к ним. В связи с этим для передачи специальной информации между серверами возникает необходимость рассылки, которая не является результатом использования электронной почты, а представляет межпроцессное взаимодействие. Решение задачи обмена данными в большинстве случаев требует учета специфики работы всей системы, что неизбежно ведет к необходимости либо изменения кода программы (для обеспечения ее эффективности), либо включения в нее механизмов учета всевозможных условий работы, что, как следствие, приводит к усложнению и громоздкости. В большинстве случаев разработчики приходят к соглашению, что требуется собственный продукт, отвечающий за обеспечение необходимого сервиса. В этом случае возникает новая проблема: какую из существующих технологий положить в основу разработки систем для получения действительно эффективного решения и, особенно, как обеспечить эффективность технологии при условии передачи данных по модемным каналам в многоуровневой сети.

2. Постановка задачи

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

сбоев в линиях, к обрывам связи в каналах и падению пропускной способности.

Анализ показывает, что для разных сетевых операционных систем существует набор средств межпроцессного взаимодействия, применимого в условиях удаленных рабочих станций. К таким технологиям можно отнести FTP, MAPI, RAS, TAPI, Win32 API. В итоге задача сводится к использованию наиболее эффективной технологии, которая бы обеспечила передачу данных. Так как какой-либо сравнительный анализ этих технологий для указанных условий отсутствует, то основной целью исследований есть выяснение областей применения выделенных технологий в описанных выше системах и выявление их устойчивости в условиях нестабильности характеристик каналов.

3. Методика исследований

Исследования охватывают технологии FTP, MAPI, RAS, TAPI, Win32 API. Для их сравнения между собой предложен набор оценочных показателей. К ним можно отнести показатели, характеризующие программную реализуемость модулей с использованием конкретной технологии, и показатели, характеризующие применимость технологии с точки зрения возможности контроля самого потока данных.

Исследования проводятся путем логического анализа, при этом производится формальное описание технологии по соответствующему показателю и дальнейшее сравнение их характеристик между собой.

Показатели сравнения технологий:

— платформная независимость;

— аппаратная независимость;

— простота программного использования;

— быстрый выход на состояние готовности передачи;

— возможности управления процессом передачи данных;

— особенности технологии.

Описание показателей

Платформная независимость подразумевает возможность реализации технологии по крайней мере на двух принципиально разных программных платформах. Такими платформами могут быть, например, DOS - UNIX или WINDOWS - UNIX. При этом не учитывается, каким конкретно образом реализована технология.

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

Простота программного использования является интегральным показателем. Она включает дополнительно такие показатели, как вид реализации технологии (интерфейс прикладного программи-

РИ, 2000, № 2

34

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

Быстрый выход на состояние готовности передачи характеризует для данной технологии интервал времени для согласования всех параметров принимающей и получающей сторон. При этом предлагается считать, что если требуется до 5 с — то это быстрая технология, если же требуемое время превышает 10 с — то она медленная.

Возможность управления процессом передачи данных свидетельствует о предоставлении технологией средств реализации самого механизма передачи данных.

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

4. Анализ результатов исследований

Анализ использования технологий показывает, что их можно разделить на две группы: относительно медленные, требующие установления полного сетевого соединения и согласования бюджетов клиента и сервера ( FTP, RAS, MAPI), и относительно быстрые, предоставляющие интерфейс доставки данных (TAPI, Win32 API). Эти технологии не являются взаимоисключающими и дублирующими, они дополняют друг друга и могут быть использованы для решения одних и тех же задач.

Ниже подробно рассмотрена каждая из технологий.

Технология FTP (File transfer protocol) осуществляет передачу данных между двумя FTP-хостами. Используемый протокол является более совершенным по сравнению с TFTP (Trivial file transfer protocol), который не гарантирует надежной передачи данных и не управляет самим потоком, или с SFTP (Simple File Transfer Protocol), открывающим только одно TCP соединение для данных и команд. В FTP технологии устанавливаются два TCP соединения, одно их которых служит для управления потоком передаваемых данных, а другое — для передачи самих данных. Передаваемые данные при этом представляются в виде файлов и каталогов, что с присутствием в этой технологии стандартных команд манипуляции данными (скопировать, создать, перенести, удалить и создать файл либо директорию) делает ее особо привлекательной. Данная технология имеет программные реализации на всех основных платформах, таких как Windows и Unix, преимущественно в виде встроенных модулей в Web-серверы. К ее преимуществам можно отнести независимость FTP протокола от программных и аппаратных платформ, относительную простоту командного использования этого протокола, отсутствие требований к объемам передаваемой информации, высокую достоверность данных (поддержка TCP). К недостаткам относится невоз-

можность контроля процесса передаваемых данных, изменение алгоритма передачи, проверки и т.п. Областью применения такой технологии, прежде всего, являются сети гетерогенного содержания с операционными системами, поддерживающими данный протокол.

Технология MAPI (Mail/Messaging Application Programming Interface) представляет собой довольно мощный механизм, разрабатываемый на начальном этапе фирмой Microsoft и впоследствии расширенный совместно с такими фирмам как Lotus и Intel. С начала реализации технологии это был набор функций прикладного программирования, впоследствии он был заменен интерфейсами COM-технологии. Суть работы механизма заключается в обмене данными между клиентскими и серверными частями, которые представляются в виде электронных сообщений определенного формата. Конкретной реализацией данной технологии в сетях Microsoft стали такие программные продукты, как Exchange Server и просто Exchange. К ее преимуществам можно отнести: единый интерфейс электронных сообщений, что делает эту технологию привлекательной для сетей с разнородным программным обеспечением, прозрачность передачи данных по различным каналам связи (в том числе и коммутируемым), масштабируемость, относительная простота создания своего программного обеспечения на основе имеющихся прикладных интерфейсов. Недостатками являются определенная громоздкость, большой объем служебной информации при передаче данных, что особенно критично для низкоскоростных каналов, невозможность управления процессом передачи данных. Область применения - крупные корпоративные компьютерные сети, использующие Wintel платформы.

Технология RAS (Remote Access Service) также является разработкой фирмы Microsoft и предоставляет программный интерфейс для установки связи с компьютерами по коммутируемым каналам. Основными результатами использования данной технологии является написание клиентской части, в то время как Microsoft предоставляет стандартный сервер удаленного доступа (Dial-up server) в качестве серверной части. Отличительными чертами RAS технологии является возможность входа в удаленную сеть с проверкой аутентификации, что позволяет использовать компьютер с модемом как мост удаленного доступа к своей сети. Представление данных в RAS технологии весьма разнообразно. Это могут быть как сетевые ресурсы, так и файлы или потоки данных. Эта технология широко используется фирмой-производителем, о чем свидетельствует написанный с ее помощью и встроенный в основные операционные системы модуль удаленного доступа. Преимуществами технологии является простота создания клиентских программных частей, контроль передаваемых данных, доступ ко всем ресурсам удаленной сети, возможность использования поверх данной технологии FTP и HTTP протоколов. К недостаткам относятся: невысокая эффективность на низкоскоростных кана-

РИ, 2000, № 2

35

лах, большой объем затрачиваемого времени на вход в сеть и проведение аутентификации, возможность некорректного завершения сеанса связи. Область применения данной технологии — как мелкие предприятия, так и корпоративные сети.

Технология передачи данных TAPI (Telephone/ Transport Application Programming Interface) представляет программный интерфейс, который разрабатывался и постоянно развивается фирмой Microsoft совместно с Intel. Она является более низкоуровневой по сравнению с RAS. TAPI технология предоставляет единый интерфейс доступа к коммуникационным устройствам. Это дает возможность непосредственно работать с устройствами различного типа и различных фирм-производителей. Для использования TAPI необходимо создание как клиентской, так и серверной частей. Технология требует наличия собственного протокола управления всем процессом передачи данных от начала соединения до его конца. Данные представляются в виде потока, разделяемого на служебную и полезную информацию. Конкретным использованием этой технологии стало большинство программных продуктов, взаимодействующих по коммутируемым каналам, в том числе и продукты на основе RAS технологии. К преимуществам TAPI можно отнести: универсальность интерфейса доступа к устройствам, полный контроль процесса приема/передачи данных, относительно быстрое создание программных модулей, отслеживание разрывов линии при передаче данных и предотвращение ситуаций возможности появления незакрытых ресурсов, незначительные изменения программы при изменении общих требований режима передачи информации или цели создания соответствующих компонент. К недостаткам относится значительный объем работ, проводимый для создания собственного протокола передачи или корректной реализации одного из существующих. Технология TAPI применятся для создания высокоэффективных коммуникационных программ с использованием собственных протоколов передачи данных.

Самой низкоуровневой является технология написания коммуникационных приложений с использованием функций Win32 API (программный интерфейс операционных систем Windows 95/98/NT). Она предполагает непосредственное обращение к коммуникационному устройству для записи или считывания данных. Применение системных функций для передачи данных по коммутируемым каналам весьма ограничено, так как приходится учитывать особенности конкретного устройства при программировании. Передаваемые данные пред-

ставляются в виде потока информации. При разработке низкоуровневых программ эта технология является одной из самых эффективных. К недостаткам технологии Win 32 API можно отнести ограниченную переносимость программ, реализуемых с ее помощью, и большой объем выполняемых работ при разработке программных модулей, их отладке или модификации. Область применения самой технологии весьма ограничена, но в сочетании с другими технологиями, такими как TAPI, она распространена очень широко.

В табл. 1 представлены обобщенные результаты проведенного анализа.

5. Методика проведения испытаний

Для всех технологий были созданы программные модули, соответствовавшие как серверным, так и клиентским частям, на основании которых были проведены исследования устойчивости работы в условиях нестабильных характеристик каналов связи и блокировок доступа. Имитировались следующие условия:

временная потеря несущей ^airier lost);

наличие помех в линии;

изменение скорости передачи;

выключение оборудования (клиентского или серверного);

отсутствие сигнала в линии (no carrier detect);

невозможность соединения с удаленной станцией (time out);

занятость линии по заданному направлению (busy);

разрыв линии в процессе передачи (hang-up).

Имитация коммутируемого канала проводилась на основе трех компьютеров, оснащенных модемами и соединенных с помощью мини-АТС. На один компьютер при этом устанавливалось два модема в целях имитации одновременного подключения нескольких клиентов.

Модули разрабатывались для использования в системах управления, обмена данными и в системах межпроцессного взаимодействия удаленных станций. Разработанные модули могут быть интегрированы в любые системы, требующие специализированных решений передачи данных в фоновом режиме, т.е. без вмешательства оператора.

Испытания и разработка проводились на кафедре ИУС (ХТУРЭ) в специализированной лаборатории на стенде “Модемные технологии передачи данных”.

Таблица 1

Сравнение технологий передачи данных

Показатели сравнения технологий

1 2 3 4 5 6

FTP + + - + - Возможность использования в гетерогенных сетях

MAPI + + - - - Предоставление единого интерфейса обмена данными

RAS - + + - - Возможность входа в удаленную сеть

TAPI - + + + + Контроль состояния передачи и оборудования

WIN32 API - - - + + Полное управление оборудованием

Примечание: “+” - наличие у технологии указанного свойства, — его отсутствие

36

РИ, 2000, № 2

6. Анализ результатов испытаний

Испытания показали, что наиболее эффективными в использовании оказались технологические модули на основе TAPI с применением функций Win32 API. Под эффективностью подразумевается наличие у технологии таких показателей, которые обеспечивают надежное и автономное взаимодействие компонент. TAPI эффективна при использовании программной платформы Windows в случае создания собственных передающих систем, требующих специальной обработки данных, контроля сценария передачи, отсутствия требования к скорости передачи (устойчива при падении скорости) и возможности управления оборудованием.

7. Анализ программного использования технологий

Результаты проведенного анализа сведены в табл. 2, в которой все технологии предлагается расположить в соответствии с некоторыми функциональными уровнями (показано соответствие с уровнями модели OSI и TCP\IP). Расположение технологии на том или ином уровне определяет, какие функции реализованы или могут быть реализованы с помощью предоставляемого программного интерфейса в рамках использования технологии. Введение собственных функциональных уровней обусловлено спецификой создания приложений для коммутируемых каналов, с точки зрения использования технологий, представляемых ими возможностей и особенностями программирования.

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

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

Выводы

Основными технологиями, позволяющими создать специализированные программные модули передачи данных в компьютерной сети для платформы Windows, являются FTP, MAPI, TAPI, Win32 API. Но именно технология TAPI позволяет построить эффективные приложения для специализированных систем

Литература: 1. Рули Дж, Мэсвин Д., Хендерсон Т., Хеллер М. Сети Windows NT 4.0.Киев.:Издательская группа Bhv, 1997. 800 с. 2. Ирвинг дела Круз. Лес Талер. Основы MAPI. М.: Издательский отдел “Русская редакция”, 1997. 552с. 3. Золотов С. Протоколы Internet. СПб.: ВНУ-Санкт-Петербург,1998. 304 с.

Поступила в редколлегию 09.02.2000

Рецензент: д-р техн. наук, проф. Хажмурадов М.А.

Левыкин Виктор Макарович, д-р техн. наук, профессор, зав. кафедрой ИУС ХТУРЭ, директор института КИТ. Научные интересы: методология, концепция, методы и средства проектирования распределенных информационных систем с установленными параметрами. Хобби и увлечения: путешествия, фотография. Адрес: Украина, 61166, Харьков, пр. Ленина 14.

Саенко Александр Владимирович, студент факультета КН ХТУРЭ. Научные интересы: сетевые технологии, администрирование и удаленный доступ к ресурсам. Хобби и увлечения: моделирование, авиация. Адрес: Украина, 61166, Харьков, пр. Ленина 14.

Таблица 2

Распределение технологий по уровням

Модели

TCP/IP OSI

Прикладной

Службы Представления

TCP/IP Сеансовый

Транспортный

Сетевой

Канальный Канальный

Физический

Типы технологий

Функциональные _____уровни____

Пользовательское приложение, интерфейс

Сетевые и межпроцессные взаимодействия, доступ к сетевым ресурсам

Создание потока данных и управление им

Низкоуровневые операции с устройством

Примечание: штриховка означает необходимость разработки соответствующих

функциональных блоков

РИ, 2000, № 2

37