Максимальная
пропускная способность - это
наибольшая мгновенная пропускная
способность, зафиксированная в течение
периода наблюдения.
Пропускную
способность можно измерять между
любыми двумя узлами ила точками
сети, например между клиентским компьютером
и сервером, между входным и выходным портами
маршрутизатора. Для анализа и настройки
сети очень полезно знать данные о пропускной
способности отдельных элементов сети.
Задержка
передачи определяется как задержка
между моментом поступления пакета
на вход какого-либо сетевого устройства
или части сети и моментом появления его
на выходе этого устройства. Этот параметр
производительности по смыслу близок
ко времени реакции сети, но отличается
тем, что всегда характеризует только
сетевые этапы обработки данных, без задержек
обработки компьютерами сети. Обычно качество
сети характеризуют величинами максимальной
задержки передачи и вариацией задержки.
Не все типы трафика чувствительны к задержкам
передачи, во всяком случае, к тем величинам
задержек, которые характерны для компьютерных
сетей, - обычно задержки не превышают
сотен миллисекунд, реже - нескольких секунд.
Такого порядка задержки пакетов, порождаемых
файловой службой, службой электронной
почты или службой печати, мало влияют
на качество этих служб с точки зрения
пользователя сети. С другой стороны, такие
же задержки пакетов, переносящих голосовые
данные или видеоизображение, могут приводить
к значительному снижению качества предоставляемой
пользователю информации - возникновению
эффекта "эха", невозможности разобрать
некоторые слова, дрожание изображения
и т.п.
Пропускная
способность и задержки передачи
являются независимыми параметрами,
так что сеть может обладать, например,
высокой пропускной способностью, но вносить
значительные задержки при передаче каждого
пакета. Пример такой ситуации дает канал
связи, образованный геостационарным
спутником. Пропускная способность этого
канала может быть весьма высокой, например
2 Мбит/с, в то время как задержка передачи
всегда составляет не менее 0, 24 с, что определяется
скоростью распространения сигнала (около
300 000 км/с) и длиной канала (72 000 км).
Надежность
и безопасность
Одной
из первоначальных целей создания
распределенных систем, к которым
относятся и вычислительные сети, являлось
достижение большей надежности по сравнению
с отдельными вычислительными машинами.
Важно
различать несколько аспектов
надежности. Для технических устройств
используются такие показатели надежности,
как среднее время наработки на отказ
вероятность отказа, интенсивность отказов.
Однако эти показатели пригодны для оценки
надежности простых элементов и устройств,
которые могут находиться только в двух
состояниях - работоспособном или неработоспособном.
Сложные системы, состоящие из многих
элементов, кроме состояний работоспособности
и неработоспособности, могут иметь и
другие промежуточные состояния, которые
эти характеристики не учитывают. В связи
с этим для оценки надежности сложных
систем применяется другой набор характеристик.
Готовность
или коэффициент готовности (availability)
означает долю времени, в течение которого
система может быть использована. Готовность
может быть улучшена путем введения избыточности
в структуру системы: ключевые элементы
системы должны существовать в нескольких
экземплярах, чтобы при отказе одного
из них функционирование системы обеспечивали
другие.
Чтобы
систему можно было отнести
к высоконадежным, она должна
как минимум обладать высокой готовностью,
но этого недостаточно. Необходимо обеспечить
сохранность данных и защиту их от искажений.
Кроме этого, должна поддерживаться согласованность
(непротиворечивость) данных, например,
если для повышения надежности на нескольких
файловых серверах хранится несколько
копий данных, то нужно постоянно обеспечивать
их идентичность.
Так
как сеть работает на основе
механизма передачи пакетов между
конечными узлами, то одной из характерных
характеристик надежности является вероятность
доставки пакета узлу назначения без искажений.
Наряду с этой характеристикой могут использоваться
и другие показатели: вероятность потери
пакета (по любой из причин - из-за переполнения
буфера маршрутизатора, из-за несовпадения
контрольной суммы, из-за отсутствия работоспособного
пути к узлу назначения и т.д.), вероятность
искажения отдельного бита передаваемых
данных, отношение потерянных пакетов
к доставленным.
Другим
аспектом общей надежности является
безопасность (security), то есть способность
системы защитить данные от несанкционированного
доступа. В распределенной системе это
сделать гораздо сложнее, чем в централизованной.
В сетях сообщения передаются по линиям
связи, часто проходящим через общедоступные
помещения, в которых могут быть установлены
средства прослушивания линий. Другим
уязвимым местом могут быть оставленные
без присмотра персональные компьютеры.
Кроме того, всегда имеется потенциальная
угроза взлома защиты сети от неавторизованных
пользователей, если сеть имеет выходы
в глобальные сети общего пользования.
Еще
одной характеристикой надежности
является отказоустойчивость (fault wrance).
В сетях под отказоустойчивостью понимается
способность системы скрыть от пользователя
отказ отдельных ее элементов. Например,
если копии таблицы базы данных хранятся
одновременно на нескольких файловых
серверах, то пользователи могут просто
не заметить отказ одного из них. В отказоустойчивой
системе отказ одного из ее элементов
приводит к некоторому снижению качества
ее работы (деградации), а не к полному
останову. Так, при отказе одного из файловых
серверов в предыдущем примере увеличивается
только время доступа к базе данных из-за
уменьшения степени распараллеливания
запросов, но в целом система будет продолжать
выполнять свои функции.
Расширяемость
и масштабируемость
Термины
расширяемость и масштабируемость
иногда используют как синонимы но это
неверно - каждый из них имеет четко определенное
самостоятельное значение.
Расширяемость
(extensibility) означает возможность сравнительно
легкого добавления отдельных элементов
сети (пользователей, компьютеров, приложений,
служб), наращивания длины сегментов сети
и замены существующей аппаратуры более
мощной. При этом принципиально важно,
что легкость расширения системы иногда
может обеспечиваться в некоторых весьма
ограниченных пределах. Например, локальная
сеть Ethernet, построенная на основе одного
сегмента толстого коаксиального кабеля,
обладает хорошей расширяемостью, в том
смысле, что позволяет легко подключать
новые станции. Однако такая сеть имеет
ограничение на число станций - их число
не должно превышать 30-40. Хотя сеть допускает
физическое подключение к сегменту и большего
числа станций (до 100), но при этом чаще
всего резко снижается производительность
сети. Наличие такого ограничения и является
признаком плохой масштабируемости системы
при хорошей расширяемости.
Масштабируемость
(scalability) означает, что сеть позволяет наращивать
количество узлов и протяженность связей
в очень широких пределах, при этом производительность
сети не ухудшается. Для обеспечения масштабируемости
сети приходится применять дополнительное
коммуникационное оборудование и специальным
образом структурировать сеть. Например,
хорошей масштабируемостью обладает многосегментная
сеть, построенная с использованием коммутаторов
и маршрутизаторов и имеющая иерархическую
структуру связей. Такая сеть может включать
несколько тысяч компьютеров и при этом
обеспечивать каждому пользователю сети
нужное качество обслуживания.
Прозрачность
Прозрачность
(transparency) сети достигается в том случае,
когда сеть представляется пользователям
не как множество отдельных компьютеров,
связанных между собой сложной системой
кабелей, а как единая традиционная вычислительная
машина с системой разделения времени.
Известный лозунг компании Sun Microsystems: "Сеть
- это компьютер" - говорит именно о такой
прозрачной сети.
Прозрачность
может быть достигнута на двух
различных уровнях - на уровне
пользователя и на уровне программиста.
На уровне пользователя прозрачность
означает, что для работы с удаленными
ресурсами он использует те же команды
и привычные ему процедуры, что и для работы
с локальными ресурсами. На программном
уровне прозрачность заключается в том,
что приложению для доступа к удаленным
ресурсам требуются те же вызовы, что и
для доступа к локальным ресурсам. Прозрачность
на уровне пользователя достигается проще,
так как все особенности процедур, связанные
с распределенным характером системы,
маскируются от пользователя программистом,
который создает приложение. Прозрачность
на уровне приложения требует сокрытия
всех деталей распределенности средствами
сетевой операционной системы.
Сеть
должна скрывать все особенности
операционных систем и различия
в типах компьютеров. Пользователь компьютера
Macintosh должен иметь возможность обращаться
к ресурсам, поддерживаемым UNIX-системой,
а пользователь UNIX должен иметь возможность
разделять информацию с пользователями
Windows 95. Подавляющее число пользователей
ничего не хочет знать о внутренних форматах
файлов или о синтаксисе команд UNIX.
Пользователь
терминала IBM 3270 должен иметь возможность
обмениваться сообщениями с пользователями
сети персональных компьютеров без необходимости
вникать в секреты трудно запоминаемых
адресов.
Концепция
прозрачности может быть применена
к различным аспектам сети.
Например,
прозрачность расположения означает,
что от пользователя не требуется
знаний о месте расположения программных
и аппаратных ресурсов, таких как процессоры,
принтеры, файлы и базы данных. Имя ресурса
не должно включать информацию о месте
его расположения, поэтому имена типа
mashinel: prog.c или \\ftp_serv\pub прозрачными не являются.
Аналогично, прозрачность перемещения
означает, что ресурсы должны свободно
перемещаться из одного компьютера в другой
без изменения своих имен. Еще одним из
возможных аспектов прозрачности является
прозрачность параллелизма, заключающаяся
в том, что процесс распараллеливания
вычислений происходит автоматически,
без участия программиста, при этом система
сама распределяет параллельные ветви
приложения по процессорам и компьютерам
сети. В настоящее время нельзя сказать,
что свойство прозрачности в полной мере
присуще многим вычислительным сетям,
это скорее цель, к которой стремятся разработчики
современных сетей.
Поддержка
разных видов трафика
Компьютерные
сети изначально предназначены
для совместного доступа пользователя
к ресурсам компьютеров: файлам, принтерам
и т.п. Трафик, создаваемый этими традиционными
службами компьютерных сетей, имеет свои
особенности и существенно отличается
от трафика сообщений в телефонных сетях
или, например, в сетях кабельного телевидения.
Однако 90-е годы стали годами проникновения
в компьютерные сети трафика мультимедийных
данных, представляющих в цифровой форме
речь и видеоизображение.
Компьютерные
сети стали использоваться для
организации видеоконференций, обучения
и развлечения на основе видеофильмов
и т.п. Естественно, что для динамической
передачи мультимедийного трафика требуются
иные алгоритмы и протоколы и, соответственно,
другое оборудование. Хотя доля мультимедийного
трафика пока невелика, он уже начал свое
проникновение как в глобальные, так и
локальные сети, и этот процесс, очевидно,
будет продолжаться с возрастающей скоростью.
Главной
особенностью трафика, образующегося
при динамической передаче голоса
или изображения, является наличие жестких
требований к синхронности сдаваемых
сообщений. Для качественного воспроизведения
непрерывных процессов, которыми являются
звуковые колебания или изменения интенсивности
света в видеоизображении, необходимо
получение измеренных и закодированных
амплитуд сигналов с той же частотой, с
которой они были измерены на передающей
стороне. При запаздывании сообщений будут
наблюдаться искажения.
В
то же время трафик компьютерных
данных характеризуется крайне неравномерной
интенсивностью поступления сообщений
в сеть при отсутствии жестких требований
к синхронности доставки этих сообщений.
Например, доступ пользователя, работающего
с текстом на удаленном диске, порождает
случайный поток сообщений между удаленным
и локальным компьютерами, зависящий от
действий пользователя по редактированию
текста, причем задержки при доставке
в определенных (и достаточно широких
с компьютерной точки зрения) пределах
мало влияют на качество обслуживания
пользователя сети. Все алгоритмы компьютерной
связи, соответствующие протоколы и коммуникационное
оборудование были рассчитаны именно
на такой "пульсирующий" характер
трафика, поэтому необходимость передавать
мультимедийный трафик требует внесения
принципиальных изменений как в протоколы,
так и оборудование. Сегодня практически
все новые протоколы в той или иной степени
предоставляют поддержку мультимедийного
трафика.