Вычислительные сети
Понятие вычислительной сети
Вычислительная сеть — ВС [network] – это совокупность ЭВМ, объединённых средствами передачи данных. Средства передачи данных в ВС в общем случае состоят из следующих элементов связных ЭВМ, каналов связи (спутниковых, телефонных, волоконно-оптических и др.), коммутирующей аппаратуры и др.
В зависимости от удалённости ЭВМ, входящих в ВС, сети условно разделяют на локальные и глобальные.
Локальная сеть — ЛВС [local area network — LAN] – это группа связанных друг с другом ЭВМ, расположенных в ограниченной территории, например, в здании. Расстояния между ЭВМ в локальной сети может достигать нескольких километров. Локальные сети развёртываются обычно в рамках некоторой организации, поэтому их называют также корпоративными сетями.
Если сеть выходит за пределы здания, то такая ВС называется глобальной [wide area network -WAN]. Глобальная сеть может включать в себя другие глобальные сети, локальные сети и отдельные ЭВМ.
Глобальные сети практически имеют те же возможности, что и локальные. Но они расширяют область их действия. Польза от применения глобальных сетей ограничена в первую очередь скоростью работы глобальные сети работают с меньшей скоростью, чем локальные.
Сети предназначены для выполнения многих задач, в том числе
организация совместного использования файлов для повышения целостности информации;
организация совместного использования периферийных устройств, например, принтеров, для уменьшения общих расходов на оборудование офиса;
обеспечения централизованного хранения данных для облегчения их защиты и архивирования.
Глобальные сети придают всему этому большие масштабы и добавляют такую удобную вещь, как электронная почта.
Локальные вычислительные сети
Архитектура локальной сети
Для характеристики архитектура сети используют понятия логической и физической топологии.
Физическая топология [physical topology] – это физическая структура сети, способ физического соединения всех аппаратных компонентов сети. Существует несколько видов физической топологии.
Наиболее простой является физическая шинная топология [bus topology], в которой кабель идёт от ЭВМ к ЭВМ, связывая их в цепочку. Различают толстые и тонкие сети. Толстая сеть [thicknet] использует толстый коаксиальный кабель в качестве магистрали, от которого отходят более тонкие кабели.
В тонкой сети [thinnet] используется более тонкий и гибкий кабель, к которому напрямую подключены рабочий станции.
Сети, построенные по шинной топологии, более дёшевы. Однако если узлы сети расположены по всему зданию, то гораздо более удобным оказывается использование звездообразной топологии.
При физической звездообразной топологии [star topology] каждый сервер и рабочая станция подключаются к специальному устройству – центральному концентратору [hub], который осуществляет соединение пары узлов сети – коммутацию.
Рис. 1. Шинная топология — толстая сеть
Обрыв кабеля, идущего от одной рабочей станции не повлияет на работу остальных рабочих станций. Кроме того, взаимное расположение рабочих станций совершено не важно.
Рис. 2. Шинная топология — тонкая сеть
Если сеть имеет много узлов, причём многие располагаются на большом удалении друг от друга, то расход кабеля при использовании звездообразной топологии будет большим. Кроме того, к концентратору можно подключить лишь ограниченное число кабелей. В таких случаях применяется распределённая звездообразная топология [distributed star topology], при которой несколько концентраторов соединяются друг с другом.
Кроме рассмотренных видов соединений может применяться также кольцеобразная топология, при которой рабочие станции соединены в кольцо. Такая топология практически не используется для локальных сетей, но может применяться для глобальных.
Логическая топология сети [logical topology] определяет способ, в соответствии с которым устройства сети передают информацию от одного узла к следующему. Физическая топология не имеет прямого отношения к логической.
Различают два вида логической топологии шинную и кольцевую.
Рис. 3. Звездообразная топология
В шинной логической топологии процесс передачи данных организован следующим образом. Если какой-либо узел сети имеет данные для другого узла, то первый узел производит «оповещение» всей сети. Все остальные узлы «слушают» сеть и проверяют, предназначены эти данные для них или нет. Если предназначены, то они оставляют их себе, если нет – игнорируют. Любые передаваемые данные «слышны» всем узлам сети. Узел, который хочет передать какие-то данные, сначала «слушает» сеть, не занята ли она. Если сеть свободна, то узел передаёт данные. Если расстояние между узлами велико, и посланный ранее кем-то сигнал ещё не успел дойти до передающего узла, то может произойти конфликт, когда в сети одновременно оказываются два сообщения. В этом случае передающие узлы сети на короткое время прекращают свою работу и через некоторый случайный промежуток времени возобновляют передаче данных.
Рис. 4. Распределённая звездообразная топология
В сети с кольцевой логической топологией данные передаются по замкнутой эстафете от одного узла к другому. Когда посланное сообщение возвращается к передающему узлу, он прекращает передачу. Кольцевая топология менее подвержена конфликтам.
Аппаратные компоненты локальной сети
Основными компонентами, составляющими любую локальную сеть, являются кабели, сетевые интерфейсные платы, модемы, серверы.
Все соединения с сети осуществляются посредством специальных сетевых кабелей. Основными характеристиками сетевого кабеля являются скорость передачи данных и максимально допустимая длина. Обе характеристики определяются физическими свойствами кабеля.
Пример
Для соединения в локальных сетях используются кабели типа «витая пара» и «экранированная витая пара», коаксиальный кабель, оптоволоконный кабель.
Таблица 1. Типы кабелей
Тип кабеля
Скорость передачи данных, Мбит/с
Допустимая длина, м
Витая пара
100
90
Экранированная витая пара
100
90
Коаксиальный
10
750
Оптоволоконный
155
10000
Источник [1].
Сетевые интерфейсные платы [network interface card] представляют собой дополнительные платы, устанавливаемые на материнскую плату ПЭВМ. К сетевой плате подключаются сетевые кабели. Сетевая плата определяет тип локальной сети.
Пример
На практике используют два типа локальных сетей — Ethernet и Token Ring. Оба типа имеют модификации.
Таблица 2. Типы сетей Ethernet
Название
Физическая топология и кабель
Скорость передачи Мбит/с
10Base2
Шинная, тонкий коаксиальный
10
10BaseS
Шинная, толстый коаксиальный
10
Fast Ethernet
Звездообразная, витая пара
100
Gigabit Ethernet
Звездообразная, оптоволоконный
1000
Источник [2].
Модем [modem] – это устройство, предназначенное для связи между ЭВМ по телефонным линиям. По телефонной сети любые данные могут передаваться лишь в аналоговой форме. Данные от ЭВМ поступают в цифровом виде. Задача модема заключается в преобразовании цифровых данных в аналоговую форму и наоборот.
Сервер [server] – это любая сетевая ЭВМ, обслуживающая другие сетевые ЭВМ. Существуют серверы различных типов, которые определяются типом предоставляемых услуг.
Файловый сервер [file server] предоставляет другим ЭВМ (клиентам) доступ к данным, которые хранятся во внешней памяти сервера. Таким образом, на файловый сервер возложены все задачи по безопасности хранения данных, поиску данных, архивированию и др. Внешняя память сервера становится распределяемым ресурсом, так как её могут использовать несколько клиентов.
Сервер печати [printer server] организует совместное использование принтера.
Коммуникационные серверы служат для связи локальной сети с внешним миром, например, с глобальной сетью Internet. Для этого используются модемные пулы, прокси-серверы и маршрутизаторы.
Модемный пул [modem pool] представляет собой ЭВМ, снабжённую особой сетевой платой, к которой можно подключить несколько модемов. Таким образом достигается определённая экономия, когда, например, десять ЭВМ работают, используя три модема.
Прокси-сервер [proxy server] не только использует единственное соединение с Internet, но и предоставляет свою память для хранения временных файлов, что убыстряет работу с Internet.
Главной задачей маршрутизатора [router] является поиск кратчайшего пути, по которому будет отправлено сообщение, адресованное некоторой ЭВМ в глобальной сети. Маршрутизатор представляет собой либо специализированную ЭВМ, либо обычную ЭВМ со специальным программным обеспечением.
Сервер приложений [application server] используется для выполнения программ, которые по каким-то причинам нецелесообразно или невозможно выполнить на других сетевых ЭВМ. Очевидной причиной может быть недостаточная производительность клиентских ЭВМ. Другая причина – использование каких-нибудь стандартных библиотек, копирование которых на каждую клиентскую ЭВМ трудоёмко и, кроме того, создаёт возможность несогласованности версии библиотеки. Многопользовательские операционные системы (Linux, Windows NT) позволяют построить так называемую тонкую клиентную сеть, в которой все ресурсы клиентов предоставлены сервером. Сами клиентские ЭВМ не тратят ничего на обработку данных. Тогда ЭВМ пользователей в такой сети называются терминалами, а сам сервер – терминальным сервером. Такой сервер должен иметь большой объём основной и внешней памяти и высокую производительность.
Глобальная сеть Internet
Общая характеристика глобальной сети Internet
В структуре глобальной сети можно выделить три уровня (см. рис. 4.8).
Первый – внутренний уровень составляет сеть передачи данных. Она состоит из узлов связи. Каждый узел связи представляет собой совокупность средств передачи данных и состоит из коммутационной ЭВМ и аппаратуры передачи данных.
Рис. 5. Структура глобальной сети
Во второй уровень входят разнообразные серверы, называемые хост-ЭВМ [host computer], которые выполняют в сети задачи по хранению и обработке данных. Такими серверами могут быть, например, серверы различных локальных сетей.
Третий уровень – терминальный – состоит из обычных клиентных рабочих станций, которые пользуются услугами глобальной сети.
Каждая локальная сеть называется сайтом [site], а юридическое лицо, обеспечивающее работу сайта – провайдером. Сайт состоит из группы серверов, которая выполняет определённые задачи.
Основными характеристиками сети являются время доставки сообщений, производительность и стоимость обработки данных.
Время доставки сообщений определяется как статистическое среднее время от момента передачи сообщения в сеть до момента получения сообщения адресатом.
Производительность сети представляет собой суммарную производительность серверов.
Стоимость обработки данных определяется как стоимостью средств, используемых для обработки, так и временем доставки и производительностью сети.
Тип сети и все её характеристики в основном определяются строением и принципами работы сети передачи данных, которые описываются протоколом. Протокол [protocol] – это система правил, определяющих формат и процедуры передачи данных по сети. Можно сказать, что протокол представляет собой язык, на котором «разговаривают» ЭВМ в сети. Протокол, в частности, определяет, как будут идентифицироваться в сети хост-ЭВМ и как можно найти их в сети, то есть определяются адресация и порядок маршрутизации.
Пример
Свойства глобальной сети Internet определяются так называемым IP-протоколом.
Адресация и маршрутизация в сети Internet
Для организации связи между хост-ЭВМ необходима общесетевая система адресации, которая устанавливает порядок именования абонентов сети передачи данных. В IP-сетях, к которым относится сеть Internet, каждому физическому объекту (хост-ЭВМ, серверы, подсети) присваивается число, называемое IP-адресом, который обычно представляется в виде четырёх чисел от 0 до 255, разделённых точкой, например, 192.171.153.60. Сами по себе эти числа не имеют никакого значения. Адрес содержит в себе номер подсети и номер хост-ЭВМ в данной сети.
Для удобства пользователей в Internet так же используется другой способ адресации, который называется системой доменных имён [domain naming system — DNS].
Пример
DNS-адрес имеет вид win.smtp.dol.ru. В этом примере
ru – домен страны, здесь означает все хост-ЭВМ России;
dol – домен провайдера, означает все ЭВМ локальной сети некоторой формы;
smtp – домен группы почтовых серверов этой же фирмы.;
win – имя конкретной ЭВМ из группы smtp.
Особое значение имеют организационные и географические домены – те, которые пишутся крайними справа в DNS-адресе. Имена для этих доменов зарегистрированы международной организацией InterNIC (Internet Network Information Center). Например, edu означает образовательную организацию, com – коммерческую, gov – правительственную, us – США, uk –Великобританию, de – Германию и т.д. DNS-адрес всегда действует совместно с IP-адресом.
При организации связи сеть должна по адресу получателя определить путь передачи данных – маршрут. Для определения маршрута используются различные алгоритмы маршрутизации [routing]. Эффективность алгоритма маршрутизации существенно влияет на скорость передачи данных по сети.
Службы сети Internet
В сети Internet имеются многочисленные службы, предоставляющие информационные услуги.
Одной из наиболее используемых служб является электронная почта [e-mail]. Для обслуживания электронной почты в сети имеются специальные почтовые серверы. Такой сервер выделяет своим клиентам определённый объём внешней памяти (обычно 1-3 Мб) и назначает этой памяти некоторое имя – адрес и пароль для доступа. Такая именованная память называется почтовым ящиком [mailbox]. Все сообщения, адресованные данному клиенту, помещаются в этот ящик и могут быть прочитаны, уничтожены или переправлены в другое место клиентом, которому этот ящик принадлежит. Для отправления и получения почты используются специальные почтовые программы. Адрес почты – это DNS-адрес с добавлением имени абонента.
Пример
Существует множество почтовых серверов. Одним из известных серверов является mail.ru. Адрес почты на этом сервере будет иметь вид
ivanov@mail.ru
где ivanov – это имя абонента, а mail.ru – это DNS-адрес почтового сервера.
Примером почтовой программы является Outlook Express для Windows98.
Другая широко используемая служба – FTP-служба [file transfer protocol]. Эта служба используется для удалённого доступа к файлам. FTP-сервер представляет собой хранилище всевозможных файлов. Эти файла пользователь может прочитать или скопировать на свою ЭВМ. DNS-адрес таких серверов начинается с ftp, например, ftp.microsoft.com. Информация на FTP-серверах организована в виде традиционных каталогов. Узлы FTP-службы используются разработчиками программного обеспечения для его распространения.
Доступ к любым ресурсам сети Internet можно получить с помощью службы World Wide Web или просто Web. Очевидное отличие этой службы от FTP или электронной почты заключается в том, что Web – это мультимедийная служба, то есть она поддерживает не только текст, но и графику, анимацию, звук.
Web-сервер хранит данные в виде набора текстовых файлов, которые написаны на специальном языке HTML [hypertext markup language]. Специальная программа – броузер [browser] — интерпретирует HTML-текст и выводит на экран монитора страницу, в которой сочетаются текст, графика, анимация и, самое главное, ссылки на другие страницы. Таким образом, с помощью ссылок Web-страницы пользователь имеет возможность переходить от одной страницы к другой и более оперативно разыскивать нужную информацию.
Для поиска страниц, содержащих нужную информацию, используется поисковая служба. Поисковые серверы используют специальные программы, которые анализируют заголовки Web-страниц и содержащуюся в них информацию. Результатом работы этих программ является список Web-страниц, которые удовлетворяют критерию поиска.
Пример
Существует большое количество поисковых серверов Alta Vista, Lycos, Yahoo.
Архитектура вычислительного процесса
Архитектура приложения
Все компьютерные программы по логике их работы можно представить в виде, показанном на рис. 4.6.
Рис. 6. Архитектура приложения
Интерфейс пользователя – это набор программ, которые обеспечивают взаимодействие приложения с пользователем графический интерфейс, система сообщений об ошибках и т.д.
Прикладная программа – это ядро приложения, которое выполняет основные функции данного приложения перевод текста, математические расчёты и т.д.
Под логикой данных понимается набор программ, которые определяют порядок доступа к данным, контролируют целостность данных в соответствии с бизнес-правилами и допустимость данных. Эти программы обычно предоставляются используемой при разработке приложения СУБД.
Под доступом к данным понимается набор программ, которые обеспечивают запись и чтение данных с внешней памяти. Такие программы также обычно реализованы средствами СУБД.
Перечисленные составные части приложения относительно независимы друг от друга. Связь между ними исчерпывается только передачей данных. Такую передачу данных можно организовать по сети. Также функционирование частей приложения можно обеспечить на разных ЭВМ, соединённых в сети. Это даёт возможность различным образом организовать выполнение приложения. Архитектура вычислительного процесса характеризует как построение аппаратного обеспечения (ЭВМ и сети), так и способ функционирования приложений.
Различают четыре способа организации вычислительного процесса
централизованная архитектура;
распределённая архитектура;
архитектура клиент-сервер;
многозвенная архитектура.
Централизованная архитектура
Классическое представление централизованной архитектуры показано на рис. 4.7.
Центральная ЭВМ должна иметь большую память и высокую производительность, чтобы обеспечивать комфортную работу большого числа пользователей.
Рис. 7. Централизованная архитектура вычислительной системы
Все приложения, работающие в такой архитектуре, полностью находятся в основной памяти хост-ЭВМ. Терминалы являются лишь устройствами ввода-вывода и таким образом в минимальной степени поддерживают интерфейс пользователя рис 4.8.
Рис. 8. Архитектура централизованного приложения
Такая архитектура вычислительных систем была распространена в 70-х и 80-х годах и реализовывалась на базе мейнфреймов (например, IBM-360/370 или их отечественных аналогов серии ЕС ЭВМ), либо на базе мини-ЭВМ (например, PDP-11 или их отечественного аналога СМ-4). Характерная особенность такой архитектуры – полная «неинтеллектуальность» терминалов. Их работой управляет хост-ЭВМ. Достоинства такой архитектуры состоят в том, что пользователи совместно используют дорогие ресурсы ЭВМ и дорогие периферийные устройства. Кроме того, централизация ресурсов и оборудования облегчает обслуживание и эксплуатацию вычислительной системы. Главным недостатком для пользователя является то, что он полностью зависит от администратора хост-ЭВМ. Пользователь не может настроить рабочую среду под свои потребности – всё используемое программное обеспечение является коллективным. Использование такой архитектуры является оправданным, если хост-ЭВМ очень дорогая, например, супер-ЭВМ.
Распределённая архитектура
Основой распределённой архитектуры является файл-сервер. Он предоставляет клиентам (т.е. программам на ПЭВМ) свою дисковую память, то есть обеспечивает доступ к данным. Каждый клиент пользуется для работы своими ресурсами, поэтому требования к производительности файл-сервера невысоки. Основными требования будут предъявляться к файловой системе файл-сервера.
Рис. 9. Распределённая архитектура
вычислительной системы
Как видно из рис. 4.10, основная обработка данных происходит на клиентных ЭВМ, то есть клиенты в отличие от терминалов должны обладать некоторыми ресурсами, поэтому их называют «толстыми» клиентами.
Распределённая архитектура лишена недостатков централизованной архитектуры, к тому же дорогие периферийные устройства (принтеры, RAID-массивы) в такой архитектуре также могут использоваться совместно.
Основным недостатком распределённой архитектуры является то, что вся обработка данных сосредоточена внутри нескольких независимых пользовательских приложений.
Пример
Одной из важных задач по обработке данных является поиск информации. Пусть необходимо найти 5 записей некоторой таблицы, содержащей миллион таких записей. Поскольку вся обработка данных сосредоточена на некоторой клиентной ЭВМ, то для поиска файл-сервер должен передать клиенту всю таблицу целиком. То есть резко возрастает нагрузка на сеть.
Рис. 10. Архитектура распределённого приложения
Если число пользователей не слишком велико и объём общих данных также невелик, то распределённая архитектура является наилучшим выбором.
Архитектура клиент-сервер
Вычислительная система, соответствующая архитектуре клиент-сервер состоит из трёх компонентов
сервера баз данных, управляющего хранением данных, доступом и защитой, резервным копированием, отслеживающего целостность данных в соответствии с бизнес-правилами и, самое главное, выполняющего запросы клиента;
клиента, предоставляющего интерфейс пользователя, проверяющего допустимость данных, посылающего запросы к серверу;
сети и коммуникационного оборудования.
Ядром архитектуры клиент-сервер является сервер баз данных. Поскольку многие задачи, связанные с обработкой данных возложены на сервер, то нагрузка на сеть –трафик – резко снижается по сравнению с распределённой архитектурой.
Пример
Пусть необходимо найти 5 записей некоторой таблицы, содержащей миллион таких записей. Клиент посылает серверу запрос, в котором указано, какие данные должны быть найдены. Этот запрос обрабатывается сервером, сервер производит поиск и пересылает клиенту необходимые пять записей.
Другое преимущество архитектуры клиент-сервер перед распределённой состоит в том, что на сервере можно сосредоточить программы, обеспечивающие целостность данных, соответствие данных бизнес-правилам, что позволяет избежать дублирования программного кода в различных приложениях, использующих общую базу данных.
Рис. 11. Архитектура приложения типа клиент-сервер
В случае архитектуры клиент-сервер сервер баз данных должен обладать высокой производительностью.
В настоящее время все современные прикладные программы ориентированы на работу с такой архитектурой вычислительного процесса.
Многозвенная архитектура
В случае большого числа пользователей возникают проблемы своевременной и синхронной замены версий клиентских приложений на рабочих станциях. Такие проблемы решаются в рамках многозвенной архитектуры. Часть общих приложений переносится на специально выделенный сервер приложений. Тем самым понижаются требования к ресурсам рабочих станций, которые будут называться «тонкими» клиентами. Данный способ организации вычислительного процесса является разновидностью архитектуры клиент-сервер.
Рис. 12. Многозвенная архитектура
Использование многозвенной архитектуры может быть рекомендовано также в случае, если некоторая программа требует для своей работы много ресурсов, то может оказаться дешевле построить тонкую сеть с одним очень мощным сервером, чем использовать несколько мощных клиентных рабочих станций. Особенно это имеет значение, если данной программой пользуются не постоянно, а время от времени.
Рис. 13. Архитектура многозвенного приложения
Разумное сочетание производительности сервера приложений и производительности рабочих станций позволят построить сеть, более дешёвую при установке и эксплуатации.
Список литературы
Андерсон К. Минаси М. Локальные сети. Полное руководство К. ВЕК+, М. ЭНТРОП, СПб. КОРОНА принт, 1999. – 624 с.
Богумирский Б.С. Руководство пользователя ПЭВМ В 2-х ч. – СПб. Ассоциация OILCO, 1992. – 357 с.
Головкин Б.А. Параллельные вычислительные системы. М. Наука, 1980. – 520 с.
Елманова Н.З. Borland C++ Builder 3.0. Архитектура «клиент/сервер», многозвенные системы и Internet-приложения. – М. Диалог-МИФИ, 1999. – 240 с.
Касаткин А.И., Вальвачев А.Н. Профессиональное программирование на языке Си От Turbo C к Borland С++ Мн. Выш.шк., 1992. –240 с.
Косарев В.П. Ерёмин Л.В. Компьютерные системы и сети. — М. Финансы и статистика, 1999. – 464 с.
Кручинин С. Архитектура компьютера. Hard и Soft №4 1995.
Мельников Д.А. Информационные процессы в современных сетях. Протоколы, стандарты, интерфейсы, модели. – М. КУДИЦ-ОБРАЗ, 1999. –256 с.
Першиков и др. Русско-английский толковый словарь по информатике. – М. Финансы и статистика, 1999. – 386 с.
Экономическая информатика и вычислительная техника Учебник/ Под ред. В.П. Косарева. – М. Финансы и статистика, 1996. – 336 с.