Сетевой уровень часть 2. Choose your destiny

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

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

Качество обслуживания

В прошлой части мы говорили в первую очередь об увеличении производительности сети и повышении уровня отказаустойчивсоти относительно перегрузок. Несмотря на это, для некоторых приложения (клиентов сети) необходимы более строгие гарантии производительности. Например, для работы веб-приложения допустима средняя задержка, пропускная способность и потери, однако, флуктуация должна быть слабой. Флуктуация – это случайное отклонение от чего-либо. Когда клиент запрашивает доступ к веб-ресурсу, почти всегда ему приходиться ждать какое-то время, пока загрузиться содержимое страницы, но, конечно, чем быстрее это произойдет тем лучше (задержка). При этом допустимо, что запрос идет по 2G соединению (пропускная способность), пакеты могут теряться, однако, будут послано снова и дойдут до отправителя (потери), однако, если клиент строго запросил страницу сайта с информацией о погоде в Саратове, то совсем недопустимо, чтобы ответом к нему пришли данные о погоде в Череповце (флуктуация), но к флуктуациям в отношении времени отправки и получения пакетов, приложение отнесется нормально.  Самым простым решение гарантии отменного качества является  создание сети с пропускной способностью, позволяющей передавать трафик любого объема. При удовлетворении этого аспекта, потери пакетов будут минимальными при грамотной настройке маршрутизаторов. Ярким примером подобной сети является телефонная. Если поднять трубку, то вы сразу услышите гудки. Ограничением в создании подобной сети будет только ее дороговизна. Реально это очень дорого. И так, для обеспечения высокого, вернее сказать, необходимого качества обслуживания необходимо ответить на 4 вопроса:

  1. Что приложениям нужно от сети?
  2. Каким образом регулировать трафик?
  3. Как выделить нужное количество ресурсов на маршрутизаторах, чтобы обеспечить производительность?
  4. Может ли сеть принять большой объем трафика.

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

Требования приложения

Приложение Пропускная способность Задержка Флуктуации (относительно времени доставки пакетов) Потери
Электронная почта Низкая Низкая Слабая Средняя
Передача файлов Высокая Низкая Слабая Средняя
 Веб-приложение Средняя Средняя Слабая Средняя
Удаленный доступ  Низкая Средняя Средняя Средняя
Аудио  Низкая Низкая Сильная Низкая
 Видео Высокая Низкая Сильная Низкая
 Телефония Низкая Высокая Сильная Низкая
 Видеоконференция Высокая Высокая Сильная Низкая

В данной таблице приведены требования различных приложений к качеству обслуживания по 4-м критериям. Эти критерии в первую очередь относятся к потоку пакетов. Под потоком следует понимать последовательность пакетов, идущих от отправителя к получателю. Требования к пропускной способности и задержкам очевидны, поэтому разберем два других. Например, электронная почта имеет слабые требования к флуктуации времени отправки и прибытия пактов, так как пользователь вообще этого не заметит. Потери пакетов же недопустимы, так как важен каждый байт. Для потока пакетов видео и аудио данных, требования к флуктуации высокие. Потому что при сильных отклонениях пользователь приложения заметит, что кадры видео появляются скачками. При стабильном время передачи кадра 2 секунды – поток стабилен, однако, если оно колеблется от 1 до 3 секунд, результат будет ужасен. Для аудио-потока будут заметны флуктуации даже в несколько миллисекунд. Однако, требования к потери пакетов низкие, один потерянный кадр пройдет мимо глаза пользователя.

Различия сетей, их аспекты и способы объединения

Из-за различных требований приложений, размеров нашей планеты, количества локальных сетей, интрАнет-сетей больших корпораций имеет место быть вопрос, касающийся объединения различных сетей. Отличительные характеристики той или иной сети называются ее аспектами. Представьте себе, что необходимо передать пакет из одной сети в другую. Сеть отправителя – Ethernet, получателя WiMAX. Одна ориентирована на соединение, другая – нет. А что если так же размер посылаемого пакета 8000 байт, а в сети получателя максимально разрешенный размер пакета 2000 байт? Пусть ко всему прочему пропускная способность первой гораздо выше, второй, а задержки сильно разняться? Это минимальные различия в аспектах между сетями. Задача объединения сетей – организовать передачу потока пакетов корректно между сетями. В нашем примере пакет 8000 байт можно разбить на 4 по 2000 байт, передать в сети, затем с помощью буфера на принимающий стороне соединить их между собой вновь в большой пакет. При различных задержках в сетях так же можно использовать буфер. Что касается пропускной способности, то здесь решение не столь очевидно.

Аспект Возможные значения
Предлагаемый сервис С установкой /без установки соединения
Адресация Разного размера, плоская или иерархическая
Широковещание Есть/нет + многоадресная рассылка
Размер пакета У каждой сети свой максимум
Упорядочивание Упорядоченная / неупорядоченная доставка
Качество обслуживания Много своих аспектов, смотри выше
Надежность Разные уровни потерь
Безопасность Шифрование
Параметры Их много
Тарификация За пакет, байт, время или безлимит

В таблице представлены аспекты сетевого уровня.

Что касается способов объединения сетей, то существует два подхода:

  1. Реализация адаптера-конвертера. Каждый пакет при переходе между сетями проходит через конвертер, в котором он преобразуется к требованиям сети.
  2. Добавление уровня косвенной адресации. Создание надсети.

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

В третей части цикла статей  мы рассмотрим сетевой уровень в Интернете.

Оставить комментарий:

Ваш email не будет опубликован.