Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Основные проблемы построения сетей






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

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

1.2.1. Связь компьютера с периферийными устройствами

Для обмена данными между компьютером и периферийным устройством (ПУ) в компьютере предусмотрен внешний интерфейс (рис. 1.6), то есть набор проводов, соединяющих компьютер и периферийное устройство, а также набор правил обме­на информацией по этим проводам (иногда вместо термина интерфейс употребля­ется термин протокол — подробней об этих важных терминах мы еще поговорим). Примерами интерфейсов, используемых в компьютерах, являются параллельный интерфейс Centronics, предназначенный, как правило, для подключения принте­ров, и последовательный интерфейс RS-232C, через который подключаются мышь, модем и много других устройств. Интерфейс реализуется со стороны компьютера совокупностью аппаратных и программных средств: контроллером ПУ и специ­альной программой, управляющей этим контроллером, которую часто называют драйвером соответствующего периферийного устройства.

Со стороны ПУ интерфейс чаще всего реализуется аппаратным устройством управ­ления, хотя встречаются и программно-управляемые периферийные устройства.

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

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

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

Распределение обязанностей между контроллером и драйвером ПУ может быть разным, но обычно контроллер выполняет набор простых команд по управлению ПУ, а драйвер использует эти команды, чтобы заставить устройство совершать

_________________________________________________ 1.2. Основные проблемы построения сетей 37

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

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

38 Глава1 • Общие принципы построения вычислительных сетей

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

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

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

1.2.2. Простейший случай взаимодействия двух компьютеров

В самом простом случае взаимодействие компьютеров может быть реализовано с помощью тех же самых средств, которые используются для взаимодействия ком­пьютера с периферией, например, через последовательный интерфейс RS-232C. В отличие от взаимодействия компьютера с периферийным устройством, когда про­грамма работает, как правило, только с одной стороны — со стороны компьютера, в этом случае происходит взаимодействие двух программ, работающих на каждом из компьютеров.

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

Рассмотрим случай, когда пользователю, работающему с текстовым редактором на персональном компьютере А, нужно прочитать часть некоторого файла, распо­ложенного на диске персонального компьютера В (рис. 1.7). Предположим, что мы связали эти компьютеры по кабелю связи через СОМ-порты, которые, как извест­но, реализуют интерфейс RS-232C (такое соединение часто называют нуль-модем­ным). Пусть для определенности компьютеры работают под управлением MS-DOS, хотя принципиального значения в данном случае это не имеет.

_________________________________________________ 1.2. Основные проблемы построения сетей ______39

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

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

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

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

40 Глава1 • Общие принципы построения вычислительных сетей

Описанные функции приложения А могла бы выполнить сама программа тек­стового редактора, но включать эти функции в состав каждого приложения — тек­стовых редакторов, графических редакторов, систем управления базами данных и других приложений, которым нужен доступ к файлам, — не очень рационально (хотя существует большое количество программ, которые действительно самостоя­тельно решают все задачи по межмашинному обмену данными, например Kermit — программа обмена файлами через СОМ-порты, реализованная для различных ОС, Norton Commander 3.0 с его функцией Link). Гораздо выгоднее создать специаль­ный программный модуль, который будет выполнять функции формирования со­общений-запросов и приема результатов для всех приложений компьютера. Как уже было ранее сказано, такой служебный модуль называется клиентом. На сторо­не же компьютера В должен работать другой модуль — сервер, постоянно ожидаю­щий прихода запросов на удаленный доступ к файлам, расположенным на диске этого компьютера. Сервер, приняв запрос из сети, обращается к локальному файлу и выполняет с ним заданные действия, возможно, с участием локальной ОС.

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

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

________________________________________________ 1.2. Основные проблемы построения сетей ______41

Очень удобной и полезной функцией клиентской программы является способ­ность отличить запрос к удаленному файлу от запроса к локальному файлу. Если клиентская программа умеет это делать, то приложения не должны заботиться о том, с каким файлом они работают (локальным или удаленным), клиентская про­грамма сама распознает и перенаправляет (redirect) запрос к удаленной машине. Отсюда и название, часто используемое для клиентской части сетевой ОС, — реди­ректор. Иногда функции распознавания выделяются в отдельный программный модуль, в этом случае редиректором называют не всю клиентскую часть, а только этот модуль.

1.2.3. Проблемы физической передачи данных по линиям связи

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

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

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

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

Потенциальное или импульсное кодирование применяется на каналах высоко­го качества, а модуляция на основе синусоидальных сигналов предпочтительнее в том случае, когда канал вносит сильные искажения в передаваемые сигналы. Обычно

42 Глава1 • Общие принципы построения вычислительных сетей

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

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

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

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

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

_________________________________________________ 1.2. Основные проблемы построения сетей 43

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

1.2.4. Проблемы объединения нескольких компьютеров

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

Топология физических связей

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

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

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

Рассмотрим некоторые, наиболее часто встречающиеся топологии.

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

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

44 Глава1 • Общие принципы построения вычислительных сетей

Ячеистая топология (mesh) получается из полносвязной путем удаления некото­рых возможных связей (рис. 1.10, б). В сети с ячеистой топологией непосредствен­но связываются только те компьютеры, между которыми происходит интенсивный обмен данными, а для обмена данными между компьютерами, не соединенными прямыми связями, используются транзитные передачи через промежуточные узлы. Ячеистая топология допускает соединение большого количества компьютеров и характерна, как правило, для глобальных сетей.

Общая шина (рис. 1.10, в) является очень распространенной (а до недавнего времени самой распространенной) топологией для локальных сетей. В этом случае компьютеры подключаются к одному коаксиальному кабелю по схеме «монтажно­го ИЛИ». Передаваемая информация может распространяться в обе стороны. При­менение общей шины снижает стоимость проводки, унифицирует подключение различных модулей, обеспечивает возможность почти мгновенного широковещатель­ного обращения ко всем станциям сети. Таким образом, основными преимущества­ми такой схемы являются дешевизна и простота разводки кабеля по помещениям. Самый серьезный недостаток общей шины заключается в ее низкой надежности: любой дефект кабеля или какого-нибудь из многочисленных разъемов полностью парализует всю сеть. К сожалению, дефект коаксиального разъема редкостью не является. Другим недостатком общей шины является ее невысокая производитель­ность, так как при таком способе подключения в каждый момент времени только один компьютер может передавать данные в сеть. Поэтому пропускная способ­ность канала связи всегда делится здесь между всеми узлами сети.

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

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

В сетях с колыцевой конфигурацией (рис. 1.10, ё) данные передаются по кольцу от одного компьютера к другому, как правило, в одном направлении. Если компь­ютер распознает данные как «свои», то он копирует их себе во внутренний буфер. В сети с кольцевой топологией необходимо принимать специальные меры, чтобы в случае выхода из строя или отключения какой-либо станции не прервался канал связи между остальными станциями. Кольцо представляет собой очень удобную конфигурацию для организации обратной связи — данные, сделав полный оборот, возвращаются к узлу-источнику. Поэтому этот узел может контролировать про-

_________________________________________________ 1.2. Основные проблемы построения сетей 45

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

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

Организация совместного использования линий связи

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

46 Глава1 • Общие принципы построения вычислительных сетей

кает вопрос о том, как организовать совместное использование линий связи не­сколькими компьютерами сети. Как и всегда при разделении ресурсов, главной целью здесь является удешевление сети.

В вычислительных сетях используют как индивидуальные линии связи между компьютерами, так и разделяемые (shared), когда одна линия связи попеременно используется несколькими компьютерами. В случае применения разделяемых ли­ний связи (часто используется также термин разделяемая среда передачи данных — shared media) возникает комплекс проблем, связанных с их совместным использо­ванием, который включает как чисто электрические проблемы обеспечения нужно­го качества сигналов при подключении к одному и тому же проводу нескольких приемников и передатчиков, так и логические проблемы разделения во времени доступа к этим линиям.

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

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

Несмотря на все эти сложности, в локальных сетях разделяемые линии связи используются очень часто. Этот подход, в частности, реализован в широко распро­страненных классических технологиях Ethernet и Token Ring. Однако в последние годы наметилась тенденция отказа от разделяемых сред передачи данных и в ло­кальных сетях. Это связано с тем, что за достигаемое таким образом удешевление сети приходится расплачиваться производительностью.

Сеть с разделяемой средой при большом количестве узлов будет работать все­гда медленнее, чем аналогичная сеть с индивидуальными линиями связи, так как пропускная способность индивидуальной линии связи достается одному компью­теру, а при ее совместном использовании — делится на все компьютеры сети. Часто с такой потерей производительности мирятся ради увеличения экономической эффективности сети. Не только в классических, но и в совсем новых технологиях, разработанных для локальных сетей, сохраняется режим разделяемых линий свя­зи. Например, разработчики технологии Gigabit Ethernet, принятой в 1998 году в качестве нового стандарта, включили режим разделения передающей среды в свои спецификации наряду с режимом работы по индивидуальным линиям связи.

_________________________________________________ 1.2. Основные проблемы построения сетей 47

При использовании индивидуальных линий связи в полносвязных топологиях конечные узлы должны иметь по одному порту на каждую линию связи. В звездо­образных топологиях конечные узлы могут подключаться индивидуальными ли­ниями связи к специальному устройству — коммутатору. В глобальных сетях коммутаторы использовались уже на начальном этапе, а в локальных сетях — с на­чала 90-х годов. Коммутаторы приводят к существенному удорожанию локальной сети, поэтому пока их применение ограничено, но по мере снижения стоимости коммутации этот подход, возможно, вытеснит применение разделяемых линий связи. Необходимо подчеркнуть, что индивидуальными в таких сетях являются только линии связи между конечными узлами и коммутаторами сети, а связи между ком­мутаторами остаются разделяемыми, так как по ним передаются сообщения раз­ных конечных узлов (рис. 1.12)

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

Адресация компьютеров

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

• Адрес должен уникально идентифицировать компьютер в сети любого масштаба.

• Схема назначения адресов должна сводить к минимуму ручной труд админис­тратора и вероятность дублирования адресов.

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

48 Глава1 • Общие принципы построения вычислительных сетей

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

• Адрес должен быть удобен для пользователей сети, а это значит, что он должен иметь символьное представление например, Servers или www.cisco.com.

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

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

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

Наибольшее распространение получили три схемы адресации узлов.

Аппаратные (hardware) адреса. Эти адреса предназначены для сети небольшого или среднего размера, поэтому они не имеют иерархической структуры. Типич­ным представителем адреса такого типа является адрес сетевого адаптера ло­кальной сети. Такой адрес обычно используется только аппаратурой, поэтому его стараются сделать по возможности компактным и записывают в виде двоич­ного или шестнадцатеричного значения, например 0081005е24а8. При задании аппаратных адресов обычно не требуется выполнение ручной работы, так как они либо встраиваются в аппаратуру компанией-изготовителем, либо генериру­ются автоматически при каждом новом запуске оборудования, причем уникаль­ность адреса в пределах сети обеспечивает оборудование. Помимо отсутствия иерархии, использование аппаратных адресов связано еще с одним недостат­ком — при замене аппаратуры, например, сетевого адаптера, изменяется и адрес компьютера. Более того, при установке нескольких сетевых адаптеров у компь­ютера появляется несколько адресов, что не очень удобно для пользователей сети.

Символьные адреса или имена. Эти адреса предназначены для запоминания людь­ми и поэтому обычно несут смысловую нагрузку. Символьные адреса легко ис­пользовать как в небольших, так и крупных сетях. Для работы в больших сетях символьное имя может иметь сложную иерархическую структуру, например ftp-archl.ucl.ac.uk. Этот адрес говорит о том, что данный компьютер поддержи­вает ftp-архив в сети одного из колледжей Лондонского университета (University College London — ucl) и эта сеть относится к академической ветви (ас) Internet Великобритании (United Kingdom — uk). При работе в пределах сети Лондонс­кого университета такое длинное символьное имя явно избыточно и вместо него удобно пользоваться кратким символьным именем, на роль которого хо­рошо подходит самая младшая составляющего полного имени, то есть имя ftp-arch 1.

_________________________________________________ 1.2. Основные проблемы построения сетей 49

Числовые составные адреса. Символьные имена удобны для людей, но из-за переменного формата и потенциально большой длины их передача по сети не очень экономична. Поэтому во многих случаях для работы в больших сетях в качестве адресов узлов используют числовые составные адреса фиксированного и компактного форматов. Типичным представителями адресов этого типа явля­ются IP- и IPX-адреса. В них поддерживается двухуровневая иерархия, адрес делится на старшую часть — номер сети и младшую — номер узла. Такое деление позволяет передавать сообщения между сетями только на основании номера сети, а номер узла используется только после доставки сообщения в нужную сеть; точно так же, как название улицы используется почтальоном только после того, как письмо доставлено в нужный город. В последнее время, чтобы сделать маршрутизацию в крупных сетях более эффективной, предлагаются более слож­ные варианты числовой адресации, в соответствии с которыми адрес имеет три и более составляющих. Такой подход, в частности, реализован в новой версии протокола IPv6, предназначенного для работы в сети Internet. В современных сетях для адресации узлов применяются, как правило, одновре­менно все три приведенные выше схемы. Пользователи адресуют компьютеры сим­вольными именами, которые автоматически заменяются в сообщениях, передаваемых по сети, на числовые номера. С помощью этих числовых номеров сообщения пере­даются из одной сети в другую, а после доставки сообщения в сеть назначения вместо числового номера используется аппаратный адрес компьютера. Сегодня такая схема характерна даже для небольших автономных сетей, где, казалось бы, она явно избыточна — это делается для того, чтобы при включении этой сети в боль­шую сеть не нужно было менять состав операционной системы.

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

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

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

50 Глава1 • Общие принципы построения вычислительных сетей

сегментам становится практически нереальным, поэтому для них характерен цент­рализованный подход. Наиболее известной службой централизованного разреше­ния имен является служба Domain Name System (DNS) сети Internet.

1.2.5. Ethernet - пример стандартного решения сетевых проблем

Рассмотрим, каким образом описанные выше общие подходы к решению наиболее важных проблем построения сетей воплощены в наиболее популярной сетевой тех­нологии — Ethernet.

Сетевая технология — это согласованный набор стандартных протоколов и реа­лизующих их программно-аппаратных средств (например, сетевых адаптеров, драй­веров, кабелей и разъемов), достаточный для построения вычислительной сети. Эпитет «достаточный» подчеркивает то обстоятельство, что этот набор представ­ляет собой минимальный набор средств, с помощью которых можно построить работоспособную сеть. Возможно, эту сеть можно улучшить, например, за счет выделения в ней подсетей, что сразу потребует кроме протоколов стандарта Ethernet применения протокола IP, а также специальных коммуникационных устройств — маршрутизаторов. Улучшенная сеть будет, скорее всего, более надежной и быстро­действующей, но за счет надстроек над средствами технологии Ethernet, которая составила базис сети.

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

Протоколы, на основе которых строится сеть определенной технологии (в узком смысле), специально разрабатывались для совместной работы, поэтому от разра­ботчика сети не требуется дополнительных усилий по организации их взаимодей­ствия. Иногда сетевые технологии называют базовыми технологиями, имея в виду то, что на их основе строится базис любой сети. Примерами базовых сетевых тех­нологий могут служить наряду с Ethernet такие известные технологии локальных сетей как, Token Ring и FDDI, или же технологии территориальных сетей Х.25 и frame relay. Для получения работоспособной сети в этом случае достаточно приоб­рести программные и аппаратные средства, относящиеся к одной базовой техноло­гии — сетевые адаптеры с драйверами, концентраторы, коммутаторы, кабельную систему и т. п., — и соединить их в соответствии с требованиями стандарта на дан­ную технологию.

Стандарт Ethernet был принят в 1980 году. Число сетей, построенных на основе этой технологии, к настоящему моменту оценивается в 5 миллионов, а количество компьютеров, работающих в таких сетях, — в 50 миллионов.

Основной принцип, положенный в основу Ethernet, — случайный метод досту­па к разделяемой среде передачи данных. В качестве такой среды может использо­ваться толстый или тонкий коаксиальный кабель, витая пара, оптоволокно или радиоволны (кстати, первой сетью, построенной на принципе случайного доступа к разделяемой среде, была радиосеть Aloha Гавайского университета).

В стандарте Ethernet строго зафиксирована топология электрических связей. Компьютеры подключаются к разделяемой среде в соответствии с типовой струк-

_________________________________________________ 1.2. Основные проблемы построения сетей ______51

турой «общая шина» (рис. 1.13). С помощью разделяемой во времени шины любые два компьютера могут обмениваться данными. Управление доступом к линии свя­зи осуществляется специальными контроллерами — сетевыми адаптерами Ethernet. Каждый компьютер, а более точно, каждый сетевой адаптер, имеет уникальный адрес. Передача данных происходит со скоростью 10 Мбит/с. Эта величина явля­ется пропускной способностью сети Ethernet.

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

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

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

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

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

Главным достоинством сетей Ethernet, благодаря которому они стали такими популярными, является их экономичность. Для построения сети достаточно иметь по одному сетевому адаптеру для каждого компьютера плюс один физический сег­мент коаксиального кабеля нужной длины. Другие базовые технологии, например Token Ring, для создания даже небольшой сети требуют наличия дополнительного устройства — концентратора.

Кроме того, в сетях Ethernet реализованы достаточно простые алгоритмы дос­тупа к среде, адресации и передачи данных. Простота логики работы сети ведет к

52 Глава1 • Общие принципы построения вычислительных сетей

упрощению и, соответственно, удешевлению сетевых адаптеров и их драйверов. По той же причине адаптеры сети Ethernet обладают высокой надежностью.

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

Другие базовые сетевые технологии — Token Ring, FDDI, 100VGAny-LAN, хотя и обладают многими индивидуальными чертами, в то же время имеют много об­щих свойств с Ethernet. В первую очередь — это применение регулярных фикси­рованных топологий (иерархическая звезда и кольцо), а также разделяемых сред передачи данных. Существенные отличия одной технологии от другой связаны с особенностями используемого метода доступа к разделяемой среде. Так, отличия технологии Ethernet от технологии Token Ring во многом определяются специфи­кой заложенных в них методов разделения среды — случайного алгоритма доступа в Ethernet и метода доступа путем передачи маркера в Token Ring.

1.2.6. Структуризация как средство построения больших сетей

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

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

• ограничения на длину связи между узлами;

• ограничения на количество узлов в сети;

• ограничения на интенсивность трафика, порождаемого узлами сети. Например, технология Ethernet на тонком коаксиальном кабеле позволяет ис­пользовать кабель длиной не более 185 метров, к которому можно подключить не более 30 компьютеров. Однако, если компьютеры интенсивно обмениваются ин­формацией между собой, иногда приходится снижать число подключенных к ка­белю компьютеров до 20, а то и до 10, чтобы каждому компьютеру доставалась приемлемая доля общей пропускной способности сети.

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

Физическая структуризация сети

Простейшее из коммуникационных устройств — повторитель (repeator) — исполь­зуется для физического соединения различных сегментов кабеля локальной сети с

_________________________________________________ 1.2. Основные проблемы построения сетей ______53

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

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

Концентраторы характерны практически для всех базовых технологий локаль­ных сетей — Ethernet, ArcNet, Token Ring, FDDI, Fast Ethernet, Gigabit Ethernet, lOOVG-AnyLAN.

Нужно подчеркнуть, что в работе концентраторов любых технологий много общего — они повторяют сигналы, пришедшие с одного из своих портов, на других своих портах. Разница состоит в том, на каких именно портах повторяются вход­ные сигналы. Так, концентратор Ethernet повторяет входные сигналы на всех своих портах, кроме того, с которого сигналы поступают (рис. 1.15. а). А концентратор Token Ring (рис. 1.15, б) повторяет входные сигналы, поступающие с некоторого порта, только на одном порту — на том, к которому подключен следующий в коль­це компьютер.

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

54 Глава1 • Общие принципы построения вычислительных сетей

рис. 1.16, а, имеет физическую топологию кольцо. Компьютеры этой сети получают доступ к кабелям кольца за счет передачи друг другу специального кадра — маркера, причем этот маркер также передается последовательно от компьютера к компьютеру в том же порядке, в котором компьютеры образуют физическое кольцо, то есть компьютер А передает маркер компьютеру В, компьютер В — компьютеру Сит. д. Сеть, показанная на рис. 1.16, б, демонстрирует пример несовпадения физичес­кой и логической топологии. Физически компьютеры соединены по топологии общая шина. Доступ же к шине происходит не по алгоритму случайного доступа, приме­няемому в технологии Ethernet, а путем передачи маркера в кольцевом порядке: от компьютера А — компьютеру В, от компьютера В — компьютеру Сит. д. Здесь порядок передачи маркера уже не повторяет физические связи, а определяется логическим конфигурированием драйверов сетевых адаптеров. Ничто не мешает настроить сетевые адаптеры и их драйверы так, чтобы компьютеры образовали кольцо в другом порядке, например: В, А, С... При этом физическая структура сети никак не изменяется.

Другим примером несовпадения физической и логической топологий сети яв­ляется уже рассмотренная сеть на рис. 1.15, а. Концентратор Ethernet поддержива­ет в сети физическую топологию звезда. Однако логическая топология сети осталась без изменений — это общая шина. Так как концентратор повторяет данные, при­шедшие с любого порта, на всех остальных портах, то они появляются одновремен­но на всех физических сегментах сети, как и в сети с физической общей шиной. Логика доступа к сети совершенно не меняется: все компоненты алгоритма случай­ного доступа — определение незанятости среды, захват среды, распознавание и от­работка коллизий — остаются в силе.

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

_________________________________________________ 1.2. Основные проблемы построения сетей ______55

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

Логическая структуризация сети

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

В большой сети естественным образом возникает неоднородность информа­ционных потоков: сеть состоит из множества подсетей рабочих групп, отделов, филиалов предприятия и других административных образований. Очень часто наиболее интенсивный обмен данными наблюдается между компьютерами, при­надлежащими к одной подсети, и только небольшая часть обращений происхо­дит к ресурсам компьютеров, находящихся вне локальных рабочих групп. (До недавнего времени такое соотношение трафиков не подвергалось сомнению, и был даже сформулирован эмпирический закон «80/20», в соответствии с кото­рым в каждой подсети 80 % трафика является внутренним и только 20 % — вне­шним.) Сейчас характер нагрузки сетей во многом изменился, широко внедряется технология intranet, на многих предприятиях имеются централизованные храни­лища корпоративных данных, активно используемые всеми сотрудниками пред­приятия. Все это не могло не повлиять на распределение информационных потоков. И теперь не редки ситуации, когда интенсивность внешних обращений выше интенсивности обмена между «соседними» машинами. Но независимо от того, в какой пропорции распределяются внешний и внутренний трафик, для повыше­ния эффективности работы сети неоднородность информационных потоков не­обходимо учитывать.

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

Этот случай иллюстрирует рис.1.17, а. Здесь показана сеть, построенная с ис­пользованием концентраторов. Пусть компьютер А, находящийся в одной подсети с компьютером В, посылает ему данные. Несмотря на разветвленную физическую структуру сети, концентраторы распространяют любой кадр по всем ее сегментам. Поэтому кадр, посылаемый компьютером А компьютеру В, хотя и не нужен ком­пьютерам отделов 2 и 3, в соответствии с логикой работы концентраторов поступа-

56 Глава1 • Общие принципы-построения вычислительных сетей

ет на эти сегменты тоже. И до тех пор, пока компьютер В не получит адресованный ему кадр, ни один из компьютеров этой сети не сможет передавать данные.

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

Рис. 1.17. Противоречие между логической структурой сети и структурой информационных потоков

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

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

________________________________________________ 1.2. Основные проблемы построения сетей 57

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

ВНИМАНИЕ Распространение трафика, предназначенного для компьютеров некоторого сегмента сети, только в пределах этого сегмента, называется локализацией трафика. Логическая структуризация сети - это процесс разбиения сети на сегменты с локализованным трафиком.

Для логической структуризации сети используются такие коммуникационные устройства, как мосты, коммутаторы, маршрутизаторы и шлюзы.

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

На рис. 1.18 показана сеть, которая была получена из сети с центральным кон­центратором (см. рис. 1.17) путем его замены на мост. Сети 1-го и 2-го отделов состоят из отдельных логических сегментов, а сеть отдела 3 — из двух логических сегментов. Каждый логический сегмент построен на базе концентратора и имеет простейшую физическую структуру, образованную отрезками кабеля, связываю­щими компьютеры с портами концентратора.

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

58 Глава1 • Общие принципы построения вычислительных сетей

Коммутатор (switch, switching hub) по принципу обработки кадров ничем не отличается от моста. Основное его отличие от моста состоит в том, что он является своего рода коммуникационным мультипроцессором, так как каждый его порт оснащен специализированным процессором, который обрабатывает кадры по ал­горитму моста независимо от процессоров других портов. За счет этого общая производительность коммутатора обычно намного выше производительности традиционного моста, имеющего один процессорный блок. Можно сказать, что ком­мутаторы — это мосты нового поколения, которые обрабатывают кадры в парал­лельном режиме.

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

Кроме локализации трафика маршрутизаторы выполняют еще много других полезных функций. Так, маршрутизаторы могут работать в сети с замкнутыми контурами, при этом они осуществляют выбор наиболее рационального маршрута из нескольких возможных. Сеть, представленная на рис. 1.19, отличается от своей предшественницы (см. рис. 1.18) тем, что между подсетями отделов 1 и 2 проложе­на дополнительная связь, которая может использоваться как для повышения про­изводительности сети, так и для повышения ее надежности.

Рис. 1.19. Логическая структуризация сети с помощью маршрутизаторов

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

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

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

_________________________________________________ 1.2. Основные проблемы построения сетей 59

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

1.2.7. Сетевые службы

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

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

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.