Опубликован: 07.08.2007 | Уровень: специалист | Доступ: свободно | ВУЗ: Московский физико-технический институт
Лекция 17:

Моделирование сетей, сетевая надежность и сетевые драйверы

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Аннотация: Аналитическое и симуляционное моделирование. Элементы теории массового обслуживания. Проблемы оценки надежности сетей. Принципы работы сетевых драйверов.
Ключевые слова: определение, сеть, моделирование, Ethernet, 10GE, внешний канал, мультимедийный трафик, mac, UDP, TCP, точность, параметр, сетевой протокол, IEEE, FTP, сервер, рабочая станция, исключение, значение, ПО, время задержки, время ожидания, нотация, FIFO, IN, LIFO, запись, очередь, длина, буфер, входной, теорема Литла, Распределение Пуассона, вероятность, формула Поллажека-Хинчина, среднеквадратичное отклонение, функция, carrier, multiple access, protocol, Local, computer network, основание, задержка распространения, пуассоновское распределение, среднее время, место, список, средняя длина очереди, расстояние, компьютер, интервал, бит, программа, ICMP, загрузка, базы данных, MTU, MSS, TTL, сегменты, синхронизация процессов, активность, unicast, элемент списка, IPG, jam, менеджер, распределение вероятности, реальное время, алгоритм, Интернет, надежность, персональная ЭВМ, память, интерфейс, выход, DNS, NTP, STP, LAN, шлюз, IP, HSRP, hot standby, IPSTB, standby, VIRP, маршрутизатор, стоимость, сетевая надежность, ARPA, traceroute, пользователь, доступ, качество обслуживания, связность, пропускная способность, минимизация, граф, вероятность отказа, мера, связь, путь, индекс, сети передачи данных, множества, модель проектирования, топология, общая пропускная способность, сеть с коммутацией каналов, stochastic, binary system, coherency, двудольный граф, минимальные разрезы, классы сетей, прикладная программа, CSR, control, status register, PC, номер порта, класс, PPP, interrupt enable, ALE, драйвер, минимум, OSI, указатель, адресация

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

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

  • предельные пропускные способности различных фрагментов сети и зависимости потерь пакетов от загрузки отдельных станций и внешних каналов;
  • время отклика основных серверов в самых разных режимах, в том числе таких, которые в реальной сети крайне нежелательны. Оптимизация конфигурации, например, почтового или WEB-сервера;
  • влияние установки новых серверов на перераспределение информационных потоков (Proxy, Firewall и т.д.);
  • решение оптимизации топологии при возникновении узких мест в сети (размещение серверов, DNS, внешних шлюзов, организация опорных каналов и пр.);
  • выбор того или иного типа сетевого оборудования (например, 10BaseTX, 100BaseFX, GE или 10GE) или режима его работы (например, cut-through, store-and-forward для мостов и переключателей и т.д.);
  • выбор внутреннего протокола маршрутизации и его параметров (например, метрики);
  • определение предельно допустимого числа пользователей того или иного сервера;
  • оценка необходимой полосы пропускания внешнего канала для обеспечения требуемого уровня QOS. Выбор и оптимизация параметров системы обслуживания очередей;
  • оценка влияния мультимедийного трафика на работу локальной сети, например, при подготовке видеоконференций;
  • выбор протоколов и схемы опорной сети сервис-провайдера и т.д.

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

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

Результаты моделирования должны иметь точность 10-20%, этого достаточно для большинства целей и не требует слишком много машинного времени. Следует иметь в виду, что для моделирования поведения реальной сети надо знать все ее рабочие параметры: длины кабеля от концентратора до конкретной ЭВМ, задержки используемых кабелей, задержки концентраторов (этот параметр часто отсутствует в документации и его придется брать из документации на сетевой протокол, например, из IEEE 802.3). Параметры могут быть определены и прямым измерением. Чем точнее вы воспроизводите поведение сети, тем больше машинного времени это потребует. Кроме того, вам предстоит сделать некоторые предположения относительно распределения загрузки для конкретных ЭВМ и других сетевых элементов, задержек в переключателях, мостах, времени обработки запросов в серверах. Здесь нужно учитывать и характер решаемых на ЭВМ задач: www/ftp-сервер или обычная персональная рабочая станция создают различные сетевые трафики. Определенное влияние на результат могут оказывать и используемые ОС. В случае моделирования реальной сети можно произвести соответствующие измерения, что иногда тоже не слишком просто. Учитывая сложность моделирования на одной ординарной ЭВМ, следует ограничиваться моделированием не более чем одной минуты для каждого из наборов параметров (этого времени достаточно для копирования практически любого файла через локальную сеть). Исключение может составлять моделирование внешнего трафика, но в этом случае весь локальный трафик должен рассматриваться как фоновый.

Современные распределенные технологии дают новые возможности для решения задач моделирования.

17.1. Аналитическое моделирование

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

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

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

D = T_p + S + W,

где T_p, S и W соответственно - время распространения, время обслуживания и время ожидания. Одной из задач аналитического моделирование является определение среднего значения D. При больших загрузках основной вклад дает ожидание обслуживания W. Для описания очередей в дальнейшем будет использована нотация Д. Дж. Кенделла:

A/B/C/K/m/z,

где А - процесс прибытия: В - процесс обслуживания; С - число серверов (узлов); К - максимальный размер очереди (по умолчанию - \infty ); m - число клиентов (по умолчанию - \infty ); z - схема работы буфера (по умолчанию FIFO). Буквы А и В представляют процессы прихода и обслуживания и обычно заменяются следующими буквами, которые характеризуют закон, соответствующий распределения событий:

  • D - постоянная вероятность;
  • M - марковское экспоненциальное распределение;
  • G - обобщенный закон распределения;
  • E_k - распределение Эрланга порядка k ;
  • H_k - гиперэкспоненциальное распределение порядка k.

Наиболее распространенными схемами работы буферов являются FIFO (First-In-First-Out), LIFO (Last-In-First-Out) и FIRO (First-In-Random-Out). Например, запись M/M/2 означает очередь, для которой времена прихода и обслуживания соответствует экспоненциальному распределению, имеется два сервера, длина очереди и число клиентов могут быть сколь угодно большими, а буфер работает по схеме FIFO. Среднее значение длины очереди Q при заданной средней входной частоте сообщений \lambda и среднем времени ожидания W определяется на основе теоремы Литла (1961):

\vec Q=\lambda \vec W

Для варианта очереди M/G/1 входной процесс характеризуется распределением Пуассона со скоростью поступления сообщений \lambda. Вероятность поступления k сообщений на вход за время t равно:

p(k)=\frac{\left(\lambda t\right)^k}{k!}e^{-\lambda t}
, k=0,1,2,...

Пусть N - число клиентов в системе, Q - число клиентов в очереди, и пусть вероятность того, что входящий клиент обнаружит j других клиентов, равна:

П_j=P[n=j], j=0,1,2,... \sum_{j=0}^\infty П_j=1; П_0=1-\rho;\rho=\lambda\tau

Тогда среднее время ожидания w:

\overline{W}=\frac{\overline{Q}}{\lambda}=\frac{\rho\tau}{2(1-\rho)}(1+\frac{\sigma^2}{\tau^2})
( формула Поллажека-Хинчина )

\sigma - среднеквадратичное отклонение для распределения времени обслуживания.

Для варианта очереди M/G/1 H(t) = P[X \le t] = 1 - e^{-\mu t} ( H - функция распределения времени обслуживания). Откуда следует \sigma^2 = \tau^2.

\overline{W}=\frac{\rho\tau}{(1-\rho)}

Для варианта очереди m/d/1 время обслуживания постоянно, а среднее время ожидания составляет:

\overline{W}=\frac{\rho\tau}{2(1-\rho)}

Аналитическая модель для сетей Ethernet (CSMA-CD) разработана Лэмом (S.S.Lam: "A Carrier Sense Multiple Access Protocol for Local Networks," Computer Networks, vol. 4, n. 1, pp. 21-32, January 1980). Здесь предполагается, что сеть состоит из бесконечного числа станций, соединенных каналами с доменным доступом. То есть станция может начать передачу только в начале какого-то временного домена. Распределение сообщений подчиняется закону Пуассона с постоянной скоростью следования \lambda. Среднее значение времени ожидания для таких сетей составляет:

\overline{D}=\frac{\lambda [S^2+(4e+2)\tau S+5\tau^2+4e(2e-1)\tau^2]}{2(1-\lambda [\overline{S}+\tau+2e\tau])}-\frac{(1-e^{-2\lambda\tau})(e+\lambda\tau-2\lambda\tau e)}{\lambda e[F(\lambda)e^{-(1+\lambda\tau)}+e^{-2\lambda\tau}-1]}+2\tau e+\overline{S}+\tau /3

где е - основание натурального логарифма, \tau - задержка распространения сигнала в сети. \vec S и \vec S^2 - соответственно первый и второй моменты распределения передачи или обслуживания сообщения. f(\lambda) преобразование Лапласа для распределения времени передачи сообщения. Следовательно,

F(\lambda)=\int\limits_0^\infty f(t)e^{-\lambda t},dt
, а для сообщений постоянной длины f(\lambda)=e^{-\rho}, \vec S^2=\vec S^2, где \pi =\lambda \vec S. Для экспоненциального распределения длин сообщений:

F(\lambda)=\frac{1}{1+\rho}, \overline{S^2}=2\overline{S}^2

Рассмотрим вариант сети Ethernet на основе концентратора-переключателя с числом каналов N. При этом будет предполагаться, что сообщения на входе всех узлов имеют пуассоновское распределение со средней интенсивностью \lambda_i, а распределение сообщений по длине произвольно. Сообщения отправляются в том же порядке, в котором они прибыли. Трафик в сети предполагается симметричным. Очередь имеет модель M/G/1. Среднее время ожидания в этом случае равно:

\overline{W}=\hat{y}+\frac{\lambda\hat{y}^2}{2(1-\rho)},

где \hat{y}=[1+(N-2)\rho G]\overline{S},

\hat{y}^2=2[1+(N-2)\rho G+(N-2)(N-3)\rho^2G^2]\overline{S^2}

\rho=\frac{\lambda S}{1-(N-2)G\lambda\overline{S}}
, \lambda=\lambda_i, а G=1/(N-1) равно вероятности того, что сообщение отправителя i направлено получателю j. Требование стабильности \rho \le 1 обязывает, чтобы \lambda \vec S \le (N-1)(2N-3)

Для больших n это приводит к \lambda \vec S \le 1/2.

Среднее время распространения сообщения в сети равно \vec T_p = \tau, где \tau равно RTT.

\overline{D}=\hat{y}+\frac{\lambda\hat{y}^2}{2(1-\rho)}+\overline{S}+\tau

Особое место занимает моделирование систем работы с очередями. Эти задачи стали особенно актуальными в связи необходимостью получения гарантированных параметров качества обслуживания. Этот тип моделирования можно реализовать с помощью общедоступной программы NS-2. (Смотри http://www-nrg.ee.lbl.gov/ns/ и http://www-mash.cs.berkeley.edu/ns.)

< Лекция 16 || Лекция 17: 12345 || Лекция 18 >
Евгений Виноградов
Евгений Виноградов

Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа?

Илья Сидоркин
Илья Сидоркин

Добрый день! Подскажите пожалуйста как и когда получить диплом, после сдичи и оплаты?????